summaryrefslogtreecommitdiff
path: root/NEWS
blob: feeb1f560d8b433cfb342697a473bc80383e86d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
PHP                                                                        NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 2004, PHP 5 RC1
- Completely overhauled SimpleXML extension. (Marcus, Rob, Sterling)
- Added stream_lock() method to userspace streams interface. (Hartmut, Wez)
- Added xsltprocessor->registerPHPFunctions(). (Christian)
- Bundled new SPL extension. (Marcus, Derick)
- Upgraded SQLite library to version 2.8.11. (Ilia, Wez)
- Fixed var_export() to show public, protected and private modifiers properly.
  (Derick)
- Fixed problems with longlong values in mysqli. (Georg)
- Fixed class name case preserving of user defined classes. (Marcus)
- Fixed bug #27008 (Every class method can be called as static). (Marcus)
- Fixed bug #26938 (exec() has problems reading long lines).
  (Ilia, runekl[at]opoint[dot]com
- Fixed bug #26947 (ext/dom: Crash when using DomDocument::getElementById()).
  (Christian)
- Fixed bug #26911 (crash in sqlite extension when fetching data from empty 
  queries). (Ilia)
- Fixed bug #26844 (ext/mime_magic: magic file validation broken). (Jani)
- Fixed bug #26819 (http_build_query() crashes on NULL output). (Ilia)
- Fixed bug #26817 (http_build_query() does not handle private & protected 
  object properties correctly). (Ilia)
- Fixed bug #26815 (foreach of (DOM) childnodes crashes when Xinclude is used).
  (Rob)
- Fixed bug #26796 (SQLite causes crashes with other extensions *connect()
  calls). (Marcus)
- Fixed bug #26762 (unserialize() produces lowercase classnames). (Marcus)
- Fixed bug #26743 (getElementsByTagName doesn't work properly). (Rob)
- Fixed bug #26736 (__autoload not invoked for parent classes). (Marcus)
- Fixed bug #26723 (domNode::appendChild() changes child node namespace). (Rob)
- Fixed bug #26697 (calling class_exists() on a nonexistent class in __autoload
  results in segfault). (Marcus)
- Fixed bug #26696 (string index in a switch() crashes with multiple matches).
  (Andi)
- Fixed bug #26695 (Reflection API does not recognize mixed-case class hints).
  (Marcus)
- Fixed bug #26690 (make xsltProcessor->transformToUri use streams wrappers).
  (Ilia)
- Fixed bug #26680 (Added version check in mysqli_report_index). (Georg)
- Fixed bug #26675 (Segfault on ArrayAccess use). (Marcus)
- Fixed bug #26640 (__autoload() not invoked by Reflection classes). (Jani)
- Fixed bug #26543 (call_user_func() broken for self, parent). (Stanislav)
- Fixed bug #26077 (memory leak when new() result is not assigned and no 
  constructor is defined). (Stanislav)
- Fixed bug #26065 (Crash when nesting classes). (Marcus)
- Fixed bug #25816 (disallow arrays in class constants). (Stanislav)
- Fixed bug #25329 (sqlite_create_function with method and reference to $this).
  (Marcus) 
- Fixed bug #25038 (call_user_func() issues a warning if function throws an
  exception). (Marcus)
- Fixed bug #24608 (__set not triggered when overloading with array).
  (Stanislav)
- Fixed bug #24243 (enabling browscap causes segfault). (Wez)

21 Dec 2003, PHP 5 Beta 3
- Bundled new tidy extension (John, Wez)
- Upgraded PCRE library to version 4.5. (Andrei)
- Dropped Windows 95 support. (Andi)
- Moved extensions to PECL:
  . ext/crack (Jani, Derick)
  . ext/db (Jani, Derick)
  . ext/mcal (Jani, Derick)
  . ext/qtdom (Jani, Derick)
  . ext/notes (Wez)
- Added 'c' modifier to date() which returns the date in the ISO 8601 format.
  (Derick, Manuzhai)
- Added an optional parameter to microtime() to get the time as float. (Andrey)
- Added MacRoman encoding support to htmlentities(). (Derick, Marcus Bointon)
- Added possibility to call PHP functions as XSLT-functions. (Christian)
- Added possibility to prevent PHP from registering variables when input filter
  support is used. (Derick)
- Added iconv stream filter (convert.iconv.*). (Moriyoshi)
- Added EXSLT support in ext/xsl. (Christian)
- Added qdbm handler for dba extension. (mg at iceni dot pl, Marcus)
- Added new functions:
  . dba_key_split() to split inifile keys in an array. (Marcus)
  . time_nanosleep() signal safe sleep (Magnus, Ilia)
  . headers_list(). (Sara)
  . php_strip_whitespace(). strip whitespace & comments from a script. (Ilia)
  . php_check_syntax(). check php script for parse errors. (Ilia)
  . image_type_to_extension(). return extension based on image type. (Ilia)
  . stream_socket_sendto() and stream_socket_recvfrom(). (Wez)
  . iconv_mime_decode_headers(). (Moriyoshi)
  . get_declared_interfaces(). (Andrey, Marcus)
  . sqlite_fetch_column_types(). (Ilia)
- Added proxy support to http:// wrapper. (Sara)
- Added rename(), rmdir() and mkdir() support to userstreams. (Sara)
- Added rename(), rmdir() and mkdir() support to ftp:// wrapper. (Sara)
- Changed rename(), rmdir() and mkdir() to be routed via streams API. (Sara)
- Changed stat() and family to be routed via streams API. (Sara)
- Fixed include_once() / require_once() on Windows to honor case-insensitivity
  of files. (Andi)
- Fixed get_declared_classes() to return only classes. (Andrey, Marcus)
- Fixed __autoload() to preserve case of the passed class name. (Andi)
- Fixed bug #26615 () (runekl at opoint dot com, Derick)
- Fixed bug #26591 ("__autoload threw an exception" during an uncaught). 
  (Marcus)
- Fixed bug #26534 (stream_get_meta_data() -> Access Violation). (Wez)
- Fixed bug #26528 (HTML entities are not being decoded by 
  xml_parse()/xml_parse_into_struct()). (Ilia)
- Fixed bug #26182 (Object properties created redundantly). (Andi)
- Fixed bug #26156 (REPLACE_ZVAL_VALUE works on uninit stack-based zvals).
  (Moriyoshi)
- Fixed bug #26083 (Non-working write support in ext/dom). (Ilia)
- Fixed bug #26072 (--disable-libxml does not work). (Jani)
- Fixed bug #26001 (serialize crashes when accessing an overloaded object that 
  has no properties (NULL hashtable)). (Wez)
- Fixed bug #25664 (COM crashes when calling a Delphi implementations of 
  ITypeInfo). (Wez)
- Fixed bug #24837 (Incorrect behaviour of PPP using foreach). (Marcus)
- Fixed bug #24693 (Allow session.use_trans_sid to be enabled/disabled from
  inside the script). (Ilia)
- Fixed bug #24394 (Serializing cross-referenced objects causes segfault).
  (Moriyoshi)

30 Oct 2003, PHP 5 Beta 2
- Lots and lots of changes in the Zend Engine 2 since beta 1:
  . Added Iterators
  . Improved memory manager
  . Added Reflection API
  . Removed the not so working namespaces support
  . Removed support for expressions within constant declarations.
  . You can read about most changes in ZEND_CHANGES under the Zend directory.
- Improved the DBX extension: (Marc)
  . Added DBX_RESULT_UNBUFFERED flag for dbx_query().
  . Added dbx_fetch_row()
  . Added SQLite support.
- Improved the Interbase extension: (Ard Biesheuvel)
  . Added support for multiple databases into ibase_trans()
  . Added support for CREATE DATABASE, SET TRANSACTION and EXECUTE PROCEDURE
    statements into ibase_query()
  . Added ability to bind PHP arrays to native Interbase arrays
  . Added ibase_commit_ret() and ibase_rollback_ret()
  . Added ibase_drop_db() 
  . Added ibase_gen_id()
  . Added ibase_name_result()
  . Added ibase_errcode() 
  . Added ibase_affected_rows() and ibase_num_params()
  . Added ibase_param_info()
  . Added ibase_wait_event()
  . Added ibase_set_event_handler() and ibase_free_event_handler()
- Added new COM extension with integrated .Net support. (Wez)
- Added new functions:
  . setrawcookie(). (Brian)
  . pg_version(). (Marcus)
  . dbase_get_header_info(). (Zak)
  . snmp_read_mib(). (Jani)
  . http_build_query(). (Sara)
  . ftp_alloc(). (Sara)
  . array_udiff(). (Andrey)
  . array_udiff_assoc(). (Andrey)
  . array_udiff_uassoc(). (Andrey)
  . array_diff_uassoc(). (Andrey)
  . convert_uuencode(). (Ilia)
  . convert_uudecode(). (Ilia)
  . substr_compare(). (Ilia)
  . pcntl_wait(). (GeorgeS)
- Added "resume_pos" context option to "ftp://" wrapper. (Sara)
- Added optional parameter to OCIWriteTemporaryLob() to specify the type of LOB
  (Patch by Novicky Marek <novicky@aarongroup.cz>). (Thies)
- Added reflection API. (Andrei, George, Timm)
- Changed length parameter in fgetcsv() to be optional. (Moriyoshi)
- Fixed IPv6 support in MacOSX Panther. (Dan, Marko)
- Fixed fgetcsv() to correctly handle international (non-ascii) characters.
  (Moriyoshi)
- Fixed support for <![CDATA[]]> fields within XML documents in ext/xml. 
  (Sterling)
- Fixed visibility of __construct and __clone. (Marcus)
- Fixed bug #25756 (SimpleXML's validate_schema_file() broken). (Moriyoshi)
- Fixed bug #25581 (getimagesize() returns incorrect values on bitmap (os2)
  files). (Marcus)
- Fixed bug #25494 (array_merge*() allows non-arrays as argument). (Jay)
- Fixed bug #24766 (strange result array from unpack()). (Moriyoshi)
- Fixed bug #24729 ($obj = new $className; causes crash when $className is not 
  set). (Marcus)
- Fixed bug #24565 (cannot read array elements received via $_REQUEST). (Zeev)
- Fixed bug #24445 (get_parent_class() returns different values).
  (Sterling, Stanislav)
- Fixed bug #24403 (preg_replace() problem: Using $this when not in object
  context). (Zeev)
- Fixed bug #24399 (PEAR DB isError crash [instanceof_function fault?]). 
  (Sterling, Marcus)
- Fixed bug #24396 (foreach ($k=>$v), the key $k is missing). (Zeev)
- Fixed bug #24279 (__get() crash when no value is returned). (Ilia)
- Fixed bug #22367 (undefined variable has a value). (Zeev)
- Fixed bug #19859 (allow fast_call_user_function to support __call). 
  (Stanislav)
- Fixed bug #17997 (Warning when switch() and reference are combined). (Zeev)
- Fixed bug #17988 (strtotime failed to parse postgresql timestamp). (Derick)

29 Jun 2003, PHP 5 Beta 1 
- Removed the bundled MySQL client library. (Sterling)
- Switched to Zend Engine 2, which includes numerous engine level improvements.
  A full list is available at http://www.php.net/zend-engine-2.php.
- Added SQLite (http://www.hwaci.com/sw/sqlite/) extension: (Wez, Marcus, Tal)
  . Includes bundled SQLite library
  . Enabled by default
- Completely Overhauled XML support:
  . New simplexml extension. (Sterling)
  . New DOM extension. (Rob, Chregu, Marcus)
  . New XSL extension. (Chregu, Rob)
  . Moved the old DOM-XML and XSLT extensions to PECL. (James, Sterling)
  . ext/xml can now use either libxml2 or expat to parse XML. (Sterling)
  . Removed bundled expat library. (Jani)
- New php.ini options:
  . "session.hash_function" and "session.hash_bits_per_character". (Sascha)
  . "mail.force_extra_paramaters". (Derick)
  . "register_long_arrays". (Zeev)
- Improved the speed of internal functions that use callbacks by 40% due to a 
  new internal fast_call_user_function() function. (Sterling)
- Improved the streams support: (Wez)
  . Improved performance of readfile(), fpassthru() and some internal streams
    operations under Win32.
  . stream_socket_client() - similar to fsockopen(), but more powerful. 
  . stream_socket_server() - Creates a server socket. 
  . stream_socket_accept() - Accept a client connection.
  . stream_socket_get_name() - Get local or remote name of socket.
  . stream_copy_to_stream()
  . stream_get_line() - Reads either the specified number of bytes or until 
    the ending string is found. (Ilia)
  . Added context property to userspace streams object. (Sara)
  . Added generic crypto interface for streams.
    (supports dynamic loading of OpenSSL)
  . Added lightweight streaming input abstraction to the Zend Engine scanners
    to provide uniform support for include()'ing data from PHP streams across
    all platforms.
  . Added 'string.base64' stream filter. (Moriyoshi)
  . Renamed stream_register_wrapper() to stream_wrapper_register(). (Derick)
- Improved the GD extension: (Pierre-Alain Joye, Ilia)
   . imagefilter() - Apply different filters to image.
    (Only available with bundled GD library)
   . Antialiased drawing support:
     o imageantialias() - (de)active antialias
     o imageline() and imagepolygon() antialias support
- Changed the length parameter in fgetss() to be optional. (Moriyoshi)
- Changed ini parser to allow for handling of quoted multi-line values. (Ilia)
- Changed get_extension_funcs() to return list of the built-in Zend Engine 
  functions if "zend" is specified as the module name. (Ilia)
- Changed array_search() to accept also objects as a needle. (Moriyoshi)
- Changed ext/mcrypt to require libmcrypt version 2.5.6 or greater. (Derick)
- Changed uniqid() parameters to be optional and allow any prefix length.
  (Marcus)
- Added new iconv functions. (Moriyoshi)
  . iconv_strlen()
  . iconv_substr()
  . iconv_strpos()
  . iconv_strrpos()
  . iconv_mime_decode()
  . iconv_mime_encode()
- Added misc. new functions:
  . ldap_sasl_bind(). (peter_c60@hotmail.com, Jani)
  . imap_getacl(). (Dan, Holger Burbach)
  . file_put_contents(). (Sterling)
  . proc_nice() - Changes priority of the current process. (Ilia)
  . pcntl_getpriority() and pcntl_setpriority(). (Ilia)
  . idate(), date_sunrise() and date_sunset(). (Moshe Doron)
  . strpbrk() - Searches a string for a list of characters. (Ilia)
  . get_headers() - Returns headers sent by the server of the specified URL.
    (Ilia)
  . str_split() - Breaks down a string into an array of elements based on 
    length. (Ilia)
  . array_walk_recursive(). (Ilia)
  . array_combine(). (Andrey)
- Added optional parameter to get_browser() to make it return an array. (Jay)
- Added optional parameter to openssl_sign() to specify the hashing algorithm.
  (scott@planetscott.ca, Derick)
- Added optional parameter to sha1(), sha1_file(), md5() and md5_file() which
  makes them return the digest as binary data. (Michael Bretterklieber, Derick)
- Added optional parameter to mkdir() to make directory creation recursive.
  (Ilia)
- Added optional parameter to file() which makes the result array not contain
  the line endings and to skip empty lines. (Ilia)
- Added new range() functionality:
  . Support for float modifier. (Ilia)
  . Detection of numeric values inside strings passed as high & low. (Ilia)
  . Proper handle the situations where high == low. (Ilia)
  . Added an optional step parameter. (Jon)
- Added encoding detection feature for expat XML parser.
  (Adam Dickmeiss, Moriyoshi)
- Added missing multibyte (unicode) support and numeric entity support to
  html_entity_decode(). (Moriyoshi)
- Added IPv6 support to ext/sockets. (Sara)
- Added "ftp://" wrapper support to opendir(), stat() and unlink(). (Sara)
- Added context options 'method', 'header' and 'content' for "http://" fopen 
  wrapper. (Sara)
- Added input filter support. See README.input_filter for more info. (Rasmus)
- Added a replace count for str_[i]replace(), see bug #8218. (Sara)
- Fixed is_executable() to be available also on Windows. (Shane)
- Fixed dirname() and strip_tags() to be binary-safe. (Moriyoshi)
- Fixed bug #24098 (crash in pathinfo()). (Ilia)
- Fixed bug #21985 and #22064 (various mb_send_mail() issues). (Moriyoshi)
- Fixed bug #21600 (Assign by reference function call changes variable 
  contents). (Zeev)