|Summary:||lang/guile2: Update to 2.2.4|
|Product:||Ports & Packages||Reporter:||Yuri Victorovich <yuri>|
|Component:||Individual Port(s)||Assignee:||Alexey Dokuchaev <danfe>|
|Severity:||Affects Many People||CC:||bofh, danfe, graahnul.grom, w.schwarzenfeld|
Description Yuri Victorovich 2018-07-08 20:37:39 UTC
Created attachment 194961 [details] Draft patch The attached patch makes it built. stage-qa doesn't pass because one .scm file is installed into lib/. Also some ELFs aren't stripped.
Comment 1 Alexey Dokuchaev 2018-11-12 15:22:30 UTC
Can we push this forward? More software now requires Guile >= 2.2.0 and thus cannot get Guile support due to outdated version in the ports.
Comment 2 commit-hook 2018-11-12 15:50:53 UTC
A commit references this bug: Author: danfe Date: Mon Nov 12 15:50:45 UTC 2018 New revision: 484806 URL: https://svnweb.freebsd.org/changeset/ports/484806 Log: - Update `mail/mailutils' to version 3.5 - Now supports Berkeley DB versions 5 and 6 - Add GUILE_USES=pkgconfig because guile-config requires it - Because our `lang/guile2' is outdated, add GUILE_BROKEN PR: 229613 (related) Changes: head/mail/mailutils/Makefile head/mail/mailutils/distinfo
Comment 3 Alexey Dokuchaev 2019-06-24 16:06:13 UTC
Created attachment 205312 [details] Update to 2.2.5 Update to version 2.2.5 (stage-qa warnings still present, but waived for now).
Comment 4 Alexey Dokuchaev 2019-06-24 16:07:45 UTC
Request an exp-run.
Comment 5 Antoine Brodin 2019-06-25 15:47:58 UTC
Can you update the ports tree too? port xxx depends on shared library: libguile-2.0.so - not found
Comment 6 Muhammad Moinur Rahman 2019-06-25 20:17:21 UTC
(In reply to Antoine Brodin from comment #5) I would opt for a new port.
Comment 7 Alexey Dokuchaev 2019-06-26 01:49:55 UTC
It would make sense if there'd be *many* ports that won't work with 2.2.x and couldn't be easily patched. So far transition looks fine, I'll submit updated (full) patch soonish.
Comment 8 Muhammad Moinur Rahman 2019-06-26 10:56:53 UTC
(In reply to Alexey Dokuchaev from comment #7) If this is alright I will commit lang/guile22 by night http://pdr.bofh.network/data/latest-per-pkg/guile22/2.2.5/
Comment 9 Alexey Dokuchaev 2019-06-26 11:07:04 UTC
I don't understand why would you want to keep two ports (2.0 and 2.2 instead of letting me fix those that are not happy with 2.2 and upload another patch for an exp-run. I still have two or three ports to fix, I'd appreciate if you could wait.
Comment 10 Mathieu Arnold 2019-06-26 12:16:24 UTC
(In reply to Muhammad Moinur Rahman from comment #8) > (In reply to Alexey Dokuchaev from comment #7) > If this is alright I will commit lang/guile22 by night > http://pdr.bofh.network/data/latest-per-pkg/guile22/2.2.5/ No, you will not commit it tonight. I has been almost a year coming, waiting a few more days for a patch unbreaking those ports will not change anything.
Comment 11 Mathieu Arnold 2019-06-26 12:17:14 UTC
As a side note, an exp-run has been requested, and it has not been approved yet, any commit going on before approval will be reverted.
Comment 12 Alexey Dokuchaev 2019-06-26 16:33:02 UTC
OK, guys, I have the complete patch more or less ready, but have one question: in several ports, GUILE is not on OPTIONS_DEFAULT, so I've simply put it there for my tests. Do I need to include those line in uploaded patch, or you have a way to forcibly enable it for the exp-run via some global OPTIONS_SET=GUILE or something? In other words, shall I upload the patch as is, and then revert OPTIONS_DEFAULT lines before committing?
Comment 13 Antoine Brodin 2019-06-26 17:51:02 UTC
(In reply to Alexey Dokuchaev from comment #12) Upload the patch that you plan to commit. We will do the exp-run with OPTIONS_SET += GUILE
Comment 14 Mathieu Arnold 2019-06-26 17:55:48 UTC
(In reply to Alexey Dokuchaev from comment #12) > OK, guys, I have the complete patch more or less ready, but have one > question: in several ports, GUILE is not on OPTIONS_DEFAULT, so I've simply > put it there for my tests. Do I need to include those line in uploaded > patch, or you have a way to forcibly enable it for the exp-run via some > global OPTIONS_SET=GUILE or something? > > In other words, shall I upload the patch as is, and then revert > OPTIONS_DEFAULT lines before committing? some committers usually provide a list of things to add to make.conf, usually a list of: <OPTIONS_NAME>_SET= FOO like: lang_perl5-devel_SET= DTRACE
Comment 15 Alexey Dokuchaev 2019-06-26 18:12:11 UTC
Created attachment 205358 [details] Update to 2.2.5 + fix consumers Previous patch was missing the consumer ports, this one includes them. Most changes are relatively minor and mechanical, except for the devel/gdb (obtained via their bugtracker). One port (science/meep) I've eventually marked BROKEN after fixing it proved to be very tedious and actually unreliable (it is all swig-generated code). It's very outdated (PORTREVISION=18), there are newer versions available so it should better be fixed via updating instead. One port (devel/libruin) had revealed a bug in the new Guile (an auxiliary script, really) and had to be worked-round; reference provided in the patch.
Comment 16 Antoine Brodin 2019-06-26 22:42:52 UTC
mailfromd fails to configure when mailutils is built with GUILE on: http://package18.nyi.freebsd.org/data/120amd64-default-PR238728/2019-06-26_19h26m55s/logs/mailfromd-8.5_5.log The rest looks fine
Comment 17 commit-hook 2019-06-27 09:03:06 UTC
A commit references this bug: Author: danfe Date: Thu Jun 27 09:02:59 UTC 2019 New revision: 505200 URL: https://svnweb.freebsd.org/changeset/ports/505200 Log: Update Guile to version 2.2.5, modern stable version, and fix dependent ports to build against it. Most changes are rather minor and mechanical except for the devel/gdb (obtained via their bugtracker , courtesy of Doug Evans). One port (science/meep) I had to mark BROKEN after fixing it proved to be very tedious and actually unreliable. It is very old, there are newer versions available so it should be fixed by updating. One port (devel/libruin) had revealed a bug in the new Guile code (an auxiliary script, really) that had to be worked-round; reference to the problematic upstream commit is provided in the patch. PR: 229613 Exp-run by: antoine  https://sourceware.org/bugzilla/show_bug.cgi?id=21104#c8 Changes: head/cad/lepton-eda/Makefile head/devel/autogen/Makefile head/devel/gdb/Makefile head/devel/gdb/files/extrapatch-guile22 head/devel/guile-lib/Makefile head/devel/guile-lib/pkg-plist head/devel/libruin/Makefile head/finance/gnucash/Makefile head/finance/gnucash/pkg-plist head/games/aisleriot/Makefile head/games/aisleriot/pkg-plist head/games/gnubik/Makefile head/games/trackballs/Makefile head/graphics/graphviz/Makefile head/irc/weechat/Makefile head/lang/guile2/Makefile head/lang/guile2/distinfo head/lang/guile2/files/patch-libguile_____scm.h head/lang/guile2/pkg-plist head/lang/mdk/Makefile head/lang/slib-guile2/Makefile head/mail/mailutils/Makefile head/mail/mailutils/pkg-plist head/mail/mu/Makefile head/math/nlopt/Makefile head/math/nlopt/pkg-plist head/net/gnu-dico/Makefile head/net-im/freetalk/Makefile head/science/harminv/Makefile head/science/libctl/Makefile head/science/meep/Makefile head/science/mpb/Makefile head/sysutils/mcron/Makefile
Comment 18 commit-hook 2019-06-27 09:29:28 UTC
A commit references this bug: Author: danfe Date: Thu Jun 27 09:28:36 UTC 2019 New revision: 505201 URL: https://svnweb.freebsd.org/changeset/ports/505201 Log: Add missing USES+=iconv because most of Mailutils programs use functions it provides, but dependency was not recorded in the package. This bug went unnoticed for a long time because `libiconv.so.2' library typically exists on any FreeBSD installation, and was revealed by recent exp-run. Since port revision was bumped just now in the previous commit, abuse it and do not bump again. PR: 229613 Changes: head/mail/mailutils/Makefile
Comment 19 dmn 2019-06-29 19:49:46 UTC
Guile 2.2 is not just a next version, it's significantly different from 2.0 branch. Just read the release notes. There should be two separate ports for 2.0 and 2.2, as it is in other distributions. Though it can be built with guile 2.2, cad/lepton-eda 1.9.7 doesn't work with it (current git version does work). I'll try to make a patch for it, but not sure now if it's possible. I wonder why ports' maintainers didn't get notified about preparation of such a major changes in guile2 port.
Comment 20 Alexey Dokuchaev 2019-07-01 07:54:31 UTC
Version 2.0 is legacy version on its way out, and while some distributions try to support it, things start to bitrot already . One of the main reasons why people were so reluctant to move from 2.0 is because pre-2.2 versions were only deprecating old interfaces, while 2.2 had finally removed them. Most of those APIs had been deprecated for years, since 1.8 or earlier, but upstream en masse demonstrated total ignorance thereof. New software often requires 2.2+ (e.g. mail/mailutils). Given there are not that many Guile-dependent ports, let's try to identify and fix all 2.2-related issues (yes, I'm willing to help). If eventually it would deem necessary to create legacy `lang/guile20' port we can do that and switch those fundamentally broken (unfixable) ports back to it, but `lang/guile2' should track 2.2.x branch (version 2.2.6 has just been released, by the way) and be the default dependency. Otherwise things would just stagnate and bitrot, and we would be accumulating techdebt making any later transition harder with every day.  https://sourceware.org/bugzilla/show_bug.cgi?id=21104#c12
Comment 21 Alexey Dokuchaev 2019-07-02 18:13:45 UTC
Since I forgot to reference this PR in the commit log, `cad/lepton-eda' had been fixed in ports r505685.