<?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"
	>

<channel>
	<title>Indistinguishable from Jesse</title>
	<atom:link href="http://www.squarefree.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.squarefree.com</link>
	<description>Jesse Ruderman on Firefox, security, and more</description>
	<pubDate>Thu, 24 Apr 2008 02:23:51 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<item>
		<title>Earth complaint department</title>
		<link>http://www.squarefree.com/2008/04/23/earth-complaint-department/</link>
		<comments>http://www.squarefree.com/2008/04/23/earth-complaint-department/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 02:23:51 +0000</pubDate>
		<dc:creator>Jesse Ruderman</dc:creator>
		
		<category><![CDATA[Humor]]></category>

		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://www.squarefree.com/?p=391</guid>
		<description><![CDATA[Finally, a bug-tracking system for everything.  The priorities, severities, products, and components are great.]]></description>
			<content:encoded><![CDATA[<p>Finally, a <a href="http://landfill.bugzilla.org/complaints/buglist.cgi?quicksearch=ALL">bug-tracking system for <strong>everything</strong></a>.  The <a href="http://landfill.bugzilla.org/complaints/query.cgi?format=advanced">priorities, severities, products, and components</a> are great.</p>]]></content:encoded>
			<wfw:commentRss>http://www.squarefree.com/2008/04/23/earth-complaint-department/feed/</wfw:commentRss>
		</item>
		<item>
		<title>TidyBox</title>
		<link>http://www.squarefree.com/2008/02/23/tidybox/</link>
		<comments>http://www.squarefree.com/2008/02/23/tidybox/#comments</comments>
		<pubDate>Sun, 24 Feb 2008 03:24:16 +0000</pubDate>
		<dc:creator>Jesse Ruderman</dc:creator>
		
		<category><![CDATA[Mozilla]]></category>

		<category><![CDATA[User Interfaces]]></category>

		<category><![CDATA[User Scripts]]></category>

		<guid isPermaLink="false">http://www.squarefree.com/2008/02/23/tidybox/</guid>
		<description><![CDATA[The Firefox Tinderbox has been unmanageably wide lately.  I wrote a Greasemonkey script, TidyBox, to fix it by moving build results from the table cells to popups that appear when hovering the table cells.

Looking at a screenshot with TidyBox, it's easy to see that exactly one box is orange and that the orange started [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox">Firefox Tinderbox</a> has been <a href="http://quotes.burntelectrons.org/3450">unmanageably wide</a> lately.  I wrote a <a href="https://addons.mozilla.org/en-US/firefox/addon/748">Greasemonkey</a> script, <a href="https://www.squarefree.com/userscripts/tidybox.user.js">TidyBox</a>, to fix it by moving build results from the table cells to popups that appear when hovering the table cells.</p>

<p>Looking at a <a href="http://www.squarefree.com/tidybox1.png">screenshot with TidyBox</a>, it's easy to see that exactly one box is orange and that the orange started after the last checkin.  With the <a href="http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox&amp;maxdate=1203735686&amp;legend=0&amp;norules=1">normal Tinderbox display at the same time</a>, you would probably have to scroll both horizontally and vertically to figure that out.</p>

<p>If you want to see the information about a build while using TidyBox, just hover over the cell.  To click links that appear in the popup, click the cell to lock the popup in place and then click the link.</p>

<p><a href="https://www.squarefree.com/userscripts/tidybox.user.js">Install TidyBox</a> today and you might never have to scroll Tinderbox again!</p>

<p>Other recent efforts to improve Tinderbox:</p>

<ul>
  <li>Johnath: <a href="http://people.mozilla.org/~johnath/pdb/">Performance Dashboard</a></li>
  <li>Mossop: <a href="http://www.oxymoronical.com/blog/2008/02/Trimming-the-Fat">Tindermerge</a></li>
  <li>Vlad: <a href="http://blog.vlad1.com/2008/02/19/a-few-greasemonkey-tweaks/">Talos Fix</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.squarefree.com/2008/02/23/tidybox/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Help combat global warming</title>
		<link>http://www.squarefree.com/2008/02/12/help-combat-global-warming/</link>
		<comments>http://www.squarefree.com/2008/02/12/help-combat-global-warming/#comments</comments>
		<pubDate>Tue, 12 Feb 2008 08:45:57 +0000</pubDate>
		<dc:creator>Jesse Ruderman</dc:creator>
		
		<category><![CDATA[Humor]]></category>

		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://www.squarefree.com/2008/02/12/help-combat-global-warming/</guid>
		<description><![CDATA[Mike Shaver and Johnny Stenback are doing their part.  Are you?]]></description>
			<content:encoded><![CDATA[<p>Mike Shaver and Johnny Stenback are <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=416931" title="Bug 416931 - XPC_WN_Helper_SetProperty overwhelms property-set performance, causes global warming">doing their part</a>.  Are you?</p>]]></content:encoded>
			<wfw:commentRss>http://www.squarefree.com/2008/02/12/help-combat-global-warming/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Crashtests</title>
		<link>http://www.squarefree.com/2007/12/27/crashtests/</link>
		<comments>http://www.squarefree.com/2007/12/27/crashtests/#comments</comments>
		<pubDate>Fri, 28 Dec 2007 04:40:15 +0000</pubDate>
		<dc:creator>Jesse Ruderman</dc:creator>
		
		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://www.squarefree.com/2007/12/27/crashtests/</guid>
		<description><![CDATA[Crashtest is Mozilla's newest test suite.  It provides a very simple way to make sure a page doesn't cause Gecko to crash (or hang or assert or leak).  Since I report a lot of crash and assertion and leak bugs, I've been looking forward to being able to use this test suite.  [...]]]></description>
			<content:encoded><![CDATA[<p><b>Crashtest</b> is Mozilla's <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=397725">newest test suite</a>.  It provides a very simple way to make sure a page doesn't cause Gecko to crash (or hang or assert or leak).  Since I report a lot of crash and assertion and leak bugs, I've been looking forward to being able to use this test suite.  (For some bugs, I had been using "== about:blank" and "!= about:blank" reftests, but most of my bugs weren't getting tests checked in at all.)</p>

<p>I spent most of last week making crashtests for old bugs I had reported and <a href="http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&amp;module=all&amp;branch=HEAD&amp;branchtype=match&amp;dir=&amp;file=&amp;filetype=match&amp;who=jruderman%25hmc.edu&amp;whotype=match&amp;sortby=Date&amp;hours=2&amp;date=explicit&amp;mindate=2007-12-11+18%3A26&amp;maxdate=2007-12-19+16%3A35&amp;cvsroot=%2Fcvsroot">checking them in</a>.</p>

<p>So far, these crashtests have found <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=409150">bug 409150</a>, a crash on Windows that happens on Tinderbox but not dveditz's computer, and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=408746">bug 408746</a>, a crash on Linux that happens on sayrer's computer but not on Tinderbox.  They also <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=408292#c6">found</a> a problem in a patch before it was checked in.</p>

<p>The value of crashtests (and reftests) goes beyond keeping regressions out of nightlies.  The test suites can be run under <a href="http://valgrind.org/docs/manual/mc-manual.html">Valgrind's Memcheck</a>, potentially <a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=408526%2C+408524">finding subtle memory safety bugs</a> that don't normally show up as crashes.  The pages can even be used outside of the normal test framework, for example for finding <a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=408782%2C+409051%2C+409056%2C+409065%2C+409089%2C+409125%2C+409494">inconsistent-rendering bugs</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.squarefree.com/2007/12/27/crashtests/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Fixing leaks</title>
		<link>http://www.squarefree.com/2007/12/27/fixing-leaks/</link>
		<comments>http://www.squarefree.com/2007/12/27/fixing-leaks/#comments</comments>
		<pubDate>Fri, 28 Dec 2007 00:21:23 +0000</pubDate>
		<dc:creator>Jesse Ruderman</dc:creator>
		
		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://www.squarefree.com/2007/12/27/fixing-leaks/</guid>
		<description><![CDATA[Lately, I've been running debug builds of Firefox with trace-refcnt summaries enabled and reporting any leaks I can reproduce.  Frequently, someone else quickly attaches a patch, but in the case of bug 401393, nobody else could reproduce the leak I was seeing.  For me, simply loading a page with Flash and scrolling down [...]]]></description>
			<content:encoded><![CDATA[<p>Lately, I've been running debug builds of Firefox with trace-refcnt summaries enabled and reporting any leaks I can reproduce.  Frequently, someone else <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=405639">quickly attaches a patch</a>, but in the case of <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=401393">bug 401393</a>, nobody else could reproduce the leak I was seeing.  For me, simply loading a page with Flash and scrolling down could leak several objects.</p>

<p>Boris <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=401393#c8">helped me use more detailed trace-refcnt logging options</a> to figure out what caused the leak, and then Jonas <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=401393#c19">assigned the bug to me</a>:</p>

<blockquote><p>Jesse, here's your first blocker :)</p>

<p>Let me know if you need help and I'll do my best.</p></blockquote>

<p>I was able to fix the leak, although I still don't understand much of the code for the class I modified.  Boris and I also figured out why not everyone could reproduce the leak: it only happened because I was using Greasemonkey, which implements nsIContentPolicy using JavaScript.  (Adblock Plus <a href="http://adblockplus.org/en/faq_internal">does the same</a>, and it is <a href="https://addons.mozilla.org/en-US/firefox/browse/type:1/cat:all/sort:popular">apparently the most popular Firefox extension</a>, so I'm glad this leak is fixed!)</p>

<p>Knowing how to debug leaks with trace-refcount logging turned out to be useful: I was able to fix <a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=407277%2C+407074">a few editor leaks</a> and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=407259">debug another</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.squarefree.com/2007/12/27/fixing-leaks/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mozilla 2 thread</title>
		<link>http://www.squarefree.com/2007/12/19/mozilla-2-thread/</link>
		<comments>http://www.squarefree.com/2007/12/19/mozilla-2-thread/#comments</comments>
		<pubDate>Wed, 19 Dec 2007 18:36:20 +0000</pubDate>
		<dc:creator>Jesse Ruderman</dc:creator>
		
		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://www.squarefree.com/2007/12/19/mozilla-2-thread/</guid>
		<description><![CDATA[There's an interesting thread on mozilla.dev.planning about the scope and schedule of Mozilla 2.]]></description>
			<content:encoded><![CDATA[<p>There's an <a href="http://groups.google.com/group/mozilla.dev.planning/browse_thread/thread/e64e0ea2d6008faa/b0319202871618fc">interesting thread</a> on <a href="http://groups.google.com/group/mozilla.dev.planning/topics">mozilla.dev.planning</a> about the scope and schedule of Mozilla 2.</p>]]></content:encoded>
			<wfw:commentRss>http://www.squarefree.com/2007/12/19/mozilla-2-thread/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
