On Tuesday, 30 October 2012 at 20:08:04 UTC, Jacob Carlborg wrote:
On 2012-10-30 19:42, Paulo Pinto wrote:

Not really.

Let's say you compile everything fine, but on the deployment
platform, some IT guy has the cool idea of changing some configuration
settings.

That change will have as side effect that some third party dependencies will now be matched to another version different than what was used by
the package manager.

Again, then you haven't specified the dependencies correctly. If you just specify that "foo" depends on "bar" then you have only yourself to blame. You need to specify the exact version, i.e. "bar-1.2.3". If you cannot specify the exact version of an indirect dependency then you're not using a very good tools.


This cannot be enforced on runtime for most languages, that was why I was generalizing.

For example C and C++ require the programmer to do this, somehow.

Java requires you bundled something like OSGi with your application.

From the languages I have real project experience, only Groovy and .NET provide out of the box mechanisms for runtime validations given in the package manager.

--
Paulo

Reply via email to