Sync with GNU gettext.
[gnulib.git] / NEWS
blobdef6cba3ef74078540fed44a34ab7f36806ebff7
1 Important general notes
2 -----------------------
4 Date        Modules         Changes
6 2021-06-04  (all)           The license notices in source files are now really
7                             stating the effective license, rather than a fake
8                             GPL notice.
9                             gnulib-tool no longer replaces GPL notices in source
10                             files by something else.
12 2020-08-16  (all)           Automake >= 1.11 and Autoconf >= 2.64 are required.
14 2019-12-11  Support for     These modules are now supported in C++ mode as well.
15             ISO C or POSIX  This means, while the autoconfiguration uses the C
16             functions       compiler, the resulting header files and function
17                             substitutes can be used with a matching C++ compiler
18                             as well.
20 2019-02-14  gnulib-tool     If you use multiple --local-dir options at once:
21                             The first one now has the highest priority, not the
22                             last one.
24 2019-01-04  (all)           The meaning of the 'Link' section in the module
25                             descriptions has been clarified: It overrides the
26                             combined 'Link' sections from the dependencies.
28 2018-10-22  (all)           Automake >= 1.11 and Autoconf >= 2.63 are required.
30 2016-09-05  progname        There is now an alternate module 'getprogname'. It
31                             defines a getprogname() function; use it to obtain
32                             the name of the current program.
33                             Recommended use:
34                             - In a program's main() function, and associated
35                               usage() and help() functions, use 'progname'.
36                             - In library code, or more generally any code that
37                               is not near the main() function, use
38                               'getprogname'.
40 2013-04-24  gettext         If your project uses 'gettextize --intl' it is now
41                             your responsibility to put -I$(top_builddir)/intl
42                             into the Makefile.am for gnulib.
44 2012-06-27  elisp-comp      The module 'elisp-comp' is removed; the script is
45                             not independently useful outside of automake.
47 2012-06-21  gnulib-tool     The option --with-tests is now implied by the
48                             options --create-testdir, --test,
49                             --create-megatestdir, --megatest.
51 2012-01-07  quotearg        In the C locale, the function will no longer use
52                             the grave accent character to begin a quoted
53                             string (`like this').  It will use apostrophes
54                             'like these' or, in Unicode locales, single quotes
55                             ‘like these’.  You may want to adjust any error
56                             messages that hard code the quoting characters.
58 2010-09-04  gnulib-tool     The option '--import' is no longer cumulative; it
59                             now expects the complete list of modules and other
60                             options on the command line. If you want to
61                             augment (not set) the list of modules, use the
62                             new option '--add-import' instead of '--import'.
64 User visible incompatible changes
65 ---------------------------------
67 Date        Modules         Changes
69 2021-03-21  fatal-signal    The function at_fatal_signal now returns an error
70                             indicator.
72 2021-03-21  diacrit         This deprecated module is removed.
74 2021-03-07  mbrtowc         For single-locale optimizations, you now need to
75             mbrtoc32        define GNULIB_WCHAR_SINGLE_LOCALE instead of
76             wcwidth         GNULIB_WCHAR_SINGLE.
78 2021-02-28  parse-datetime  The parse_datetime2 function has been moved
79                             to the new parse-datetime2 module, so that
80                             programs that need just parse_datetime need
81                             not build the fancier function.
83 2020-12-23  execute         These functions no longer execute scripts without
84             spawn-pipe      '#!' marker through /bin/sh. To execute such a
85             posix_spawn     script as a shell script, either add a '#!/bin/sh'
86             posix_spawnp    marker in the first line, or specify "/bin/sh" as
87                             the program to execute and the script as its first
88                             argument.
90 2020-12-18  free            This module, obsoleted in 2008, is gone.
92 2020-12-14  findprog-in     The function 'find_in_given_path' now takes a 3rd
93                             argument 'const char *directory'. To maintain the
94                             previous behaviour, insert NULL as additional 3rd
95                             argument.
97 2020-12-11  sh-quote        The argv argument of the 'shell_quote_argv' function
98                             is now of type 'const char * const *'.  You no
99                             longer need to cast read-only strings to 'char *'
100                             when constructing this argument.
101             execute         The prog_argv argument of the 'execute' function
102                             is now of type 'const char * const *'.  You no
103                             longer need to cast read-only strings to 'char *'
104                             when constructing this argument.
105             spawn-pipe      The prog_argv argument of the functions
106                             'create_pipe_out', 'create_pipe_in',
107                             'create_pipe_bidi' is now of type
108                             'const char * const *'.  You no longer need to cast
109                             read-only strings to 'char *' when constructing this
110                             argument.
111             pipe-filter-gi  The prog_argv argument of the
112                             'pipe_filter_gi_create' function is now of type
113                             'const char * const *'.  You no longer need to cast
114                             read-only strings to 'char *' when constructing this
115                             argument.
116             pipe-filter-ii  The prog_argv argument of the
117                             'pipe_filter_ii_execute' function is now of type
118                             'const char * const *'.  You no longer need to cast
119                             read-only strings to 'char *' when constructing this
120                             argument.
121             javaexec        The prog_argv argument of the 'execute_fn' function
122                             type is now of type 'const char * const *'.  Update
123                             the signature of all your implementations of this
124                             type.
125             csharpexec      The prog_argv argument of the 'execute_fn' function
126                             type is now of type 'const char * const *'.  Update
127                             the signature of all your implementations of this
128                             type.
130 2020-12-02  spawn-pipe      The functions 'create_pipe_out', 'create_pipe_in',
131                             'create_pipe_bidi' now take a 4th argument
132                             'const char *directory'. To maintain the previous
133                             behaviour, insert NULL as additional 4th argument.
135 2020-12-02  execute         The function 'execute' now takes a 4th argument
136                             'const char *directory'. To maintain the previous
137                             behaviour, insert NULL as additional 4th argument.
139 2020-10-16  hash            This module deprecates the 'hash_delete' function
140                             using gcc's "deprecated" attribute.  Use the better-
141                             named 'hash_remove' equivalent.
143 2020-08-24  diffseq         If you do not define NOTE_ORDERED to true,
144                             the NOTE_DELETE and NOTE_INSERT actions might
145                             not be done in order, to help cut down worst-case
146                             recursion stack space from O(N) to O(log N).
148 2020-08-01  libtextstyle-optional  You now need to invoke
149                                    gl_LIBTEXTSTYLE_OPTIONAL explicitly, because
150                                    this macro now takes an optional
151                                    MINIMUM-VERSION argument.
153 2020-08-01  libtextstyle    You now need to invoke gl_LIBTEXTSTYLE explicitly,
154                             because this macro now takes an optional
155                             MINIMUM-VERSION argument.
157 2020-06-27  clean-temp      The functions open_temp, fopen_temp now take a
158                             'bool delete_on_close' argument. If in doubt, pass
159                             false.
161 2020-06-27  tempname        The link requirements of these modules are changed
162             mkdtemp         from empty to $(LIB_GETRANDOM).
163             mkstemp
164             mkstemps
165             mkostemp
166             mkostemps
167             tmpfile
168             stdlib-safer
169             tmpfile-safer
170             clean-temp
171             javacomp        $(LIB_GETRANDOM) was added to the link requirements
172                             of this module.
174 2020-05-27  read-file       The functions provided by this module now take an
175                             'int flags' argument to modify the file reading
176                             behavior.  The read_binary_file function has been
177                             removed as it is no longer necessary.
179 2020-04-27  getdate         This deprecated module is removed. Use the module
180                             'parse-datetime' instead. Instead of
181                               #include "getdate.h"
182                             write
183                               #include "parse-datetime.h"
184                             The function get_date is renamed to parse_datetime.
186 2020-04-27  realloc         This deprecated module is removed. Use the module
187                             'realloc-gnu' instead.
189 2020-04-27  calloc          This deprecated module is removed. Use the module
190                             'calloc-gnu' instead.
192 2020-04-27  malloc          This deprecated module is removed. Use the module
193                             'malloc-gnu' instead.
195 2020-04-27  fnmatch-posix   This deprecated module is removed. Use the module
196                             'fnmatch' instead.
198 2020-04-27  pipe            This deprecated module is removed. Use the module
199                             'spawn-pipe' instead. Instead of
200                               #include "pipe.h"
201                             write
202                               #include "spawn-pipe.h"
204 2020-04-27  getopt          This deprecated module is removed. Please choose
205                             among getopt-posix and getopt-gnu. getopt-gnu
206                             provides "long options" and "options with optional
207                             arguments", getopt-posix doesn't.
209 2020-04-27  rename-dest-slash  This deprecated module is removed. Use the
210                                module 'rename' instead.
212 2020-04-27  unictype/bidicategory-*  These deprecated modules are removed. Use
213                                      the modules unictype/bidiclass-* instead.
215 2020-03-28  dosname         On native Windows, OS/2, DOS,
216                             IS_RELATIVE_FILE_NAME("c:") now returns false.
218 2020-03-28  filename        The macro IS_ABSOLUTE_PATH is deprecated. Use
219                             IS_ABSOLUTE_FILE_NAME instead.
220                             The macro IS_PATH_WITH_DIR is deprecated. Use
221                             IS_FILE_NAME_WITH_DIR instead.
223 2020-02-22  fchownat        This module no longer defines the functions
224                             'chownat' and 'lchownat'.  Program that need these
225                             functions should add the module 'chownat' to the
226                             list of imported modules.
228 2020-02-22  fchmodat        This module no longer defines the functions
229                             'chmodat' and 'lchmodat'.  Program that need these
230                             functions should add the module 'chmodat' to the
231                             list of imported modules.
233 2020-02-07  fchmodat        When applied to non-symlinks, these now act like
234             lchmod          chmod (the BSD behavior, which POSIX requires for
235                             fchmodat + AT_SYMLINK_NOFOLLOW), instead of failing
236                             (the GNU/Linux behavior through glibc 2.31).
237                             Future versions of GNU/Linux are planned to act as
238                             per POSIX and BSD.
240 2020-01-15  gc-pbkdf2-sha1  This module is deprecated.  Use gc-pbkdf2 instead.
242 2019-12-12  dfa             Its API now uses ptrdiff_t instead of size_t.
244 2019-12-11  dfa             To call dfamust, one must now call dfaparse
245                             without yet calling dfacomp.  This fixes a bug
246                             introduced on 2018-10-22 that broke dfamust.
248 2019-12-07  xstrtol         This module no longer defines the function
249             xstrtoll        'xstrtol_fatal'.  Program that need this function
250             xstrtoimax      should add the module 'xstrtol-error' to the list
251             xstrtoumax      of imported modules.
253 2019-05-90  verify          verify_true (deprecated 2011-06-15) is removed.
255 2019-03-16  fatal-signal    The function that you pass to at_fatal_signal now
256                             takes the signal as argument.
258 2019-02-02  c-strtod        This and related modules no longer define
259                             the HAVE_C99_STRTOLD macro.  Programs requiring
260                             standard strtold should use the strtold module.
262 2019-01-21  diacrit         This module is deprecated. Please use the module
263                             uninorm/canonical-decomposition instead.
265 2018-10-23  backupfile      backup_file_rename and find_backup_file_name
266                             now take an additional directory file descriptor
267                             argument.  Pass AT_FDCWD to get the old behavior.
269 2018-08-18  getpass         The include file is changed from "getpass.h" to
270             getpass-gnu     <unistd.h>.
272 2018-07-17  hard-locale     m4/hard-locale.m4 and gl_HARD_LOCALE are removed.
274 2018-07-05  renameat2       This module is renamed to 'renameatu' and all
275                             its include files and functions are renamed
276                             accordingly.
278 2017-12-30  chdir-safer     This module is removed.  It was deprecated
279                             on 2006-07-17.
281 2017-11-24  posixtm         Previously, callers had to specify either
282                             PDS_LEADING_YEAR or PDS_TRAILING_YEAR (but
283                             not both).  Now, callers should specify
284                             only PDS_TRAILING_YEAR; leading years are
285                             requested by not specifying PDS_TRAILING_YEAR.
287 2017-08-14  fcntl-h         This module now defaults O_CLOEXEC to a nonzero
288                             value instead of to 0, as the 'open' and
289                             'openat' modules now emulate O_CLOEXEC.
291 2017-07-23  strftime        This module is renamed to 'nstrftime'.
293 2017-05-19  closeout        close_stdout longer closes stderr when addresses
294                             are being sanitized, as the sanitizer outputs to
295                             stderr afterwards.
297 2017-02-16  binary-io       On MS-DOS and OS/2, set_binary_mode now fails
298                             on ttys, and sets errno == EINVAL.
300 2017-01-20  parse-datetime  The parse_datetime2 function now takes two
301                             more arguments TZ and TZSTRING, for the
302                             time zone and its name.
304 2017-01-16  host-cpu-c-abi  On ARM platforms, HOST_CPU_C_ABI is now set to
305                             'arm' or 'armhf' instead of 'armel'.
307 2017-01-15  localeinfo      Change case_folded_counterparts's first arg's type
308                             from wchar_t to wint_t, so it now accepts WEOF.
310 2016-12-17  getlogin        The link requirements of these modules are changed
311             getlogin_r      from empty to $(LIB_GETLOGIN).
313 2016-12-13  dfa             Remove DFA_CASE_FOLD flag. Now based on RE_ICASE.
315 2016-11-17  unistr/u32-strmblen   The function u32_strmblen can now return -1.
316 2016-11-17  unistr/u32-strmbtouc  The function u32_strmbtouc can now return -1.
318 2016-08-17  stdbool         This no longer supports _Bool for C++.
319                             Programs intended to be portable to C++
320                             compilers should use plain 'bool' instead.
322 2016-04-12  intprops        The following macros were removed:
323                             TYPE_TWOS_COMPLEMENT  TYPE_ONES_COMPLEMENT
324                             TYPE_SIGNED_MAGNITUDE
326 2015-09-25  c-ctype         The following macros were removed:
327                             C_CTYPE_CONSECUTIVE_DIGITS
328                             C_CTYPE_CONSECUTIVE_LOWERCASE
329                             C_CTYPE_CONSECUTIVE_UPPERCASE
331 2015-09-22  savewd          SAVEWD_CHDIR_READABLE constant removed.
333 2015-07-24  fprintftime     Exported functions' time zone arguments are now of
334             strftime        type timezone_t (with NULL denoting UTC) instead of
335                             type int (with nonzero denoting UTC).  These
336                             modules now depend on time_rz.
338 2015-04-24  acl             This module no longer defines file_has_acl.
339                             Use the new file-has-acl module for that.
340                             Using only the latter module makes for fewer
341                             link-time dependencies on GNU/Linux.
343 2015-04-15  acl             If your project only uses the file_has_acl()
344                             detection routine, then the requirements are
345                             potentially reduced by using $LIB_HAS_ACL rather
346                             than $LIB_ACL.
348 2015-04-03  hash            hash_insert0 function removed (deprecated in 2011).
350 2014-10-29  obstack         The obstack functions are no longer limited to
351                             int sizes; size values are now of type size_t.
352                             This changes both the ABI and the API.
353                             obstack_blank no longer accepts a negative size to
354                             shrink the current object; callers must now use
355                             obstack_blank_fast with a "negative" (actually,
356                             large positive) size for that.
358 2014-02-23  diffseq         The members too_expensive, lo_minimal and hi_minimal
359                             were removed from public structures, and the
360                             find_minimal argument was removed from diag
361                             and compareseq.
363 2014-02-11  savedir         The savedir and streamsavedir functions have a
364                             new argument specifying how to sort the result.
365                             The fdsavedir function is removed.
367 2013-05-04  gnulib-tool     CVS checkout of gnulib are no longer supported.
369 2013-02-08  careadlinkat    This module no longer provides the careadlinkatcwd
370                             function.
372 2012-06-26  getopt-posix    This module no longer guarantees that option
373                             processing is resettable.  If your code uses
374                             'optreset' or 'optind = 0;', rewrite it to make
375                             only one pass over the argument array.
377 2012-02-24  streq           This module no longer provides the STREQ macro.
378                             Use STREQ_OPT instead.
380 2012-01-10  ignore-value    This module no longer provides the ignore_ptr
381                             function.  It was deprecated a year ago, but existed
382                             so briefly before then that it never came into use.
383                             Now, the ignore_value function does its job.
385 2011-11-18  hash            This module deprecates the hash_insert0 function
386                             using gcc's "deprecated" attribute.  Use the better-
387                             named hash_insert_if_absent equivalent.
389 2011-11-04  openat          This module no longer provides the mkdirat()
390                             function. If you need this function, you now need
391                             to request the 'mkdirat' module.
393 2011-11-04  openat          This module no longer provides the fstatat()
394                             function. If you need this function, you now need
395                             to request the 'fstatat' module.
397 2011-11-03  openat          This module no longer provides the unlinkat()
398                             function. If you need this function, you now need
399                             to request the 'unlinkat' module.
401 2011-11-02  openat          This module no longer provides the fchmodat()
402                             function. If you need this function, you now need
403                             to request the 'fchmodat' module.
405 2011-11-01  alignof         This module no longer provides the alignof() macro.
406                             Use either alignof_slot() or alignof_type() instead.
408 2011-11-01  openat          This module no longer provides the fchownat()
409                             function. If you need this function, you now need
410                             to request the 'fchownat' module.
412 2011-10-03  poll            The link requirements of this module are changed
413                             from empty to $(LIB_POLL).
415 2011-09-25  sys_stat        This module no longer provides the fstat()
416                             function. If you need this function, you now need
417                             to request the 'fstat' module.
419 2011-09-23  signal          This module is renamed to 'signal-h'.
421 2011-09-22  select          The link requirements of this module are changed
422                             from $(LIBSOCKET) to $(LIB_SELECT).
424 2011-09-12  fchdir          This module no longer overrides the functions
425                             opendir() and closedir(), unless the modules
426                             'opendir' and 'closedir' are in use, respectively.
427                             If you use opendir(), please use module 'opendir'.
428                             If you use closedir(), please use module 'closedir'.
430 2011-08-04  pathmax         The header file "pathmax.h" no longer defines
431                             PATH_MAX on GNU/Hurd. Please use one of the methods
432                             listed in pathmax.h to ensure your package is
433                             portable to GNU/Hurd.
435 2011-07-24  close           This module no longer pulls in the 'fclose' module.
436                             If your code creates a socket descriptor using
437                             socket() or accept(), then a FILE stream referring
438                             to it using fdopen(), then in order to close this
439                             stream, you need the 'fclose' module.
441 2011-07-12  arg-nonnull     Renamed to snippet/arg-nonnull.
442             c++defs         Renamed to snippet/c++defs.
443             link-warning    Renamed to snippet/link-warning.
444             unused-parameter Renamed to snippet/unused-parameter.
445             warn-on-use     Renamed to snippet/warn-on-use.
447 2011-06-15  verify          verify_true (V) is deprecated; please use
448                             verify_expr (V, 1) instead.
450 2011-06-05  ansi-c++-opt    When a C++ compiler is not found, the variable CXX
451                             is now set to "no", not to ":".
453 2011-05-11  group-member    The include file is changed from "group-member.h"
454                             to <unistd.h>.
456 2011-05-02  exit            The module is removed.  It was deprecated
457                             on 2010-03-05.  Use 'stdlib' directly instead.
459 2011-04-27  mgetgroups      The 'xgetgroups' function has been split into
460                             a new 'xgetgroups' module.
462 2011-04-27  save-cwd        This module pulls in fewer dependencies by
463                             default; to retain robust handling of directories
464                             with an absolute name longer than PATH_MAX, you
465                             must now explicitly include the 'getcwd' module.
467 2011-04-19  close-hook      This module has been renamed to 'fd-hook' and
468                             generalized.
470 2011-03-08  regex-quote     The last argument is no longer an 'int cflags'
471                             but instead a pointer to a previously constructed
472                             'struct regex_quote_spec'.
474 2011-02-25  dirname         These modules no longer put #defines for the
475             dirname-lgpl    following symbols into <config.h>: ISSLASH,
476             backupfile      FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX,
477             lstat           FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR,
478             openat          FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE.
479             remove          Applications that need ISSLASH can include the new
480             rmdir           header dosname.h.
481             savewd
482             stat
483             unlink
485 2011-02-14  getloadavg      This module no longer #defines C_GETLOADAVG or
486                             HAVE_GETLOADAVG, as the application no longer needs
487                             to worry about how getloadavg is defined.  It no
488                             longer defines the obsolete symbol NLIST_NAME_UNION
489                             (which should have been internal to the module
490                             anyway).  Also, support for setgid use has been
491                             removed, as nobody seems to be using it; thus
492                             GETLOADAVG_PRIVILEGED is no longer #defined and
493                             KMEM_GROUP and NEED_SETGID are no longer
494                             substituted for.
496 2011-02-08  stdlib          Unless the random_r module is also used, this
497                             module no longer guarantees that the following are
498                             defined: struct random_data, RAND_MAX, random_r,
499                             srandom_r, initstate_r, setstate_r.
501 2011-02-08  wctype-h        This module no longer provides the iswblank()
502                             function. If you need this function, you now need
503                             to request the 'iswblank' module.
505 2011-02-07  wctype          This module is renamed to wctype-h.
507 2011-01-18  multiarch       This no longer #defines AA_APPLE_UNIVERSAL_BUILD;
508                             instead, use the shell var APPLE_UNIVERSAL_BUILD.
510 2010-12-10  pipe            This module is renamed to spawn-pipe. The include
511                             file is renamed to "spawn-pipe.h".
513 2010-10-05  getdate         This module is deprecated. Please use the new
514                             parse-datetime module for the replacement
515                             function parse_datetime(), or help us write
516                             getdate-posix for getdate(). Also, the header
517                             "getdate.h" has been renamed "parse-datetime.h",
518                             and doc/getdate.texi to doc/parse-datetime.texi.
520 2010-09-29  sys_wait        This module no longer provides the waitpid()
521                             function. If you need this function, you now need
522                             to request the 'waitpid' module.
524 2010-09-17  utimens         The function gl_futimens is removed, and its
525                             signature has been migrated to fdutimens.  Callers
526                             of gl_futimens should change function name, and
527                             callers of fdutimens should swap parameter order.
529 2010-09-17  fdutimensat     This function has a new signature: the fd now comes
530                             first instead of the dir/name pair, and a new
531                             atflag parameter is added at the end.  Old code
532                             should rearrange parameters, and pass 0 for atflag.
534 2010-09-13  regex           The module is not guaranteeing anymore support for
535                             64-bit regoff_t on 64-bit systems.  The size of
536                             regoff_t will always be 32-bit unless the program
537                             is being configured --with-included-regex.  This
538                             may change again in the future once glibc provides
539                             this feature as well.
541 2010-09-12  savedir         The fdsavedir function is now deprecated.
543 2010-09-10  fcntl-h         This module now defaults O_CLOEXEC to 0, and
544                             it defaults O_EXEC and O_SEARCH to O_RDONLY.
545                             Use "#if O_CLOEXEC" instead of "#ifdef O_CLOEXEC".
547 2010-08-28  realloc         This module is deprecated. Use 'realloc-gnu'
548                             instead. It will be removed 2012-01-01.
550 2010-08-28  calloc          This module is deprecated. Use 'calloc-gnu'
551                             instead. It will be removed 2012-01-01.
553 2010-08-28  malloc          This module is deprecated. Use 'malloc-gnu'
554                             instead. It will be removed 2012-01-01.
556 2010-08-14  memxfrm         This module is renamed to amemxfrm. The include
557                             file is renamed to "amemxfrm.h". The function is
558                             renamed to amemxfrm.
560 2010-08-09  symlinkat       This module now only provides symlinkat; use the
561                             new module 'readlinkat' if needed.
563 2010-07-31  ansi-c++-opt    If Autoconf >= 2.66 is used, the 'configure'
564                             option is now called --disable-c++ rather than
565                             --disable-cxx.
567 2010-04-02  maintainer-makefile
568                             The macro _prohibit_regexp has been revamped into
569                             a new macro _sc_search_regexp; custom syntax
570                             checks in your cfg.mk will need to be rewritten.
572 2010-03-28  lib-ignore      This module now provides a variable
573                             IGNORE_UNUSED_LIBRARIES_CFLAGS that you should
574                             add to LDFLAGS (when linking C programs only) or
575                             CFLAGS yourself. It is no longer added to LDFLAGS
576                             automatically.
578 2010-03-18  pty             This module now only declares the pty.h header.
579                             Use the new modules 'forkpty' or 'openpty' to
580                             get the functions that were previously provided.
582 2010-03-05  exit            This module is deprecated, use 'stdlib' directly
583                             instead.  It will be removed 2011-01-01.
585 2009-12-13  sublist         The module does not define functions any more that
586                             call xalloc_die() in out-of-memory situations. Use
587                             module 'xsublist' and include file "gl_xsublist.h"
588                             instead.
590 2009-12-13  list            The module does not define functions any more that
591                             call xalloc_die() in out-of-memory situations.
592                             Use module 'xlist' and include file "gl_xlist.h"
593                             instead.
595 2009-12-13  oset            The module does not define functions any more that
596                             call xalloc_die() in out-of-memory situations.
597                             Use module 'xoset' and include file "gl_xoset.h"
598                             instead.
600 2009-12-10  *               Most source code files have been converted to
601                             indentation by spaces (rather than tabs). Patches
602                             of gnulib source code needs to be updated.
604 2009-12-09  link-warning    The Makefile rules that use $(LINK_WARNING_H) now
605                             must contain an explicit dependency on
606                             $(LINK_WARNING_H).
608 2009-11-12  getgroups       These functions now use a signature of gid_t,
609             getugroups      rather than GETGROUPS_T.  This probably has no
610                             effect except on very old platforms.
612 2009-11-04  tempname        The gen_tempname function takes an additional
613                             'suffixlen' argument. You can safely pass 0.
615 2009-11-04  nproc           The num_processors function now takes an argument.
617 2009-11-02  inet_pton       The use of this module now requires linking with
618                             $(INET_PTON_LIB).
620 2009-11-02  inet_ntop       The use of this module now requires linking with
621                             $(INET_NTOP_LIB).
623 2009-10-10  utimens         The use of this module now requires linking with
624                             $(LIB_CLOCK_GETTIME).
626 2009-09-16  canonicalize-lgpl
627                             The include file is changed from "canonicalize.h"
628                             to <stdlib.h>.
630 2009-09-04  link-follow     The macro LINK_FOLLOWS_SYMLINK is now tri-state,
631                             rather than only defined to 1.
633 2009-09-03  openat          The include files are standardized to POSIX 2008.
634                             For openat, include <fcntl.h>; for
635                             fchmodat, fstatat, and mkdirat, include
636                             <sys/stat.h>; for fchownat and unlinkat,
637                             include <unistd.h>.  For all other
638                             functions provided by this module,
639                             continue to include "openat.h".
641 2009-08-30  striconveh      The functions mem_cd_iconveh and str_cd_iconveh
642                             now take an 'iconveh_t *' argument instead of three
643                             iconv_t arguments.
645 2009-08-23  tempname        The gen_tempname function takes an additional
646                             'flags' argument. You can safely pass 0.
648 2009-08-12  getopt          This module is deprecated. Please choose among
649                             getopt-posix and getopt-gnu. getopt-gnu provides
650                             "long options" and "options with optional
651                             arguments", getopt-posix doesn't.
653 2009-06-25  fpurge          The include file is changed from "fpurge.h" to
654                             <stdio.h>.
656 2009-04-26  modules/uniconv/u8-conv-from-enc
657             modules/uniconv/u16-conv-from-enc
658             modules/uniconv/u32-conv-from-enc
659                             The calling convention of the functions
660                             u*_conv_from_encoding is changed.
662 2009-04-26  modules/uniconv/u8-conv-to-enc
663             modules/uniconv/u16-conv-to-enc
664             modules/uniconv/u32-conv-to-enc
665                             The calling convention of the functions
666                             u*_conv_to_encoding is changed.
668 2009-04-24  maintainer-makefile
669                             The maint.mk file was copied from
670                             coreutils, and the old
671                             coverage/gettext/indent rules were
672                             re-added.  If you used 'make syntax-check'
673                             this will add several new checks.  If some
674                             new check is annoying, add the name of the
675                             checks to 'local-checks-to-skip' in your
676                             cfg.mk.
678 2009-04-01  visibility      Renamed to lib-symbol-visibility.
680 2009-04-01  ld-version-script  Renamed to lib-symbol-versions.
682 2009-03-20  close           The substituted variable LIB_CLOSE is removed.
684 2009-03-05  filevercmp      Move hidden files up in ordering.
686 2009-01-22  c-strtod        This function no longer calls xalloc_die(). If
687             c-strtold       you want to exit the program in case of out-of-
688                             memory, the calling function needs to arrange
689                             for it, like this:
690                                 errno = 0;
691                                 val = c_strtod (...);
692                                 if (val == 0 && errno == ENOMEM)
693                                   xalloc_die ();
695 2009-01-17  relocatable-prog  In the Makefile.am or Makefile.in, you now also
696                             need to set RELOCATABLE_STRIP = :.
698 2008-12-22  getaddrinfo     When using this module, you now need to link with
699             canon-host      $(GETADDRINFO_LIB).
701 2008-12-21  mbiter          The header files "mbiter.h", "mbuiter.h",
702             mbuiter         "mbfile.h" can now be included without checking
703             mbfile          HAVE_MBRTOWC. The macro HAVE_MBRTOWC will no
704                             longer be defined by these modules in a year. If
705                             you want to continue to use it, you need to invoke
706                             AC_FUNC_MBRTOWC yourself.
708 2008-11-11  warnings        This module subsumes the file m4/warning.m4 which
709                             was removed.
711 2008-10-20  lstat           The include file is changed from "lstat.h" to
712                             <sys/stat.h>.
714 2008-10-20  getaddrinfo     The include file is changed from "getaddrinfo.h"
715                             to <netdb.h>.
717 2008-10-19  isnanf          The include file is changed from "isnanf.h" to
718                             <math.h>.
719             isnand          The include file is changed from "isnand.h" to
720                             <math.h>.
721             isnanl          The include file is changed from "isnanl.h" to
722                             <math.h>.
724 2008-10-18  lchmod          The include file is changed from "lchmod.h" to
725                             <sys/stat.h>.
727 2008-10-18  dirfd           The include file is changed from "dirfd.h" to
728                             <dirent.h>.
730 2008-10-18  euidaccess      The include file is changed from "euidaccess.h"
731                             to <unistd.h>.
733 2008-10-18  getdomainname   The include file is changed from "getdomainname.h"
734                             to <unistd.h>.
736 2008-09-28  sockets         When using this module, you now need to link with
737                             $(LIBSOCKET).
739 2008-09-24  sys_select      The limitation on 'select', introduced 2008-09-23,
740                             was removed.  sys_select now includes a select
741                             wrapper for Winsock.  The wrapper expects socket
742                             and file descriptors to be compatible as arranged
743                             by the sys_socket on MinGW.
745 2008-09-23  sys_socket      Under Windows (MinGW), the module now adds
746                             wrappers around Winsock functions, so that
747                             socket descriptors are now compatible with
748                             file descriptors.  In general, this change
749                             will simply improve your code's portability
750                             between POSIX platforms and Windows.  In
751                             particular, you will be able to use ioctl and
752                             close instead of ioctlsocket and closesocket,
753                             and test errno instead of WSAGetLastError ().
754                             On the other hand, you have to audit your code to
755                             remove usage of these Winsock-specific functions.
757                             This change does not remove the need to call
758                             the gl_sockets_startup function from the sockets
759                             gnulib module.  Also, for now select is disabled
760                             when you include the sys_socket module; while
761                             the functionality will be restored soon, for
762                             efficiency it is suggested to use the poll system
763                             poll system call and gnulib module instead.
765 2008-09-13  EOVERFLOW       The module is removed. Use module errno instead.
767 2008-09-01  filename        The module does not define the function
768                             concatenated_filename any more. To get an
769                             equivalent function, use function
770                             xconcatenated_filename from module
771                             'xconcat-filename'.
773 2008-08-31  havelib         On Solaris, when searching for 64-bit mode
774                             libraries the directory $prefix/lib is now ignored.
775                             Instead the directory $prefix/lib/64 is searched.
776                             You may need to create a symbolic link for
777                             $prefix/lib/64 if you have 64-bit libraries
778                             installed in $prefix/lib.
780 2008-08-19  strverscmp      The include file is changed from "strverscmp.h"
781                             to <string.h>.
783 2008-08-14  lock            The include file is changed from "lock.h"
784                             to "glthread/lock.h".
785             tls             The include file is changed from "tls.h"
786                             to "glthread/tls.h".
788 2008-07-17  c-stack         The module now requires the addition of
789                             $(LIBCSTACK) or $(LTLIBCSTACK) in Makefile.am,
790                             since it may depend on linking with libsigsegv.
792 2008-07-07  isnanf-nolibm   The include file is changed from "isnanf.h"
793                             to "isnanf-nolibm.h".
794             isnand-nolibm   The include file is changed from "isnand.h"
795                             to "isnand-nolibm.h".
797 2008-06-10  execute         The execute function takes an additional termsigp
798                             argument. Passing termsigp = NULL is ok.
799             wait-process    The wait_subprocess function takes an additional
800                             termsigp argument. Passing termsigp = NULL is ok.
802 2008-05-10  linebreak       The module is split into several modules unilbrk/*.
803                             The include file is changed from "linebreak.h" to
804                             "unilbrk.h". Two functions are renamed:
805                             mbs_possible_linebreaks -> ulc_possible_linebreaks
806                             mbs_width_linebreaks -> ulc_width_linebreaks
808 2008-04-28  rpmatch         The include file is now <stdlib.h>.
810 2008-04-28  inet_ntop       The include file is changed from "inet_ntop.h"
811                             to <arpa/inet.h>.
813 2008-04-28  inet_pton       The include file is changed from "inet_pton.h"
814                             to <arpa/inet.h>.
816 2008-03-06  freadahead      The return value's computation has changed. It
817                             now increases by 1 after ungetc.
819 2008-01-26  isnan-nolibm    The module name is changed from isnan-nolibm to
820                             isnand-nolibm. The include file is changed from
821                             "isnan.h" to "isnand.h". The function that it
822                             defines is changed from isnan() to isnand().
824 2008-01-14  strcasestr      This module now replaces worst-case inefficient
825                             implementations; clients that use controlled
826                             needles and thus do not care about worst-case
827                             efficiency should use the new strcasestr-simple
828                             module instead for smaller code size.
830 2008-01-09  alloca-opt      Now defines HAVE_ALLOCA_H only when the system
831                             supplies an <alloca.h>.  Gnulib-using code is now
832                             expected to include <alloca.h> unconditionally.
833                             Non-gnulib-using code can continue to include
834                             <alloca.h> only if HAVE_ALLOCA_H is defined.
836 2008-01-08  memmem          This module now replaces worst-case inefficient
837                             implementations; clients that use controlled
838                             needles and thus do not care about worst-case
839                             efficiency should use the new memmem-simple
840                             module instead for smaller code size.
842 2007-12-24  setenv          The include file is changed from "setenv.h" to
843                             <stdlib.h>. Also, the unsetenv function is no
844                             longer declared in this module; use the 'unsetenv'
845                             module if you need it.
847 2007-12-03  getpagesize     The include file is changed from "getpagesize.h"
848                             to <unistd.h>.
850 2007-12-03  strcase         The include file is changed from <string.h> to
851                             <strings.h>.
853 2007-10-07  most modules    The license for most modules has changed from
854                             GPLv2+ to GPLv3+, and from LGPLv2+ to LGPLv3+.
855                             A few modules are still under LGPLv2+; see the
856                             module description for the applicable license.
858 2007-09-01  linebreak       "linebreak.h" no longer declares the functions
859                             locale_charset, uc_width, u{8,16,32}_width. Use
860                             "uniwidth.h" to get these functions declared.
862 2007-08-28  areadlink-with-size
863                             Renamed from mreadlink-with-size.
864                             Function renamed: mreadlink_with_size ->
865                             areadlink_with_size.
867 2007-08-22  getdelim, getline
868                             The include file is changed from "getdelim.h"
869                             and "getline.h" to the POSIX 200x <stdio.h>.
871 2007-08-18  idcache         Now provides prototypes in "idcache.h".
873 2007-08-10  xstrtol         The STRTOL_FATAL_ERROR macro is removed.
874                             Use the new xstrtol_fatal function instead.
876 2007-08-04  human           The function human_options no longer reports an
877                             error to standard error; that is now the
878                             caller's responsibility.  It returns an
879                             error code of type enum strtol_error
880                             instead of the integer option value, and stores
881                             the option value via a new int * argument.
882             xstrtol         The first two arguments of STRTOL_FATAL_ERROR
883                             are now an option name and option argument
884                             instead of an option argument and a type string,
885                             STRTOL_FAIL_WARN is removed.
887 2007-07-14  gpl, lgpl       New Texinfo versions with no sectioning commands.
889 2007-07-10  version-etc     Output now mentions GPLv3+, not GPLv2+.  Use
890                             gnulib-tool --local-dir to override this.
892 2007-07-07  wcwidth         The include file is changed from "wcwidth.h" to
893                             <wchar.h>.
895 2007-07-02  gpl, lgpl       Renamed to gpl-2.0 and lgpl-2.1 respectively.
896                             (There is also a new module gpl-3.0.)
898 2007-06-16  lchown          The include file is changed from "lchown.h" to
899                             <unistd.h>.
901 2007-06-09  xallocsa        Renamed to xmalloca. The include file "xallocsa.h"
902                             was renamed to "xmalloca.h". The function was
903                             renamed:
904                               xallocsa -> xmalloca
906 2007-06-09  allocsa         Renamed to malloca. The include file "allocsa.h"
907                             was renamed to "malloca.h". The function-like
908                             macros were renamed:
909                               allocsa -> malloca
910                               freesa -> freea
912 2007-05-20  utimens         Renamed futimens to gl_futimens, to avoid
913                             conflict with the glibc-2.6-introduced function
914                             that has a different signature.
916 2007-05-01  sigprocmask     The module now depends on signal, so replace
917                               #include "sigprocmask.h"
918                             with
919                               #include <signal.h>
921 2007-04-06  gettext         The macro HAVE_LONG_DOUBLE is no longer set.
922                             You can replace all its uses with 1, i.e. assume
923                             'long double' as a type exists.
925 2007-04-01  arcfour         Renamed to crypto/arcfour.
926             arctwo          Renamed to crypto/arctwo.
927             des             Renamed to crypto/des.
928             gc              Renamed to crypto/gc.
929             gc-arcfour      Renamed to crypto/gc-arcfour.
930             gc-arctwo       Renamed to crypto/gc-arctwo.
931             gc-des          Renamed to crypto/gc-des.
932             gc-hmac-md5     Renamed to crypto/gc-hmac-md5.
933             gc-hmac-sha1    Renamed to crypto/gc-hmac-sha1.
934             gc-md2          Renamed to crypto/gc-md2.
935             gc-md4          Renamed to crypto/gc-md4.
936             gc-md5          Renamed to crypto/gc-md5.
937             gc-pbkdf2-sha1  Renamed to crypto/gc-pbkdf2-sha1.
938             gc-random       Renamed to crypto/gc-random.
939             gc-rijndael     Renamed to crypto/gc-rijndael.
940             gc-sha1         Renamed to crypto/gc-sha1.
941             hmac-md5        Renamed to crypto/hmac-md5.
942             hmac-sha1       Renamed to crypto/hmac-sha1.
943             md2             Renamed to crypto/md2.
944             md4             Renamed to crypto/md4.
945             md5             Renamed to crypto/md5.
946             rijndael        Renamed to crypto/rijndael.
947             sha1            Renamed to crypto/sha1.
949 2007-03-27  vasprintf       The module now depends on stdio, so replace
950                                #include "vasprintf.h"
951                             with
952                                #include <stdio.h>
954 2007-03-24  tsearch         The include file is changed from "tsearch.h" to
955                             <search.h>.
957 2007-03-24  utf8-ucs4       The include file is changed from "utf8-ucs4.h"
958                             to "unistr.h".
959             utf8-ucs4-unsafe  The include file is changed from
960                             "utf8-ucs4-unsafe.h" to "unistr.h".
961             utf16-ucs4      The include file is changed from "utf16-ucs4.h"
962                             to "unistr.h".
963             utf16-ucs4-unsafe  The include file is changed from
964                             "utf16-ucs4-unsafe.h" to "unistr.h".
965             ucs4-utf8       The include file is changed from "ucs4-utf8.h"
966                             to "unistr.h".
967             ucs4-utf16      The include file is changed from "ucs4-utf16.h"
968                             to "unistr.h".
970 2007-03-19  iconvme         The module is removed. Use module striconv instead:
971                             iconv_string -> str_iconv
972                             iconv_alloc -> str_cd_iconv (with reversed
973                                            arguments)
975 2007-03-15  list            The functions gl_list_create_empty and
976             array-list      gl_list_create now take an extra fourth argument.
977             carray-list     You can pass NULL.
978             linked-list
979             linkedhash-list
980             avltree-list
981             rbtree-list
982             avltreehash-list
983             rbtreehash-list
985 2007-03-15  oset            The function gl_oset_create_empty now takes a
986             array-oset      third argument. You can pass NULL.
987             avltree-oset
988             rbtree-oset
990 2007-03-12  des             The types and functions in lib/des.h have been
991             gc-des          renamed:
993                             des_ctx -> gl_des_ctx, tripledes_ctx -> gl_3des_ctx,
994                             des_is_weak_key -> gl_des_is_weak_key,
995                             des_setkey -> gl_des_setkey,
996                             des_makekey -> gl_des_makekey,
997                             des_ecb_crypt -> gl_des_ecb_crypt,
998                             des_ecb_encrypt -> gl_des_ecb_encrypt,
999                             des_ecb_decrypt -> gl_des_ecb_decrypt,
1000                             tripledes_set2keys -> gl_3des_set2keys,
1001                             tripledes_set3keys -> gl_3des_set3keys,
1002                             tripledes_makekey -> gl_3des_makekey,
1003                             tripledes_ecb_crypt -> gl_3des_ecb_crypt.
1005                             Also consider using the "gc-des" buffer instead of
1006                             using the "des" module directly.
1008 2007-02-28  xreadlink       The module xreadlink was renamed to
1009                             xreadlink-with-size. The function was renamed:
1010                             xreadlink -> xreadlink_with_size.
1012 2007-02-18  exit            The modules now depend on stdlib, so replace
1013             mkdtemp           #include "exit.h"
1014             mkstemp           #include "mkdtemp.h"
1015                               #include "mkstemp.h"
1016                             with
1017                               #include <stdlib.h>
1019 2007-01-26  strdup          The module now depends on string, so replace
1020                               #include "strdup.h"
1021                             with
1022                               #include <string.h>
1024 # This is for Emacs.
1025 # Local Variables:
1026 # coding: utf-8
1027 # indent-tabs-mode: nil
1028 # whitespace-check-buffer-indent: nil
1029 # End: