Tuesday, September 27, 2011

kernel.org knockdown and 3.2 merge window

Stephen Rothwell wrote:
I have just done a quick check of the trees that are merged into
linux-next each day.  Of the 171 trees that represent work for the next
merge window, 89 only exist on kernel.org machines.  This means
(obviously) that I have not had updates to those 89 trees since the
kernel.org servers were taken down.

Sunday, September 25, 2011

kernel.org status update

The developers working on putting kernel.org back together have sent out a brief status update, mostly about the management of git trees. "This new infrastructure will no longer have shell access to the git repositories; instead we will be running git using the gitolite web glue. Gitolite uses ssh keys to push into it, so we will start sending out new ssh credentials to the active developers who had kernel.org accounts before." Git trees should go back online in the near future; everything else will take longer.

via lwn.net

Wednesday, September 21, 2011

insteadOf git.kernel.org

Surprisingly long maintenance downtime for kernel.org
(and especially git.kernel.org) gave me a chance to learn
git insteadOf trick. I already have replaced a couple of URLs,
for example:
[url "https://github.com/torvalds/linux.git"]
        insteadOf = git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

But the real power comes with something like this:

[url "git://readonly.mysuperproject.org"]
    insteadOf = "git://mysuperproject.org"
[url "ssh://gurusonly.mysuperproject.org"]
    pushInsteadOf = "git://mysuperproject.org"

Tuesday, September 13, 2011

C++0x extended friend syntax

While reading gcc 4.7 Changes, New Features, and Fixes list

- G++ now implements C++0x extended friend syntax:
    class Q
      static const int I = 2;
      friend W;

    struct B
      int ar[Q<B>::I];

Yeah, that's possibly cool to skip class key for friend declaration...
But wait... really...

int ar[Q<B>::I];

how is that klingon supposed to be readable in anyway?

int ar[Q<T,M>::I & 255 + X<B<C>>::I << 2];