<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Deadpan Sincerity &#187; something&#8217;s burning</title>
	<atom:link href="http://blog.deadpansincerity.com/category/somethings-burning/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.deadpansincerity.com</link>
	<description>a weblog by david miller</description>
	<lastBuildDate>Fri, 09 Dec 2011 12:03:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Mercurial Hook to ensure issue references in Trac/Redmine</title>
		<link>http://blog.deadpansincerity.com/2011/06/mercurial-hook-to-ensure-issue-references-in-tracredmine/</link>
		<comments>http://blog.deadpansincerity.com/2011/06/mercurial-hook-to-ensure-issue-references-in-tracredmine/#comments</comments>
		<pubDate>Sat, 04 Jun 2011 10:41:07 +0000</pubDate>
		<dc:creator>david miller</dc:creator>
				<category><![CDATA[something's burning]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[wishful thinking]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[hg]]></category>
		<category><![CDATA[hook]]></category>
		<category><![CDATA[mercurial]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[redmine]]></category>
		<category><![CDATA[trac]]></category>

		<guid isPermaLink="false">http://blog.deadpansincerity.com/?p=400</guid>
		<description><![CDATA[As much as I love the version control integration of the bug trackers I use (Redmine and Trac) I find myself forgetting to include the issue reference more often than I&#8217;d like to admit. Add to this the merry dance you have to go through to ammend commit messages in Mercurial and things get even [...]]]></description>
			<content:encoded><![CDATA[<p>As much as I love the version control integration of the bug trackers I use (<a href="http://www.redmine.org/">Redmine</a> and <a href="http://trac.edgewall.org/">Trac</a>) I find myself forgetting to include the issue reference more often than I&#8217;d like to admit.</p>
<p>Add to this the <a href="http://stackoverflow.com/questions/623052/how-to-edit-incorrect-commit-message-in-mercurial">merry dance</a> you have to go through to ammend commit messages in <a href="http://mercurial.selenic.com/">Mercurial</a> and things get even worse. (Oh how I&#8217;d love for hg to implement something similar to <a href="http://www.kernel.org/pub/software/scm/git/docs/git-commit.html">git&#8217;s</a> $ git commit &#8211;amend )</p>
<p>Hence, a Pre-transaction-commit hook for hg that will ask me if I&#8217;m sure I want to commit without an issue number. If want to commit anyway, it&#8217;s just two extra keystrokes, and saves a whole lot of rollback/apply nonsense.</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">#!/usr/bin/env python</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">os</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">re</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">subprocess</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">sys</span>
&nbsp;
<span style="color: #dc143c;">cmd</span> = <span style="color: #dc143c;">subprocess</span>.<span style="color: black;">Popen</span><span style="color: black;">&#40;</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'hg'</span>, <span style="color: #483d8b;">'log'</span>, <span style="color: #483d8b;">'-vr'</span>, <span style="color: #dc143c;">os</span>.<span style="color: black;">environ</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'HG_NODE'</span><span style="color: black;">&#93;</span><span style="color: black;">&#93;</span>,
                       stdout=<span style="color: #dc143c;">subprocess</span>.<span style="color: black;">PIPE</span><span style="color: black;">&#41;</span>.<span style="color: black;">communicate</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">0</span><span style="color: black;">&#93;</span>
msg = <span style="color: #dc143c;">cmd</span>.<span style="color: black;">split</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'description:'</span><span style="color: black;">&#41;</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>
issue_regexes = <span style="color: black;">&#91;</span>
    <span style="color: #808080; font-style: italic;"># Trac</span>
    r<span style="color: #483d8b;">'#<span style="color: #000099; font-weight: bold;">\d</span>+'</span>,
    <span style="color: #808080; font-style: italic;"># Redmine</span>
    r<span style="color: #483d8b;">'fixes #<span style="color: #000099; font-weight: bold;">\d</span>+'</span>,
    r<span style="color: #483d8b;">'refs #<span style="color: #000099; font-weight: bold;">\d</span>+'</span>,
    <span style="color: black;">&#93;</span>
<span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: #008000;">filter</span><span style="color: black;">&#40;</span><span style="color: #ff7700;font-weight:bold;">lambda</span> x: <span style="color: #dc143c;">re</span>.<span style="color: black;">search</span><span style="color: black;">&#40;</span>x, msg<span style="color: black;">&#41;</span>, issue_regexes<span style="color: black;">&#41;</span>:
    <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;No issue ref or fix... message is:&quot;</span>
    <span style="color: #ff7700;font-weight:bold;">print</span> msg
    <span style="color: #dc143c;">sys</span>.<span style="color: black;">stdout</span>.<span style="color: black;">write</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;Continue? [y/n] &quot;</span><span style="color: black;">&#41;</span>
    resp = <span style="color: #008000;">raw_input</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">lower</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">if</span> resp == <span style="color: #483d8b;">'n'</span>:
        <span style="color: #dc143c;">sys</span>.<span style="color: black;">exit</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">9</span><span style="color: black;">&#41;</span></pre></div></div>

<p>Then add the following to your project&#8217;s .hg/hgrc:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #009900;">&#91;</span>hooks<span style="color: #009900;">&#93;</span>
pretxncommit <span style="color: #339933;">=</span> path<span style="color: #339933;">/</span>to<span style="color: #339933;">/</span>your<span style="color: #339933;">/</span>pretxncommit.<span style="color: #660066;">py</span></pre></div></div>

<p>Saving you endless embarrassment:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">davidmiller<span style="color: #000000; font-weight: bold;">@</span>pascal:~<span style="color: #000000; font-weight: bold;">/</span>src<span style="color: #000000; font-weight: bold;">/</span>buggy_repo$ hg commit <span style="color: #660033;">-m</span> <span style="color: #ff0000;">&quot;A context-less void&quot;</span>
No issue ref or fix... message is:
&nbsp;
A context-less void
&nbsp;
&nbsp;
&nbsp;
Continue? <span style="color: #7a0874; font-weight: bold;">&#91;</span>y<span style="color: #000000; font-weight: bold;">/</span>n<span style="color: #7a0874; font-weight: bold;">&#93;</span> n
transaction abort<span style="color: #000000; font-weight: bold;">!</span>
rollback completed
abort: pretxncommit hook exited with status <span style="color: #000000;">9</span></pre></div></div>

<p>Love regards etc</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.deadpansincerity.com/2011/06/mercurial-hook-to-ensure-issue-references-in-tracredmine/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Something&#8217;s Burning #6</title>
		<link>http://blog.deadpansincerity.com/2010/03/somethings-burning-6/</link>
		<comments>http://blog.deadpansincerity.com/2010/03/somethings-burning-6/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 23:02:59 +0000</pubDate>
		<dc:creator>david miller</dc:creator>
				<category><![CDATA[something's burning]]></category>

		<guid isPermaLink="false">http://blog.deadpansincerity.com/?p=341</guid>
		<description><![CDATA[WE&#8217;RE ALL PLANNING OUR CAREERS Photo by quinn.anya]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.deadpansincerity.com/wp-content/uploads/2010/03/cobbler-300x225.jpg" alt="cobbler" title="cobbler" width="300" height="225" class="aligncenter size-medium wp-image-342" /></p>
<p style="text-align: center; font-family: serif;">
WE&#8217;RE ALL PLANNING<br />
<br />
OUR CAREERS
</p>
<p>
<span style="font-size: 0.7em;"><br />
Photo by<br />
<a href="http://www.flickr.com/photos/quinnanya//"><br />
quinn.anya<br />
</a><br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.deadpansincerity.com/2010/03/somethings-burning-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Something&#8217;s Burning #4</title>
		<link>http://blog.deadpansincerity.com/2009/10/somethings-burning-4/</link>
		<comments>http://blog.deadpansincerity.com/2009/10/somethings-burning-4/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 22:39:24 +0000</pubDate>
		<dc:creator>david miller</dc:creator>
				<category><![CDATA[something's burning]]></category>
		<category><![CDATA[love]]></category>
		<category><![CDATA[paris]]></category>
		<category><![CDATA[time]]></category>

		<guid isPermaLink="false">http://blog.deadpansincerity.com/?p=280</guid>
		<description><![CDATA[LIKE IT WAS HIS TO GIVE AWAY Photo by O&#8217;mages]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.deadpansincerity.com/wp-content/uploads/2009/10/disabled_in_love.jpg" alt="disabled_in_love" title="disabled_in_love" width="500" height="320" class="aligncenter size-full wp-image-281" /></p>
<p style="text-align: center; font-family: serif;">
LIKE IT WAS HIS TO<br />
<br />
GIVE AWAY
</p>
<p>
<span style="font-size: 0.7em;"><br />
Photo by<br />
<a href="http://www.flickr.com/photos/58265974@N00/"><br />
O&#8217;mages<br />
</a><br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.deadpansincerity.com/2009/10/somethings-burning-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Something&#8217;s Burning #3</title>
		<link>http://blog.deadpansincerity.com/2009/07/somethings-burning-3/</link>
		<comments>http://blog.deadpansincerity.com/2009/07/somethings-burning-3/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 07:14:13 +0000</pubDate>
		<dc:creator>david miller</dc:creator>
				<category><![CDATA[something's burning]]></category>
		<category><![CDATA[button]]></category>

		<guid isPermaLink="false">http://blog.deadpansincerity.com/?p=222</guid>
		<description><![CDATA[I&#8217;M NOT JUST PUSHING YOUR BUTTONS HERE Photo by Storem]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.deadpansincerity.com/wp-content/uploads/2009/07/buttons.jpg"><img src="http://blog.deadpansincerity.com/wp-content/uploads/2009/07/buttons.jpg" alt="" title="buttons" width="333" height="500" class="aligncenter size-full wp-image-221" /></a></p>
<p style="text-align: center; font-family: serif;">
I&#8217;M NOT JUST<br />
<br />
PUSHING YOUR BUTTONS<br />
<br />
HERE
</p>
<p>
<span style="font-size: 0.7em;"><br />
Photo by<br />
<a href="http://www.flickr.com/photos/storem/"><br />
Storem<br />
</a><br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.deadpansincerity.com/2009/07/somethings-burning-3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>something&#8217;s burning #2</title>
		<link>http://blog.deadpansincerity.com/2009/07/somethings-burning-2/</link>
		<comments>http://blog.deadpansincerity.com/2009/07/somethings-burning-2/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 18:58:13 +0000</pubDate>
		<dc:creator>david miller</dc:creator>
				<category><![CDATA[something's burning]]></category>
		<category><![CDATA[plan]]></category>

		<guid isPermaLink="false">http://blog.deadpansincerity.com/?p=216</guid>
		<description><![CDATA[SOMETHING SO SEDUCTIVE ABOUT A PLAN Photo by Stephan Geyer]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.deadpansincerity.com/wp-content/uploads/2009/07/penplan.jpg"><img src="http://blog.deadpansincerity.com/wp-content/uploads/2009/07/penplan.jpg" alt="" title="something so seductive about a plan" width="500" height="307" class="aligncenter size-full wp-image-217" /></a></p>
<p style="text-align: center; font-family: serif;">
SOMETHING SO SEDUCTIVE<br />
<br />
ABOUT A PLAN
</p>
<p>
<span style="font-size: 0.7em;"><br />
Photo by<br />
<a href="http://www.flickr.com/photos/stephangeyer/"><br />
Stephan Geyer<br />
</a><br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.deadpansincerity.com/2009/07/somethings-burning-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Something&#8217;s Burning</title>
		<link>http://blog.deadpansincerity.com/2009/07/somethings-burning/</link>
		<comments>http://blog.deadpansincerity.com/2009/07/somethings-burning/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 20:38:32 +0000</pubDate>
		<dc:creator>david miller</dc:creator>
				<category><![CDATA[something's burning]]></category>

		<guid isPermaLink="false">http://blog.deadpansincerity.com/?p=209</guid>
		<description><![CDATA[I MISS MY FUTURES. NARCISSUS VERSUS PROLAPSUS Photo by angus88]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.deadpansincerity.com/wp-content/uploads/2009/07/3502343029_ff17322538.jpg"><img class="aligncenter size-full wp-image-210" title="somethingsburning" src="http://blog.deadpansincerity.com/wp-content/uploads/2009/07/3502343029_ff17322538.jpg" alt="" width="500" height="335" /></a></p>
<p style="text-align: center;font-family:serif;">I MISS MY FUTURES.<br />
<BR><br />
NARCISSUS VERSUS PROLAPSUS
</p>
<p><span style="font-size:0.7em">Photo by <a href="http://www.flickr.com/photos/angus88/">angus88</a></span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.deadpansincerity.com/2009/07/somethings-burning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

