Neil Van Dyke
unread,Mar 21, 2016, 12:06:04 PM3/21/16Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Racket-Dev List
The perpetual backward-compatibility requirement of the package system
policy is still (including this morning) creating headaches for me, as a
party who is trying to maintain open source packages for things that I
develop and use for my own purposes.
If the package system isn't going to get a notion of
backward-incompatibility like PLaneT had (which, together with
simultaneous multiple-installed-version support, was 95% of what I
wanted), then...
Just tossing out an idea here, to prompt discussion, not proposing it...
What if it were within policy for a package author to introduce a
backwards-incompatible change, *iff* the author is reasonably confident
that it wouldn't break any users of the package *that have the code in
the official open source package catalog*. Then, the author could see
which other packages in the catalog use the author's package, and
inspect the code of those, to see how their use the package would be be
affected by the change.
This is idea is *not* good for software engineering (only a consumer
should be saying whether a spec change is OK to them; that's not the
provider's place). And also, closed-source users of packages would get
screwed, and likely end up maintaining diverging private forks of open
source packages they use without contributing changes upstream.
However, the current package system policy is onerous for third-party
package developers who are sharing some of their code as open source,
but need to do ordinary backward-incompatible changes without the open
source being a huge extra burden on that practice. The current policy is
begging for third-parties to abandon the open source version and go back
to closed as their code evolves, or to simply violate package system
policy and start breaking people.
So, while this idea I'm tossing out is a groaner, and I don't like it,
it might still be a better compromise than the current situation.
Discussion?
Neil V.