enchant2: update to 2.7.2. 2.7.2 (April 27, 2024) ---------------------- This release fixes a bug introduced in version 2.7.0. when calling providers窶� check methods, that could cause a crash. 2.7.1 (April 25, 2024) ---------------------- This release fixes some build-system bugs that crept into 2.7.0. Thanks to those who reported them and helped me diagnose them. In particular, building without --enable-relocatable is fixed. Some minor long-standing bugs that recently came to light with incorrect include paths were also fixed. Detection of the user窶冱 language has been updated to use a more modern and standard method. This means that in particular the LANG environment variable no longer overrides the LC_ALL and LC_MESSAGES environment variables, and support is added for the LANGUAGE variable, which has highest priority. For more details, see the documentation for the GLib function g_get_language_names. Minor code and documentation improvements were made. 2.7.0 (April 19, 2024) ---------------------- This release marks a major improvement in Enchant窶冱 maintainability: the main library has been translated into Vala, a modern object-oriented language with automatic memory management that, like Enchant, is based on GLib. Developers and packagers need not worry: this release is API and ABI-compatible with previous releases (with some minor changes, noted below, that is unrelated to the use of Vala), and you do not even need a Vala compiler to build it, thanks to Automake, which distributes the C source files generated by the Vala compiler. The build-time and run-time dependencies therefore remain unchanged. The library code is 33% smaller, and the total code-base has reduced by 12%. Thanks in particular to Vala窶冱 more modern string and collection handling, I anticipate it being much easier to add functionality in future. The use of Vala may also be extended in future to those provider back-ends written in C. The provider API is now declared private. No third-party providers have been available for Enchant for many years to my knowledge, and the only new provider in the last ten years, Nuspell, was implemented by Nuspell窶冱 authors in Enchant. The provider interface has changed in this release; and of course all the current providers have been updated, including the still-experimental Zemberek provider. There is a small change to the semantics of dictionaries: in the past, requesting a dictionary with the same language tag twice from a given provider returned the same dictionary object. This is no longer the case. This allows an application to have multiple active spelling sessions with the same broker object in any given language. Applications that relied on this functionality must in future keep track of the identity of spelling sessions themselves. I do not regard this as an API/ABI change, since it was only documented in a vague way by saying that dictionaries were 窶徨eference-counted窶�. This language has been removed from the documentation. Finally, a big thank-you to Eric Scott Albright, who wrote the test suite, and SIL, for funding his work. Enchant has an excellent test suite; one of my first contributions to the project was to get the test suite running on all platforms, as it was originally written just for Windows. It窶冱 an impressive set of tests that covers a huge range of normal and edge cases, and has often saved me before now; but it has never been more valuable than when rewriting the entire core library. Hopefully it has kept the number of new bugs I窶况e introduced to a minimum!diff -r1.38 -r1.39 pkgsrc/textproc/enchant2/Makefile
(wiz)
@@ -1,41 +1,41 @@ | @@ -1,41 +1,41 @@ | |||
1 | # $NetBSD: Makefile,v 1.38 2024/04/05 10:23:27 wiz Exp $ | 1 | # $NetBSD: Makefile,v 1.39 2024/04/28 09:47:24 wiz Exp $ | |
2 | 2 | |||
3 | DISTNAME= enchant-2.6.9 | 3 | DISTNAME= enchant-2.7.2 | |
4 | PKGNAME= ${DISTNAME:S/enchant/enchant2/} | 4 | PKGNAME= ${DISTNAME:S/enchant/enchant2/} | |
5 | CATEGORIES= textproc | 5 | CATEGORIES= textproc | |
6 | MASTER_SITES= ${MASTER_SITE_GITHUB:=AbiWord/} | 6 | MASTER_SITES= ${MASTER_SITE_GITHUB:=AbiWord/} | |
7 | GITHUB_PROJECT= enchant | 7 | GITHUB_PROJECT= enchant | |
8 | GITHUB_RELEASE= v${PKGVERSION_NOREV} | 8 | GITHUB_RELEASE= v${PKGVERSION_NOREV} | |
9 | 9 | |||
10 | MAINTAINER= pkgsrc-users@NetBSD.org | 10 | MAINTAINER= pkgsrc-users@NetBSD.org | |
11 | HOMEPAGE= https://abiword.github.io/enchant/ | 11 | HOMEPAGE= https://abiword.github.io/enchant/ | |
12 | COMMENT= Generic spell checking library | 12 | COMMENT= Generic spell checking library | |
13 | LICENSE= gnu-lgpl-v2.1 | 13 | LICENSE= gnu-lgpl-v2.1 | |
14 | 14 | |||
15 | USE_TOOLS+= autoconf groff pkg-config | 15 | USE_TOOLS+= autoconf groff pkg-config | |
16 | USE_LANGUAGES= c c++ | 16 | USE_LANGUAGES= c c++ | |
17 | USE_PKGLOCALEDIR= yes | 17 | USE_PKGLOCALEDIR= yes | |
18 | USE_LIBTOOL= yes | 18 | USE_LIBTOOL= yes | |
19 | PKGCONFIG_OVERRIDE+= enchant.pc.in | 19 | PKGCONFIG_OVERRIDE+= enchant.pc.in | |
20 | GNU_CONFIGURE= yes | 20 | GNU_CONFIGURE= yes | |
21 | CFLAGS.SunOS+= -D__EXTENSIONS__ | 21 | CFLAGS.SunOS+= -D__EXTENSIONS__ | |
22 | 22 | |||
23 | # Mostly needed due to hunspell headers making c++98 default unacceptable. | 23 | # Mostly needed due to hunspell headers making c++98 default unacceptable. | |
24 | FORCE_CXX_STD= c++11 | 24 | FORCE_CXX_STD= c++11 | |
25 | USE_CXX_FEATURES+= c++11 | 25 | USE_CXX_FEATURES+= c++11 | |
26 | 26 | |||
27 | # unsupported in pkgsrc - other dictionaries can be used instead | 27 | # unsupported in pkgsrc - other dictionaries can be used instead | |
28 | # avoid PLIST problems | 28 | # avoid PLIST problems | |
29 | CONFIGURE_ARGS+= --without-hspell | 29 | CONFIGURE_ARGS+= --without-hspell | |
30 | CONFIGURE_ARGS+= --without-voikko | 30 | CONFIGURE_ARGS+= --without-voikko | |
31 | 31 | |||
32 | # needed for testing | 32 | # needed for testing | |
33 | CONFIGURE_ARGS+= --enable-relocatable | 33 | CONFIGURE_ARGS+= --enable-relocatable | |
34 | TEST_TARGET= check | 34 | TEST_TARGET= check | |
35 | 35 | |||
36 | .include "options.mk" | 36 | .include "options.mk" | |
37 | 37 | |||
38 | .include "../../devel/glib2/buildlink3.mk" | 38 | .include "../../devel/glib2/buildlink3.mk" | |
39 | BUILDLINK_DEPMETHOD.unittest-cpp= build # XXX: for tests | 39 | BUILDLINK_DEPMETHOD.unittest-cpp= build # XXX: for tests | |
40 | .include "../../devel/unittest-cpp/buildlink3.mk" | 40 | .include "../../devel/unittest-cpp/buildlink3.mk" | |
41 | .include "../../mk/bsd.pkg.mk" | 41 | .include "../../mk/bsd.pkg.mk" |
@@ -1,18 +1,17 @@ | @@ -1,18 +1,17 @@ | |||
1 | @comment $NetBSD: PLIST,v 1.5 2023/12/26 13:33:48 tnn Exp $ | 1 | @comment $NetBSD: PLIST,v 1.6 2024/04/28 09:47:24 wiz Exp $ | |
2 | bin/enchant-2 | 2 | bin/enchant-2 | |
3 | bin/enchant-lsmod-2 | 3 | bin/enchant-lsmod-2 | |
4 | include/enchant-2/enchant++.h | 4 | include/enchant-2/enchant++.h | |
5 | include/enchant-2/enchant-provider.h | |||
6 | include/enchant-2/enchant.h | 5 | include/enchant-2/enchant.h | |
7 | ${PLIST.aspell}lib/enchant-2/enchant_aspell.la | 6 | ${PLIST.aspell}lib/enchant-2/enchant_aspell.la | |
8 | ${PLIST.hunspell}lib/enchant-2/enchant_hunspell.la | 7 | ${PLIST.hunspell}lib/enchant-2/enchant_hunspell.la | |
9 | ${PLIST.zemberek}lib/enchant-2/enchant_zemberek.la | 8 | ${PLIST.zemberek}lib/enchant-2/enchant_zemberek.la | |
10 | lib/libenchant-2.la | 9 | lib/libenchant-2.la | |
11 | lib/pkgconfig/enchant-2.pc | 10 | lib/pkgconfig/enchant-2.pc | |
12 | man/man1/enchant-2.1 | 11 | man/man1/enchant-2.1 | |
13 | man/man1/enchant-lsmod-2.1 | 12 | man/man1/enchant-lsmod-2.1 | |
14 | man/man5/enchant.5 | 13 | man/man5/enchant.5 | |
15 | share/doc/enchant/enchant-2.html | 14 | share/doc/enchant/enchant-2.html | |
16 | share/doc/enchant/enchant-lsmod-2.html | 15 | share/doc/enchant/enchant-lsmod-2.html | |
17 | share/doc/enchant/enchant.html | 16 | share/doc/enchant/enchant.html | |
18 | share/enchant-2/enchant.ordering | 17 | share/enchant-2/enchant.ordering |
@@ -1,6 +1,6 @@ | @@ -1,6 +1,6 @@ | |||
1 | $NetBSD: distinfo,v 1.27 2024/04/05 10:23:27 wiz Exp $ | 1 | $NetBSD: distinfo,v 1.28 2024/04/28 09:47:24 wiz Exp $ | |
2 | 2 | |||
3 | BLAKE2s (enchant-2.6.9.tar.gz) = eb4162f26dbb5c05deac3c8ace512f48b87cf3359110bb427193a5e769717834 | 3 | BLAKE2s (enchant-2.7.2.tar.gz) = fab76fa080134b6add2e67860d0db602b60caad632124e0181bd52693235ac23 | |
4 | SHA512 (enchant-2.6.9.tar.gz) = 7f3efec868445e8da95023a3c8b992893649eb263ba3811d87f4d293ab8af159818ad562714ed5bb584564fb61a2db55ea4c33872f2647ca86d0a20294e679bb | 4 | SHA512 (enchant-2.7.2.tar.gz) = 8612dcca965b49c25ab08a99c08cd6c0fddd7c5e26508245f48b9e7829ba80e05c9299e0c974bb52b2fa800598f550ec074339634d6bf8485fd17669bf1620fc | |
5 | Size (enchant-2.6.9.tar.gz) = 4431074 bytes | 5 | Size (enchant-2.7.2.tar.gz) = 4437254 bytes | |
6 | SHA1 (patch-config.h.in) = ac10b6900034acb0e961d73b1f9cf1a39bb00775 | 6 | SHA1 (patch-config.h.in) = ac10b6900034acb0e961d73b1f9cf1a39bb00775 |