Module reexports at the package level

Joachim Breitner mail
Fri Oct 4 18:02:17 UTC 2013


Hi,

Am Freitag, den 04.10.2013, 15:43 +0300 schrieb Roman Cheplyaka:
> The problematic situation could look like this:
> 
> package-a-1.0
> 
>   provides Data.Bar
> 
> package-b-2.0
> 
>   provides Data.Bar
> 
> package-a-1.0.1
> 
>   re-exports Data.Bar from package-b-2.0
> 
> Now, the change between package-a-1.0 and package-a-1.0.1 may seem
> almost invisible for the users, but if something depends on
> 
>   package-a ==1.0.*,
>   package-b ==2.0
> 
> ... then we have a conflict in case package-a-1.0 is picked.
> 
> But now I think this example is contrived because the constraint should
> really be package-a >= 1.0.1 && < 1.1 (we could only test our
> package successfully with package-a-1.0.1, and even ignoring module
> re-exports, package-a-1.0.1 could have added new entities).

well, its a good observation: Changing a module from existing to
re-exporting requires a bump at least in the third position (1.0.1), not
just the last (1.0.0.1), as if you are adding a new module, as people
can move from 1.0 to 1.0.1, but not necessarily the other way around.

Greetings,
Joachim

-- 
Joachim ?nomeata? Breitner
  mail at joachim-breitner.de ? http://www.joachim-breitner.de/
  Jabber: nomeata at joachim-breitner.de  ? GPG-Key: 0x4743206C
  Debian Developer: nomeata at debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://www.haskell.org/pipermail/libraries/attachments/20131004/00946e13/attachment.sig>




More information about the Libraries mailing list