* John SJ Anderson <geneh...@genehack.org> [2015-05-09 23:40]: > I wonder if there was any discussion of how to best handle the > situation where a module starts "way downstream" but ends up "way > upstream" because of popular adoption, *if the module author doesn't > agree to the "way upstream" recommended policies*.
Yes there was. It’s perfectly fine for anyone to commit to these policies or not to, just as they personally feel and wish. Of course if *you* want to make a promise to your users that your own upstream does not want to make in turn – then you can’t. So then you have to consider whether you a) don’t make such a promise or b) stop depending on modules that don’t come with the same promises. Let’s call it the renege-or-sever choice. It was also brought up that if you are way upstream yourself with one of your modules, you shouldn’t take dependencies on things willy nilly – as that puts maintainers in an upstream position they may not want to be in. Rather before you take a new dependency you ought to ask the author whether he or she is willing to take on such responsibility; some just want to release some code, in which case pointing your horde of users at them would not be a very considerate move to either them or the users. Basically there are expectations and promises which have been implicit (maybe even unconscious) so far, and never communicated. These need to become explicit. And people’s wishes (at all levels) have to be respected. There is no wish to make any of this a matter of enforcement. Instead once this starts to get communicated, the renege-or-sever choice will likely lead to some shuffling at the upstream end of CPAN, but that should settle down once things consolidate by level of policy. It is, btw, not necessarily the case that “upstream == high stability commitment” – Mojo is a case in point. But it *is* the case that the Mojo project has always been clear about their policies in this regard, so users know what to expect and can choose accordingly. *That* is the crux of the matter – that promises and expectations be explicit, so that people are aware of them and can make informed choices. Regards, -- Aristotle Pagaltzis // <http://plasmasturm.org/>