summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2019-08-03 12:15:34 +0100
committerColin Watson <cjwatson@debian.org>2019-08-03 12:15:34 +0100
commitf22ec2853f6ea2123dc4a1fee566a828e8d86bc6 (patch)
treeb4d8e7309d6d25acee9b3a94f6e07acb209daacd /ChangeLog
parent182141146d0ad9c735949840504bdfc66332da4e (diff)
parent74d8f72dc1ca9620d3e8e1ae2ed9b19047ba348f (diff)
Import man-db_2.8.6.orig.tar.xz
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog670
1 files changed, 670 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 38f26248..e01cb4f1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,673 @@
+2019-08-03 Colin Watson <cjwatson@debian.org>
+
+ * Version: 2.8.6.
+
+2019-08-03 Colin Watson <cjwatson@debian.org>
+
+ Update syscall lists from systemd bca5a0eacc
+
+ * lib/sandbox.c (make_seccomp_filter): Add rseq (see
+ https://github.com/systemd/systemd/issues/12127).
+
+2019-05-02 Colin Watson <cjwatson@debian.org>
+
+ Improve manual build portability slightly
+
+ * manual/Makefile.am ($(MANUAL).pp, .pp.dvi, .pp.ps, .pp.tdvi,
+ .tdvi.tps, .pp.cat, .pp.html): Use "mv -f" rather than just "mv", since
+ Automake seems to prefer that for its own rules.
+
+2019-05-02 Colin Watson <cjwatson@debian.org>
+
+ Make manual build more robust against failures
+
+ Fixes Savannah bug #56254.
+
+ * manual/Makefile.am ($(MANUAL).pp, .pp.dvi, .pp.ps, .pp.tdvi,
+ .tdvi.tps, .pp.cat, .pp.html): Write output to *.new files and rename
+ into place, so that failures are properly retried in future runs.
+
+2019-03-03 Colin Watson <cjwatson@debian.org>
+
+ Avoid configure error message if nroff is broken
+
+ * m4/man-gnu-nroff.m4 (MAN_PROG_GNU_NROFF): Adjust test arguments
+ slightly to avoid a spurious error message if nroff is sufficiently
+ broken that it doesn't produce numeric output for "\n(.g".
+
+2019-03-03 Colin Watson <cjwatson@debian.org>
+
+ Fix warnings when configuring --without-libseccomp
+
+ * lib/sandbox.c (_sandbox_load): Mark sandbox and permissive parameters
+ unused when HAVE_LIBSECCOMP is undefined, to avoid warnings from "gcc
+ -Wunused-parameter".
+
+2019-03-03 Colin Watson <cjwatson@debian.org>
+
+ Add configure option to disable building manual
+
+ * m4/man-arg-manual.m4: New file.
+ * configure.ac: Add MAN_ARG_MANUAL.
+ * manual/Makefile.am: Perform most rules only if BUILD_MANUAL is true.
+ * manual/intro.me (Arguments to configure): Add --disable-manual.
+ * README (Non-generic arguments to configure): Update.
+ * NEWS: Document this.
+
+2019-03-03 Colin Watson <cjwatson@debian.org>
+
+ * NEWS: Document container type changes.
+
+2019-02-05 Colin Watson <cjwatson@debian.org>
+
+ Add some missing entries to lib/README
+
+ * lib/README: Add glcontainers.*, orderfiles.*, and sandbox.*.
+
+2019-02-05 Colin Watson <cjwatson@debian.org>
+
+ Remove pipeline.* from lib/README
+
+ It's been a separate library since 2010.
+
+ * lib/README: Remove pipeline.*.
+
+2019-02-05 Colin Watson <cjwatson@debian.org>
+
+ Inline lower into name_to_key
+
+ With only one remaining user, it wasn't pulling its weight.
+
+ * libdb/db_lookup.c (name_to_key): Inline the implementation of lower.
+ * lib/Makefile.am (libman_la_SOURCES): Remove lower.c and lower.h.
+ * lib/README: Remove lower.*.
+ * lib/lower.c, lib/lower.h: Remove.
+
+2019-02-05 Colin Watson <cjwatson@debian.org>
+
+ Simplify case-insensitivity in word_fnmatch
+
+ Using FNM_CASEFOLD saves us from having to lower-case the pattern
+ manually, and it also fixes the behaviour of "apropos -w" when given a
+ non-lower-case pattern.
+
+ * lib/wordfnmatch.c (word_fnmatch): Use isalpha and FNM_CASEFOLD rather
+ than manually lower-casing string or expecting pattern to have already
+ been lower-cased.
+ * NEWS: Document this.
+
+2019-02-05 Colin Watson <cjwatson@debian.org>
+
+ Simplify case-insensitive comparisons in whatis
+
+ We can just use strcasecmp and similar functions rather than
+ lower-casing comparands manually.
+
+ In some corner cases this may result in matches that would not
+ previously have been returned (e.g. "whatis -w" with a non-lower-case
+ pattern).
+
+ * src/whatis.c (parse_name): Use strcasecmp and FNM_CASEFOLD rather than
+ manually lower-casing dbname or expecting pages to have already been
+ lower-cased.
+ (match): Use strcasestr and isalpha rather than manually lower-casing
+ whatis or expecting page to have already been lower-cased.
+ (parse_whatis): Remove lowpages parameter; pass pages directly to match
+ instead.
+ (do_apropos): Remove lowpages; parse_name and parse_whatis no longer
+ need it.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Import Gnulib's strcase module
+
+ We're already using strcasecmp and strncasecmp.
+
+ * bootstrap.conf (gnulib_modules): Add strcase.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Add missing #include
+
+ * src/straycats.c: Include <stdbool.h>.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Use bool for boolean command-line options
+
+ * include/manconfig.h.in (debug_level): Change type to bool. Update all
+ definitions and users.
+ * lib/encodings.c (get_roff_encoding): Change type of "found" to bool.
+ * libdb/db_lookup.c (dblookup_all, dblookup_exact): Change "match_case"
+ parameter type to bool. Update all callers.
+ (dblookup_pattern): Change "match_case", "pattern_regex", and
+ "try_descriptions" parameter types to bool. Update all callers.
+ * libdb/db_storage.h (dblookup_all, dblookup_exact, dblookup_pattern):
+ Update prototypes.
+
+ * src/descriptions_store.c (store_descriptions): Change types of
+ "found_real_page" and "found_external" to bool.
+ * src/lexgrog_test.c (main): Change types of "some_failed" and "found"
+ to bool.
+ * src/man.c (parse_opt): Change types of "apropos" and "whatis" to bool.
+ (add_roff_line_length): Change "save_cat_p" parameter type to bool *.
+ Update all callers.
+ (make_browser): Change "found_percent_s" type to bool.
+ (display): Change "display_to_stdout" type to bool.
+ (try_db): Change "found_stale" type to bool.
+ (local_man_loop): Change "local_mf" type to bool.
+ (main): Change "found_subpage" type to bool.
+ * src/manp.c (read_config_file): Change "optional" parameter type to
+ bool. Update all callers.
+ * src/manp.h (read_config_file): Update prototype.
+
+ * src/check_mandirs.c (opt_test, force_rescan): Change types to bool.
+ Update all users.
+ * src/globbing_test.c (match_case, regex_opt, wildcard): Likewise.
+ * src/lexgrog_test.c (parse_man, parse_cat, show_whatis, show_filters):
+ Likewise.
+ * src/man.c (disable_cache, troff, global_apropos, print_where,
+ print_where_cat, catman, local_man_file, findall, update, match_case,
+ regex_opt, wildcard, names_only, no_hyphenation, no_justification,
+ subpages, ascii, save_cat, ditroff, htmlout): Likewise.
+ * src/mandb.c (opt_test, force_rescan, check_for_strays, purge, user,
+ create): Likewise.
+ * src/manp.c (disable_cache): Likewise.
+ * src/manpath.c (cat, global): Likewise.
+ * src/whatis.c (am_apropos, regex_opt, exact, wildcard, require_all,
+ long_output): Likewise.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Port roff_warnings to gl_list
+
+ * src/man.c (struct string_llist): Remove.
+ (parse_opt, make_roff_command): Convert roff_warnings to gl_list.
+ (main): Initialise roff_warnings.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Port parse_descriptions to gl_list
+
+ * src/descriptions.c (free_descriptions): Rename to ...
+ (page_description_free): ... this. Adjust for gl_list's expected
+ interface.
+ (parse_descriptions): Convert to gl_list. Return a zero-length list if
+ whatis is NULL, where previously we returned NULL.
+ * src/descriptions_store.c (store_descriptions): Convert descs to
+ gl_list.
+ * src/descriptions.h (struct page_description): Remove next member.
+ (parse_descriptions, store_descriptions): Update prototypes.
+ (free_descriptions): Remove prototype.
+ * src/lexgrog_test.c (main): Convert descs to gl_list.
+ * src/straycats.c (check_for_stray): Likewise. Remove conditional,
+ since parse_descriptions now never returns NULL.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Improve sandbox_free
+
+ * lib/sandbox.c (sandbox_free): Free sandbox->permissive_ctx too.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Free seccomp sandbox before normal exit
+
+ This makes valgrind slightly happier.
+
+ * src/lexgrog_test.c (main): Call seccomp_free before exiting.
+ * src/man.c (main): Likewise.
+ * src/manconv_main.c (main): Likewise.
+ * src/mandb.c (main): Likewise.
+ * src/whatis.c (main): Likewise.
+ * src/zsoelim_main.c (main): Likewise.
+
+2019-02-04 Colin Watson <cjwatson@debian.org>
+
+ Port dblookup to gl_list
+
+ * libdb/db_lookup.c (free_mandata_struct): Only free a single structure,
+ rather than following list pointers.
+ (split_content): Stop initialising pinfo->next.
+ (dblookup, dblookup_pattern): Convert to gl_list. Return a zero-length
+ list to indicate no matches, where previously we returned NULL.
+ (dblookup_exact): Adjust for changes in dblookup. This function
+ continues to return a single element rather than a list, since that's
+ all that its callers need.
+ * libdb/db_storage.h (struct mandata): Remove next member.
+ (dblookup_all, dblookup_pattern): Update prototypes.
+ * src/man.c (db_map_value_free): New function.
+ (try_db): Convert dblookup_pattern/dblookup_all cache to store gl_lists
+ or NULL. NULL now means a database open failure and a zero-length list
+ means no matches in an existing database, rather than vice versa.
+ * src/whatis.c (do_whatis_section): Convert to gl_list.
+
+2019-02-03 Colin Watson <cjwatson@debian.org>
+
+ Eliminate #ifdef in straycats.c
+
+ * src/straycats.c (check_for_stray): Replace hand-rolled
+ FAVOUR_STRAYCATS conditional with an equivalent compare_ids call.
+
+2019-02-03 Colin Watson <cjwatson@debian.org>
+
+ Add helper functions for common container cases
+
+ * lib/glcontainers.c (new_string_list, new_string_map, new_string_set):
+ New functions.
+ * lib/glcontainers.h (new_string_list, new_string_map, new_string_set):
+ Add prototypes.
+
+ * lib/orderfiles.c (order_files): Use new_string_list.
+ * src/check_mandirs.c (test_manfile, add_dir_entries): Likewise.
+ * src/globbing.c (look_for_file, expand_path): Likewise.
+ * src/man.c (get_section_list): Likewise.
+ * src/manp.c (get_scetions, get_manpath_from_path, create_pathlist):
+ Likewise.
+ * src/straycats.c (check_for_stray): Likewise.
+
+ * libdb/db_gdbm.c (man_gdbm_firstkey): Use new_string_map.
+ * src/check_mandirs.c (test_manfile): Likewise.
+ * src/globbing.c (update_directory_cache): Likewise.
+ * src/man.c (try_db): Likewise.
+ * src/mandb.c (main): Likewise.
+
+ * libdb/db_btree.c (btree_findkey): Use new_string_set.
+ * src/whatis.c (main): Likewise.
+
+2019-02-03 Colin Watson <cjwatson@debian.org>
+
+ Replace hashtable with Gnulib containers
+
+ Since we're using Gnulib's container types anyway, we might as well
+ reduce the maintenance burden of local code, especially since the result
+ tends to be more concise.
+
+ * bootstrap.conf (gnulib_modules): Add hash-map, hash-set, xmap, and
+ xset.
+ * lib/glcontainers.h (GL_MAP_FOREACH_START, GL_MAP_FOREACH_END): New
+ macros.
+
+ * lib/orderfiles.c (compare_physical_offsets, order_files): Convert
+ physical_offsets from a hashtable to a gl_map.
+ * libdb/db_btree.c (loop_check_hash): Rename to ...
+ (loop_check): ... this.
+ (btree_findkey): Convert loop_check from a hashtable to a gl_set.
+ * libdb/db_gdbm.c (parent_sortkey_hash): Rename to ...
+ (parent_keys: ... this.
+ (struct sortkey, parent_sortkey_hashtable_free): Remove.
+ (sortkey_hashtable_free): Rename to ...
+ (datum_free): ... this. Adjust for gl_list's expected interface.
+ (sortkey_compare): Rename to ...
+ (datum_compare): ... this. Adjust for gl_list's expected interface.
+ (datum_equals, datum_hash): New functions.
+ (man_gdbm_firstkey, man_gdbm_nextkey, man_gdbm_close): Convert
+ parent_keys from a hashtable to a gl_map, and convert its values from
+ hashtables with manual linking to gl_lists using a hash for fast lookup
+ by key.
+ * src/check_mandirs.c (whatis_hash): Rename to ...
+ (whatis_map): ... this.
+ (struct whatis_hashent): Rename to ...
+ (struct whatis): ... this.
+ (whatis_hashtable_free): Rename to ...
+ (whatis_free): ... this. Adjust for gl_map's expected interface.
+ (test_manfile): Convert whatis_map from a hashtable to a gl_map.
+ * src/globbing.c (struct dirent_hashent): Rename to ...
+ (struct dirent_names): ... this.
+ (dirent_hashtable_free): Rename to ...
+ (dirent_names_free): ... this. Adjust for gl_map's expected interface.
+ (dirent_hash): Rename to ...
+ (dirent_map): ... this.
+ (update_directory_cache): Convert dirent_map from a hashtable to a
+ gl_map.
+ * src/man.c (db_hash): Rename to ...
+ (db_map): ... this.
+ (db_hashtable_free): Remove.
+ (try_db, main): Convert db_map from a hashtable to a gl_map.
+ * src/mandb.c (process_manpath, tried_catdirs_free, purge_catdir,
+ purge_catdirs, main): Convert tried_catdirs from a hashtable to a
+ gl_map.
+ * src/whatis.c (display, main): Convert display_seen from a hashtable to
+ a gl_set.
+
+ * lib/Makefile.am (libman_la_SOURCES): Remove hashtable.c and
+ hashtable.h.
+ * lib/README: Remove hashtable.*.
+ * lib/hashtable.c, lib/hashtable.h: Remove.
+
+2019-02-01 Colin Watson <cjwatson@debian.org>
+
+ Port list_extensions to gl_list
+
+ * libdb/db_lookup.c (name_ext_equals): New function.
+ (list_extensions, dblookup): Convert to gl_list.
+ * libdb/db_storage.h (struct name_ext): New structure.
+ (list_extensions): Update prototype.
+ * libdb/db_delete.c (dbdelete): Convert to gl_list.
+
+2019-01-31 Colin Watson <cjwatson@debian.org>
+
+ Port ult_src tracing to gl_list
+
+ * src/ult_src.c (ult_trace, free_ult_trace): Remove.
+ (ult_src): Convert trace handling to gl_list.
+ * src/ult_src.h (struct ult_trace): Remove.
+ (ult_src): Update prototype.
+ (free_ult_trace): Remove.
+ * src/descriptions_store.c (store_descriptions): Convert to gl_list.
+ * src/descriptions.h (store_descriptions): Update prototype.
+ * src/check_mandirs.c (struct whatis_hashent): Change type of trace to
+ gl_list_t.
+ (whatis_hashtable_free, test_manfile): Convert to gl_list.
+
+2019-01-30 Colin Watson <cjwatson@debian.org>
+
+ Use bool in more places in whatis
+
+ * src/whatis.c (use_grep, do_whatis, do_apropos): Change "found"
+ parameter type to bool *. Update all callers.
+ (any_set, all_set): Change "found_here" parameter type to bool *.
+ Update all callers.
+ (parse_name, parse_whatis): Change "found" and "found_here" parameter
+ types to bool *. Update all callers.
+
+2019-01-30 Colin Watson <cjwatson@debian.org>
+
+ Port get_sections to gl_list
+
+ * src/manp.c (get_sections): Convert to gl_list.
+ * src/manp.h (get_sections): Update prototype.
+ * src/man.c (is_section, compare_candidates, do_global_apropos, man,
+ get_section_list): Convert to gl_list.
+ (compare_candidates): Sort sections missing from section_list to the
+ end.
+ (main): Free section_list.
+
+2019-01-30 Colin Watson <cjwatson@debian.org>
+
+ Use HTTPS URL for libpipeline
+
+ * NEWS, docs/INSTALL.quick: Update libpipeline URL to
+ https://nongnu.org/libpipeline/.
+
+2019-01-29 Colin Watson <cjwatson@debian.org>
+
+ Port expand_path to gl_list
+
+ * src/globbing.c (expand_path): Convert to gl_list.
+ * src/globbing.h (expand_path): Update prototype.
+ * src/manp.c (def_path, add_dir_to_list, add_dir_to_path_list): Convert
+ to gl_list.
+ * src/ult_src.c (find_include): Likewise.
+
+2019-01-29 Colin Watson <cjwatson@debian.org>
+
+ Fix failure to link libman using the Darwin linker
+
+ Thanks to George Plymale II and John Gardner.
+
+ * configure.ac: Add "-Wl,-flat_namespace,-undefined,suppress" to CFLAGS
+ on Darwin.
+ * NEWS: Document this.
+
+2019-01-29 Colin Watson <cjwatson@debian.org>
+
+ Port order_files and look_for_file to gl_list
+
+ This gets rid of some particularly awful allocation spaghetti in
+ src/globbing.c.
+
+ * bootstrap.conf (gnulib_modules): Add rbtree-list.
+ * lib/orderfiles.c (compare_physical_offsets): Expect arguments to be
+ const char * rather than const char **.
+ (order_files): Convert to taking a gl_list_t as an input/output argument
+ rather than an array. In the HAVE_LINUX_FIEMAP_H case, we produce a new
+ sorted list.
+ * lib/orderfiles.h (order_files): Update prototype.
+ * src/globbing.c (clear_glob): Remove.
+ (match_in_directory): Convert to gl_list. Remove inter-call allocation
+ and cleanup machinery.
+ (look_for_file): Convert to gl_list. Remove glob_t cleanup machinery;
+ the caller is now responsible for freeing the returned list.
+ * src/globbing.h (look_for_file): Update prototype.
+
+ * src/check_mandirs.c (add_dir_entries, count_glob_matches,
+ purge_normal): Convert to gl_list.
+ * src/straycats.c (check_for_stray): Likewise.
+
+ * src/check_mandirs.c (purge_whatis, purge_missing): Convert to gl_list.
+ Free list returned by look_for_file.
+ * src/globbing_test.c (main): Likewise.
+ * src/man.c (try_section, do_global_apropos_section): Likewise.
+ * src/zsoelim.l (zsoelim_open_file): Likewise.
+
+2019-01-29 Colin Watson <cjwatson@debian.org>
+
+ Default to --without-systemd* on non-Linux systems
+
+ systemd is unapologetically Linux-specific, so let's not require
+ non-Linux packages to explicitly turn this off.
+
+ * m4/man-arg-systemdsystemunitdir (MAN_ARG_SYSTEMDSYSTEMUNITDIR):
+ Default to with_systemdsystemunitdir=no on non-Linux systems.
+ * m4/man-arg-systemdtmpfilesdir (MAN_ARG_SYSTEMDTMPFILESDIR): Default to
+ with_systemdtmpfilesdir=no on non-Linux systems.
+
+2019-01-27 Colin Watson <cjwatson@debian.org>
+
+ Add --quiet to systemd mandb invocation
+
+ Fixes Debian bug #920628.
+
+ * init/systemd/man-db.service.in (ExecStart): Run mandb with --quiet.
+ * NEWS: Document this.
+
+2019-01-27 Colin Watson <cjwatson@debian.org>
+
+ Use macros for common cases of list iteration
+
+ * lib/glcontainers.h (GL_LIST_FOREACH_START, GL_LIST_FOREACH_END): New
+ macros.
+ * src/catman.c (main): Replace manual list iteration with equivalent
+ macros.
+ * src/man.c (do_global_apropos, locate_page_in_manpath): Likewise.
+ * src/mandb.c (main): Likewise.
+ * src/manp.c (get_config, print_list, get_sections, def_path,
+ get_manpath_from_path, create_pathlist, get_mandb_manpath, get_catpath,
+ is_global_mandir): Likewise.
+ * src/whatis.c (search): Likewise.
+ * src/zsoelim.l (zsoelim_open_file): Likewise.
+
+2019-01-27 Colin Watson <cjwatson@debian.org>
+
+ Rename gl-container-helpers to glcontainers
+
+ This is less annoying to type.
+
+ * lib/gl-container-helpers.c: Rename to ...
+ * lib/glcontainers.c: ... this.
+ * lib/gl-container-helpers.h: Rename to ...
+ * lib/glcontainers.h: ... this.
+ * lib/Makefile.am (libman_la_SOURCES): Replace gl-container-helpers.c
+ and gl-container-helpers.h with glcontainers.c and glcontainers.h.
+ * src/manp.c: Update include.
+
+2019-01-27 Colin Watson <cjwatson@debian.org>
+
+ Move Gnulib container helpers into common code
+
+ * src/manp.c (string_equals, string_hash, string_free): Move to ...
+ * lib/gl-container-helpers.c (string_equals, string_hash, plain_free):
+ ... here (new file).
+ * lib/gl-container-helpers.h: New file.
+ * lib/Makefile.am (libman_la_SOURCES): Add gl-container-helpers.c and
+ gl-container-helpers.h.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Turn config flags into an enum
+
+ * src/manp.c (enum config_flag): New enumeration.
+ (struct config_item, def_path, add_config, get_config, get_sections,
+ def_path): Use enum config_flag.
+ (describe_flag): New function.
+ (print_list): Describe flags rather than printing their integer value.
+ (add_def): Remove flag parameter; expect caller to pass the correct
+ config_def value instead. Make thing and config_def const.
+ (add_mandb_map): Remove flag parameter; expect caller to pass the
+ correct catdir value instead.
+ (add_to_dirlist): Update calls to add_mandb_map and add_def.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Port internal configuration storage to gl_list
+
+ * bootstrap.conf (gnulib_modules): Add array-list.
+ * src/manp.c (struct list): Remove.
+ (struct config_item): New structure.
+ (config_item_free): New function.
+ (add_to_list): Rename to ...
+ (add_config): ... this. Convert to gl_list. Update all callers.
+ (get_from_list): Rename to ...
+ (get_config): ... this. Convert to gl_list. Update all callers.
+ (iterate_over_list): Remove.
+ (print_list, get_sections, free_config_file, def_path,
+ get_manpath_from_path, get_mandb_manpath, get_catpath,
+ is_global_mandir): Port config list handling to gl_list.
+ (add_to_dirlist): Rename config parameter to config_file.
+ (read_config_file): Create empty config list. Rename previous local
+ config variable to config_file.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Use Gnulib's lchown function
+
+ Also remove lib/xchown.*; with only one call site, they don't pull their
+ weight over equivalent inline code.
+
+ * bootstrap.conf (gnulib_modules): Add lchown.
+ * configure.ac (AC_CHECK_FUNCS): Remove check for lchown.
+ * lib/Makefile.am (libman_la_SOURCES): Remove xchown.c and xchown.h.
+ * src/check_mandirs.c (chown_if_possible): Always use lchown rather than
+ chown, and inline the error check.
+
+ * po/POTFILES.in: Remove lib/xchown.c.
+ * po/man-db.pot, po/*.po: Update.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Simplify includes using Gnulib's fcntl module
+
+ * bootstrap.conf (gnulib_modules): Add fcntl.
+ * configure.ac (AC_CHECK_HEADERS): Remove check for fcntl.h.
+ * libdb/db_btree.c, libdb/db_ndbm.c, libdb/mydbm.h, src/man.c: Include
+ <fcntl.h> unconditionally.
+ * src/man.c: Remove conditional definitions of R_OK and X_OK; Gnulib's
+ <unistd.h> handles these.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Replace check_standard_fds with Gnulib's xstdopen
+
+ * bootstrap.conf (gnulib_modules): Add xstdopen.
+ * src/man.c (check_standard_fds): Remove.
+ (main): Call xstdopen rather than check_standard_fds.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Update to Gnulib 20190124
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Use bool type where appropriate
+
+ Now that we're using <stdbool.h> anyway due to gl_list (with Gnulib
+ providing <stdbool.h> if necessary), it makes sense to use it for our
+ own functions that have essentially boolean semantics.
+
+ * lib/encodings.c (compatible_encodings, is_roff_device): Return bool.
+ * lib/pathsearch.c (pathsearch, pathsearch_executable,
+ directory_on_path): Likewise.
+ * lib/sandbox.c (search_ld_preload, can_load_seccomp): Likewise.
+ * lib/security.c (running_setuid): Likewise.
+ * lib/wordfnmatch.c (word_fnmatch): Likewise. Update all callers.
+ * src/check_mandirs.c (sanity_check_db): Likewise.
+ * src/man.c (duplicate_candidates): Likewise.
+ * src/manp.c (is_global_mandir): Likewise. Update all callers.
+ * src/whatis.c (suitable_manpath, match): Likewise.
+ (any_set, all_set): Likewise. Update all callers.
+
+ * lib/encodings.h (is_roff_device): Update prototype.
+ * lib/pathsearch.h (pathsearch_executable, directory_on_path): Likewise.
+ * lib/security.h (running_setuid): Likewise.
+ * lib/wordfnmatch.h (word_fnmatch): Likewise.
+ * src/manp.h (is_global_mandir): Likewise.
+
+ * src/mandb.c (mandb, process_manpath): Change global_manpath parameter
+ type to bool.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Note that some C99 runtime facilities may be used
+
+ * docs/HACKING (Facilities and portability): Note that C99 runtime
+ facilities that are provided by Gnulib are OK.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Remove arbitrary limit on manpath size
+
+ Fixes Savannah bug #50324.
+
+ * bootstrap.conf (gnulib_modules): Add hash-pjw-bare, linkedhash-list,
+ stdbool, and xlist.
+ * include/manconfig.h.in (MAXDIRS): Remove.
+
+ * src/manp.c (tmplist): Remove.
+ (string_equals, string_hash, string_free): New functions.
+ (gripe_overlong_list): Remove.
+ (insert_override_dir, get_manpath_from_path, add_expanded_dir_to_list,
+ add_dir_to_list, add_man_subdirs, add_dir_to_path_list, create_pathlist,
+ free_pathlist): Port manpath list handling to gl_list_t.
+ * src/catman.c (main): Likewise.
+ * src/man.c (do_global_apropos, local_man_loop, locate_page_in_manpath,
+ main): Likewise.
+ * src/mandb.c (main): Likewise.
+ * src/whatis.c (suitable_manpath, search, main): Likewise.
+ * src/zsoelim.l (<<EOF>>, zsoelim_parse_file, zsoelim_open_file,
+ zsoelim_stdin, zsoelim_stdin_data_new): Likewise.
+ * src/zsoelim_main.c (main): Likewise.
+
+ * src/manp.h (create_pathlist, free_pathlist): Update prototypes.
+ * src/zsoelim.h (zsoelim_open_file, zsoelim_parse_file,
+ zsoelim_stdin_data_new): Likewise.
+
+ * NEWS: Document this.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ * NEWS: Document previous commit.
+
+2019-01-26 Colin Watson <cjwatson@debian.org>
+
+ Automatically add more man directories to manpath
+
+ Will Starms reported that, if both ../man and ../share/man directories
+ (for example) exist relative to a directory on $PATH, then only the
+ first was considered.
+
+ * src/manp.c (has_mandir): Rename to ...
+ (add_man_subdirs): ... this. Insert directories as they are found
+ rather than returning them, and continue even if some have been found.
+ (get_manpath_from_path): Update call to add_man_subdirs.
+
+2019-01-08 Colin Watson <cjwatson@debian.org>
+
+ Recommend a distribution-independent bug tracker
+
+ * README: Link to https://savannah.nongnu.org/bugs/?group=man-db for bug
+ reporting.
+
2019-01-05 Colin Watson <cjwatson@debian.org>
* Version: 2.8.5.