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