<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Debugging Catalyst</title>
	<atom:link href="http://blog.laufeyjarson.com/2009/05/debugging-catalyst/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.laufeyjarson.com/2009/05/debugging-catalyst/</link>
	<description>... notes, thoughts, rants, and randomness.</description>
	<lastBuildDate>Fri, 05 Mar 2010 20:49:33 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Matt S Trout</title>
		<link>http://blog.laufeyjarson.com/2009/05/debugging-catalyst/comment-page-1/#comment-5</link>
		<dc:creator>Matt S Trout</dc:creator>
		<pubDate>Sun, 10 May 2009 14:42:54 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=20#comment-5</guid>
		<description>Of course I then managed to forget the other really useful trick - either use CatalystX::REPL to break on exceptions or (my usual approach, which I often use to debug DBIC schemas and similar) -

  require Devel::REPL;
  $Devel::REPL::DefaultScratchPad::ctx = $self;
  Devel::REPL-&gt;new-&gt;run;

and presto, you get a repl prompt with a $ctx in scope that you can poke at.</description>
		<content:encoded><![CDATA[<p>Of course I then managed to forget the other really useful trick &#8211; either use CatalystX::REPL to break on exceptions or (my usual approach, which I often use to debug DBIC schemas and similar) -</p>
<p>  require Devel::REPL;<br />
  $Devel::REPL::DefaultScratchPad::ctx = $self;<br />
  Devel::REPL-&gt;new-&gt;run;</p>
<p>and presto, you get a repl prompt with a $ctx in scope that you can poke at.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt S Trout</title>
		<link>http://blog.laufeyjarson.com/2009/05/debugging-catalyst/comment-page-1/#comment-4</link>
		<dc:creator>Matt S Trout</dc:creator>
		<pubDate>Sun, 10 May 2009 14:32:13 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=20#comment-4</guid>
		<description>This is a great technique and one I use all the time - one note though, &quot;print STDERR&quot; isn&#039;t nearly as fun as &#039;warn&#039;, and potentially Carp&#039;s louder versions with stack traces will be even easier.

The other thing to remember is that Catalyst plugins are mixed in to the application class itself, so your $self within a plugin is actually the per-request $c.

I&#039;d love to see a write up of these techniques on the wiki if you&#039;re feeling wonderful and generous ... :)</description>
		<content:encoded><![CDATA[<p>This is a great technique and one I use all the time &#8211; one note though, &#8220;print STDERR&#8221; isn&#8217;t nearly as fun as &#8216;warn&#8217;, and potentially Carp&#8217;s louder versions with stack traces will be even easier.</p>
<p>The other thing to remember is that Catalyst plugins are mixed in to the application class itself, so your $self within a plugin is actually the per-request $c.</p>
<p>I&#8217;d love to see a write up of these techniques on the wiki if you&#8217;re feeling wonderful and generous &#8230; <img src='http://blog.laufeyjarson.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>
