dirname: move m4/dos.m4 functionality into lib/dosname.h
[gnulib.git] / NEWS
1 Important notes
2 ---------------
3
4 2010-09-04  gnulib-tool     The option '--import' is no longer cumulative; it
5                             now expects the complete list of modules and other
6                             options on the command line. If you want to
7                             augment (not set) the list of modules, use the
8                             new option '--add-import' instead of '--import'.
9
10 User visible incompatible changes
11 ---------------------------------
12
13 Date        Modules         Changes
14
15 2011-02-25  dirname         These modules no longer put #defines for the
16             dirname-lgpl    following symbols into <config.h>: ISSLASH,
17             backupfile      FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX,
18             lstat           FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR,
19             openat          FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE.
20             remove          Applications that need ISSLASH can include the new
21             rmdir           header dosname.h.
22             savewd
23             stat
24             unlink
25
26 2011-02-14  getloadavg      This module no longer #defines C_GETLOADAVG or
27                             HAVE_GETLOADAVG, as the application no longer needs
28                             to worry about how getloadavg is defined.  It no
29                             longer defines the obsolete symbol NLIST_NAME_UNION
30                             (which should have been internal to the module
31                             anyway).  Also, support for setgid use has been
32                             removed, as nobody seems to be using it; thus
33                             GETLOADAVG_PRIVILEGED is no longer #defined and
34                             KMEM_GROUP and NEED_SETGID are no longer
35                             substituted for.
36
37 2011-02-08  stdlib          Unless the random_r module is also used, this
38                             module no longer guarantees that the following are
39                             defined: struct random_data, RAND_MAX, random_r,
40                             srandom_r, initstate_r, setstate_r.
41
42 2011-02-08  wctype-h        This module no longer provides the iswblank()
43                             function. If you need this function, you now need
44                             to request the 'iswblank' module.
45
46 2011-02-07  wctype          This module is renamed to wctype-h.
47
48 2011-01-18  multiarch       This no longer #defines AA_APPLE_UNIVERSAL_BUILD;
49                             instead, use the shell var APPLE_UNIVERSAL_BUILD.
50
51 2010-12-10  pipe            This module is renamed to spawn-pipe. The include
52                             file is renamed to "spawn-pipe.h".
53
54 2010-10-05  getdate         This module is deprecated. Please use the new
55                             parse-datetime module for the replacement
56                             function parse_datetime(), or help us write
57                             getdate-posix for getdate(). Also, the header
58                             "getdate.h" has been renamed "parse-datetime.h",
59                             and doc/getdate.texi to doc/parse-datetime.texi.
60
61 2010-09-29  sys_wait        This module no longer provides the waitpid()
62                             function. If you need this function, you now need
63                             to request the 'waitpid' module.
64
65 2010-09-17  utimens         The function gl_futimens is removed, and its
66                             signature has been migrated to fdutimens.  Callers
67                             of gl_futimens should change function name, and
68                             callers of fdutimens should swap parameter order.
69
70 2010-09-17  fdutimensat     This function has a new signature: the fd now comes
71                             first instead of the dir/name pair, and a new
72                             atflag parameter is added at the end.  Old code
73                             should rearrange parameters, and pass 0 for atflag.
74
75 2010-09-13  regex           The module is not guaranteeing anymore support for
76                             64-bit regoff_t on 64-bit systems.  The size of
77                             regoff_t will always be 32-bit unless the program
78                             is being configured --with-included-regex.  This
79                             may change again in the future once glibc provides
80                             this feature as well.
81
82 2010-09-12  savedir         The fdsavedir function is now deprecated.
83
84 2010-09-10  fcntl-h         This module now defaults O_CLOEXEC to 0, and
85                             it defaults O_EXEC and O_SEARCH to O_RDONLY.
86                             Use "#if O_CLOEXEC" instead of "#ifdef O_CLOEXEC".
87
88 2010-08-28  realloc         This module is deprecated. Use 'realloc-gnu'
89                             instead. It will be removed 2012-01-01.
90
91 2010-08-28  calloc          This module is deprecated. Use 'calloc-gnu'
92                             instead. It will be removed 2012-01-01.
93
94 2010-08-28  malloc          This module is deprecated. Use 'malloc-gnu'
95                             instead. It will be removed 2012-01-01.
96
97 2010-08-14  memxfrm         This module is renamed to amemxfrm. The include
98                             file is renamed to "amemxfrm.h". The function is
99                             renamed to amemxfrm.
100
101 2010-08-09  symlinkat       This module now only provides symlinkat; use the
102                             new module 'readlinkat' if needed.
103
104 2010-07-31  ansi-c++-opt    If Autoconf >= 2.66 is used, the 'configure'
105                             option is now called --disable-c++ rather than
106                             --disable-cxx.
107
108 2010-04-02  maintainer-makefile
109                             The macro _prohibit_regexp has been revamped into
110                             a new macro _sc_search_regexp; custom syntax
111                             checks in your cfg.mk will need to be rewritten.
112
113 2010-03-28  lib-ignore      This module now provides a variable
114                             IGNORE_UNUSED_LIBRARIES_CFLAGS that you should
115                             add to LDFLAGS (when linking C programs only) or
116                             CFLAGS yourself. It is no longer added to LDFLAGS
117                             automatically.
118
119 2010-03-18  pty             This module now only declares the pty.h header.
120                             Use the new modules 'forkpty' or 'openpty' to
121                             get the functions that were previously provided.
122
123 2010-03-05  exit            This module is deprecated, use 'stdlib' directly
124                             instead.  It will be removed 2011-01-01.
125
126 2009-12-13  sublist         The module does not define functions any more that
127                             call xalloc_die() in out-of-memory situations. Use
128                             module 'xsublist' and include file "gl_xsublist.h"
129                             instead.
130
131 2009-12-13  list            The module does not define functions any more that
132                             call xalloc_die() in out-of-memory situations.
133                             Use module 'xlist' and include file "gl_xlist.h"
134                             instead.
135
136 2009-12-13  oset            The module does not define functions any more that
137                             call xalloc_die() in out-of-memory situations.
138                             Use module 'xoset' and include file "gl_xoset.h"
139                             instead.
140
141 2009-12-10  *               Most source code files have been converted to
142                             indentation by spaces (rather than tabs). Patches
143                             of gnulib source code needs to be updated.
144
145 2009-12-09  link-warning    The Makefile rules that use $(LINK_WARNING_H) now
146                             must contain an explicit dependency on
147                             $(LINK_WARNING_H).
148
149 2009-11-12  getgroups       These functions now use a signature of gid_t,
150             getugroups      rather than GETGROUPS_T.  This probably has no
151                             effect except on very old platforms.
152
153 2009-11-04  tempname        The gen_tempname function takes an additional
154                             'suffixlen' argument. You can safely pass 0.
155
156 2009-11-04  nproc           The num_processors function now takes an argument.
157
158 2009-11-02  inet_pton       The use of this module now requires linking with
159                             $(INET_PTON_LIB).
160
161 2009-11-02  inet_ntop       The use of this module now requires linking with
162                             $(INET_NTOP_LIB).
163
164 2009-10-10  utimens         The use of this module now requires linking with
165                             $(LIB_CLOCK_GETTIME).
166
167 2009-09-16  canonicalize-lgpl
168                             The include file is changed from "canonicalize.h"
169                             to <stdlib.h>.
170
171 2009-09-04  link-follow     The macro LINK_FOLLOWS_SYMLINK is now tri-state,
172                             rather than only defined to 1.
173
174 2009-09-03  openat          The include files are standardized to POSIX 2008.
175                             For openat, include <fcntl.h>; for
176                             fchmodat, fstatat, and mkdirat, include
177                             <sys/stat.h>; for fchownat and unlinkat,
178                             include <unistd.h>.  For all other
179                             functions provided by this module,
180                             continue to include "openat.h".
181
182 2009-08-30  striconveh      The functions mem_cd_iconveh and str_cd_iconveh
183                             now take an 'iconveh_t *' argument instead of three
184                             iconv_t arguments.
185
186 2009-08-23  tempname        The gen_tempname function takes an additional
187                             'flags' argument. You can safely pass 0.
188
189 2009-08-12  getopt          This module is deprecated. Please choose among
190                             getopt-posix and getopt-gnu. getopt-gnu provides
191                             "long options" and "options with optional
192                             arguments", getopt-posix doesn't.
193
194 2009-06-25  fpurge          The include file is changed from "fpurge.h" to
195                             <stdio.h>.
196
197 2009-04-26  modules/uniconv/u8-conv-from-enc
198             modules/uniconv/u16-conv-from-enc
199             modules/uniconv/u32-conv-from-enc
200                             The calling convention of the functions
201                             u*_conv_from_encoding is changed.
202
203 2009-04-26  modules/uniconv/u8-conv-to-enc
204             modules/uniconv/u16-conv-to-enc
205             modules/uniconv/u32-conv-to-enc
206                             The calling convention of the functions
207                             u*_conv_to_encoding is changed.
208
209 2009-04-24  maintainer-makefile
210                             The maint.mk file was copied from
211                             coreutils, and the old
212                             coverage/gettext/indent rules were
213                             re-added.  If you used 'make syntax-check'
214                             this will add several new checks.  If some
215                             new check is annoying, add the name of the
216                             checks to 'local-checks-to-skip' in your
217                             cfg.mk.
218
219 2009-04-01  visibility      Renamed to lib-symbol-visibility.
220
221 2009-04-01  ld-version-script  Renamed to lib-symbol-versions.
222
223 2009-03-20  close           The substituted variable LIB_CLOSE is removed.
224
225 2009-03-05  filevercmp      Move hidden files up in ordering.
226
227 2009-01-22  c-strtod        This function no longer calls xalloc_die(). If
228             c-strtold       you want to exit the program in case of out-of-
229                             memory, the calling function needs to arrange
230                             for it, like this:
231                                 errno = 0;
232                                 val = c_strtod (...);
233                                 if (val == 0 && errno == ENOMEM)
234                                   xalloc_die ();
235
236 2009-01-17  relocatable-prog  In the Makefile.am or Makefile.in, you now also
237                             need to set RELOCATABLE_STRIP = :.
238
239 2008-12-22  getaddrinfo     When using this module, you now need to link with
240             canon-host      $(GETADDRINFO_LIB).
241
242 2008-12-21  mbiter          The header files "mbiter.h", "mbuiter.h",
243             mbuiter         "mbfile.h" can now be included without checking
244             mbfile          HAVE_MBRTOWC. The macro HAVE_MBRTOWC will no
245                             longer be defined by these modules in a year. If
246                             you want to continue to use it, you need to invoke
247                             AC_FUNC_MBRTOWC yourself.
248
249 2008-11-11  warnings        This module subsumes the file m4/warning.m4 which
250                             was removed.
251
252 2008-10-20  lstat           The include file is changed from "lstat.h" to
253                             <sys/stat.h>.
254
255 2008-10-20  getaddrinfo     The include file is changed from "getaddrinfo.h"
256                             to <netdb.h>.
257
258 2008-10-19  isnanf          The include file is changed from "isnanf.h" to
259                             <math.h>.
260             isnand          The include file is changed from "isnand.h" to
261                             <math.h>.
262             isnanl          The include file is changed from "isnanl.h" to
263                             <math.h>.
264
265 2008-10-18  lchmod          The include file is changed from "lchmod.h" to
266                             <sys/stat.h>.
267
268 2008-10-18  dirfd           The include file is changed from "dirfd.h" to
269                             <dirent.h>.
270
271 2008-10-18  euidaccess      The include file is changed from "euidaccess.h"
272                             to <unistd.h>.
273
274 2008-10-18  getdomainname   The include file is changed from "getdomainname.h"
275                             to <unistd.h>.
276
277 2008-09-28  sockets         When using this module, you now need to link with
278                             $(LIBSOCKET).
279
280 2008-09-24  sys_select      The limitation on `select', introduced 2008-09-23,
281                             was removed.  sys_select now includes a select
282                             wrapper for Winsock.  The wrapper expects socket
283                             and file descriptors to be compatible as arranged
284                             by the sys_socket on MinGW.
285
286 2008-09-23  sys_socket      Under Windows (MinGW), the module now adds
287                             wrappers around Winsock functions, so that
288                             socket descriptors are now compatible with
289                             file descriptors.  In general, this change
290                             will simply improve your code's portability
291                             between POSIX platforms and Windows.  In
292                             particular, you will be able to use ioctl and
293                             close instead of ioctlsocket and closesocket,
294                             and test errno instead of WSAGetLastError ().
295                             On the other hand, you have to audit your code to
296                             remove usage of these Winsock-specific functions.
297
298                             This change does not remove the need to call
299                             the gl_sockets_startup function from the sockets
300                             gnulib module.  Also, for now select is disabled
301                             when you include the sys_socket module; while
302                             the functionality will be restored soon, for
303                             efficiency it is suggested to use the poll system
304                             poll system call and gnulib module instead.
305
306 2008-09-13  EOVERFLOW       The module is removed. Use module errno instead.
307
308 2008-09-01  filename        The module does not define the function
309                             concatenated_filename any more. To get an
310                             equivalent function, use function
311                             xconcatenated_filename from module
312                             'xconcat-filename'.
313
314 2008-08-31  havelib         On Solaris, when searching for 64-bit mode
315                             libraries the directory $prefix/lib is now ignored.
316                             Instead the directory $prefix/lib/64 is searched.
317                             You may need to create a symbolic link for
318                             $prefix/lib/64 if you have 64-bit libraries
319                             installed in $prefix/lib.
320
321 2008-08-19  strverscmp      The include file is changed from "strverscmp.h"
322                             to <string.h>.
323
324 2008-08-14  lock            The include file is changed from "lock.h"
325                             to "glthread/lock.h".
326             tls             The include file is changed from "tls.h"
327                             to "glthread/tls.h".
328
329 2008-07-17  c-stack         The module now requires the addition of
330                             $(LIBCSTACK) or $(LTLIBCSTACK) in Makefile.am,
331                             since it may depend on linking with libsigsegv.
332
333 2008-07-07  isnanf-nolibm   The include file is changed from "isnanf.h"
334                             to "isnanf-nolibm.h".
335             isnand-nolibm   The include file is changed from "isnand.h"
336                             to "isnand-nolibm.h".
337
338 2008-06-10  execute         The execute function takes an additional termsigp
339                             argument. Passing termsigp = NULL is ok.
340             wait-process    The wait_subprocess function takes an additional
341                             termsigp argument. Passing termsigp = NULL is ok.
342
343 2008-05-10  linebreak       The module is split into several modules unilbrk/*.
344                             The include file is changed from "linebreak.h" to
345                             "unilbrk.h". Two functions are renamed:
346                             mbs_possible_linebreaks -> ulc_possible_linebreaks
347                             mbs_width_linebreaks -> ulc_width_linebreaks
348
349 2008-04-28  rpmatch         The include file is now <stdlib.h>.
350
351 2008-04-28  inet_ntop       The include file is changed from "inet_ntop.h"
352                             to <arpa/inet.h>.
353
354 2008-04-28  inet_pton       The include file is changed from "inet_pton.h"
355                             to <arpa/inet.h>.
356
357 2008-03-06  freadahead      The return value's computation has changed. It
358                             now increases by 1 after ungetc.
359
360 2008-01-26  isnan-nolibm    The module name is changed from isnan-nolibm to
361                             isnand-nolibm. The include file is changed from
362                             "isnan.h" to "isnand.h". The function that it
363                             defines is changed from isnan() to isnand().
364
365 2008-01-14  strcasestr      This module now replaces worst-case inefficient
366                             implementations; clients that use controlled
367                             needles and thus do not care about worst-case
368                             efficiency should use the new strcasestr-simple
369                             module instead for smaller code size.
370
371 2008-01-09  alloca-opt      Now defines HAVE_ALLOCA_H only when the system
372                             supplies an <alloca.h>.  Gnulib-using code is now
373                             expected to include <alloca.h> unconditionally.
374                             Non-gnulib-using code can continue to include
375                             <alloca.h> only if HAVE_ALLOCA_H is defined.
376
377 2008-01-08  memmem          This module now replaces worst-case inefficient
378                             implementations; clients that use controlled
379                             needles and thus do not care about worst-case
380                             efficiency should use the new memmem-simple
381                             module instead for smaller code size.
382
383 2007-12-24  setenv          The include file is changed from "setenv.h" to
384                             <stdlib.h>. Also, the unsetenv function is no
385                             longer declared in this module; use the 'unsetenv'
386                             module if you need it.
387
388 2007-12-03  getpagesize     The include file is changed from "getpagesize.h"
389                             to <unistd.h>.
390
391 2007-12-03  strcase         The include file is changed from <string.h> to
392                             <strings.h>.
393
394 2007-10-07  most modules    The license for most modules has changed from
395                             GPLv2+ to GPLv3+, and from LGPLv2+ to LGPLv3+.
396                             A few modules are still under LGPLv2+; see the
397                             module description for the applicable license.
398
399 2007-09-01  linebreak       "linebreak.h" no longer declares the functions
400                             locale_charset, uc_width, u{8,16,32}_width. Use
401                             "uniwidth.h" to get these functions declared.
402
403 2007-08-28  areadlink-with-size
404                             Renamed from mreadlink-with-size.
405                             Function renamed: mreadlink_with_size ->
406                             areadlink_with_size.
407
408 2007-08-22  getdelim, getline
409                             The include file is changed from "getdelim.h"
410                             and "getline.h" to the POSIX 200x <stdio.h>.
411
412 2007-08-18  idcache         Now provides prototypes in "idcache.h".
413
414 2007-08-10  xstrtol         The STRTOL_FATAL_ERROR macro is removed.
415                             Use the new xstrtol_fatal function instead.
416
417 2007-08-04  human           The function human_options no longer reports an
418                             error to standard error; that is now the
419                             caller's responsibility.  It returns an
420                             error code of type enum strtol_error
421                             instead of the integer option value, and stores
422                             the option value via a new int * argument.
423             xstrtol         The first two arguments of STRTOL_FATAL_ERROR
424                             are now an option name and option argument
425                             instead of an option argument and a type string,
426                             STRTOL_FAIL_WARN is removed.
427
428 2007-07-14  gpl, lgpl       New Texinfo versions with no sectioning commands.
429
430 2007-07-10  version-etc     Output now mentions GPLv3+, not GPLv2+.  Use
431                             gnulib-tool --local-dir to override this.
432
433 2007-07-07  wcwidth         The include file is changed from "wcwidth.h" to
434                             <wchar.h>.
435
436 2007-07-02  gpl, lgpl       Renamed to gpl-2.0 and lgpl-2.1 respectively.
437                             (There is also a new module gpl-3.0.)
438
439 2007-06-16  lchown          The include file is changed from "lchown.h" to
440                             <unistd.h>.
441
442 2007-06-09  xallocsa        Renamed to xmalloca. The include file "xallocsa.h"
443                             was remamed to "xmalloca.h". The function was
444                             renamed:
445                               xallocsa -> xmalloca
446
447 2007-06-09  allocsa         Renamed to malloca. The include file "allocsa.h"
448                             was remamed to "malloca.h". The function-like
449                             macros were renamed:
450                               allocsa -> malloca
451                               freesa -> freea
452
453 2007-05-20  utimens         Renamed futimens to gl_futimens, to avoid
454                             conflict with the glibc-2.6-introduced function
455                             that has a different signature.
456
457 2007-05-01  sigprocmask     The module now depends on signal, so replace
458                               #include "sigprocmask.h"
459                             with
460                               #include <signal.h>
461
462 2007-04-06  gettext         The macro HAVE_LONG_DOUBLE is no longer set.
463                             You can replace all its uses with 1, i.e. assume
464                             'long double' as a type exists.
465
466 2007-04-01  arcfour         Renamed to crypto/arcfour.
467             arctwo          Renamed to crypto/arctwo.
468             des             Renamed to crypto/des.
469             gc              Renamed to crypto/gc.
470             gc-arcfour      Renamed to crypto/gc-arcfour.
471             gc-arctwo       Renamed to crypto/gc-arctwo.
472             gc-des          Renamed to crypto/gc-des.
473             gc-hmac-md5     Renamed to crypto/gc-hmac-md5.
474             gc-hmac-sha1    Renamed to crypto/gc-hmac-sha1.
475             gc-md2          Renamed to crypto/gc-md2.
476             gc-md4          Renamed to crypto/gc-md4.
477             gc-md5          Renamed to crypto/gc-md5.
478             gc-pbkdf2-sha1  Renamed to crypto/gc-pbkdf2-sha1.
479             gc-random       Renamed to crypto/gc-random.
480             gc-rijndael     Renamed to crypto/gc-rijndael.
481             gc-sha1         Renamed to crypto/gc-sha1.
482             hmac-md5        Renamed to crypto/hmac-md5.
483             hmac-sha1       Renamed to crypto/hmac-sha1.
484             md2             Renamed to crypto/md2.
485             md4             Renamed to crypto/md4.
486             md5             Renamed to crypto/md5.
487             rijndael        Renamed to crypto/rijndael.
488             sha1            Renamed to crypto/sha1.
489
490 2007-03-27  vasprintf       The module now depends on stdio, so replace
491                                #include "vasprintf.h"
492                             with
493                                #include <stdio.h>
494
495 2007-03-24  tsearch         The include file is changed from "tsearch.h" to
496                             <search.h>.
497
498 2007-03-24  utf8-ucs4       The include file is changed from "utf8-ucs4.h"
499                             to "unistr.h".
500             utf8-ucs4-unsafe  The include file is changed from
501                             "utf8-ucs4-unsafe.h" to "unistr.h".
502             utf16-ucs4      The include file is changed from "utf16-ucs4.h"
503                             to "unistr.h".
504             utf16-ucs4-unsafe  The include file is changed from
505                             "utf16-ucs4-unsafe.h" to "unistr.h".
506             ucs4-utf8       The include file is changed from "ucs4-utf8.h"
507                             to "unistr.h".
508             ucs4-utf16      The include file is changed from "ucs4-utf16.h"
509                             to "unistr.h".
510
511 2007-03-19  iconvme         The module is removed. Use module striconv instead:
512                             iconv_string -> str_iconv
513                             iconv_alloc -> str_cd_iconv (with reversed
514                                            arguments)
515
516 2007-03-15  list            The functions gl_list_create_empty and
517             array-list      gl_list_create now take an extra fourth argument.
518             carray-list     You can pass NULL.
519             linked-list
520             linkedhash-list
521             avltree-list
522             rbtree-list
523             avltreehash-list
524             rbtreehash-list
525
526 2007-03-15  oset            The function gl_oset_create_empty now takes a
527             array-oset      third argument. You can pass NULL.
528             avltree-oset
529             rbtree-oset
530
531 2007-03-12  des             The types and functions in lib/des.h have been
532             gc-des          renamed:
533
534                             des_ctx -> gl_des_ctx, tripledes_ctx -> gl_3des_ctx,
535                             des_is_weak_key -> gl_des_is_weak_key,
536                             des_setkey -> gl_des_setkey,
537                             des_makekey -> gl_des_makekey,
538                             des_ecb_crypt -> gl_des_ecb_crypt,
539                             des_ecb_encrypt -> gl_des_ecb_encrypt,
540                             des_ecb_decrypt -> gl_des_ecb_decrypt,
541                             tripledes_set2keys -> gl_3des_set2keys,
542                             tripledes_set3keys -> gl_3des_set3keys,
543                             tripledes_makekey -> gl_3des_makekey,
544                             tripledes_ecb_crypt -> gl_3des_ecb_crypt.
545
546                             Also consider using the "gc-des" buffer instead of
547                             using the "des" module directly.
548
549 2007-02-28  xreadlink       The module xreadlink was renamed to
550                             xreadlink-with-size. The function was renamed:
551                             xreadlink -> xreadlink_with_size.
552
553 2007-02-18  exit            The modules now depend on stdlib, so replace
554             mkdtemp           #include "exit.h"
555             mkstemp           #include "mkdtemp.h"
556                               #include "mkstemp.h"
557                             with
558                               #include <stdlib.h>
559
560 2007-01-26  strdup          The module now depends on string, so replace
561                               #include "strdup.h"
562                             with
563                               #include <string.h>
564
565 # This is for Emacs.
566 # Local Variables:
567 # indent-tabs-mode: nil
568 # whitespace-check-buffer-indent: nil
569 # End: