implement full-blown select(2) for winsock
[gnulib.git] / NEWS
1 Important notes
2 ---------------
3
4 User visible incompatible changes
5 ---------------------------------
6
7 Date        Modules         Changes
8
9 2008-09-24  sys_select      The limitation on `select', introduced 2008-09-23,
10                             was removed.  sys_select now includes a select
11                             wrapper for Winsock.  The wrapper expects socket
12                             and file descriptors to be compatible as arranged
13                             by the sys_socket on MinGW.
14
15 2008-09-23  sys_socket      Under Windows (MinGW), the module now adds
16                             wrappers around Winsock functions, so that
17                             socket descriptors are now compatible with
18                             file descriptors.  In general, this change
19                             will simply improve your code's portability
20                             between POSIX platforms and Windows.  In
21                             particular, you will be able to use ioctl and
22                             close instead of ioctlsocket and closesocket, 
23                             and test errno instead of WSAGetLastError ().
24                             On the other hand, you have to audit your code to
25                             remove usage of these Winsock-specific functions.
26
27                             This change does not remove the need to call
28                             the gl_sockets_startup function from the sockets
29                             gnulib module.  Also, for now select is disabled
30                             when you include the sys_socket module; while
31                             the functionality will be restored soon, for
32                             efficiency it is suggested to use the poll system
33                             poll system call and gnulib module instead.
34
35 2008-09-13  EOVERFLOW       The module is removed. Use module errno instead.
36
37 2008-09-01  filename        The module does not define the function
38                             concatenated_filename any more. To get an
39                             equivalent function, use function
40                             xconcatenated_filename from module
41                             'xconcat-filename'.
42
43 2008-08-31  havelib         On Solaris, when searching for 64-bit mode
44                             libraries the directory $prefix/lib is now ignored.
45                             Instead the directory $prefix/lib/64 is searched.
46                             You may need to create a symbolic link for
47                             $prefix/lib/64 if you have 64-bit libraries
48                             installed in $prefix/lib.
49
50 2008-08-19  strverscmp      The include file is changed from "strverscmp.h"
51                             to <string.h>.
52
53 2008-08-14  lock            The include file is changed from "lock.h"
54                             to "glthread/lock.h".
55             tls             The include file is changed from "tls.h"
56                             to "glthread/tls.h".
57
58 2008-07-17  c-stack         The module now requires the addition of
59                             $(LIBCSTACK) or $(LTLIBCSTACK) in Makefile.am,
60                             since it may depend on linking with libsigsegv.
61
62 2008-07-07  isnanf-nolibm   The include file is changed from "isnanf.h"
63                             to "isnanf-nolibm.h".
64             isnand-nolibm   The include file is changed from "isnand.h"
65                             to "isnand-nolibm.h".
66
67 2008-06-10  execute         The execute function takes an additional termsigp
68                             argument. Passing termsigp = NULL is ok.
69             wait-process    The wait_subprocess function takes an additional
70                             termsigp argument. Passing termsigp = NULL is ok.
71
72 2008-05-10  linebreak       The module is split into several modules unilbrk/*.
73                             The include file is changed from "linebreak.h" to
74                             "unilbrk.h". Two functions are renamed:
75                             mbs_possible_linebreaks -> ulc_possible_linebreaks
76                             mbs_width_linebreaks -> ulc_width_linebreaks
77
78 2008-04-28  rpmatch         The include file is now <stdlib.h>.
79
80 2008-04-28  inet_ntop       The include file is changed from "inet_ntop.h"
81                             to <arpa/inet.h>.
82
83 2008-04-28  inet_pton       The include file is changed from "inet_pton.h"
84                             to <arpa/inet.h>.
85
86 2008-03-06  freadahead      The return value's computation has changed. It
87                             now increases by 1 after ungetc.
88
89 2008-01-26  isnan-nolibm    The module name is changed from isnan-nolibm to
90                             isnand-nolibm. The include file is changed from
91                             "isnan.h" to "isnand.h". The function that it
92                             defines is changed from isnan() to isnand().
93
94 2008-01-14  strcasestr      This module now replaces worst-case inefficient
95                             implementations; clients that use controlled
96                             needles and thus do not care about worst-case
97                             efficiency should use the new strcasestr-simple
98                             module instead for smaller code size.
99
100 2008-01-09  alloca-opt      Now defines HAVE_ALLOCA_H only when the system
101                             supplies an <alloca.h>.  Gnulib-using code is now
102                             expected to include <alloca.h> unconditionally.
103                             Non-gnulib-using code can continue to include
104                             <alloca.h> only if HAVE_ALLOCA_H is defined.
105
106 2008-01-08  memmem          This module now replaces worst-case inefficient
107                             implementations; clients that use controlled
108                             needles and thus do not care about worst-case
109                             efficiency should use the new memmem-simple
110                             module instead for smaller code size.
111
112 2007-12-24  setenv          The include file is changed from "setenv.h" to
113                             <stdlib.h>. Also, the unsetenv function is no
114                             longer declared in this module; use the 'unsetenv'
115                             module if you need it.
116
117 2007-12-03  getpagesize     The include file is changed from "getpagesize.h"
118                             to <unistd.h>.
119
120 2007-12-03  strcase         The include file is changed from <string.h> to
121                             <strings.h>.
122
123 2007-10-07  most modules    The license for most modules has changed from
124                             GPLv2+ to GPLv3+, and from LGPLv2+ to LGPLv3+.
125                             A few modules are still under LGPLv2+; see the
126                             module description for the applicable license.
127
128 2007-09-01  linebreak       "linebreak.h" no longer declares the functions
129                             locale_charset, uc_width, u{8,16,32}_width. Use
130                             "uniwidth.h" to get these functions declared.
131
132 2007-08-28  areadlink-with-size
133                             Renamed from mreadlink-with-size.
134                             Function renamed: mreadlink_with_size ->
135                             areadlink_with_size.
136
137 2007-08-22  getdelim, getline
138                             The include file is changed from "getdelim.h"
139                             and "getline.h" to the POSIX 200x <stdio.h>.
140
141 2007-08-18  idcache         Now provides prototypes in "idcache.h".
142
143 2007-08-10  xstrtol         The STRTOL_FATAL_ERROR macro is removed.
144                             Use the new xstrtol_fatal function instead.
145
146 2007-08-04  human           The function human_options no longer reports an
147                             error to standard error; that is now the
148                             caller's responsibility.  It returns an
149                             error code of type enum strtol_error
150                             instead of the integer option value, and stores
151                             the option value via a new int * argument.
152             xstrtol         The first two arguments of STRTOL_FATAL_ERROR
153                             are now an option name and option argument
154                             instead of an option argument and a type string,
155                             STRTOL_FAIL_WARN is removed.
156
157 2007-07-14  gpl, lgpl       New Texinfo versions with no sectioning commands.
158
159 2007-07-10  version-etc     Output now mentions GPLv3+, not GPLv2+.  Use
160                             gnulib-tool --local-dir to override this.
161
162 2007-07-07  wcwidth         The include file is changed from "wcwidth.h" to
163                             <wchar.h>.
164
165 2007-07-02  gpl, lgpl       Renamed to gpl-2.0 and lgpl-2.1 respectively.
166                             (There is also a new module gpl-3.0.)
167
168 2007-06-16  lchown          The include file is changed from "lchown.h" to
169                             <unistd.h>.
170
171 2007-06-09  xallocsa        Renamed to xmalloca. The include file "xallocsa.h"
172                             was remamed to "xmalloca.h". The function was
173                             renamed:
174                               xallocsa -> xmalloca
175
176 2007-06-09  allocsa         Renamed to malloca. The include file "allocsa.h"
177                             was remamed to "malloca.h". The function-like
178                             macros were renamed:
179                               allocsa -> malloca
180                               freesa -> freea
181
182 2007-05-20  utimens         Renamed futimens to gl_futimens, to avoid
183                             conflict with the glibc-2.6-introduced function
184                             that has a different signature.
185
186 2007-05-01  sigprocmask     The module now depends on signal, so replace
187                               #include "sigprocmask.h"
188                             with
189                               #include <signal.h>
190
191 2007-04-06  gettext         The macro HAVE_LONG_DOUBLE is no longer set.
192                             You can replace all its uses with 1, i.e. assume
193                             'long double' as a type exists.
194
195 2007-04-01  arcfour         Renamed to crypto/arcfour.
196             arctwo          Renamed to crypto/arctwo.
197             des             Renamed to crypto/des.
198             gc              Renamed to crypto/gc.
199             gc-arcfour      Renamed to crypto/gc-arcfour.
200             gc-arctwo       Renamed to crypto/gc-arctwo.
201             gc-des          Renamed to crypto/gc-des.
202             gc-hmac-md5     Renamed to crypto/gc-hmac-md5.
203             gc-hmac-sha1    Renamed to crypto/gc-hmac-sha1.
204             gc-md2          Renamed to crypto/gc-md2.
205             gc-md4          Renamed to crypto/gc-md4.
206             gc-md5          Renamed to crypto/gc-md5.
207             gc-pbkdf2-sha1  Renamed to crypto/gc-pbkdf2-sha1.
208             gc-random       Renamed to crypto/gc-random.
209             gc-rijndael     Renamed to crypto/gc-rijndael.
210             gc-sha1         Renamed to crypto/gc-sha1.
211             hmac-md5        Renamed to crypto/hmac-md5.
212             hmac-sha1       Renamed to crypto/hmac-sha1.
213             md2             Renamed to crypto/md2.
214             md4             Renamed to crypto/md4.
215             md5             Renamed to crypto/md5.
216             rijndael        Renamed to crypto/rijndael.
217             sha1            Renamed to crypto/sha1.
218
219 2007-03-27  vasprintf       The module now depends on stdio, so replace
220                                #include "vasprintf.h"
221                             with
222                                #include <stdio.h>
223
224 2007-03-24  tsearch         The include file is changed from "tsearch.h" to
225                             <search.h>.
226
227 2007-03-24  utf8-ucs4       The include file is changed from "utf8-ucs4.h"
228                             to "unistr.h".
229             utf8-ucs4-unsafe  The include file is changed from
230                             "utf8-ucs4-unsafe.h" to "unistr.h".
231             utf16-ucs4      The include file is changed from "utf16-ucs4.h"
232                             to "unistr.h".
233             utf16-ucs4-unsafe  The include file is changed from
234                             "utf16-ucs4-unsafe.h" to "unistr.h".
235             ucs4-utf8       The include file is changed from "ucs4-utf8.h"
236                             to "unistr.h".
237             ucs4-utf16      The include file is changed from "ucs4-utf16.h"
238                             to "unistr.h".
239
240 2007-03-19  iconvme         The module is removed. Use module striconv instead:
241                             iconv_string -> str_iconv
242                             iconv_alloc -> str_cd_iconv (with reversed
243                                            arguments)
244
245 2007-03-15  list            The functions gl_list_create_empty and
246             array-list      gl_list_create now take an extra fourth argument.
247             carray-list     You can pass NULL.
248             linked-list
249             linkedhash-list
250             avltree-list
251             rbtree-list
252             avltreehash-list
253             rbtreehash-list
254
255 2007-03-15  oset            The function gl_oset_create_empty now takes a
256             array-oset      third argument. You can pass NULL.
257             avltree-oset
258             rbtree-oset
259
260 2007-03-12  des             The types and functions in lib/des.h have been
261             gc-des          renamed:
262
263                             des_ctx -> gl_des_ctx, tripledes_ctx -> gl_3des_ctx,
264                             des_is_weak_key -> gl_des_is_weak_key,
265                             des_setkey -> gl_des_setkey,
266                             des_makekey -> gl_des_makekey,
267                             des_ecb_crypt -> gl_des_ecb_crypt,
268                             des_ecb_encrypt -> gl_des_ecb_encrypt,
269                             des_ecb_decrypt -> gl_des_ecb_decrypt,
270                             tripledes_set2keys -> gl_3des_set2keys,
271                             tripledes_set3keys -> gl_3des_set3keys,
272                             tripledes_makekey -> gl_3des_makekey,
273                             tripledes_ecb_crypt -> gl_3des_ecb_crypt.
274
275                             Also consider using the "gc-des" buffer instead of
276                             using the "des" module directly.
277
278 2007-02-28  xreadlink       The module xreadlink was renamed to
279                             xreadlink-with-size. The function was renamed:
280                             xreadlink -> xreadlink_with_size.
281
282 2007-02-18  exit            The modules now depend on stdlib, so replace
283             mkdtemp           #include "exit.h"
284             mkstemp           #include "mkdtemp.h"
285                               #include "mkstemp.h"
286                             with
287                               #include <stdlib.h>
288
289 2007-01-26  strdup          The module now depends on string, so replace
290                               #include "strdup.h"
291                             with
292                               #include <string.h>
293
294 # This is for Emacs.
295 # Local Variables:
296 # indent-tabs-mode: nil
297 # whitespace-check-buffer-indent: nil
298 # End: