On Mon, Mar 04, 2013 at 06:01 -0800, Meikel Brandmeyer (kotarak) wrote:
> Ok. So instead of the range I specify "[org.clojure/clojure "1.2"]". What does
> that mean? Now I either excluded *all* clojure versions not= 1.2 or the 
> version
> number doesn't mean anything. Then we should get rid of it completely and just
> specify the dependency without it. (It seems there maven poms which do exactly
> that? o.O)
> 
> The range [1.2;1.5) means that the library was tested with 1.2 up to 1.4 and -
> believing in semver - their patchlevel children. 1.5 (was at that time) not
> released, yet. So compatibility couldn't be guaranteed. For me this is a
> reasonable approach. Sure. It might work with 1.5. Everyone is free to place 
> an
> exclusion to help the system resolve the conflict. But you must be aware you
> might run into trouble.
> 
> If I follow your approach I must provide 4 branches of a library which
> basically consists of a single function: one branch per supported clojure
> version (so far). This is ridiculous. Or - as I said - we let all hope go and
> don't specify the version, only the dependency on the library itself.
> 
> I see we have a different basic idea of what a version range should mean. For
> me it's a promise that my library will work with the versions specified. If 
> one
> wants to use a version outside the range, that *might* be ok, but one should 
> be
> aware and pointed to that fact and the decision to do so should be explicit!
> 
> I'm probably just a pessimist, while you are an optimist.

Exactly! Thank you for stating this so clearly.
-- 
Wolodja <babi...@gmail.com>

4096R/CAF14EFC
081C B7CD FF04 2BA9 94EA  36B2 8B7F 7D30 CAF1 4EFC

Attachment: signature.asc
Description: Digital signature

Reply via email to