Several ports are broken as fallout from removing libgnuregex (=-(). Here's a list from a cursory grep: - comms/acfac - x11-toolkits/vdk - www/spreadlogd - textproc/mgdiff - textproc/chpp - lang/scm - devel/cvs - misc/colortail (still builds, but without regex support) - news/pan - editors/xcoral - editors/ne - editors/zile Patches forthcoming.
A commit references this bug: Author: kevans Date: Tue Dec 29 05:41:15 UTC 2020 New revision: 559542 URL: https://svnweb.freebsd.org/changeset/ports/559542 Log: [NEW PORT] devel/libgnuregex: GNU regex(3) extension library This version of libgnuregex is based on the latest version of devel/gnulib in the tree, and is intended as a direct replacement for the libgnuregex that has been historically provided in base. A port was chosen over all consumers dragging in devel/gnulib to save rebuilds since more than ~5 consumers need libgnuregex, and this also makes for an easier migration as ports just need to bring in the port and make sure LOCALBASE/lib and LOCALBASE/inclue are included. It is currently expected that ports dependant on this will fully specify the shlib version against ports tree convention so that we can provide a consistent experience across all versions of FreeBSD, past and future, using a less-broken version of the library. PR: 252245 Changes: head/devel/Makefile head/devel/libgnuregex/ head/devel/libgnuregex/Makefile head/devel/libgnuregex/files/ head/devel/libgnuregex/files/Makefile head/devel/libgnuregex/files/config.h head/devel/libgnuregex/files/gnuregex.h head/devel/libgnuregex/files/patch-regex.c head/devel/libgnuregex/files/patch-regex.h head/devel/libgnuregex/files/patch-regex__internal.h head/devel/libgnuregex/pkg-descr head/devel/libgnuregex/pkg-plist
As the maintainer of 2 of those consumers. I'd like to extend a HUGE thank you, Kyle, for doing this. Greatly appreciated! --Chris
> It is currently expected that ports dependant on this will fully specify the shlib version against ports tree convention I do not understand, where this expectation is coming from. I for one intend to arrange for my ports to continue using the base-provided library, where available - based on the OSVERSION - and I encourage other maintainers to do the same. The convention to NOT use explicit major library numbers is there for good reasons - why should this case be an exception, I do not understand... That said, thank you, Kyle, for doing the heavy-lifting. This was a lot of work, done in a short time...
(In reply to Mikhail T. from comment #3) > The convention to NOT use explicit major library numbers is there for good reasons - why should this case be an exception, I do not understand... This is explained in the rest of that very paragraph: > so that we can provide a consistent experience across all versions of FreeBSD, past and future, using a less-broken version of the library. You are not doing yourself or your users any favors by using the base version on any FreeBSD release. It has been removed because it has known bugs, and deciding to use it there will just confuse folks as expressions may inconsistently work across a FreeBSD upgrade on the same port version.
That’s a generic reason to use the latest version of everything. It doesn’t always apply. Upgrading the entire OS - jumping to a new major release - will always bring changes, that’s bit confusing anyone. On contrast, if, indeed, the new library version is as different as you suggest, there may be confusion - and possible breakage - as folks upgrade a port from one port-revision to another and encounter changes in behavior...
(In reply to Mikhail T. from comment #5) I don't really wish to continue this discussion. I'm telling you as effectively the closest thing to maintainer of libgnuregex in base that it's a terrible idea to use it, it's your prerogative to ignore that and do it anyways -- clearly your mind is already made up. The port you maintain is already certainly broken in subtle ways because of the version it's using, it's not my problem as long as it starts building on -CURRENT again.
A commit references this bug: Author: mi Date: Thu Dec 31 20:21:53 UTC 2020 New revision: 559774 URL: https://svnweb.freebsd.org/changeset/ports/559774 Log: Start searching for headers and libraries under ${LOCALBASE}/ -- in case newer implementations of anything are installed there. When compiling on 13.x or above, insist on libgnuregex version above 5 -- earlier FreeBSD releases came with libgnuregex.so.5, but that's now gone and replaced by the devel/libgnuregex port, which currently installs libgnuregex.so.6. PR: 252252 252250 252245 Submitted by: kevans Sponsored by: United Marsupials Changes: head/editors/xcoral/Makefile head/lang/scm/Makefile head/lang/scm/files/patch-build.scm
A commit references this bug: Author: kevans Date: Sun Jan 10 17:29:35 UTC 2021 New revision: 561088 URL: https://svnweb.freebsd.org/changeset/ports/561088 Log: audio/tagtool: use libgnuregex from devel/libgnuregex libgnuregex has been removed in FreeBSD 13.0. The version in base had a number of known or likely bugs associated with it, so just use the newer and more stable port on all supported FreeBSD versions. PR: 252245 MFH: 2020Q1 Changes: head/audio/tagtool/Makefile
A commit references this bug: Author: kevans Date: Sun Jan 10 17:31:20 UTC 2021 New revision: 561089 URL: https://svnweb.freebsd.org/changeset/ports/561089 Log: MFH: r561088 audio/tagtool: use libgnuregex from devel/libgnuregex libgnuregex has been removed in FreeBSD 13.0. The version in base had a number of known or likely bugs associated with it, so just use the newer and more stable port on all supported FreeBSD versions. PR: 252245 Changes: _U branches/2021Q1/ branches/2021Q1/audio/tagtool/Makefile