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