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