CGI
view release on metacpan or search on metacpan
[ FEATURES ]
- CGI::Carp now has $CGI::Carp::FULL_PATH for displaying the full path to the
offending script in error messages
- CGI now has env_query_string() for getting the value of QUERY_STRING from
the environment and not that fiddled with by CGI.pm (which is what
query_string() does) (GH #161)
- CGI::ENCODE_ENTITIES var added to control which chracters are encoded by
the call to the HTML::Entities module - defaults to &<>"' (GH #157 - the
\x8b and \x9b chars have been removed from this list as we are concerned
more about unicode compat these days than old browser support.)
[ DOCUMENTATION ]
- Fix some typos (GH #173, GH #174)
- All *documentation* for HTML functionality in CGI has been moved into
its own namespace: CGI::HTML::Functions - although the functionality
continues to exist within CGI.pm so there are no code changes required
(GH #142)
- Add missing documentation for env variable fetching routines (GH #163)
[ TESTING ]
- Increase test coverage (GH #3)
[ INTERNALS ]
- Cwd made a TEST_REQUIRES rather than a BUILD_REQUIRES in Makefile.PL
(GH #170)
- AutoloadClass variables have been removed as AUTOLOAD was removed in
v4.14 so these are no longer necessary (GH #172 thanks to alexmv)
- Remove dependency on constant - internal DEBUG, XHTML_DTD and EBCDIC
constants changes to $_DEBUG, $_XHTML_DTD, and $_EBCDIC
4.13 2014-12-18
[ RELEASE NOTES ]
- CGI::Pretty is now DEPRECATED and will be removed in a future release.
Please see GH #162 (https://github.com/leejo/CGI.pm/issues/162) for more
information and discussion (also GH #140 for HTML function deprecation
discussion: https://github.com/leejo/CGI.pm/issues/140)
[ TESTING ]
- fix t\rt-84767.t for failures on Win32 platforms related to file paths
4.11 2014-12-02
[ SPEC / BUG FIXES ]
- more hash key ordering bugs fixed in HTML attribute output (GH #158,
thanks to Marcus Meissner for the patch and test case)
[ REFACTORING ]
- escapeHTML (and unescapeHTML) have been refactored to use the functions
exported by the HTML::Entities module (GH #157)
- change BUILD_REQUIRES to TEST_REQUIRES in Makefile.PL as these are test
dependencies not build dependencies (GH #159)
[ DOCUMENTATION ]
- replace any remaining uses of indirect object notation (new Object) with
the safer Object->new syntax (GH #156)
4.10 2014-11-27
[ SPEC / BUG FIXES ]
- favour -content-type arg in header if -type and -charset options are also
passed in (GH #155, thanks to kaoru for the test case). this change also
sorts the hash keys in the rearrange method in CGI::Util meaning the order
of the arrangement will always be the same for params that have multiple
aliases. really you shouldn't be passing in multiple aliases, but this will
make it consistent should you do that
[ DOCUMENTATION ]
- fix some typos
4.09 2014-10-21
[ RELEASE NOTES ]
- with this release the large backlog of issues against CGI.pm has been
cleared. All fixes have been made in the versions 4.00 and above so if
you are upgrading from 3.* you should thoroughly test your code against
recent versions of CGI.pm
- an effort has been made to retain back compatibility against previous
versions of CGI.pm for any fixes made, however some changes related to
the handling of temporary files may have consequences for your code
- please refer to the RELEASE NOTES for version 4.00 and above for all
recent changes and file an issue on github if there has been a regression.
- please do *NOT* file issues regarding HTML generating functions, these
are no longer being maintained (see perldoc for rationale)
[ SPEC / BUG FIXES ]
- tweak url to DTRT when the web server is IIS (RT #89827 / GH #152)
- fix temporary file handling when dealing with multiple files in MIME uploads
(GH #154, thanks to GeJ for the test case)
4.08 2014-10-18
[ DOCUMENTATION ]
- note that calling headers without a -charset may lead to a nonsensical
charset being added to certain content types due to the default and the
workaround
- remove documentation stating that calls to escapeHTML with a changed
charset force numeric encoding of all characters, because that does not
happen
- documentation tweaks for calling param() in list context and the addition
of multi_param()
[ SPEC / BUG FIXES ]
- don't sub out PATH_INFO in url if PATH_INFO is the same as SCRIPT_NAME
(RT #89827)
- add multi_param() method to allow calling of param() in list context
without having to disable the $LIST_CONTEXT_WARN flag (see RELEASE NOTES
for version 4.05 on why calling param() in list context could be a bad
thing)
4.07 2014-10-12
[ RELEASE NOTES ]
- please see changes for v4.05
[ TESTING ]
- typo and POD fixes, add test to check POD and compiles
4.06 2014-10-10
[ RELEASE NOTES ]
1. Fixes for FastCGI (globals not getting reset)
2. Fixed url() to correctly handle query string and path under
MOD_PERL
Version 2.48
1. Reverted detection of MOD_PERL to avoid breaking PerlEX.
Version 2.47
1. Patch to fix file upload bug appearing in IE 3.01 for
Macintosh/PowerPC.
2. Replaced use of $ENV{SCRIPT_NAME} with $ENV{REQUEST_URI} when
running under Apache, to fix self-referencing URIs.
3. Fixed bug in escapeHTML() which caused certain constructs, such as
CGI->image_button(), to fail.
4. Fixed bug which caused strong('CGI') to fail. Be careful to use
CGI::strong('CGI') and not CGI->strong('CGI'). The latter will
produce confusing results.
5. Added upload() function, as a preferred replacement for the
"filehandle as string" feature.
6. Added cgi_error() function.
7. Rewrote file upload handling to return undef rather than dieing
when an error is encountered. Be sure to call cgi_error() to find
out what went wrong.
Version 2.46
1. Fix for failure of the "include" tests under mod_perl
2. Added end_multipart_form to prevent failures during qw(-compile
:all)
Version 2.45
1. Multiple small documentation fixes
2. CGI::Pretty didn't get into 2.44. Fixed now.
Version 2.44
1. Fixed file descriptor leak in upload function.
2. Fixed bug in header() that prevented fields from containing double
quotes.
3. Added Brian Paulsen's CGI::Pretty package for pretty-printing
output HTML.
4. Removed CGI::Apache and CGI::Switch from the distribution.
5. Generated start_* shortcuts so that start_table(), end_table(),
start_ol(), end_ol(), and so forth now work (see the docs on how
to enable this feature).
6. Changed accept() to Accept(), sub() to Sub(). There's still a
conflict with reset(), but this will break too many existing
scripts!
Version 2.43
1. Fixed problem with "use strict" and file uploads (thanks to Peter
Haworth)
2. Fixed problem with not MSIE 3.01 for the power_mac not doing file
uploads right.
3. Fixed problem with file upload on IIS 4.0 when authorization in
use.
4. -content_type and '-content-type' can now be provided to header()
as synonyms for -type.
5. CGI::Carp now escapes the ampersand BEFORE escaping the > and <
signs.
6. Fixed "not an array reference" error when passing a hash reference
to radio_group().
7. Fixed non-removal of uploaded TMP files on NT platforms which
occurs when server runs on non-C drive (thanks to Steve Kilbane
for finding this one).
Version 2.42
1. Too many screams of anguish at changed behavior of url(). Is now
back to its old behavior by default, with options to generate all
the variants.
2. Added regression tests. "make test" now works.
3. Documentation fixes.
4. Fixes for Macintosh uploads, but uploads STILL do not work pending
changes to MacPerl.
Version 2.41
1. url() method now includes the path info. Use script_name() to get
it without path info().
2. Changed handling of empty attributes in HTML tag generation. Be
warned! Use table({-border=>undef}) rather than
table({-border=>''}).
3. Changes to allow uploaded filenames to be compared to other
strings with "eq", "cmp" and "ne".
4. Changes to allow CGI.pm to coexist more peacefully with
ActiveState PerlEX.
5. Changes to prevent exported variables from clashing when importing
":all" set in combination with cookies.
Version 2.40
1. CGI::Carp patched to work better with mod_perl (thanks to Chris
Dean).
2. Uploads of files whose names begin with numbers or the Windows
\\UNC\shared\file nomenclature should no longer fail.
3. The <STYLE> tag (for cascading style sheets) now generates the
required TYPE attribute.
4. Server push primitives added, thanks to Ed Jordan.
5. Table and other HTML3 functions are now part of the :standard set.
6. Small documentation fixes.
TO DO:
1. Do something about the DTD mess. The module should generate
correct DTDs, or at least offer the programmer a way to specify
the correct one.
2. Split CGI.pm into CGI processing and HTML-generating modules.
3. More robust file upload (?still not working on the Macintosh?).
4. Bring in all the HTML4 functionality, particular the accessibility
features.
Version 2.39
1. file uploads failing because of VMS patch; fixed.
2. -dtd parameter was not being properly processed.
Version 2.38
( run in 1.027 second using v1.01-cache-2.11-cpan-524268b4103 )