{"id":363,"date":"2004-06-29T18:24:54-04:00","date_gmt":"2004-06-30T02:24:54+00:00","guid":{"rendered":"http:\/\/peterjanes.ca\/wordpress\/?p=363"},"modified":"2004-06-29T18:24:54-04:00","modified_gmt":"2004-06-30T02:24:54+00:00","slug":"disruptive-work-on-a-stable-branch","status":"publish","type":"post","link":"https:\/\/peterjanes.ca\/blog\/2004\/06\/29\/disruptive-work-on-a-stable-branch\/","title":{"rendered":"Disruptive work on a stable&nbsp;branch"},"content":{"rendered":"<div class='e-content'><p>I sat down to write a screed on the wonky <cite class=\"term\">Aviary branch<\/cite> happening at <a href=\"http:\/\/www.mozilla.org\/\">mozilla.org<\/a>, but I&#8217;m a little under the weather and thoughts aren&#8217;t flowing as clearly as I&#8217;d like.  I might come back to this later, but thought I&#8217;d post what I have just so it&#8217;s out there.<\/p>\n\n<hr \/>\n\n<p>In <a href=\"http:\/\/www.liberate.com\/\">Real Life<\/a> I do quality assurance, including being the <span xml:lang=\"lt\">de facto<\/span> source control guru.  As part of this I help to manage change in our source tree; in large part I try to stick to the <a href=\"http:\/\/www.perforce.com\/perforce\/bestpractices.html\">best practices<\/a> put forth by Laura Wingerd and Christopher Seiwald at Perforce Software, because for the most part they&#8217;re simply formalizing common sense.<\/p>\n\n<p>The <cite class=\"term\">Aviary branch<\/cite> of the Mozilla browser and mail programs was created to <a href=\"http:\/\/groups.google.com\/groups?as_umsgid=c8a0ec$ior1@ripley.netscape.com\"><q>be used for stable branch builds of these apps from now until the 1.0 releases of these apps<\/q><\/a>.  The <a href=\"http:\/\/forums.mozillazine.org\/viewtopic.php?p=531658&amp;sid=202df4076e07f8007938f3b04392d6f3#531658\">Mozillazine FAQ<\/a> says that the trunk is for <q>Continued Mozilla backend development<\/q>.  Unfortunately, the <a href=\"http:\/\/forums.mozillazine.org\/viewtopic.php?p=604815&amp;sid=8442134cee8b213a676800445e9a2f2e#604815\">brunk<\/a> policy (if there is one) is that development can take place willy-nilly without being propagated back to the main codebase.  Logic, and the rationale behind the branch in the first place, would suggest that disruptive changes&#8211;<a href=\"http:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=215093\">new features<\/a>, <a href=\"http:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=244060\">modifications affecting interoperability<\/a>, and <a href=\"http:\/\/www.mozillazine.org\/talkback.html?article=4834\">other substantial alterations<\/a>&#8211;be created off to the side and then merged into the so-called <em>stable<\/em> branch when they are&#8211;wait for it&#8211;<em>stable<\/em>.  Stable changes in the branch should be merged back to the trunk <q>sooner rather than later [because] postponed and batched change propagations can result in stunningly complex file merges.<\/q><\/p><\/div><div class=\"syndication-links\"><\/div>","protected":false},"excerpt":{"rendered":"I sat down to write a screed on the wonky Aviary branch happening at mozilla.org, but I&#8217;m a little under the weather and thoughts aren&#8217;t flowing as clearly as I&#8217;d like. I might come back to this later, but thought I&#8217;d post what I have just so it&#8217;s out there. In Real Life I do&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"mf2_syndication":[],"venue_id":0},"categories":[3],"tags":[],"kind":false,"_links":{"self":[{"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/posts\/363"}],"collection":[{"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/comments?post=363"}],"version-history":[{"count":0,"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/posts\/363\/revisions"}],"wp:attachment":[{"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/media?parent=363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/categories?post=363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/peterjanes.ca\/blog\/wp-json\/wp\/v2\/tags?post=363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}