<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Mon, Feb 22, 2016 at 3:28 PM Gabriel Scherer <<a href="mailto:gabriel.scherer@gmail.com">gabriel.scherer@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There are several different kinds of changes to a package, and it<br>
makes sense to let different people handle them.</blockquote><div><br></div><div>Indeed, I think repo maintainers can have to make some changes, but these should be the exception, not the rule. Anyway, it's good to explicit them.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">(1) Changes in global packaging policies that are orthogonal to any<br>
particular packages. When I changed around 3000 packages to add an<br>
"ocamlbuild" dependency,</blockquote><div><br></div><div>Of course, such automatic changes can only be done that way. Maybe, however, it would have been possible to avoid it. For example, OCaml without ocamlbuild could be proposed as a package only available above some OPAM version (1.2.2 ?), and that version would automatically add an ocamlbuild dependency to every package, except if it has an "ocamlbuild: false" header (or something like that). I am not saying it is the best solution, but changing 4000 packages seem even worse for me. I presume that, most of the time, it is possible to fix such problems in opam rather than in opam-repository.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">(2) Changes in external configurations that affect some systems that<br>
the maintainer is not particularly familiar with.</blockquote><div><br></div><div>Here, I have to disagree. First, it is always good to discuss such changes, just for developers to learn about platforms' specificities that they were not aware of. If you don't do that, you will fix a version, and the next version will be broken again. Second, you are mixing "repo maintainers" and "package maintainers". Maybe developers don't have to know about specific platforms (although they are probably using some platform specific thing otherwise no change would be needed), about here, we are discussing about what package maintainers are supposed to know, or to learn. Package maintainers, as in Debian, are not the authors, they are the people who decide to take responsibility for making a package public on OPAM. On the contrary, repo maintainers are only in charge of maintaining the global consistency of the repository, deciding when there is a conflict between package maintainers, and so on. The whole point of this discussion is to prevent repo maintainers from acting as package maintainers, so this distinction is important !</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I think that empowering Nix users to make the necessary<br>
opam-repository change to have good support for OCaml inside Nix(OS)<br>
is the right thing to do, instead of requiring the contributor to send<br>
dozens of emails to people they don't know, which can be enough of a<br>
requirement to discourage them from any further contribution.<br></blockquote><div><br></div><div>Except that their contributions will be gone at the next version of the package, and they will continue to have broken support...</div><div><br></div><div>--Fabrice</div></div></div>