aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
6 daysRemove some leftover filesHEADmasterdicoweb_updateSergey Poznyakoff3
6 daysbootstrap: implement the --force optionSergey Poznyakoff1
6 daysUpdate DicowebWojciech Polak37
* Switch to Python 3.11+ with type hints * Upgrade Django to version 4.2 * Improve desktop and mobile views using HTML5 * Implement a dark mode * Use Poetry and pyproject.toml * Integrate Pylint and Mypy for development * Implement various fixes and improvements
6 daysgcide: fix markup testSergey Poznyakoff1
7 daysidxgcide: whitespace cleanupSergey Poznyakoff1
7 daysSkip duplicated headwords in idxgcide.Sergey Poznyakoff1
* modules/gcide/idxgcide.l (flush_headwords): Sort headwords. Skip duplicated ones.
7 daysFix more gcide entitiesSergey Poznyakoff1
7 daysAdd missing gcide typographic entitySergey Poznyakoff1
* modules/gcide/ent.c (gcide_entity): Add ycr - Y with breve
2023-10-17Don't install pp-setup if alternative preprocessor is requested.Sergey Poznyakoff2
* configure.boot (DEFAULT_PP_SETUP): New variable. * dicod/Makefile.am (inc_DATA: Use DEFAULT_PP_SETUP.
2023-10-17Fix the testsuite (always use --no-preprocessor)Sergey Poznyakoff6
2023-05-12Upgrade gnulib.Sergey Poznyakoff3
2023-05-12Version 2.11.90Sergey Poznyakoff2
2023-05-12Rewrite pcre support using pcre2Sergey Poznyakoff13
* NEWS: Document changes. * modules/pcre/Makefile.am: Use libpcre2-8 * modules/pcre/module.ac: Detect presence of libpcre2 and its headers. * modules/pcre/pcre.c: Rewrite using pcre2. * modules/pcre/tests/.gitignore: New file. * modules/pcre/tests/Makefile.am: New file. * modules/pcre/tests/atlocal.in: New file. * modules/pcre/tests/dicod.cfin: New file. * modules/pcre/tests/pcre00.at: New file. * modules/pcre/tests/pcre01.at: New file. * modules/pcre/tests/pcre02.at: New file. * modules/pcre/tests/testsuite.at: New file. * modules/pcre/tests/dict.out: New file.
2023-05-11Remove use of obsolete gethostby* functionsSergey Poznyakoff5
* configure.boot: Remove check for gethostbyaddr * dico/autologin.c (hostcmp): Rewrite using getaddrinfo. * dicod/accesslog.c (sockaddr_to_hostname): Rewrite using getnameinfo. * xdico/xhostname.c (xdico_local_hostname): : Rewrite using getaddrinfo.
2023-05-11Use newer autotoolsSergey Poznyakoff20
* configure.boot: Remove uses of obsolete autoconf macros. Require autoconf 2.71 and automake 1.16.5. * gint: Upgrade module. * grecs: Upgrade module. * am/gsasl.m4: Remove uses of obsolete autoconf macros. * modules/ldap/module.ac: Likewise. * modules/pam/module.ac: Likewise. * modules/pcre/module.ac: Likewise. * modules/python/module.ac: Likewise. * modules/wordnet/module.ac: Likewise. * dicod/dicod.c: Remove uses of RETSIGTYPE. * dicod/server.c: Likewise. * dicod/main.c: Use grecs_preprocess instead of the withdrawn grecs_preproc_run. * dicod/tests/apop.at: Quote user-db label in the configuration file. * dicod/tests/help01.at: Likewise. * dicod/tests/vis00.at: Likewise. * dicod/tests/vis01.at: Likewise. * dicod/tests/vis02.at: Likewise. * include/testsuite.inc (DICOD_RUN): Disable configuration preprocessing. * po/POTFILES.in: Remove references to non-existing source files.
2023-01-22Update copyright yearsSergey Poznyakoff360
2023-01-22Document extensions and corresponding capabilitiesSergey Poznyakoff2
2023-01-21Fix puszcza bug 595Sergey Poznyakoff1
This also fixes various unrelated reference counting errors * modules/python/python.c (PySelectionKey): New field: key_alloc. (_PySelectionKey_dealloc): Deallocate key if key_alloc is set. (_python_selector): Initialize key_alloc to 0, (struct python_result): New field: arg (_make_python_result): Take three argument. Initialize arg. (do_match): Allocate key and store it in PySelectionKey. Mark it with key_alloc=1. Don't decrement py_args refcount too early. (mod_define,mod_output_result) (mod_result_headers): Fix reference counting errors. (mod_free_result): Decrement gres->arg reference counter.
2023-01-21Remove unused local variables in python.cSergey Poznyakoff1
2022-08-05Fix GCIDE indexerSergey Poznyakoff27
It has been noted that <hw> is occasionally used within entries as a font marker, instead of <altname> or <xex>. Recent GCIDE corpus contains quite a number of such uses. This commit enables idxgcide to cope with it by using <ent> tag to mark the beginning of a dictionary entry. This position is then adjusted when first <hw> or <mhw> is seen and remains in effect for all remaining occurrences of <hw> in this entry. * modules/gcide/idxgcide.l (at_ent): New variable. (SET_HWPOS): New macro. (BEGIN_HEADWORD): Use SET_HWPOS. Update grammar. * modules/gcide/tests/dict/CIDE.A: Insert <ent> tags. * modules/gcide/tests/dict/CIDE.B: Likewise. * modules/gcide/tests/dict/CIDE.C: Likewise. * modules/gcide/tests/dict/CIDE.D: Likewise. * modules/gcide/tests/dict/CIDE.E: Likewise. * modules/gcide/tests/dict/CIDE.F: Likewise. * modules/gcide/tests/dict/CIDE.G: Likewise. * modules/gcide/tests/dict/CIDE.H: Likewise. * modules/gcide/tests/dict/CIDE.I: Likewise. * modules/gcide/tests/dict/CIDE.J: Likewise. * modules/gcide/tests/dict/CIDE.K: Likewise. * modules/gcide/tests/dict/CIDE.L: Likewise. * modules/gcide/tests/dict/CIDE.M: Likewise. * modules/gcide/tests/dict/CIDE.N: Likewise. * modules/gcide/tests/dict/CIDE.O: Likewise. * modules/gcide/tests/dict/CIDE.P: Likewise. * modules/gcide/tests/dict/CIDE.Q: Likewise. * modules/gcide/tests/dict/CIDE.R: Likewise. * modules/gcide/tests/dict/CIDE.S: Likewise. * modules/gcide/tests/dict/CIDE.T: Likewise. * modules/gcide/tests/dict/CIDE.U: Likewise. * modules/gcide/tests/dict/CIDE.V: Likewise. * modified: modules/gcide/tests/dict/CIDE.W * modified: modules/gcide/tests/dict/CIDE.X * modified: modules/gcide/tests/dict/CIDE.Y * modified: modules/gcide/tests/dict/CIDE.Z
2021-04-27Version 2.11release-2.11Sergey Poznyakoff3
2021-04-25Fix gcide scannerSergey Poznyakoff1
* modules/gcide/markup.l (YY_INPUT): Increment input_buf.
2021-04-25Fix searches in gciderSergey Poznyakoff1
2021-04-25Fix the Greek transliteration testsuite to follow d21d7c4cSergey Poznyakoff1
2021-04-25Fix printflike definitionsSergey Poznyakoff1
* maint/printflike: Remove stray characters.
2021-04-25Update THANKS fileSergey Poznyakoff1
2021-04-25gcide: fix in greek transliterationSergey Poznyakoff1
* modules/gcide/grk.c: Fix transliteration of iota perispomeni with diaeresis.
2021-04-24BugfixSergey Poznyakoff1
* dicod/commands.c (_show_database): Don't bail out if unable to encode the description.
2021-04-24Remove support for Python 2.xSergey Poznyakoff8
2021-01-08Upgrade submodules. Version 2.10.90.Sergey Poznyakoff17
* NEWS: Version 2.10.90 * configure.boot: Version 2.10.90. Raise autoconf, automake, and gettext requirements. * grecs: Upgrade to b0cbc54209de4c631952005b122ce09f84866700. * gnulib: Upgrade to v0.1-4336-gbdae9a5 * include/xdico.h: Define GNULIB_XALLOC_DIE and include xalloc.h. See the comment for the reason. * xdico/gnu/Makefile.am: Define GNULIB_XALLOC_DIE. * xdico/xalloc-die.c (xalloc-die): Call abort to avoid a 'noreturn' warning. * dico/dico-priv.h: Don't include xalloc.h * dicod/dicod.h: Likewise. * dicod/tests/apopauth.c: Likewise. * xdico/iputil.c: Likewise. * xdico/timer.c: Likewise. * xdico/userprivs.c: Likewise. * xdico/xhostname.c: Likewise. * xdico/xscript.c: Likewise. * xdico/xtkn.c: Likewise. * xdico/xutil.c: Likewise.
2021-01-06Update copyright yearsSergey Poznyakoff361
2020-09-07Fix compilation with python >=3.8Sergey Poznyakoff1
* modules/python/module.ac: Try python-config --libs --embed first.
2020-09-04Version 2.10release-2.10Sergey Poznyakoff361
2020-09-03Create po/LINGUAS during bootstrapSergey Poznyakoff1
This fixes the bug introduced by 4da4ddea3a. * bootstrap (po_sync): Create the LINGUAS list. New option --update-po.
2020-06-14Use grecs with wordsplit v1.1Sergey Poznyakoff1
2020-05-19Minor fixAhmed El-Mahmoudy2
* dicod/dicod.h: Add missing extern qualifiers. * include/dico/markup.h: Likewise.
2019-08-25BugfixSergey Poznyakoff1
* lib/utf8.c (utf8_iter0): Switch to error state if utf8_char_width returned 0
2019-07-10Switch to grecs eb66a000Sergey Poznyakoff3
2019-04-24Version 2.9release-2.9Sergey Poznyakoff2
2019-03-29Use AC_SYS_LARGEFILE to detect large file support statusSergey Poznyakoff1
Previously, that was done implicitly by gnulib. After 4da4ddea3a, it is necessary to do so explicitly, to avoid make sure library and apps use off_t of the same width. * configure.boot: Use AC_SYS_LARGEFILE
2019-03-10Version 2.8.90Sergey Poznyakoff2
2019-03-06New configure variable: DEFAULT_PIDFILE_NAMESergey Poznyakoff3
Allows the user to override the default pidfile location for dicod Suggested in https://puszcza.gnu.org.ua/bugs/?419 * configure.boot (DEFAULT_PIDFILE_NAME): New variable * dicod/Makefile.am (AM_CPPFLAGS): Define DEFAULT_PIDFILE_NAME * dicod/main.c (pidfile_name): Change initialization
2019-02-26Version 2.8release-2.8Sergey Poznyakoff3
2019-02-22Avoid introducing gnulib dependencies to libdicoSergey Poznyakoff392
After pulling updates from gnulib, it was discovered that it had added an unwanted dependency to the libdico. The dependency was added b redefining fseek to rpl_fseek in the config.h. Of course, that's quite OK for user programs and in fact that's one of the purposes of gnulib, so it's doing its job all right. However, this kind of depedencies is not acceptable in installable libraries, such as libdico. There are two ways of fixing this: (1) by including libgnu to the libdico, or (2) by creating pristine (i.e. stripped of any gnulib stuff) version of config.h and using it in the library sources. The first approach was used in mailutils for the libmu_aux convenience library. However, in dico I wouldn't like to introduce additional dependencies to the installable libraries and modules, therefore second approach has been chosen. Two separare configuration headers are introduced: include/prog/config.h Configuration header with gnulib dependencies. It is used by libxdico, and user-space programs: dico, dicod, idxgcide and some test programs. include/lib/config.h Pristine header, free from any gnulib additions. It is used by all installable libraries, including dicod modules. In order to create pristine header, bootstrap uses specially prepared temporary edition of configure.ac, which is stripped off any gl_.* statements. This approach introduces additional difficulties. The two header files are of course listed in the AC_CONFIG_HEADERS statement in configure.ac. Autotools give precedence to the first one. It is the only file for which autoheader creates the .h.in template. Further, automake creates in each Makefile.am the DEFAULT_INCLUDES statement, which lists the directory part of the first header, and this value is used in the compiler command line. This means that to include the pristine header, its path prefix needs to be specified. To avoid this, the nostdinc option is passed to AM_INIT_AUTOMAKE. As a side effect, it makes it impossible to build libltdl in the recursive mode (although its Makefile.am pretends otherwise). Thus, libltdl is built in nonrecursive mode from the main Makefile.am. Similar problem occurs with the gnulib itself, although in this case its bootstrapping tool provides sufficient mechanisms to help overcome it. Gnulib is built as a sub-library of libxdico. As a side effect, the libextra library is no longer needed. Another side effect is that the rewritten bootstrap script made it possible to use gnulib-tool directly, instead of using gnulib/build-aux/bootstrap wrapper. Following bugs are fixed by this change: https://puszcza.gnu.org.ua/bugs/?416 https://puszcza.gnu.org.ua/bugs/?417 https://puszcza.gnu.org.ua/bugs/?418 Almost all files in the project are affected by this change. However, some changes are pure bugfixes. These are: * lib/mergesort.c (mergesort): Rename to dico_mergesort to avoid name clash on Free and OpenBSD. * lib/stream.c (dico_stream_getdelim): Fix memory reallocation algorithm. * lib/utf8.c (utf8_wc_strstr): Reset errno to 0. * lib/libi18n.c: Don't depend on gnu/configmake.h * modules/wordnet/module.ac: Move definition of WORDNET_COND out of conditional context. This fixes the functionality of the configure --without-wordnet option. Some obsolete and unused files have been removed. These are: * include/gjdict.xbm * lib/bushu.dat * lib/bushu.h * lib/cursor.xbm * lib/jiscvt.c * makedict/ Main set of changes is: * bootstrap: Mostly rewritten as described above. * GNUmakefile: New file for the ease of maintenance. * maint/bootstrap.mk: New file. * gnulib.modules: Moved to maint/ * maint/printflike: New file. Lists printf-like functions for gettext. * configure.boot: Use AC_CONFIG_HEADERS with two header files. Use nostdinc option to AM_INIT_AUTOMAKE. (LTDL_INIT): Use nonrecursive option. (DICO_PROG_CONFIG,DICO_LIB_CONFIG) (DICO_PROG_INCLUDES,DICO_MODULE_INCLUDES): New substitution variables. (GRECS_HOST_PROJECT_INCLUDES): Fix value. (COND_LIBDICOSASL): New conditional. * Makefile.am: Build libltdl. * lib/Makefile.am: Move convenience libraries to another directory. Build only libdico. * dico/Makefile.am: Fix LDADD and includes. * dicod/Makefile.am: Likewise. * dicod/tests/Makefile.am: Likewise. * lib/tests/Makefile.am: Likewise. * modules/*/Makefile.am: Likewise. The directory struture is reorganized and the sources of convenience libraries moved to a separate directory: * xdico/Makefile.am: New file * xdico/appi18n.c * xdico/gsaslstr.c * xdico/iputil.c * xdico/timer.c * xdico/userprivs.c * xdico/xalloc-die.c * xdico/xhostname.c * xdico/xscript.c * xdico/xstream.c * xdico/xtkn.c * xdico/xutil.c: All moved from lib * xdico/gnu/Makefile.am: New file. * xdico/gnu: Gnulib sources imported to this directory.
2019-02-19Fix the definition of GRECS_HOST_PROJECT_LDADDSergey Poznyakoff1
2019-02-19Version 2.7.90Sergey Poznyakoff2
2019-02-18Make sure gnulib dependencies are satisfied when linking grecs testsuiteSergey Poznyakoff2
* configure.boot (GRECS_HOST_PROJECT_LDADD): Define new variable. * grecs: Upgrade.
2019-02-18Modify utf8 iterator to correctly handle non-zero-terminated strings.Sergey Poznyakoff5
* include/dico/utf8.h (utf8_iterator): New fields: length, err, end. (utf8_iter_err_p,utf8_iter_init): New prototype. * lib/utf8.c (utf8_iter0): Add boundary checking. Set end and error flags as appropriate. (utf8_iter_err_p): Rewrite. (utf8_iter_err_p): New function. (utf8_iter_init): New function. (utf8_iter_first): Rewrite using utf8_iter_init. (utf8_iter_next): Update length. * lib/linetrimstr.c (_linetrimstr_find_end): Don't assume zero-terminated string. * modules/dict.org/dictorg.c (revert_word): Likewise. * modules/outline/outline.c (revert_word): Likewise.
2019-02-18Fix out-of-boundary memory access in metaphone2 encoder.Sergey Poznyakoff1
* modules/metaphone2/metaphone2.c (looking_at,ISVOWEL): Implement additional boundary checking. All uses changed.
2019-02-17Fix attempted access to deallocated memorySergey Poznyakoff1
* lib/list.c (_dico_list_remove_item): Free entry after accessing its fields.

Return to:

Send suggestions and report system problems to the System administrator.