scala/scala — pull request #81 by xeno-by (2011-12-28 01:34:04+00:00)
Title: buildlocker for ant

This new command is more or less equivalent to regular "build".
It is capable of:
1) automatically unlocking locker
2) not building stuff that hasn't changed
3) packing locker classes into JARs at build\palo\lib
4) populating bin directory at build\palo\bin

All in all, buildlocker lets one work with locker as if it were quick.
Except that it is rebuilds quicker than quick by a factor of 2x.

Fastlocker does exactly the same, but without packing stuff into JARs.
This makes things even faster.

Of course, both targets don't build anything except library and compiler,
so they aren't appropriate for all workflows, but, it was useful for me!

P.S. Good news: you can use partest with locker, but it's not obvious.

First, you need to transplant missing stuff that is necessary to run partest.
I did it by maintaining a parallel clone of my repository that is used only
to produce partest dependencies (partest itself, scalap and library/actors).

Second, partest has to be switched into "testClasses" mode, which is tricky.
I honestly tried to find out how to do this, but then fell back to a hack:
https://gist.github.com/1525721.

Finally, you need a special launcher (I haven't made friends with std script).
The launcher is quite simple and looks as follows: https://gist.github.com/1525720