1 | Version 3.15 Wed Dec 7 15:13:22 EST 2005
|
---|
2 | 1. Remove extraneous "?" from self_url() when URI contains a ? but no query string.
|
---|
3 |
|
---|
4 | Version 3.14 Tue Dec 6 17:12:03 EST 2005
|
---|
5 | 1. Fixed broken scrolling_list() select attribute.
|
---|
6 |
|
---|
7 | Version 3.13
|
---|
8 | 1. Removed extraneous empty "?" from end of self_url().
|
---|
9 |
|
---|
10 | Version 3.12
|
---|
11 | 1. Fixed virtual_port so that it works properly with https protocol.
|
---|
12 | 2. Fixed documentation for upload_hook().
|
---|
13 | 3. Added POSTDATA documentation.
|
---|
14 | 4. Made upload_hook() work in function-oriented mode.
|
---|
15 | 5. Fixed POST_MAX behavior so that it doesn't cause client to hang.
|
---|
16 | 6. Disabled automatic tab indexes and added new -tabindex pragma to
|
---|
17 | turn automatic indexes back on.
|
---|
18 | 7. The url() and self_url() methods now work better in the context of Apache
|
---|
19 | mod_rewrite. Be advised that path_info() may give you confusing results
|
---|
20 | when mod_rewrite is active because Apache calculates the path info *after*
|
---|
21 | rewriting. This is mostly worked around in url() and self_url(), but you
|
---|
22 | may notice some anomalies.
|
---|
23 | 8. Removed empty (and non-validating) <div> from code emitted by end_form().
|
---|
24 | 9. Fixed CGI::Carp to work correctly with Mod_perl 1.29 in an Apache 2 environment.
|
---|
25 | 10. Setting $CGI::TMPDIRECTORY should now be effective.
|
---|
26 |
|
---|
27 | Version 3.11
|
---|
28 | 1. Killed warning in CGI::Cookie about MOD_PERL_API_VERSION
|
---|
29 | 2. Fixed append() so that it works in function mode.
|
---|
30 | 3. Workaround for a bug that appears in Apache2 versions through 2.0.54
|
---|
31 | in which SCRIPT_NAME and PATH_INFO are incorrect if the additional path_info
|
---|
32 | contains a double slash. This workaround will handle the common case of
|
---|
33 | http://mysite.com/cgi-bin/log.cgi/http://www.some.other.site/args, but will
|
---|
34 | not handle the uncommon case of a ScriptAlias directive that adds additional
|
---|
35 | path information to the end of the translated URI.
|
---|
36 |
|
---|
37 | Version 3.10
|
---|
38 | 1. Added Apache2::RequestIO, which is necessary for mp2 interoperability.
|
---|
39 |
|
---|
40 | Version 3.09
|
---|
41 | 1. Fixed tabindex="0" when using CGI to create forms without a prior start_html
|
---|
42 | 2. Removed warning about non-numeric MOD_PERL_API_VERSION.
|
---|
43 |
|
---|
44 | Version 3.08
|
---|
45 | 1. update support for mod_perl 2.0. versions prior to
|
---|
46 | mod_perl 1.999_22 (2.0.0-RC5) are no longer supported.
|
---|
47 |
|
---|
48 | Version 3.07
|
---|
49 | 1. Fixed typo in mod_perl detection.
|
---|
50 |
|
---|
51 | Version 3.06
|
---|
52 |
|
---|
53 | 1. Fixed bare call to script() in start_html
|
---|
54 | 2. Moved Fh::DESTROY out of autoloaded functions so as to avoid
|
---|
55 | clobbering $@ when CGI functions are executed in an eval{}
|
---|
56 | context.
|
---|
57 | 3. mod_perl 2.0 version detection patch in CGI::Cookie provided by
|
---|
58 | Allen Day.
|
---|
59 | 4. autoEscape() flag is now respected when generating extra
|
---|
60 | attributes.
|
---|
61 | 5. Tests for *tag start/end generation from Shlomi Fish.
|
---|
62 | 6. Support for can() method provided by Ron Savage.
|
---|
63 | 7. Fix for lang='' when outputting XHTML.
|
---|
64 | 8. Added support for chunked transfer encoding, as suggested by
|
---|
65 | Hakan Ardo
|
---|
66 | 9. Fixed clobbering of row and column headers in tableized radio
|
---|
67 | and checkbox groups, as reported by Nicolas Thierry-Mieg.
|
---|
68 | 10. <Label> tags are now associated with form elements, as suggested
|
---|
69 | by accessibility guidelines.
|
---|
70 | 11. The <?xml> directive produced by start_html is now turned off by
|
---|
71 | default and the charset is specified in a <meta> directive. Apparently
|
---|
72 | IE6 (and maybe some versions of Opera) were getting confused by this.
|
---|
73 | 12. Support for tab indexes.
|
---|
74 | 13. Retired the HTML docs. The POD docs are now primary documentation.
|
---|
75 | 14. CGI::Carp now correctly detects and handles Apache::Dispatch.
|
---|
76 | 15. CGI::Util::utf8_chr now correctly sets the UTF8 flag on 5.006 or
|
---|
77 | higher perls (fix courtesy Slaven Rezic).
|
---|
78 |
|
---|
79 |
|
---|
80 | Version 3.05
|
---|
81 |
|
---|
82 | 1. Fixed uninitialized variable warning on start_form() when running
|
---|
83 | from command line.
|
---|
84 | 2. Fixed CGI::_set_attributes so that attributes with a - are handled
|
---|
85 | correctly.
|
---|
86 | 3. Fixed CGI::Carp::die() so as to avoid problems from _longmess()
|
---|
87 | clobbering @_.
|
---|
88 | 4. If HTTP_X_FORWARDED_HOST is defined (i.e. running under a proxy),
|
---|
89 | the various functions that return HOST will use that instead.
|
---|
90 | 5. Fix for undefined utf8() call in CGI::Util.
|
---|
91 | 6. Changed the call to warningsToBrowser() in
|
---|
92 | CGI::Carp::fatalsToBrowser to call only after HTTP header is sent
|
---|
93 | (thanks to Didier Lebrun for noticing).
|
---|
94 | 7. Patches from Dan Harkless to make CGI.pm validatable against HTML
|
---|
95 | 3.2.
|
---|
96 | 8. Fixed an extraneous "foo=bar" appearing when extra style
|
---|
97 | parameters passed to start_html;
|
---|
98 | 9. Fixed cross-site scripting bug in startform() pointed out by Dan
|
---|
99 | Harkless.
|
---|
100 | 10. Fixed documentation to discuss list context behavior of
|
---|
101 | form-element generators explicitly.
|
---|
102 | 11. Fixed incorrect results from end_form() when called in OO manner.
|
---|
103 | 12. Fixed query string stripping in order to handle URLs containing
|
---|
104 | escaped newlines.
|
---|
105 | 13. During server push, set NPH to 0 rather than 1. This is supposed
|
---|
106 | to fix problems with Apache.
|
---|
107 | 14. Fixed incorrect processing of multipart form fields that contain
|
---|
108 | embedded quotes. There's still the issue of how to handle ones
|
---|
109 | that contain embedded semicolons, but no one has complained (yet).
|
---|
110 | 15. Fixed documentation bug in -style argument to start_html()
|
---|
111 | 16. Added -status argument to redirect().
|
---|
112 |
|
---|
113 | Version 3.04
|
---|
114 |
|
---|
115 | 1. Fixed the problem with mod_perl crashing when "defaults" button
|
---|
116 | pressed.
|
---|
117 |
|
---|
118 | Version 3.03
|
---|
119 |
|
---|
120 | 1. Fix upload hook functionality
|
---|
121 | 2. Workaround for CGI->unescape_html()
|
---|
122 | 3. Bumped version numbers in CGI::Fast and CGI::Util for 5.8.3-tobe
|
---|
123 |
|
---|
124 | Version 3.02
|
---|
125 |
|
---|
126 | 1. Bring in Apache::Response just in case.
|
---|
127 | 2. File upload on EBCDIC systems now works.
|
---|
128 |
|
---|
129 | Version 3.01
|
---|
130 |
|
---|
131 | 1. No fix yet for upload failures when running on EBCDIC server.
|
---|
132 | 2. Fixed uninitialized glob warnings that appeared when file
|
---|
133 | uploading under perl 5.8.2.
|
---|
134 | 3. Added patch from Schlomi Fish to allow debugging of PATH_INFO from
|
---|
135 | command line.
|
---|
136 | 4. Added patch from Steve Hay to correctly unlink tmp files under
|
---|
137 | mod_perl/windows
|
---|
138 | 5. Added upload_hook functionality from Jamie LeTaul
|
---|
139 | 6. Workarounds for mod_perl 2 IO issues. Check that file upload and
|
---|
140 | state saving still working.
|
---|
141 | 7. Added code for underreads.
|
---|
142 | 8. Fixed misleading description of redirect() and relative URLs in
|
---|
143 | the POD docs.
|
---|
144 | 9. Workaround for weird interaction of CGI::Carp with Safe module
|
---|
145 | reported by William McKee.
|
---|
146 | 10. Added patches from Ilmari Karonen to improve behavior of
|
---|
147 | CGI::Carp.
|
---|
148 | 11. Fixed documentation error in -style argument.
|
---|
149 | 12. Added virtual_port() method for finding out what port server is
|
---|
150 | listening on in a virtual-host aware fashion.
|
---|
151 |
|
---|
152 | Version 3.00
|
---|
153 |
|
---|
154 | 1. Patch from Randal Schwartz to fix bug introduced by cross-site
|
---|
155 | scripting vulnerability "fix."
|
---|
156 | 2. Patch from JFreeman to replace UTF-8 escape constant of 0xfe with
|
---|
157 | 0xfc. Hope this is right!
|
---|
158 |
|
---|
159 | Version 2.99
|
---|
160 |
|
---|
161 | 1. Patch from Steve Hay to fix extra Content-type: appearing on
|
---|
162 | browser screen when FatalsToBrowser invoked.
|
---|
163 | 2. Patch from Ewann Corvellec to fix cross-site scripting
|
---|
164 | vulnerability.
|
---|
165 | 3. Fixed tmpdir routine for file uploading to solve problem that
|
---|
166 | occurs under mod_perl when tmpdir is writable at startup time, but
|
---|
167 | not at session time.
|
---|
168 |
|
---|
169 | Version 2.98
|
---|
170 |
|
---|
171 | 1. Fixed crash in Dump() function.
|
---|
172 |
|
---|
173 | Version 2.97
|
---|
174 |
|
---|
175 | 1. Sigh. Uploaded wrong 2.96 to CPAN.
|
---|
176 |
|
---|
177 | Version 2.96
|
---|
178 |
|
---|
179 | 1. More bugfixes to the -style argument.
|
---|
180 |
|
---|
181 | Version 2.95
|
---|
182 |
|
---|
183 | 1. Fixed bugs in start_html(-style=>...) support introduced in 2.94.
|
---|
184 |
|
---|
185 | Version 2.94
|
---|
186 |
|
---|
187 | 1. Removed warning from reset() method.
|
---|
188 | 2. Moved
|
---|
189 |
|
---|
190 | and tags into the :html3 group. Hope this removes undefined CGI::Area
|
---|
191 | errors.
|
---|
192 |
|
---|
193 | Changed CGI::Carp to play with mod_perl2 and to (hopefully) restore
|
---|
194 | reporting of compile-time errors.
|
---|
195 |
|
---|
196 | Fixed potential deadlock between web server and CGI.pm when aborting
|
---|
197 | a read due to POST_MAX (reported by Antti Lankila).
|
---|
198 |
|
---|
199 | Fixed issue with tag-generating function not incorporating content
|
---|
200 | when first variable undef.
|
---|
201 |
|
---|
202 | Fixed cross-site scripting bug reported by obscure.
|
---|
203 |
|
---|
204 | Fixed Dump() function to return correctly formed XHTML - bug
|
---|
205 | reported by Ralph Siemsen.
|
---|
206 |
|
---|
207 | Version 2.93
|
---|
208 |
|
---|
209 | 1. Fixed embarassing bug in mp1 support.
|
---|
210 |
|
---|
211 | Version 2.92
|
---|
212 |
|
---|
213 | 1. Fix to be P3P compliant submitted from MPREWITT.
|
---|
214 | 2. Added CGI->r() API for mod_perl1/mod_perl2.
|
---|
215 | 3. Fixed bug in redirect() that was corrupting cookies.
|
---|
216 | 4. Minor fix to behavior of reset() button to make it consistent with
|
---|
217 | submit() button (first time this has been changed in 9 years).
|
---|
218 | 5. Patch from Dan Kogai to handle UTF-8 correctly in 5.8 and higher.
|
---|
219 | 6. Patch from Steve Hay to make CGI::Carp's error messages appear on
|
---|
220 | MSIE browsers.
|
---|
221 | 7. Added Yair Lenga's patch for non-urlencoded postings.
|
---|
222 | 8. Added Stas Bekman's patches for mod_perl 2 compatibility.
|
---|
223 | 9. Fixed uninitialized escape behavior submitted by William Campbell.
|
---|
224 | 10. Fixed tied behavior so that you can pass arguments to tie()
|
---|
225 | 11. Fixed incorrect generation of URLs when the path_info contains +
|
---|
226 | and other odd characters.
|
---|
227 | 12. Fixed redirect(-cookies=>$cookie) problem.
|
---|
228 | 13. Fixed tag generation bug that affects -javascript passed to
|
---|
229 | start_html().
|
---|
230 |
|
---|
231 | Version 2.91
|
---|
232 |
|
---|
233 | 1. Attribute generation now correctly respects the value of
|
---|
234 | autoEscape().
|
---|
235 | 2. Fixed endofrm() syntax error introduced by Ben Edgington's patch.
|
---|
236 |
|
---|
237 | Version 2.90
|
---|
238 |
|
---|
239 | 1. Fixed bug in redirect header handling.
|
---|
240 | 2. Added P3P option to header().
|
---|
241 | 3. Patches from Alexey Mahotkin to make CGI::Carp work correctly with
|
---|
242 | object-oriented exceptions.
|
---|
243 | 4. Removed inaccurate description of how to set multiple cookies from
|
---|
244 | CGI::Cookie pod file.
|
---|
245 | 5. Patch from Kevin Mahony to prevent running out of filehandles when
|
---|
246 | uploading lots of files.
|
---|
247 | 6. Documentation enhancement from Mark Fisher to note that the
|
---|
248 | import_names() method transforms the parameter names into valid
|
---|
249 | Perl names.
|
---|
250 | 7. Patch from Dan Harkless to suppress lang attribute in <html> tag
|
---|
251 | if specified as a null string.
|
---|
252 | 8. Patch from Ben Edgington to fix broken XHTML-transitional 1.0
|
---|
253 | validation on endform().
|
---|
254 | 9. Custom html header fix from Steffen Beyer (first letter correctly
|
---|
255 | upcased now)
|
---|
256 | 10. Added a -verbatim option to stylesheet generation from Michael
|
---|
257 | Dickson
|
---|
258 | 11. Faster delete() method from Neelam Gupta
|
---|
259 | 12. Fixed broken Cygwin support.
|
---|
260 | 13. Added empty charset support from Bradley Baetz
|
---|
261 | 14. Patches from Doug Perham and Kevin Mahoney to fix file upload
|
---|
262 | failures when uploaded file is a multiple of 4096.
|
---|
263 |
|
---|
264 | Version 2.89
|
---|
265 |
|
---|
266 | 1. Fixed behavior of ACTION tag when POSTING to a URL that has a
|
---|
267 | query string.
|
---|
268 | 2. Added Patch from Michael Rommel to handle multipart/mixed uploads
|
---|
269 | from Opera
|
---|
270 |
|
---|
271 | Version 2.88
|
---|
272 |
|
---|
273 | 1. Fixed problem with uploads being refused under Perl 5.8 when under
|
---|
274 | Taint mode.
|
---|
275 | 2. Fixed uninitialized variable warnings under Perl 5.8.
|
---|
276 | 3. Fixed CGI::Pretty regression test failures.
|
---|
277 |
|
---|
278 | Version 2.87
|
---|
279 |
|
---|
280 | 1. Security hole patched: when processing multipart/form-data
|
---|
281 | postings, most arguments were being untainted silently. Returned
|
---|
282 | arguments are now tainted correctly. This may cause some scripts
|
---|
283 | to fail that used to work (thanks to Nick Cleaton for pointing
|
---|
284 | this out and persisting until it was fixed).
|
---|
285 | 2. Update for mod_perl 2.0.
|
---|
286 | 3. Pragmas such as -no_xhtml are now respected in mod_perl
|
---|
287 | environment.
|
---|
288 |
|
---|
289 | Version 2.86
|
---|
290 |
|
---|
291 | 1. Fixes for broken CGI::Cookie expiration dates introduced in 2.84.
|
---|
292 |
|
---|
293 | Version 2.85
|
---|
294 |
|
---|
295 | 1. Fix for broken autoEscape function introduced in 2.84.
|
---|
296 |
|
---|
297 | Version 2.84
|
---|
298 |
|
---|
299 | 1. Fix for failed file uploads on Cygwin platforms.
|
---|
300 | 2. HTML escaping code now replaced 0x8b and 0x9b with unicode
|
---|
301 | references < and *#8250;
|
---|
302 |
|
---|
303 | Version 2.83
|
---|
304 |
|
---|
305 | 1. Fixed autoEscape() documentation inconsistencies.
|
---|
306 | 2. Patch from Ville Skyttä to fix a number of XHTML inconsistencies.
|
---|
307 | 3. Added Max-Age to list of CGI::Cookie headers.
|
---|
308 |
|
---|
309 | Version 2.82
|
---|
310 |
|
---|
311 | 1. Patch from Rudolf Troller to add attribute setting and option
|
---|
312 | groups to form fields.
|
---|
313 | 2. Patch from Simon Perreault for silent crashes when using CGI::Carp
|
---|
314 | under mod_perl.
|
---|
315 | 3. Patch from Scott Gifford allows you to set the program name for
|
---|
316 | CGI::Carp.
|
---|
317 |
|
---|
318 | Version 2.81
|
---|
319 |
|
---|
320 | 1. Removed extraneous slash from end of stylesheet tags generated by
|
---|
321 | start_html in non-XHTML mode.
|
---|
322 | 2. Changed behavior of CGI::Carp with respect to eval{} contexts so
|
---|
323 | that output behaves properly in mod_perl environments.
|
---|
324 | 3. Fixed default DTD so that it validates with W3C validator.
|
---|
325 |
|
---|
326 | Version 2.80
|
---|
327 |
|
---|
328 | 1. Fixed broken messages in CGI::Carp.
|
---|
329 | 2. Changed checked="1" to checked="checked" for real XHTML
|
---|
330 | compatibility.
|
---|
331 | 3. Resurrected REQUEST_URI code so that url() works correctly with
|
---|
332 | multiviews.
|
---|
333 |
|
---|
334 | Version 2.79
|
---|
335 |
|
---|
336 | 1. Changes to CGI::Carp to avoid "subroutine redefined" error
|
---|
337 | messages.
|
---|
338 | 2. Default DTD is now XHTML 1.0 Transitional
|
---|
339 | 3. Patches to support all HTML4 tags.
|
---|
340 |
|
---|
341 | Version 2.78
|
---|
342 |
|
---|
343 | 1. Added ability to change encoding in <?xml> assertion.
|
---|
344 | 2. Fixed the old escapeHTML('CGI') ne "CGI" bug
|
---|
345 | 3. In accordance with XHTML requirements, there are no longer any
|
---|
346 | minimized attributes, such as "checked".
|
---|
347 | 4. Patched bug which caused file uploads of exactly 4096 bytes to be
|
---|
348 | truncated to 4094 (thanks to Kevin Mahony)
|
---|
349 | 5. New tests and fixes to CGI::Pretty (thanks to Michael Schwern).
|
---|
350 |
|
---|
351 | Version 2.77
|
---|
352 |
|
---|
353 | 1. No new features, but released in order to fix an apparent CPAN
|
---|
354 | bug.
|
---|
355 |
|
---|
356 | Version 2.76
|
---|
357 |
|
---|
358 | 1. New esc.t regression test for EBCDIC translations courtesy Peter
|
---|
359 | Prymmer.
|
---|
360 | 2. Patches from James Jurach to make compatible with FCGI-ProcManager
|
---|
361 | 3. Additional fields passed to header() (like -Content_disposition)
|
---|
362 | now honor initial capitalization.
|
---|
363 | 4. Patch from Andrew McNaughton to handle utf-8 escapes (%uXXXX
|
---|
364 | codes) in URLs.
|
---|
365 |
|
---|
366 | Version 2.752
|
---|
367 |
|
---|
368 | 1. Syntax error in the autoloaded Fh::new() subroutine.
|
---|
369 | 2. Better error reporting in autoloaded functions.
|
---|
370 |
|
---|
371 | Version 2.751
|
---|
372 |
|
---|
373 | 1. Tiny tweak to filename regular expression function on line 3355.
|
---|
374 |
|
---|
375 | Version 2.75
|
---|
376 |
|
---|
377 | 1. Fixed bug in server push boundary strings (CGI.pm and CGI::Push).
|
---|
378 | 2. Fixed bug that occurs when uploading files with funny characters
|
---|
379 | in the name
|
---|
380 | 3. Fixed non-XHTML-compliant attributes produced by textfield()
|
---|
381 | 4. Added EPOC support, courtesy Olaf Flebbe
|
---|
382 | 5. Fixed minor XHTML bugs.
|
---|
383 | 6. Made escape() and unescape() symmetric with respect to EBCDIC,
|
---|
384 | courtesy Roca, Ignasi <ignasi.roca@fujitsu.siemens.es>
|
---|
385 | 7. Removed uninitialized variable warning from CGI::Cookie, provided
|
---|
386 | by Atipat Rojnuckarin <rojnuca@yahoo.com>
|
---|
387 | 8. Fixed bug in CGI::Pretty that causes it to print partial end tags
|
---|
388 | when the $INDENT global is changed.
|
---|
389 | 9. Single quotes are changed to character entity ' for compatibility
|
---|
390 | with URLs.
|
---|
391 |
|
---|
392 | Version 2.74
|
---|
393 |
|
---|
394 | September 13, 2000
|
---|
395 | 1. Quashed one-character bug that caused CGI.pm to fail on file
|
---|
396 | uploads.
|
---|
397 |
|
---|
398 | Version 2.73
|
---|
399 |
|
---|
400 | September 12, 2000
|
---|
401 | 1. Added -base to the list of arguments accepted by url().
|
---|
402 | 2. Fixes to XHTML support.
|
---|
403 | 3. POST parameters no longer show up in the Location box.
|
---|
404 |
|
---|
405 | Version 2.72
|
---|
406 |
|
---|
407 | August 19, 2000
|
---|
408 | 1. Fixed the defaults button so that it works again
|
---|
409 | 2. Charset is now correctly saved and restored when saving to files
|
---|
410 | 3. url() now works correctly when given scripts with %20 and other
|
---|
411 | escapes in the additional path info. This undoes a patch
|
---|
412 | introduced in version 2.47 that I no longer understand the
|
---|
413 | rationale for.
|
---|
414 |
|
---|
415 | Version 2.71
|
---|
416 |
|
---|
417 | August 13, 2000
|
---|
418 | 1. Newlines in the value attributes of hidden fields and other form
|
---|
419 | elements are now escaped when using ISO-Latin.
|
---|
420 | 2. Inline script and style sections are now protected as CDATA
|
---|
421 | sections when XHTML mode is on (the default).
|
---|
422 |
|
---|
423 | Version 2.70
|
---|
424 |
|
---|
425 | August 4, 2000
|
---|
426 | 1. Fixed bug in scrolling_list() which omitted a space in front of
|
---|
427 | the "multiple" attribute.
|
---|
428 | 2. Squashed the "useless use of string in void context" message from
|
---|
429 | redirects.
|
---|
430 |
|
---|
431 | Version 2.69
|
---|
432 |
|
---|
433 | 1. startform() now creates default ACTION for POSTs as well as GETs.
|
---|
434 | This may break some browsers, but it no longer violates the HTML
|
---|
435 | spec.
|
---|
436 | 2. CGI.pm now emits XHTML by default. Disable with -no_xhtml.
|
---|
437 | 3. We no longer interpret &#ddd sequences in non-latin character
|
---|
438 | sets.
|
---|
439 |
|
---|
440 | Version 2.68
|
---|
441 |
|
---|
442 | 1. No longer attempts to escape characters when dealing with non
|
---|
443 | ISO-8861 character sets.
|
---|
444 | 2. checkbox() function now defaults to using -value as its label,
|
---|
445 | rather than -name. The current behavior is what has been
|
---|
446 | documented from the beginning.
|
---|
447 | 3. -style accepts array reference to incorporate multiple stylesheets
|
---|
448 | into document.
|
---|
449 |
|
---|
450 | 1. Fixed two bugs that caused the -compile pragma to fail with a
|
---|
451 | syntax error.
|
---|
452 |
|
---|
453 | Version 2.67
|
---|
454 |
|
---|
455 | 1. Added XHTML support (incomplete; tags need to be lowercased).
|
---|
456 | 2. Fixed CGI/Carp when running under mod_perl. Probably broke in
|
---|
457 | other contexts.
|
---|
458 | 3. Fixed problems when passing multiple cookies.
|
---|
459 | 4. Suppress warnings from _tableize() that were appearing when using
|
---|
460 | -w switch with radio_group() and checkbox_group().
|
---|
461 | 5. Support for the header() -attachment argument, which can give
|
---|
462 | pages a default file name when saving to disk.
|
---|
463 |
|
---|
464 | Version 2.66
|
---|
465 |
|
---|
466 | 1. 2.65 changes in make_attributes() broke HTTP header functions
|
---|
467 | (including redirect), so made it context sensitive.
|
---|
468 |
|
---|
469 | Version 2.65
|
---|
470 |
|
---|
471 | 1. Fixed regression tests to skip tests that require implicit fork on
|
---|
472 | machines without fork().
|
---|
473 | 2. Changed make_attributes() to automatically escape any HTML
|
---|
474 | reserved characters.
|
---|
475 | 3. Minor documentation fix in javascript example.
|
---|
476 |
|
---|
477 | Version 2.64
|
---|
478 |
|
---|
479 | 1. Changes introduced in 2.63 broke param() when retrieving parameter
|
---|
480 | lists containing only a single argument. This is now fixed.
|
---|
481 | 2. self_url() now defaults to returning parameters delimited with
|
---|
482 | semicolon. Use the pragma -oldstyle_urls to get the old "&"
|
---|
483 | delimiter.
|
---|
484 |
|
---|
485 | Version 2.63
|
---|
486 |
|
---|
487 | 1. Fixed CGI::Push to pull out parameters correctly.
|
---|
488 | 2. Fixed redirect() so that it works with default character set
|
---|
489 | 3. Changed param() so as to returned empty string '' when referring
|
---|
490 | to variables passed in query strings like 'name1=&name2'
|
---|
491 |
|
---|
492 | Version 2.62
|
---|
493 |
|
---|
494 | 1. Fixed broken ReadParse() function, and added regression tests
|
---|
495 | 2. Fixed broken CGI::Pretty, and added regression tests
|
---|
496 |
|
---|
497 | Version 2.61
|
---|
498 |
|
---|
499 | 1. Moved more functions from CGI.pm proper into CGI/Util.pm.
|
---|
500 | CGI/Cookie should now be standalone.
|
---|
501 | 2. Disabled per-user temporary directories, which were causing grief.
|
---|
502 |
|
---|
503 | Version 2.60
|
---|
504 |
|
---|
505 | 1. Fixed junk appearing in autogenerated HTML functions when using
|
---|
506 | object-oriented mode.
|
---|
507 |
|
---|
508 | Version 2.59
|
---|
509 |
|
---|
510 | 1. autoescape functionality breaks too much existing code, removed
|
---|
511 | it.
|
---|
512 | 2. use escapeHTML() manually
|
---|
513 |
|
---|
514 | Version 2.58
|
---|
515 |
|
---|
516 | This is the release version of 2.57.
|
---|
517 |
|
---|
518 | Version 2.57
|
---|
519 |
|
---|
520 | 1. Added -debug pragma and turned off auto reading of STDIN.
|
---|
521 | 2. Default DTD updated to HTML 4.01 transitional.
|
---|
522 | 3. Added charset() method and the -charset argument to header().
|
---|
523 | 4. Fixed behavior of escapeHTML() to respect charset() and to escape
|
---|
524 | nasty Windows characters (thanks to Tom Christiansen).
|
---|
525 | 5. Handle REDIRECT_QUERY_STRING correctly.
|
---|
526 | 6. Removed use_named_parameters() because of dependency problems and
|
---|
527 | general lameness.
|
---|
528 | 7. Fixed problems with bad HREF links generated by url(-relative=>1)
|
---|
529 | when the url is like /people/.
|
---|
530 | 8. Silenced a warning on upload (patch provided by Jonas Liljegren)
|
---|
531 | 9. Fixed race condition in CGI::Carp when errors occur during parsing
|
---|
532 | (patch provided by Maurice Aubrey).
|
---|
533 | 10. Fixed failure of url(-path_info=>1) when path contains % signs.
|
---|
534 | 11. Fixed warning from CGI::Cookie when receiving foreign cookies that
|
---|
535 | don't use name=value format.
|
---|
536 | 12. Fixed incompatibilities with file uploading on VMS systems.
|
---|
537 |
|
---|
538 | Version 2.56
|
---|
539 |
|
---|
540 | 1. Fixed bugs in file upload introduced in version 2.55
|
---|
541 | 2. Fixed long-standing bug that prevented two files with identical
|
---|
542 | names from being uploaded.
|
---|
543 |
|
---|
544 | Version 2.55
|
---|
545 |
|
---|
546 | 1. Fixed cookie regression test so as not to produce an error.
|
---|
547 | 2. Fixed path_info() and self_url() to work correctly together when
|
---|
548 | path_info() modified.
|
---|
549 | 3. Removed manify warnings from CGI::{Switch,Apache}.
|
---|
550 |
|
---|
551 | Version 2.54
|
---|
552 |
|
---|
553 | 1. This will be the last release of the monolithic CGI.pm module.
|
---|
554 | Later versions will be modularized and optimized.
|
---|
555 | 2. DOMAIN tag no longer added to cookies by default. This will break
|
---|
556 | some versions of Internet Explorer, but will avoid breaking
|
---|
557 | networks which use host tables without fully qualified domain
|
---|
558 | names. For compatibility, please always add the -domain tag when
|
---|
559 | creating cookies.
|
---|
560 | 3. Fixed escape() method so that +'s are treated correctly.
|
---|
561 | 4. Updated CGI::Pretty module.
|
---|
562 |
|
---|
563 | Version 2.53
|
---|
564 |
|
---|
565 | 1. Forgot to upgrade regression tests before releasing 2.52. NOTHING
|
---|
566 | ELSE HAS CHANGED IN LIBRARY
|
---|
567 |
|
---|
568 | Version 2.52
|
---|
569 |
|
---|
570 | 1. Spurious newline in checkbox() routine removed. (courtesy John
|
---|
571 | Essen)
|
---|
572 | 2. TEXTAREA linebreaks now respected in dump() routine. (courtesy
|
---|
573 | John Essen)
|
---|
574 | 3. Patches for DOS ports (courtesy Robert Davies)
|
---|
575 | 4. Patches for VMS
|
---|
576 | 5. More fixes for cookie problems
|
---|
577 | 6. Fix CGI::Carp so that it doesn't affect eval{} blocks (courtesy
|
---|
578 | Byron Brummer)
|
---|
579 |
|
---|
580 | Version 2.51
|
---|
581 |
|
---|
582 | 1. Fixed problems with cookies not being remembered when sent to IE
|
---|
583 | 5.0 (and Netscape 5.0 too?)
|
---|
584 | 2. Numerous HTML compliance problems in cgi_docs.html; fixed thanks
|
---|
585 | to Michael Leahy
|
---|
586 |
|
---|
587 | Version 2.50
|
---|
588 |
|
---|
589 | 1. Added a new Vars() method to retrieve all parameters as a tied
|
---|
590 | hash.
|
---|
591 | 2. Untainted tainted tempfile name so that script doesn't fail on
|
---|
592 | terminal unlink.
|
---|
593 | 3. Made picking of upload tempfile name more intelligent so that
|
---|
594 | doesn't fail in case of name collision.
|
---|
595 | 4. Fixed handling of expire times when passed an absolute timestamp.
|
---|
596 | 5. Changed dump() to Dump() to avoid name clashes.
|
---|
597 |
|
---|
598 | Version 2.49
|
---|
599 |
|
---|
600 | 1. Fixes for FastCGI (globals not getting reset)
|
---|
601 | 2. Fixed url() to correctly handle query string and path under
|
---|
602 | MOD_PERL
|
---|
603 |
|
---|
604 | Version 2.48
|
---|
605 |
|
---|
606 | 1. Reverted detection of MOD_PERL to avoid breaking PerlEX.
|
---|
607 |
|
---|
608 | Version 2.47
|
---|
609 |
|
---|
610 | 1. Patch to fix file upload bug appearing in IE 3.01 for
|
---|
611 | Macintosh/PowerPC.
|
---|
612 | 2. Replaced use of $ENV{SCRIPT_NAME} with $ENV{REQUEST_URI} when
|
---|
613 | running under Apache, to fix self-referencing URIs.
|
---|
614 | 3. Fixed bug in escapeHTML() which caused certain constructs, such as
|
---|
615 | CGI->image_button(), to fail.
|
---|
616 | 4. Fixed bug which caused strong('CGI') to fail. Be careful to use
|
---|
617 | CGI::strong('CGI') and not CGI->strong('CGI'). The latter will
|
---|
618 | produce confusing results.
|
---|
619 | 5. Added upload() function, as a preferred replacement for the
|
---|
620 | "filehandle as string" feature.
|
---|
621 | 6. Added cgi_error() function.
|
---|
622 | 7. Rewrote file upload handling to return undef rather than dieing
|
---|
623 | when an error is encountered. Be sure to call cgi_error() to find
|
---|
624 | out what went wrong.
|
---|
625 |
|
---|
626 | Version 2.46
|
---|
627 |
|
---|
628 | 1. Fix for failure of the "include" tests under mod_perl
|
---|
629 | 2. Added end_multipart_form to prevent failures during qw(-compile
|
---|
630 | :all)
|
---|
631 |
|
---|
632 | Version 2.45
|
---|
633 |
|
---|
634 | 1. Multiple small documentation fixes
|
---|
635 | 2. CGI::Pretty didn't get into 2.44. Fixed now.
|
---|
636 |
|
---|
637 | Version 2.44
|
---|
638 |
|
---|
639 | 1. Fixed file descriptor leak in upload function.
|
---|
640 | 2. Fixed bug in header() that prevented fields from containing double
|
---|
641 | quotes.
|
---|
642 | 3. Added Brian Paulsen's CGI::Pretty package for pretty-printing
|
---|
643 | output HTML.
|
---|
644 | 4. Removed CGI::Apache and CGI::Switch from the distribution.
|
---|
645 | 5. Generated start_* shortcuts so that start_table(), end_table(),
|
---|
646 | start_ol(), end_ol(), and so forth now work (see the docs on how
|
---|
647 | to enable this feature).
|
---|
648 | 6. Changed accept() to Accept(), sub() to Sub(). There's still a
|
---|
649 | conflict with reset(), but this will break too many existing
|
---|
650 | scripts!
|
---|
651 |
|
---|
652 | Version 2.43
|
---|
653 |
|
---|
654 | 1. Fixed problem with "use strict" and file uploads (thanks to Peter
|
---|
655 | Haworth)
|
---|
656 | 2. Fixed problem with not MSIE 3.01 for the power_mac not doing file
|
---|
657 | uploads right.
|
---|
658 | 3. Fixed problem with file upload on IIS 4.0 when authorization in
|
---|
659 | use.
|
---|
660 | 4. -content_type and '-content-type' can now be provided to header()
|
---|
661 | as synonyms for -type.
|
---|
662 | 5. CGI::Carp now escapes the ampersand BEFORE escaping the > and <
|
---|
663 | signs.
|
---|
664 | 6. Fixed "not an array reference" error when passing a hash reference
|
---|
665 | to radio_group().
|
---|
666 | 7. Fixed non-removal of uploaded TMP files on NT platforms which
|
---|
667 | occurs when server runs on non-C drive (thanks to Steve Kilbane
|
---|
668 | for finding this one).
|
---|
669 |
|
---|
670 | Version 2.42
|
---|
671 |
|
---|
672 | 1. Too many screams of anguish at changed behavior of url(). Is now
|
---|
673 | back to its old behavior by default, with options to generate all
|
---|
674 | the variants.
|
---|
675 | 2. Added regression tests. "make test" now works.
|
---|
676 | 3. Documentation fixes.
|
---|
677 | 4. Fixes for Macintosh uploads, but uploads STILL do not work pending
|
---|
678 | changes to MacPerl.
|
---|
679 |
|
---|
680 | Version 2.41
|
---|
681 |
|
---|
682 | 1. url() method now includes the path info. Use script_name() to get
|
---|
683 | it without path info().
|
---|
684 | 2. Changed handling of empty attributes in HTML tag generation. Be
|
---|
685 | warned! Use table({-border=>undef}) rather than
|
---|
686 | table({-border=>''}).
|
---|
687 | 3. Changes to allow uploaded filenames to be compared to other
|
---|
688 | strings with "eq", "cmp" and "ne".
|
---|
689 | 4. Changes to allow CGI.pm to coexist more peacefully with
|
---|
690 | ActiveState PerlEX.
|
---|
691 | 5. Changes to prevent exported variables from clashing when importing
|
---|
692 | ":all" set in combination with cookies.
|
---|
693 |
|
---|
694 | Version 2.40
|
---|
695 |
|
---|
696 | 1. CGI::Carp patched to work better with mod_perl (thanks to Chris
|
---|
697 | Dean).
|
---|
698 | 2. Uploads of files whose names begin with numbers or the Windows
|
---|
699 | \\UNC\shared\file nomenclature should no longer fail.
|
---|
700 | 3. The <STYLE> tag (for cascading style sheets) now generates the
|
---|
701 | required TYPE attribute.
|
---|
702 | 4. Server push primitives added, thanks to Ed Jordan.
|
---|
703 | 5. Table and other HTML3 functions are now part of the :standard set.
|
---|
704 | 6. Small documentation fixes.
|
---|
705 |
|
---|
706 | TO DO:
|
---|
707 | 1. Do something about the DTD mess. The module should generate
|
---|
708 | correct DTDs, or at least offer the programmer a way to specify
|
---|
709 | the correct one.
|
---|
710 | 2. Split CGI.pm into CGI processing and HTML-generating modules.
|
---|
711 | 3. More robust file upload (?still not working on the Macintosh?).
|
---|
712 | 4. Bring in all the HTML4 functionality, particular the accessibility
|
---|
713 | features.
|
---|
714 |
|
---|
715 | Version 2.39
|
---|
716 |
|
---|
717 | 1. file uploads failing because of VMS patch; fixed.
|
---|
718 | 2. -dtd parameter was not being properly processed.
|
---|
719 |
|
---|
720 | Version 2.38
|
---|
721 |
|
---|
722 | I finally got tired of all the 2.37 betas and released 2.38. The main
|
---|
723 | difference between this version and the last 2.37 beta (2.37b30) are
|
---|
724 | some fixes for VMS. This should allow file upload to work properly on
|
---|
725 | all VMS Web servers.
|
---|
726 |
|
---|
727 | Version 2.37, various beta versions
|
---|
728 |
|
---|
729 | 1. Added a CGI::Cookie::parse() method for lucky mod_perl users.
|
---|
730 | 2. No longer need separate -values and -labels arguments for
|
---|
731 | multi-valued form elements.
|
---|
732 | 3. Added better interface to raw cookies (fix courtesy Ken Fox,
|
---|
733 | kfox@ford.com)
|
---|
734 | 4. Added param_fetch() function for direct access to parameter list.
|
---|
735 | 5. Fix to checkbox() to allow for multi-valued single checkboxes
|
---|
736 | (weird problem).
|
---|
737 | 6. Added a compile() method for those who want to compile without
|
---|
738 | importing.
|
---|
739 | 7. Documented the import pragmas a little better.
|
---|
740 | 8. Added a -compile switch to the use clause for the long-suffering
|
---|
741 | mod_perl and Perl compiler users.
|
---|
742 | 9. Fixed initialization routines so that FileHandle and type globs
|
---|
743 | work correctly (and hash initialization doesn't fail!).
|
---|
744 | 10. Better deletion of temporary files on NT systems.
|
---|
745 | 11. Added documentation on escape(), unescape(), unescapeHTML() and
|
---|
746 | unescapeHTML() subroutines.
|
---|
747 | 12. Added documentation on creating subclasses.
|
---|
748 | 13. Fixed problem when calling $self->SUPER::foo() from inheriting
|
---|
749 | subclasses.
|
---|
750 | 14. Fixed problem using filehandles from within subroutines.
|
---|
751 | 15. Fixed inability to use the string "CGI" as a parameter.
|
---|
752 | 16. Fixed exponentially growing $FILLUNIT bug
|
---|
753 | 17. Check for undef filehandle in read_from_client()
|
---|
754 | 18. Now requires the UNIVERSAL.pm module, present in Perl 5.003_7 or
|
---|
755 | higher.
|
---|
756 | 19. Fixed problem with uppercase-only parameters being ignored.
|
---|
757 | 20. Fixed vanishing cookie problem.
|
---|
758 | 21. Fixed warning in initialize_globals() under mod_perl.
|
---|
759 | 22. File uploads from Macintosh versions of MSIE should now work.
|
---|
760 | 23. Pragmas now preceded by dashes (-nph) rather than colons (:nph).
|
---|
761 | Old style is supported for backward compatability.
|
---|
762 | 24. Can now pass arguments to all functions using {} brackets,
|
---|
763 | resolving historical inconsistencies.
|
---|
764 | 25. Removed autoloader warnings about absent MultipartBuffer::DESTROY.
|
---|
765 | 26. Fixed non-sticky checkbox() when -name used without -value.
|
---|
766 | 27. Hack to fix path_info() in IIS 2.0. Doesn't help with IIS 3.0.
|
---|
767 | 28. Parameter syntax for debugging from command line now more
|
---|
768 | straightforward.
|
---|
769 | 29. Added $DISABLE_UPLOAD to disable file uploads.
|
---|
770 | 30. Added $POST_MAX to error out if POSTings exceed some ceiling.
|
---|
771 | 31. Fixed url_param(), which wasn't working at all.
|
---|
772 | 32. Fixed variable suicide problem in s///e expressions, where the
|
---|
773 | autoloader was needed during evaluation.
|
---|
774 | 33. Removed excess spaces between elements of checkbox and radio
|
---|
775 | groups
|
---|
776 | 34. Can now create "valueless" submit buttons
|
---|
777 | 35. Can now set path_info as well as read it.
|
---|
778 | 36. ReadParse() now returns a useful function result.
|
---|
779 | 37. import_names() now allows you to optionally clear out the
|
---|
780 | namespace before importing (for mod_perl users)
|
---|
781 | 38. Made it possible to have a popup menu or radio button with a value
|
---|
782 | of "0".
|
---|
783 | 39. link() changed to Link() to avoid overriding native link function.
|
---|
784 | 40. Takes advantage of mod_perl's register_cleanup() function to clear
|
---|
785 | globals.
|
---|
786 | 41. <LAYER> and <ILAYER> added to :html3 functions.
|
---|
787 | 42. Fixed problems with private tempfiles and NT/IIS systems.
|
---|
788 | 43. No longer prints the DTD by default (I bet no one will complain).
|
---|
789 | 44. Allow underscores to replace internal hyphens in parameter names.
|
---|
790 | 45. CGI::Push supports heterogeneous MIME types and adjustable delays
|
---|
791 | between pages.
|
---|
792 | 46. url_param() method added for retrieving URL parameters even when a
|
---|
793 | fill-out form is POSTed.
|
---|
794 | 47. Got rid of warnings when radio_group() is called.
|
---|
795 | 48. Cookies now moved to their very own module.
|
---|
796 | 49. Fixed documentation bug in CGI::Fast.
|
---|
797 | 50. Added a :no_debug pragma to the import list.
|
---|
798 |
|
---|
799 | Version 2.36
|
---|
800 |
|
---|
801 | 1. Expanded JavaScript functionality
|
---|
802 | 2. Preliminary support for cascading stylesheets
|
---|
803 | 3. Security fixes for file uploads:
|
---|
804 | + Module will bail out if its temporary file already exists
|
---|
805 | + Temporary files can now be made completely private to avoid
|
---|
806 | peeking by other users or CGI scripts.
|
---|
807 | 4. use CGI qw/:nph/ wasn't working correctly. Now it is.
|
---|
808 | 5. Cookie and HTTP date formats didn't meet spec. Thanks to Mark
|
---|
809 | Fisher (fisherm@indy.tce.com) for catching and fixing this.
|
---|
810 |
|
---|
811 | p
|
---|
812 |
|
---|
813 | Version 2.35
|
---|
814 |
|
---|
815 | 1. Robustified multipart file upload against incorrect syntax in
|
---|
816 | POST.
|
---|
817 | 2. Fixed more problems with mod_perl.
|
---|
818 | 3. Added -noScript parameter to start_html().
|
---|
819 | 4. Documentation fixes.
|
---|
820 |
|
---|
821 | Version 2.34
|
---|
822 |
|
---|
823 | 1. Stupid typo fix
|
---|
824 |
|
---|
825 | Version 2.33
|
---|
826 |
|
---|
827 | 1. Fixed a warning about an undefined environment variable.
|
---|
828 | 2. Doug's patch for redirect() under mod_perl
|
---|
829 | 3. Partial fix for busted inheritence from CGI::Apache
|
---|
830 | 4. Documentation fixes.
|
---|
831 |
|
---|
832 | Version 2.32
|
---|
833 |
|
---|
834 | 1. Improved support for Apache's mod_perl.
|
---|
835 | 2. Changes to better support inheritance.
|
---|
836 | 3. Support for OS/2.
|
---|
837 |
|
---|
838 | Version 2.31
|
---|
839 |
|
---|
840 | 1. New uploadInfo() method to obtain header information from uploaded
|
---|
841 | files.
|
---|
842 | 2. cookie() without any arguments returns all the cookies passed to a
|
---|
843 | script.
|
---|
844 | 3. Removed annoying warnings about $ENV{NPH} when running with the -w
|
---|
845 | switch.
|
---|
846 | 4. Removed operator overloading throughout to make compatible with
|
---|
847 | new versions of perl.
|
---|
848 | 5. -expires now implies the -date header, to avoid clock skew.
|
---|
849 | 6. WebSite passes cookies in $ENV{COOKIE} rather than
|
---|
850 | $ENV{HTTP_COOKIE}. We now handle this, even though it's O'Reilly's
|
---|
851 | fault.
|
---|
852 | 7. Tested successfully against new sfio I/O layer.
|
---|
853 | 8. Documentation fixes.
|
---|
854 |
|
---|
855 | Version 2.30
|
---|
856 |
|
---|
857 | 1. Automatic detection of operating system at load time.
|
---|
858 | 2. Changed select() function to Select() in order to avoid conflict
|
---|
859 | with Perl built-in.
|
---|
860 | 3. Added Tr() as an alternative to TR(); some people think it looks
|
---|
861 | better that way.
|
---|
862 | 4. Fixed problem with autoloading of MultipartBuffer::DESTROY code.
|
---|
863 | 5. Added the following methods:
|
---|
864 | + virtual_host()
|
---|
865 | + server_software()
|
---|
866 | 6. Automatic NPH mode when running under Microsoft IIS server.
|
---|
867 |
|
---|
868 | Version 2.29
|
---|
869 |
|
---|
870 | 1. Fixed cookie bugs
|
---|
871 | 2. Fixed problems that cropped up when useNamedParameters was set to
|
---|
872 | 1.
|
---|
873 | 3. Prevent CGI::Carp::fatalsToBrowser() from crapping out when
|
---|
874 | encountering a die() within an eval().
|
---|
875 | 4. Fixed problems with filehandle initializers.
|
---|
876 |
|
---|
877 | Version 2.28
|
---|
878 |
|
---|
879 | 1. Added support for NPH scripts; also fixes problems with Microsoft
|
---|
880 | IIS.
|
---|
881 | 2. Fixed a problem with checkbox() values not being correctly saved
|
---|
882 | and restored.
|
---|
883 | 3. Fixed a bug in which CGI objects created with empty string
|
---|
884 | initializers took on default values from earlier CGI objects.
|
---|
885 | 4. Documentation fixes.
|
---|
886 |
|
---|
887 | Version 2.27
|
---|
888 |
|
---|
889 | 1. Small but important bug fix: the automatic capitalization of tag
|
---|
890 | attributes was accidentally capitalizing the VALUES as well as the
|
---|
891 | ATTRIBUTE names (oops).
|
---|
892 |
|
---|
893 | Version 2.26
|
---|
894 |
|
---|
895 | 1. Changed behavior of scrolling_list(), checkbox() and
|
---|
896 | checkbox_group() methods so that defaults are honored correctly.
|
---|
897 | The "fix" causes endform() to generate additional <INPUT
|
---|
898 | TYPE="HIDDEN"> tags -- don't be surpised.
|
---|
899 | 2. Fixed bug involving the detection of the SSL protocol.
|
---|
900 | 3. Fixed documentation error in position of the -meta argument in
|
---|
901 | start_html().
|
---|
902 | 4. HTML shortcuts now generate tags in ALL UPPERCASE.
|
---|
903 | 5. start_html() now generates correct SGML header:
|
---|
904 | <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
---|
905 |
|
---|
906 | 6. CGI::Carp no longer fails "use strict refs" pragma.
|
---|
907 |
|
---|
908 | Version 2.25
|
---|
909 |
|
---|
910 | 1. Fixed bug that caused bad redirection on destination URLs with
|
---|
911 | arguments.
|
---|
912 | 2. Fixed bug involving use_named_parameters() followed by
|
---|
913 | start_multipart_form()
|
---|
914 | 3. Fixed bug that caused incorrect determination of binmode for
|
---|
915 | Macintosh.
|
---|
916 | 4. Spelling fixes on documentation.
|
---|
917 |
|
---|
918 | Version 2.24
|
---|
919 |
|
---|
920 | 1. Fixed bug that caused generation of lousy HTML for some form
|
---|
921 | elements
|
---|
922 | 2. Fixed uploading bug in Windows NT
|
---|
923 | 3. Some code cleanup (not enough)
|
---|
924 |
|
---|
925 | Version 2.23
|
---|
926 |
|
---|
927 | 1. Fixed an obscure bug that caused scripts to fail mysteriously.
|
---|
928 | 2. Fixed auto-caching bug.
|
---|
929 | 3. Fixed bug that prevented HTML shortcuts from passing taint checks.
|
---|
930 | 4. Fixed some -w warning problems.
|
---|
931 |
|
---|
932 | Version 2.22
|
---|
933 |
|
---|
934 | 1. New CGI::Fast module for use with FastCGI protocol. See pod
|
---|
935 | documentation for details.
|
---|
936 | 2. Fixed problems with inheritance and autoloading.
|
---|
937 | 3. Added TR() (<tr>) and PARAM() (<param>) methods to list of
|
---|
938 | exported HTML tag-generating functions.
|
---|
939 | 4. Moved all CGI-related I/O to a bottleneck method so that this can
|
---|
940 | be overridden more easily in mod_perl (thanks to Doug MacEachern).
|
---|
941 | 5. put() method as substitute for print() for use in mod_perl.
|
---|
942 | 6. Fixed crash in tmpFileName() method.
|
---|
943 | 7. Added tmpFileName(), startform() and endform() to export list.
|
---|
944 | 8. Fixed problems with attributes in HTML shortcuts.
|
---|
945 | 9. Functions that don't actually need access to the CGI object now no
|
---|
946 | longer generate a default one. May speed things up slightly.
|
---|
947 | 10. Aesthetic improvements in generated HTML.
|
---|
948 | 11. New examples.
|
---|
949 |
|
---|
950 | Version 2.21
|
---|
951 |
|
---|
952 | 1. Added the -meta argument to start_html().
|
---|
953 | 2. Fixed hidden fields (again).
|
---|
954 | 3. Radio_group() and checkbox_group() now return an appropriate
|
---|
955 | scalar value when called in a scalar context, rather than
|
---|
956 | returning a numeric value!
|
---|
957 | 4. Cleaned up the formatting of form elements to avoid unesthetic
|
---|
958 | extra spaces within the attributes.
|
---|
959 | 5. HTML elements now correctly include the closing tag when
|
---|
960 | parameters are present but null: em('')
|
---|
961 | 6. Added password_field() to the export list.
|
---|
962 |
|
---|
963 | Version 2.20
|
---|
964 |
|
---|
965 | 1. Dumped the SelfLoader because of problems with running with taint
|
---|
966 | checks and rolled my own. Performance is now significantly
|
---|
967 | improved.
|
---|
968 | 2. Added HTML shortcuts.
|
---|
969 | 3. import() now adheres to the Perl module conventions, allowing
|
---|
970 | CGI.pm to import any or all method names into the user's name
|
---|
971 | space.
|
---|
972 | 4. Added the ability to initialize CGI objects from strings and
|
---|
973 | associative arrays.
|
---|
974 | 5. Made it possible to initialize CGI objects with filehandle
|
---|
975 | references rather than filehandle strings.
|
---|
976 | 6. Added the delete_all() and append() methods.
|
---|
977 | 7. CGI objects correctly initialize from filehandles on NT/95 systems
|
---|
978 | now.
|
---|
979 | 8. Fixed the problem with binary file uploads on NT/95 systems.
|
---|
980 | 9. Fixed bug in redirect().
|
---|
981 | 10. Added '-Window-target' parameter to redirect().
|
---|
982 | 11. Fixed import_names() so that parameter names containing funny
|
---|
983 | characters work.
|
---|
984 | 12. Broke the unfortunate connection between cookie and CGI parameter
|
---|
985 | name space.
|
---|
986 | 13. Fixed problems with hidden fields whose values are 0.
|
---|
987 | 14. Cleaned up the documentation somewhat.
|
---|
988 |
|
---|
989 | Version 2.19
|
---|
990 |
|
---|
991 | 1. Added cookie() support routines.
|
---|
992 | 2. Added -expires parameter to header().
|
---|
993 | 3. Added cgi-lib.pl compatability mode.
|
---|
994 | 4. Made the module more configurable for different operating systems.
|
---|
995 | 5. Fixed a dumb bug in JavaScript button() method.
|
---|
996 |
|
---|
997 | Version 2.18
|
---|
998 |
|
---|
999 | 1. Fixed a bug that corrects a hang that occurs on some platforms
|
---|
1000 | when processing file uploads. Unfortunately this disables the
|
---|
1001 | check for bad Netscape uploads.
|
---|
1002 | 2. Fixed bizarre problem involving the inability to process uploaded
|
---|
1003 | files that begin with a non alphabetic character in the file name.
|
---|
1004 | 3. Fixed a bug in the hidden fields involving the -override directive
|
---|
1005 | being ignored when scalar defaults were passed.
|
---|
1006 | 4. Added documentation on how to disable the SelfLoader features.
|
---|
1007 |
|
---|
1008 | Version 2.17
|
---|
1009 |
|
---|
1010 | 1. Added support for the SelfLoader module.
|
---|
1011 | 2. Added oodles of JavaScript support routines.
|
---|
1012 | 3. Fixed bad bug in query_string() method that caused some parameters
|
---|
1013 | to be silently dropped.
|
---|
1014 | 4. Robustified file upload code to handle premature termination by
|
---|
1015 | the client.
|
---|
1016 | 5. Exported temporary file names on file upload.
|
---|
1017 | 6. Removed spurious "uninitialized variable" warnings that appeared
|
---|
1018 | when running under 5.002.
|
---|
1019 | 7. Added the Carp.pm library to the standard distribution.
|
---|
1020 | 8. Fixed a number of errors in this documentation, and probably added
|
---|
1021 | a few more.
|
---|
1022 | 9. Checkbox_group() and radio_group() now return the buttons as
|
---|
1023 | arrays, so that you can incorporate the individual buttons into
|
---|
1024 | specialized tables.
|
---|
1025 | 10. Added the '-nolabels' option to checkbox_group() and
|
---|
1026 | radio_group(). Probably should be added to all the other
|
---|
1027 | HTML-generating routines.
|
---|
1028 | 11. Added the url() method to recover the URL without the entire query
|
---|
1029 | string appended.
|
---|
1030 | 12. Added request_method() to list of environment variables available.
|
---|
1031 | 13. Would you believe it? Fixed hidden fields again!
|
---|
1032 |
|
---|
1033 | Version 2.16
|
---|
1034 |
|
---|
1035 | 1. Fixed hidden fields yet again.
|
---|
1036 | 2. Fixed subtle problems in the file upload method that caused
|
---|
1037 | intermittent failures (thanks to Keven Hendrick for this one).
|
---|
1038 | 3. Made file upload more robust in the face of bizarre behavior by
|
---|
1039 | the Macintosh and Windows Netscape clients.
|
---|
1040 | 4. Moved the POD documentation to the bottom of the module at the
|
---|
1041 | request of Stephen Dahmen.
|
---|
1042 | 5. Added the -xbase parameter to the start_html() method, also at the
|
---|
1043 | request of Stephen Dahmen.
|
---|
1044 | 6. Added JavaScript form buttons at Stephen's request. I'm not sure
|
---|
1045 | how to use this Netscape extension correctly, however, so for now
|
---|
1046 | the form() method is in the module as an undocumented feature. Use
|
---|
1047 | at your own risk!
|
---|
1048 |
|
---|
1049 | Version 2.15
|
---|
1050 |
|
---|
1051 | 1. Added the -override parameter to all field-generating methods.
|
---|
1052 | 2. Documented the user_name() and remote_user() methods.
|
---|
1053 | 3. Fixed bugs that prevented empty strings from being recognized as
|
---|
1054 | valid textfield contents.
|
---|
1055 | 4. Documented the use of framesets and added a frameset example.
|
---|
1056 |
|
---|
1057 | Version 2.14
|
---|
1058 |
|
---|
1059 | This was an internal experimental version that was never released.
|
---|
1060 |
|
---|
1061 | Version 2.13
|
---|
1062 |
|
---|
1063 | 1. Fixed a bug that interfered with the value "0" being entered into
|
---|
1064 | text fields.
|
---|
1065 |
|
---|
1066 | Version 2.01
|
---|
1067 |
|
---|
1068 | 1. Added -rows and -columns to the radio and checkbox groups. No
|
---|
1069 | doubt this will cause much grief because it seems to promise a
|
---|
1070 | level of meta-organization that it doesn't actually provide.
|
---|
1071 | 2. Fixed a bug in the redirect() method -- it was not truly HTTP/1.0
|
---|
1072 | compliant.
|
---|
1073 |
|
---|
1074 | Version 2.0
|
---|
1075 |
|
---|
1076 | The changes seemed to touch every line of code, so I decided to bump
|
---|
1077 | up the major version number.
|
---|
1078 | 1. Support for named parameter style method calls. This turns out
|
---|
1079 | to be a big win for extending CGI.pm when Netscape adds new HTML
|
---|
1080 | "features".
|
---|
1081 | 2. Changed behavior of hidden fields back to the correct "sticky"
|
---|
1082 | behavior. This is going to break some programs, but it is for
|
---|
1083 | the best in the long run.
|
---|
1084 | 3. Netscape 2.0b2 broke the file upload feature. CGI.pm now handles
|
---|
1085 | both 2.0b1 and 2.0b2-style uploading. It will probably break again
|
---|
1086 | in 2.0b3.
|
---|
1087 | 4. There were still problems with library being unable to distinguish
|
---|
1088 | between a form being loaded for the first time, and a subsequent
|
---|
1089 | loading with all fields blank. We now forcibly create a default
|
---|
1090 | name for the Submit button (if not provided) so that there's
|
---|
1091 | always at least one parameter.
|
---|
1092 | 5. More workarounds to prevent annoying spurious warning messages
|
---|
1093 | when run under the -w switch. -w is seriously broken in perl
|
---|
1094 | 5.001!
|
---|
1095 |
|
---|
1096 | Version 1.57
|
---|
1097 |
|
---|
1098 | 1. Support for the Netscape 2.0 "File upload" field.
|
---|
1099 | 2. The handling of defaults for selected items in scrolling lists and
|
---|
1100 | multiple checkboxes is now consistent.
|
---|
1101 |
|
---|
1102 | Version 1.56
|
---|
1103 |
|
---|
1104 | 1. Created true "pod" documentation for the module.
|
---|
1105 | 2. Cleaned up the code to avoid many of the spurious "use of
|
---|
1106 | uninitialized variable" warnings when running with the -w switch.
|
---|
1107 | 3. Added the autoEscape() method. v
|
---|
1108 | 4. Added string interpolation of the CGI object.
|
---|
1109 | 5. Added the ability to pass additional parameters to the <BODY> tag.
|
---|
1110 | 6. Added the ability to specify the status code in the HTTP header.
|
---|
1111 |
|
---|
1112 | Bug fixes in version 1.55
|
---|
1113 |
|
---|
1114 | 1. Every time self_url() was called, the parameter list would grow.
|
---|
1115 | This was a bad "feature".
|
---|
1116 | 2. Documented the fact that you can pass "-" to radio_group() in
|
---|
1117 | order to prevent any button from being highlighted by default.
|
---|
1118 |
|
---|
1119 | Bug fixes in version 1.54
|
---|
1120 |
|
---|
1121 | 1. The user_agent() method is now documented;
|
---|
1122 | 2. A potential security hole in import() is now plugged.
|
---|
1123 | 3. Changed name of import() to import_names() for compatability with
|
---|
1124 | CGI:: modules.
|
---|
1125 |
|
---|
1126 | Bug fixes in version 1.53
|
---|
1127 |
|
---|
1128 | 1. Fixed several typos in the code that were causing the following
|
---|
1129 | subroutines to fail in some circumstances
|
---|
1130 | 1. checkbox()
|
---|
1131 | 2. hidden()
|
---|
1132 | 2. No features added
|
---|
1133 |
|
---|
1134 | New features added in version 1.52
|
---|
1135 |
|
---|
1136 | 1. Added backslashing, quotation marks, and other shell-style escape
|
---|
1137 | sequences to the parameters passed in during debugging off-line.
|
---|
1138 | 2. Changed the way that the hidden() method works so that the default
|
---|
1139 | value always overrides the current one.
|
---|
1140 | 3. Improved the handling of sticky values in forms. It's now less
|
---|
1141 | likely that sticky values will get stuck.
|
---|
1142 | 4. If you call server_name(), script_name() and several other methods
|
---|
1143 | when running offline, the methods now create "dummy" values to
|
---|
1144 | work with.
|
---|
1145 |
|
---|
1146 | Bugs fixed in version 1.51
|
---|
1147 |
|
---|
1148 | 1. param() when called without arguments was returning an array of
|
---|
1149 | length 1 even when there were no parameters to be had. Bad bug!
|
---|
1150 | Bad!
|
---|
1151 | 2. The HTML code generated would break if input fields contained the
|
---|
1152 | forbidden characters ">< or &. You can now use these characters
|
---|
1153 | freely.
|
---|
1154 |
|
---|
1155 | New features added in version 1.50
|
---|
1156 |
|
---|
1157 | 1. import() method allows all the parameters to be imported into a
|
---|
1158 | namespace in one fell swoop.
|
---|
1159 | 2. Parameters are now returned in the same order in which they were
|
---|
1160 | defined.
|
---|
1161 |
|
---|
1162 | Bugs fixed in version 1.45
|
---|
1163 |
|
---|
1164 | 1. delete() method didn't work correctly. This is now fixed.
|
---|
1165 | 2. reset() method didn't allow you to set the name of the button.
|
---|
1166 | Fixed.
|
---|
1167 |
|
---|
1168 | Bugs fixed in version 1.44
|
---|
1169 |
|
---|
1170 | 1. self_url() didn't include the path information. This is now fixed.
|
---|
1171 |
|
---|
1172 | New features added in version 1.43
|
---|
1173 |
|
---|
1174 | 1. Added the delete() method.
|
---|
1175 |
|
---|
1176 | New features added in version 1.42
|
---|
1177 |
|
---|
1178 | 1. The image_button() method to create clickable images.
|
---|
1179 | 2. A few bug fixes involving forms embedded in <PRE> blocks.
|
---|
1180 |
|
---|
1181 | New features added in version 1.4
|
---|
1182 |
|
---|
1183 | 1. New header shortcut methods
|
---|
1184 | + redirect() to create HTTP redirection messages.
|
---|
1185 | + start_html() to create the HTML title, complete with the
|
---|
1186 | recommended <LINK> tag that no one ever remembers to include.
|
---|
1187 | + end_html() for completeness' sake.
|
---|
1188 | 2. A new save() method that allows you to write out the state of an
|
---|
1189 | script to a file or pipe.
|
---|
1190 | 3. An improved version of the new() method that allows you to restore
|
---|
1191 | the state of a script from a file or pipe. With (2) this gives you
|
---|
1192 | dump and restore capabilities! (Wow, you can put a "121,931
|
---|
1193 | customers served" banner at the bottom of your pages!)
|
---|
1194 | 4. A self_url() method that allows you to create state-maintaining
|
---|
1195 | hypertext links. In addition to allowing you to maintain the state
|
---|
1196 | of your scripts between invocations, this lets you work around a
|
---|
1197 | problem that some browsers have when jumping to internal links in
|
---|
1198 | a document that contains a form -- the form information gets lost.
|
---|
1199 | 5. The user-visible labels in checkboxes, radio buttons, popup menus
|
---|
1200 | and scrolling lists have now been decoupled from the values sent
|
---|
1201 | to your CGI script. Your script can know a checkbox by the name of
|
---|
1202 | "cb1" while the user knows it by a more descriptive name. I've
|
---|
1203 | also added some parameters that were missing from the text fields,
|
---|
1204 | such as MAXLENGTH.
|
---|
1205 | 6. A whole bunch of methods have been added to get at environment
|
---|
1206 | variables involved in user verification and other obscure
|
---|
1207 | features.
|
---|
1208 |
|
---|
1209 | Bug fixes
|
---|
1210 |
|
---|
1211 | 1. The problems with the hidden fields have (I hope at last) been
|
---|
1212 | fixed.
|
---|
1213 | 2. You can create multiple query objects and they will all be
|
---|
1214 | initialized correctly. This simplifies the creation of multiple
|
---|
1215 | forms on one page.
|
---|
1216 | 3. The URL unescaping code works correctly now.
|
---|