{"id":386,"date":"2011-05-30T08:18:06","date_gmt":"2011-05-30T15:18:06","guid":{"rendered":"http:\/\/blog.mozilla.org\/axel\/?p=386"},"modified":"2011-05-30T08:18:06","modified_gmt":"2011-05-30T15:18:06","slug":"coming-soon-cross-repository-network-graphs-for-hg-m-o","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/axel\/2011\/05\/30\/coming-soon-cross-repository-network-graphs-for-hg-m-o\/","title":{"rendered":"Coming soon: cross-repository network graphs for hg.m.o"},"content":{"rendered":"<p>Did you miss the ability to look at our source code and figure out who&#8217;s working on what where? Thought that only github can do that?<\/p>\n<p>Let me give you a sneak peek at what I&#8217;ve been hacking on over the weekend.<\/p>\n<p>What&#8217;s the big picture of our mainline code development?<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/5775953417\/\" title=\"branched repos of mozilla-central by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm6.static.flickr.com\/5266\/5775953417_4a916235f7.jpg\" width=\"500\" height=\"270\" alt=\"branched repos of mozilla-central\"><\/a><\/p>\n<p>You can see the blue line of development along mozilla-central, and then branch points for the release branches, and now for beta (miramar), and aurora. That&#8217;s pretty broad, and intentionally so. If you&#8217;re interested in the back and forth on a changeset level, this is how the branch point of fx5 beta looks:<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/5775953715\/\" title=\"changesets around the fx5 beta branch point by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm3.static.flickr.com\/2402\/5775953715_7fcd4bb97f.jpg\" width=\"500\" height=\"207\" alt=\"changesets around the fx5 beta branch point\"><\/a><\/p>\n<p>Why does it say aurora? Because hg doesn&#8217;t know what you&#8217;re looking for. I determine what was branched off of what by looking at pushes, wherever a particular changeset was pushed first, wins. As beta branched off of aurora later, you see that this was the branch of aurora at the time.<\/p>\n<p>Sadly, you don&#8217;t see the more interesting detail, that after that branch, the developer tools branch merged. If the database in the backend was tracking our project repos, you&#8217;d see that.<\/p>\n<p>Of course, there&#8217;s also an l10n side to this. I get many questions on what to merge and where and so, and it&#8217;s hard to see what ended up in which repo, and if things are different. Let&#8217;s follow one of the l10n repos at large:<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/5775953123\/\" title=\"branched repositories of Japanese by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm6.static.flickr.com\/5185\/5775953123_28e98e1bea.jpg\" width=\"500\" height=\"302\" alt=\"branched repositories of Japanese\"><\/a><\/p>\n<p>There&#8217;s even more details on the rapid branches for this one, like so:<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/5776494358\/\" title=\"changesets around the Japanese fx5 beta branch by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm3.static.flickr.com\/2745\/5776494358_3d4a01c25d.jpg\" width=\"500\" height=\"308\" alt=\"changesets around the Japanese fx5 beta branch\"><\/a><\/p>\n<p>Many of the same landings, but with different hg changesets, and then a merge. That merge didn&#8217;t make it to miramar, though. Which is OK, that&#8217;s a one-off anyway.<\/p>\n<p>Now that I wetted your appetite, bad news: Nothing of this is live yet. I&#8217;ll actually need to make a patch at least for the API in <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=659260\">bug 659260<\/a>, get review and get it live. Also, this is currently code that&#8217;s run as part of the l10n dashboard, which isn&#8217;t really intended to cover all our sources. If we want this at large, it&#8217;ll need liberation, and the resources that comes with that. The actual code is pretty easy to liberate, though.<\/p>\n<p>And, graphs are made with <a href=\"http:\/\/vis.stanford.edu\/protovis\/\">protovis<\/a>, including a custom Network-based layout to do DAGs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Did you miss the ability to look at our source code and figure out who&#8217;s working on what where? Thought that only github can do that? Let me give you a sneak peek at what I&#8217;ve been hacking on over the weekend. What&#8217;s the big picture of our mainline code development? You can see the [&hellip;]<\/p>\n","protected":false},"author":17,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[4452],"_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/posts\/386"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/comments?post=386"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/posts\/386\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/media?parent=386"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/categories?post=386"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/tags?post=386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}