Skip to content

Commit

Permalink
Update to 4.15. Read the changelog below!
Browse files Browse the repository at this point in the history
4.15 2015-04-20

    [ RELEASE NOTES ]
    - This release removes the AUTOLOAD and compile optimisations from CGI.pm
      that were introduced into CGI.pm twenty (20) years ago as a response to
      its large size, which meant there was a significant compile time penalty.

    - This optimisation is no longer relevant and makes the code difficult to
      deal with as well as making test coverage metrics incorrect. Benchmarks
      show that advantages of AUTOLOAD / lazy loading / deferred compile are
      less than 0.05s, which will be dwarfed by just about any meaningful code
      in a cgi script. If this is an issue for you then you should look at
      running CGI.pm in a persistent environment (FCGI, etc)

    - To offset some of the time added by removing the AUTOLOAD functionality
      the dependencies have been made runtime rather than compile time. The
      POD has also been split into its own file. CGI.pm now contains around
      4000 lines of code, which compared to some modules on CPAN isn't really
      that much

    - This essentially deprecates the -compile pragma and ->compile method. The
      -compile pragma will no longer do anything, whereas the ->compile method
      will raise a deprecation warning. More importantly this also REMOVES the
      -any pragma because as per the documentation this pragma needed to be
      "used with care or not at all" and allowing arbitrary HTML tags is almost
      certainly a bad idea. If you are using the -any pragma and using arbitrary
      tags (or have typo's in your code) your code will *BREAK*

    - Although this release should be back compatible (with the exception of any
      code using the -any pragma) you are encouraged to test it throughly as if
      you are doing anything out of the ordinary with CGI.pm (i.e. have bugs
      that may have been masked by the AUTOLOAD feature) you may see some issues.

    - References: GH #162, GH #137, GH #164

    [ SPEC / BUG FIXES ]
    - make the list context warning in param show the filename rather than
      the package so we have more information on exactly where the warning
      has been raised from (GH #171)
    - correct self_url when PATH_INFO and SCRIPT_NAME are the same but we
      are not running under IIS (GH #176)
    - Add the multi_param method to :cgi export (thanks to xblitz for the patch
      and tests. GH #167)
    - Fix warning for lack of HTTP_USER_AGENT in CGI::Carp (GH #168)
    - Fix imports when called from CGI::Fast, restores the import of CGI functions
      into the callers namespace for users of CGI::Fast (GH leejo/cgi-fast#11 and
      GH leejo/cgi-fast#12)

    [ 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 &<>"\x8b\x9b' (GH #157)

    [ 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
  • Loading branch information
wiz committed Apr 22, 2015
1 parent a61ff9b commit 31f2136
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 44 deletions.
12 changes: 4 additions & 8 deletions www/p5-CGI/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.74 2015/04/02 22:47:24 wiz Exp $
# $NetBSD: Makefile,v 1.75 2015/04/22 06:33:25 wiz Exp $

DISTNAME= CGI-4.14
DISTNAME= CGI-4.15
PKGNAME= p5-${DISTNAME}
CATEGORIES= www perl5
MASTER_SITES+= ${MASTER_SITE_PERL_CPAN:=CGI/}
Expand All @@ -23,14 +23,10 @@ REPLACE_PERL+= examples/*.cgi
HTMLDIR= ${PREFIX}/share/doc/p5-CGI
INSTALLATION_DIRS= ${HTMLDIR}/examples

post-build:
cd ${WRKSRC}/examples && chmod +x *.cgi && perl make_links.pl

post-install:
cd ${WRKSRC}/examples && \
${INSTALL_DATA} *.gif *.html *.txt *.xbm \
${DESTDIR}${HTMLDIR}/examples && \
${INSTALL_SCRIPT} *.cgi ${DESTDIR}${HTMLDIR}/examples
${INSTALL_DATA} *.gif ${DESTDIR}${HTMLDIR}/examples && \
${INSTALL_SCRIPT} *.cgi *.pl ${DESTDIR}${HTMLDIR}/examples

.include "../../lang/perl5/module.mk"
.include "../../mk/bsd.pkg.mk"
35 changes: 3 additions & 32 deletions www/p5-CGI/PLIST
Original file line number Diff line number Diff line change
@@ -1,37 +1,8 @@
@comment $NetBSD: PLIST,v 1.5 2014/05/31 12:11:06 wiz Exp $
share/doc/p5-CGI/examples/caution.xbm
@comment $NetBSD: PLIST,v 1.6 2015/04/22 06:33:25 wiz Exp $
share/doc/p5-CGI/examples/clickable_image.cgi
share/doc/p5-CGI/examples/clickable_image.txt
share/doc/p5-CGI/examples/cookie.cgi
share/doc/p5-CGI/examples/cookie.txt
share/doc/p5-CGI/examples/crash.cgi
share/doc/p5-CGI/examples/crash.txt
share/doc/p5-CGI/examples/customize.cgi
share/doc/p5-CGI/examples/customize.txt
share/doc/p5-CGI/examples/diff_upload.cgi
share/doc/p5-CGI/examples/diff_upload.txt
share/doc/p5-CGI/examples/dna.small.gif
share/doc/p5-CGI/examples/file_upload.cgi
share/doc/p5-CGI/examples/file_upload.txt
share/doc/p5-CGI/examples/frameset.cgi
share/doc/p5-CGI/examples/frameset.txt
share/doc/p5-CGI/examples/index.html
share/doc/p5-CGI/examples/internal_links.cgi
share/doc/p5-CGI/examples/internal_links.txt
share/doc/p5-CGI/examples/javascript.cgi
share/doc/p5-CGI/examples/javascript.txt
share/doc/p5-CGI/examples/monty.cgi
share/doc/p5-CGI/examples/monty.txt
share/doc/p5-CGI/examples/multiple_forms.cgi
share/doc/p5-CGI/examples/multiple_forms.txt
share/doc/p5-CGI/examples/nph-clock.cgi
share/doc/p5-CGI/examples/nph-clock.txt
share/doc/p5-CGI/examples/nph-multipart.cgi
share/doc/p5-CGI/examples/nph-multipart.txt
share/doc/p5-CGI/examples/popup.cgi
share/doc/p5-CGI/examples/popup.txt
share/doc/p5-CGI/examples/save_state.cgi
share/doc/p5-CGI/examples/save_state.txt
share/doc/p5-CGI/examples/tryit.cgi
share/doc/p5-CGI/examples/tryit.txt
share/doc/p5-CGI/examples/mojo_proxy.pl
share/doc/p5-CGI/examples/wikipedia_example.cgi
share/doc/p5-CGI/examples/wilogo.gif
8 changes: 4 additions & 4 deletions www/p5-CGI/distinfo
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
$NetBSD: distinfo,v 1.36 2015/04/02 22:47:24 wiz Exp $
$NetBSD: distinfo,v 1.37 2015/04/22 06:33:25 wiz Exp $

SHA1 (CGI-4.14.tar.gz) = 389ed544ebf026a95a3e56f4fd3e063d11e10ddb
RMD160 (CGI-4.14.tar.gz) = 9d6085fe0d90dba22bbab510d9d4864bb40e5901
Size (CGI-4.14.tar.gz) = 182727 bytes
SHA1 (CGI-4.15.tar.gz) = 425bbfd5f92f499e5aa02e0f75ac1be1ce04cdfe
RMD160 (CGI-4.15.tar.gz) = 4bc6f9f44dd018e810531de7236fadfdd9deda82
Size (CGI-4.15.tar.gz) = 193740 bytes

0 comments on commit 31f2136

Please sign in to comment.