On Nov 7, 2010, at 11:14 AM, jhumble wrote: > Ideally what I'd like is for Maven to explicitly support the continuous > delivery model and provide snapshots that are reproducible.
Snapshots can be reproducible if developers set dependencies on the timestamped name of the deployed version. I remember there being reasons that these strategies are discouraged (should be in the list archives), but those reasons may not apply here. If I understand the paradigm, it's not that developers would want to reject the latest version of any dependencies, just that the snapshot builds should be reproducible. Since the POM is the source of dependency resolution for any Maven build, it seems like the release plugin in use would have to update the project POMs to the currently resolved name of the actual dependency and check them in before the tag. But if the release checks in a POM and this is happening over and over for every checkin (a one line change in a heavily connected project could easily cause several POMs to be updated), suddenly dependent versions need to have their POMs changed, checked in, and new version propagated iteratively. On developer desktops, all these new POMs would need to be kept up to date constantly to avoid text conflicts. Maybe a VFS SCM could get around this, but.... ick! The tooling is suddenly very heavyweight. Does your book discuss ways to get around these issues? --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
