Comments on the module-file format
brian at pontarelli.com
Fri Feb 5 08:33:42 PST 2010
On Feb 5, 2010, at 9:08 AM, Patrick Wright wrote:
>> One thing I'd like to bring up again regarding in-place revisions and SNAPSHOTs is that they are in general a bad idea for large systems and can cause grief when releasing and testing. You might have 10+ different versions of 1.1-SNAPSHOT for example and they are littered about your organization and servers. Often there are no constraints around releasing with SNAPSHOT dependencies either and this makes matters worse. Maven's system for all of this is something I would recommend not using.
>> Savant uses integration builds to solve this problem which create new versions each time using a timestamp. In general, integration builds are local only and they enforce strict semantics, which SNAPSHOT doesn't.
> For the record, I don't like using snapshots either, and wasn't trying
> to recommend it. While we've largely moved away from them in our team,
> individuals are still allowed to use snapshots if they want to access,
> essentially, the latest on trunk which has not yet been verified with
> an integration build. In any case, snapshots exist and the tools
> support them, so I wanted to bring that case up--where local artifacts
> are updated because a newer copy of the same version exists in a
> remote repo.
Completely understand and agree. I just want to bringing this up again because my knowledge thus far of Jigsaw is that it is based on three things that I feel will make it DOA:
- No (or poor) version compatibility
- Automatic upgrading/downgrading
I haven't played with it yet, so these items might not be true. Obviously, as with any tool, the developers can set hard versions (which they absolutely should do), but without the tools in place to support rapid development via integration builds, without resorting to SNAPSHOTs or automatic upgrading, it will be painful to use Jigsaw in anything of size (i.e. 20+ artifacts). The metric should be to support enterprise applications with 20+ internal artifacts and 20+ external artifacts at a minimum.
More information about the jigsaw-dev