と、思いきや一部のHoneycombブランチは見えてるようです。しかも結構前から。
僕が気づいたのはwebkitだけですが、これを眺めてみることにします。
http:/
ひとまずcloneして手元でgingerbread->honeycombの差分を取ります。
$ git clone git://android.git.kernel.org/platform/external/webkit.git $ git diff --stat origin/gingerbread..origin/honeycomb 18114 files changed, 1667748 insertions(+), 351392 deletions(-) $ git diff --stat origin/gingerbread..origin/honeycomb -- WebCore 5512 files changed, 603307 insertions(+), 212394 deletions(-) $ git diff --stat origin/gingerbread..origin/honeycomb -- WebKit/android 136 files changed, 13944 insertions(+), 2099 deletions(-) $ git diff origin/gingerbread..origin/honeycomb -- WebCore/Configurations/Version.xcconfig -MAJOR_VERSION = 533; -MINOR_VERSION = 1; +MAJOR_VERSION = 534; +MINOR_VERSION = 13;分かることは
- コアのメジャーバージョンが534に上がっている
- android固有のコードも大幅に変更がある
webkitを知らない人には何のことやらと思いますが、
- WebCore : platform依存のないコアの部分 *0
- WebKit/android : android固有のコード
- Version.xcconfig : 俗に言うWebKitのversionが書かれた場所
wikipediaに依れば、534はChrome6-10相当らしいです。webkit本家のtrunkですら今見たら534.22で、Safari 5.0.3branchは533.19ですから、honeycombのwebkitは相当新しいと言って良さそうです。
ちなみにfroyo->gingerbreadでは
$ git diff --stat origin/froyo..origin/gingerbread 81 files changed, 3125 insertions(+), 735 deletions(-) $ git diff --stat origin/froyo..origin/gingerbread -- WebCore 52 files changed, 748 insertions(+), 213 deletions(-) $ git diff --stat origin/froyo..origin/gingerbread -- WebKit/android 19 files changed, 2228 insertions(+), 521 deletions(-) $ git diff origin/froyo..origin/gingerbread -- WebCore/Configurations/Version.xcconfig (差分なし)この程度の差分です。いかにhoneycombの変更が巨大かが分かります。
追加された行で考えたら、1667748 / 3125 = 533 倍の変更量です。恐ろしいことになりました。
それから余談ですが、commit treeを見ると面白いことが分かります。
$ git log --pretty='%h %ci %cn %s' origin/gingerbread..origin/honeycomb 99b9746 2011-01-20 05:56:12 -0800 Android (Google) Code ReviewMerge "Do not reveal selection unless the focus controller is active." into honeycomb (中略) ac3440a 2010-03-26 14:30:27 +0000 Nicolas Roard Add checks to consider a fixed layer for compositing only if its dimensions are actually more than zero. 27ec2ee 2010-03-26 11:17:35 +0000 Steve Block Cherry-picks WebKit change 56105 to eliminate use of bzero in WebKit common code $ git name-rev --name-only ac3440a honeycomb~1007^2これが意味するところは、gingerbreadには入っていないがhoneycombには入っている、約1年前のcommitがある、ということです。 *1
つまり、honeycomb向けの開発はgingerとは別に1年前から始まっていたことが分かります。
ということで、コードの中身は全く追ってませんが、gitでlogを見るだけでも結構面白いですよ、というお話でした。
*0 : 実際にはplatform依存も混じってるけどねえ
*1 : git log --pretty='%H %ci %cn%s' origin/gingerbread..origin/honeycomb | git name-rev --stdin 等としたほうがもっと分かり易いかも
*1 : git log --pretty='%H %ci %cn%s' origin/gingerbread..origin/honeycomb | git name-rev --stdin 等としたほうがもっと分かり易いかも