Germain Le Chapelain <germ...@lanvaux.fr> writes: > On Tue, 12 Nov 2019 18:48:29 -0500 > Greg Troxel <g...@lexort.com> wrote: > >> Germain Le Chapelain <germ...@lanvaux.fr> writes: >> >> > I filled in pkg/54695 >> > >> > I had always assumed that all package tagged with these quarter tag were >> > all verified to build properly :| >> > My world is shattered >> >> I am guessing you are joking... > > No, I would certainly not joke on this mailing list: > In some aspects the OS is even more important than religion! > > I thought broken packages eventually moved to pkgsrc-wip. > That was actually one of my suggestions for the problem at hand.
If a package is broken *on all platforms* for an extended period, then yes it may get moved to wip, or deleted. But 'broken' is non-binary. Pkgsrc supports N operating sytems, M versions of those, O cpus, and P compilers. The total number of ways it can be used is vast. >> But seriously, the tag is applied to the tree, and it is how it is. > > I really wonder to which purpose, then. It's really pretty straightforward. During a quarter, people change pkgsrc, and most changes are for the better. Depending on the person, there is more or less testing of each update. Some things get broken, and many things are improved. During the freeze, there is a general notion of checking things and trying to fix problems, and then it is declared not so much "good enough" but "as good as it is going to get". We do not tag individual packages after verifying that they build (and pass their own tests, or some other functional tests) ont he platform you care about. (Tagging partial trees is these days viewed as an artifact of CVS; most VCSes support whole-repo tagging only now.)[ > I do understand it relates to the announcement email on netbsd-announce. > > You had me look into it: https://www.netbsd.org/docs/pkgsrc/pkgsrc.txt > > << * TAG is either 20xxQy for a stable branch, or head for packages built > from > the HEAD branch. >> Yes, and that's right. Note that "stable branch" does not mean "branch on which everything builds and works". It means "branch which is only changed following a configuration management process". > I knew I did not make that up! > Now, one may say that MLDonkey has stably been broken :) Usually, broken pacakges are due to upstream packages which do not build. So I would say: if you download the upstream release corresponding to what's packaged, and build it from source, following its instructions, does it build and work? If not, upstream is broken, and you should address the problems there. > Nevertheless the expectation on my side is that packages would build. That is an incorrect expectation! Fixes are welcome. > Anyways, I'll take a look and update the PR; as well as possibly run > these tests on our server. Great - pkgsrc is an effort of a large number of people and fixes are welcome. Looking at the PR, this seems to be about ocaml. ocaml seems to be a language family with effectively frequent changes in language specification. This in my view imposes a duty on programs that are written in ocaml to have new releases that are buildable with upcoming compiler versions, while still building with the old ones, and to have these new versions be sufficiently compatible that the updates are trivial. In practice, this doesn't happen :-( Now, one could argue that pkgsrc should have N versions of ocaml at once, and be able to build everything with different ones, like python. That's a vast amount of work, and if you want to start trying to support that in pkgsrc-wip, we hand out commit privileges there pretty easily. But really you are running into a problem in ocaml culture.