Upstream changes:
1.56 2014-11-14
[ BUG FIXES ]
- Fix a packaging issue with the last release that prevent PAUSE from
indexing some modules in the tarball.
1.55 2014-11-14
[ BUG FIXES ]
- Shut up warnings from recent versions of CGI.pm. Patch by Kevin
Falcone.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
Change option name fcgi to fasrcgi
Upstream changes:
1.54 Jan 19, 2014
[ DISTRIBUTION ]
- Remake with gnutar
1.53 Jan 18, 2014
[ DISTRIBUTION ]
- Attempt to fix corrupted tar
1.52 Oct 9, 2013
[ BUG FIXES ]
- Ignore 'Software caused connection abort' errors. RT #49031. Submitted
by Morten Bjoernsvik.
- Sort hash keys to deal with Perl 5.18+ hash randomization. RT
#88708. Submitted by Zefram.
- Fix 'and' precedence with explicit parens. RT #87050. Submitted by
Alex Vandiver.
- Escape each part of substitution, not their
concatenation. github.com/jonswar/perl-HTML-Mason/pull/1. Submitted
by Ricardo Signes.
[ ENHANCEMENTS ]
- Add use_warnings flag, similar to
use_strict. github.com/jonswar/perl-HTML-Mason/pull/4. Submitted by
Aevar Bjarmason.
1.51 May 8, 2013
[ DISTRIBUTION ]
- Fix hardcoded version
[DOCS]
- Add HTML::Mason::FAQ, from old masonhq.com website
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
Changes:
1.50 Jul 11, 2012
[ DISTRIBUTION ]
- Switch to Dist::Zilla
- Eliminate HTML docs from distribution, available on web
- Move live Apache tests to author-only
1.49 Feb 27, 2012
[ DOCS ]
- Fixed misspellings in docs. RT #74676. Reported by Salvatore Bonaccorso.
1.48 Feb 3, 2012
[ BUG FIXES ]
- Calling a subcomponent from inside an anonymous component (created via
$interp->make_component) caused an uninitialized value warning. Reported by
Javier Amor Garcia.
Changelog:
1.47 Oct 21, 2011
[ BUG FIXES ]
- Silenced an uninitalized value warning from ApacheHandler with newer
versions of Perl. RT #61900.
1.46 Aug 1, 2011
[ DOCS ]
- Mention Mason 2 in documentation
to trigger/signal a rebuild for the transition 5.10.1 -> 5.12.1.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=..."), minus the packages updated after
the perl package update.
sno@ was right after all, obache@ kindly asked and he@ led the
way. Thanks!
Upstream changes:
1.45 Apr 3, 2010
[ BUG FIXES ]
- Silenced some new warnings that appeared when using Mason with Perl
5.12.0+. Reported by Jesse Vincent.
pkgsrc changes:
- Adjusting dependencies according to META.yml
Upstream changes:
1.44 Jan 4, 2010
[ ENHANCEMENTS ]
- Use Log::Any to log various events, such as the start and end of each
request and each component call.
- Add $m->log, allowing easy logging to a component-specific namespace.
- Fix use of CHI when no data directory is specified.
1.43 Dec 25, 2009
[ BUG FIXES ]
- If a component was located in a patch with spaces, the feature which
referred to errors by their source file line number was broken. This could
cause test failures if the package was downloaded into a path with spaces by
CPAN. Reported by Shawn Moore. RT #53072.
- HTML::Entities is no longer an optional dependency. This fixes some issues
with packaged versions of Mason. Reported by Jens Rehsack. RT #48890.
- $m->flush_buffer is now ignored when inside $m->scomp or $m->content. Patch
by Frederic Briere, with extra tests from Ruslan Zakirov. RT #38924.
- Updating package for p5 module HTML::Mason from 1.40 to 1.42
- Reordering dependencies (alphabetical order)
- Removing option for p5-Cache-Cache, because it's mandatory now
Upstream changes:
1.42 May 7, 2009
[ BUG FIXES ]
- Fix 10b-cache-chi.t to work with latest version of CHI - expire_if
and ref of cache changed
- Fixed a bug where attempting to load a module that failed to compile
in a Mason component could mask the compilation error. RT #39803.
- Fixed the print method in HTML::Mason::FakeApache. It was including
the object itself in the output. Patch by Martin Petricek. RT
#43035.
1.41 May 5, 2009
[ BUG FIXES ]
- This is a one-fix release to get this module working with the latest
version of Exception::Class (1.27).
to trigger/signal a rebuild for the transition 5.8.8 -> 5.10.0.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=...").
Changelog:
1.40 Jul 24, 2008
[ BUG FIXES ]
- Attempting to set multiple cookies when running under CGIHandler
failed. Patch by Andrej Czapszys. RT #33710.
- The Request->alter_superclass() method could cause a segfault
(sometimes) with perl 5.10.0. Reported and patched by Jesse Vincent.
- took maintainership for package
- cleanup up Makefile
- introduced options.mk file for the package
p5-Cache-Cache is set to default, modperl has been removed from the
default options, added to options.mk
fcgi has been added to options.mk for lighttpd usage
- MESSAGE file entry edited for lighttpd webserver
ChangeLog:
Revision history for HTML::Mason.
An HTML version of this file, complete with links to documentation, is
available at http://www.masonhq.com/code/history.html.
** denotes an incompatible change
1.39 Jan 30, 2008
[ ENHANCEMENTS ]
- CHI may now be used as the backend for $m->cache as an updated
alternative to Cache::Cache. Among other things, this facilitates
easy use of Cache::FastMmap and memcached for data
caching. Cache::Cache is still the default for now, and is still
listed as a prereq for Mason.
1.38 Dec 20, 2007
[ BUG FIXES ]
- (Hopefully) fixed a problem where the cpan shell thought that Mason
needed mod_perl1 as a prereq when it was trying to require a newish
version of mod_perl2.
- If you called $r->send_http_header() explicitly in a component under
mod_perl 1.x, headers would end up getting sent again once the
component finished executing. Reported by Brett Gardner.
- Component call with content end tags could not span multiple
lines. Fixing this makes it consistent with the opening tag. Patch
by Alex Robinson.
- Includes a possible fix for a test failure in 10-cache.t. This
failure is a problem in the test code, not the Mason core code.
1.37 Sep 6, 2007
[ BUG FIXES ]
- Mason could send the HTTP headers twice under mod_perl 1.x when
making a request for a directory path that was handled by a
dhandler. Reported by David Beaudet.
- If you set the Content-Type header in a handler sub before passing
control to Mason via ApacheHandler, this value was overwritten if
the request was for a directory path.
[ ENHANCEMENTS ]
- Make t/08-ah.t and t/16-live-cgi.t more verbose about why they are
skipping tests when they do so. Based on a patch from
C.J. Adams-Collier.
1.36 Jun 10, 2007
[ BUG FIXES ]
- If a component with content call ending tag appeared inside a
subcomp or method without an opening tag, then the compiler dies
with a Perl error, rather than reporting the error
usefully. Reported by Rich Williams.
- Under mod_perl 2, if decline_dirs was false and a directory was
requested, you got a "Use of uninitialized value" warning from
ApacheHandler in your logs. Reported by Ogden Nefix.
- HTML::Entities is now a prereq. Not requiring it made for various
weird gyrations in the tests that didn't seem to work all the time,
causing various failures. Fixes RT #24827.
- Request::CGIHandler->exec() now returns the return value from
executing the component, just like a normal Request. Reported by
Adrian Irving-Beer.
[ ENHANCEMENTS ]
- Added a new Compiler::ToObject parameter,
named_component_subs. Turning this on makes it possible to profile
components.
- Added a new Request parameter, component_error_handler. This can be
set to change how component compilation and runtime errors are
handled. It can also be set to false to just let errors go
unhandled, which could speed up apps that throw a lot of non-object
exceptions.
1.35 Oct 17, 2006
[ BUG FIXES ]
- Version 1.34 introduced a bug that caused corruption of the callers
stack when a component call with content was used.
- When Mason tried to load a package required for a feature (like
Cache::Cache for $m->cache) and this failed, the error message would
say something like "Can't locate Cache::Cache". However, the real
error could be that Cache::Cache was present, but a module required by
Cache::Cache was not. Now we report the real missing module.
- Some people saw a spurious test failure in 05-request.t. RT #22099.
- Added Module::Build to the build_requires prereqs.
1.34 Oct 14, 2006
[ BUG FIXES ]
- List Module::Build as a build prereq in the Build.PL, so it shows up
in META.yml. Reported by Colin Henein. RT #22097.
- Apache::Request and mod_perl{1,2} will no longer show up as prereqs
in META.yml. Requested by Jesse Vincent.
- Fixed a serious memory leak bug where an object referenced in
arguments to another component was never destroyed. Reported by
Dominic Mitchell.
- Using $m->call_next from a helper component should reset base_comp
to the request_comp. Reported by Mark Elrod.
- The 08-ah.t and 16-live-cgi.t test files could fail with an error
like "Failed to re-load 'Mason::Build'" when Mason was being installed
via the CPANPLUS shell (and maybe other cases). Reported by David
Wheeler.
- Fixed a bug where $m->clear_buffer inside a component called from a
comp_with_content did not clear all buffers.
[ ENHANCEMENTS ]
- Added support for get_server_port() in FakeApache. Patch from Dieter
Piercey.
1.33 May 28, 2006
[ BUG FIXES ]
- If $m->flush_buffer() was called when there was a filter somewhere
in the component chain, the flush did nothing. Task id #596. Reported
by Shane McCarron.
- Added several tests for $m->flush_buffer() and $m->clear_buffer(),
which will hopefully avoid more bugs in this part of the code.
- On Win32, a test failed when Mason tried to use rename to move a dir
into an existing dir. Patch by Shane McCarron. Task id #594 and RT
#17828.
- Trying to load HTML::Mason::ApacheHandler outside of mod_perl caused
an error "like Undefined subroutine &Apache::perl_hook called at
/usr/local/share/perl/5.8.7/HTML/Mason/ApacheHandler.pm line
257". While it will never _run_ outside of mod_perl, it should at
least load.
- Fixed test in 14a-fake_apache.t that failed with CGI.pm >= 3.16.
- The example code in the HTML::Mason::Resolver::Null code was
just wrong. Fixed by John Siracusa.
- Fixed a test failure in 06-compile.t when using bleadperl. RT
#17118.
1.32 January 3, 2006
[ BUG FIXES ]
- Under mod_perl 1.x with error_mode set to output, the headers were
sent after the content when a compilation error occurred. Reported by
Gareth Kirwan. Task id #592.
- URI-escape utf8 characters the same way that CGI::escape and
URI::Escape::uri_escape_utf8 do. Patch by Denis Shaposhnikov.
- On startup Mason creates a file named ".__obj_create_marker" in the
object directory. Under mod_perl, Mason was not chmod'ing the file
when Apache was started as root. This led to permission errors in
environments where the Interp is created anew every request. Task id
#593.
- Treat the return value of component execution as a string in
ApacheHandler. This prevent warnings about comparing the empty string
to a number when a component returns "". Reported by Benjamin Franz.
- Setting a MasonPlugins Apache parameter caused a fatal error. Patch
by David Jack Olrik.
- Calling base_comp() on the Request object inside a plugin's
start_request_hook method caused an infinite recursion in Mason.
Reported by Jesse Vincent.
amount of configuration (ie, set the data directory).
Added the supplied sample files to the pkgsrc package.
This should solve PR pkg/31460 by Stefan Schumacher.
While here, added support for installation to DESTDIR and marked the
package as a pure Perl package (no compiler necessary).
Allow apache22 in some more case and add a hack to devel/subversion
to determine the module by the state of the apache22 option.
This comes from www/ap2-subversion and should be fixed to properly
use build options or so.
OK agc@
all PEAR packages to php?-pear-* and all Apache packages to ap13-* or
ap2-* respectively. Add new variables to simplify the Makefile
handling. Add CONFLICTS on the old names. Reset revisions of bumped
packages. ap-php will now depend on the default Apache and PHP version.
All programs using it have an implicit option of the Apache version
as well.
OK from jlam@ and adrianp@.
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
diff between 1.31 and 1.3101 is minimal, yet it fixes important issues
people have been reporting on e.g. the rt-users mailing list.
1.1301 August 23, 2005
- One last fix for CGIHandler. If you provided your own out_method it
was ignoring it and using its own. Reported by David Glasser.
release versions of ap2-perl. Changes:
=====
An HTML version of this file, complete with links to documentation, is
available at http://www.masonhq.com/code/history.html.
** denotes an incompatible change
1.31 August 20, 2005
[ BUG FIXES ]
- Fix several regressions in the CGIHandler and FakeApache modules.
Some changes from the stable branch were never merged into the trunk
before 1.30. Reported by Jesse Vincent. Task id #589.
- Under Apache2, if an ApacheHandler object was created during server
startup and the associated Interp object created any files or
directories, Mason would crash when attempting to chown those
files/dirs to the uid/gid that Apache will use after forking. Task
#586.
- The compiler was adding an extra block around a component's
body, which meant that variables declared in the body (in perl lines
or blocks) were not seen in the cleanup section. Task id #587.
- The compiler was also adding "no warnings 'uninitialized'" in this
block, which could hide various errors.
- Hopefully fix $VERSION in ApacheHandler so PAUSE will not be
confused and think we have regressed.
- Turned off some prompts during the module's installation. These
were intended to help new users configure Apache to run Mason
components, but they're probably a bit confusing. Will return in a
future release as a separate script that can be run from the command
line.
1.30 August 11, 2005
[ INCOMPATIBLE CHANGES ]
- ** Under mod_perl2, MasonArgsMethod will default to "CGI", since
libapreq2 is still in development. If you have successfully installed
libapreq2, just set MasonArgsMethod to "mod_perl" to use it.
[ ENHANCEMENTS ]
- Some doc tweaks to clarify that Mason should work out of the box
with both mod_perl 1 and 2.
- Added "use warnings" to all modules and made sure all tests ran
warnings-free.
[ BUG FIXES ]
- Silence a warning when HTML::Mason::ApacheHandler was loaded outside
of mod_perl.
- Support renamed Apache2::Status module.
1.29_02 June 22, 2005
[ ENHANCEMENTS ]
- ** Support for mod_perl-2.00 (mod_perl-1.99 is no longer supported
because of API changes in 2.0RC5).
- Mason recovers more gracefully from an empty or corrupted object
file. Task id #579.
[ BUG FIXES ]
- Fixed bug with content type being reset when decline_dirs=0.
Submitted by Brian Phillips. Task id #584.
- Put "Mason" prefix back in Params.pod. Task id #575.
- Fixed fetch_comp(undef) to not return an empty hash. Task id #578.
- static_source_touch_file did not take effect until after one request
for a top-level component. Reported by Lai Zit Seng. Task id #576.
1.29_01 January 25, 2005
[ INCOMPATIBLE CHANGES ]
- ** Mason now requires Perl 5.6.0 or later. However, because 5.6.0
has so many problems, it cannot be officially supported; we strongly
recommend upgrading to at least 5.6.1.
- ** Mason now requires version 1.24 of mod_perl in the ApacheHandler
module.
- ** The behaviors of $m->flush_buffer and $m->clear_buffer have been
simplified. $m->flush_buffer only acts on the top-level output buffer;
$m->clear_buffer clears all output buffers. Task id #554.
- ** max_code_cache_size is now kept in terms of number of components,
not bytes, and its default value is 'unlimited'.
- ** Components with a <%filter> and a cache_self are no longer cached
in their filtered state. Performance-related code simplifications made
this behavior difficult to maintain. Long term this would be
easier to implement with a cache_self component <%flag>.
- ** All compiler properties are now read-only. If you need to change
compiler properties on a per-request basis, you'll need to create
multiple compiler and interpreter objects.
- ** comp_exists may try to load the designated component, and may
throw an error if it contains a syntax error.
- ** The current_time method, deprecated in 1.1x, has been removed.
- ** The HTML::Mason::Buffer class has been eliminated for performance
reasons. You can use separate components, methods, or subcomponents
and scomp to achieve the same effects as buffer pushes and pops.
[ ENHANCEMENTS ]
- Significantly improved performance in component execution,
especially in static_source mode.
- Added static_source_touch_file, making it much easier to update
a server running in static_source mode.
- Added a plugin architecture. Plugin classes can perform actions at
key points, e.g. before and after each request and each component
call. See HTML::Mason::Plugin for documentation. Task id #24.
Initial implementation by Doug Treder.
- Added the ability to change component root(s) on the fly if the
dynamic_comp_root parameter is turned on. Task id #561. Suggested
by Alex Robinson.
- Added enable_autoflush parameter. When turned off, Mason can
compile components to a more efficient form.
- Changed the </&> tag to allow the starting component name to be
included. e.g. <&| /foo &> ... </& /foo >. Task id #556. Suggested
by Alex Robinson, John Williams, and others.
- Moved the notion of component roots (single and multiple) from the
Resolver to the Interpreter. This improved the performance of multiple
component roots in conjunction with static source mode. Any resolver,
file-based or otherwise, can benefit from component root settings or
choose to ignore them.
- Added the compiler object_id to the object file path, so that
multiple versions of Mason do not collide in the same object
directory. Task id #569.
- Added .obj (or a configurable extension) to object filenames.
Task id #152. Suggested by John Tobey.
- Added $m->clear_and_abort, syntactic sugar for the common idiom
of calling clear_buffer() and then abort(). Task id #505.
- Added an official comment syntax, <% # ... %>, and documented
the various comment markers in the developer's manual. Task id #566.
- Added buffer_preallocate_size parameter, which allows you to
potentially reduce buffer reallocations.
- Augmented the 'could not find component' error message with the
current component root(s). Task id #562.
[ BUG FIXES ]
- Mason now throws an error if the path specified in a component's
'inherit' flag cannot be found. Task id #480.
- Fixed comp_exists to work with any path accepted by comp or
fetch_comp, and fixed fetch_comp to stop throwing errors for certain
bad paths. Task id #572.
- Fixed $m->decline to work from /dhandler. Task id #573. Submitted
by Carl Raiha.
- Using 'next' or 'last' without a loop can no longer corrupt
the component stack. Task id #539.
around at either build-time or at run-time is:
USE_TOOLS+= perl # build-time
USE_TOOLS+= perl:run # run-time
Also remove some places where perl5/buildlink3.mk was being included
by a package Makefile, but all that the package wanted was the Perl
executable.
Drop apparently unneeded dependency on databases/p5-MLDBM.
Dependency on www/p5-libapreq is only required if HTML-Mason is
intended to be used with mod_perl and apache: add 'modperl' as a
bsd.options.mk framework option and include dependency on www/p5-libapreq
as needed. Also support apache13 or apache2.
The 'modperl' option is the default.
XXX ap2-perl install Apache::Filter perl module version 0.01 and
this module wants at least version 1.021. So I do not know if the
apache2/ap2-perl setup is really supported.
Bump PKGREVISION.
module directory has changed (eg. "darwin-2level" vs.
"darwin-thread-multi-2level").
binary packages of perl modules need to be distinguishable between
being built against threaded perl and unthreaded perl, so bump the
PKGREVISION of all perl module packages and introduce
BUILDLINK_RECOMMENDED for perl as perl>=5.8.5nb5 so the correct
dependencies are registered and the binary packages are distinct.
addresses PR pkg/28619 from H. Todd Fujinaka.
Add dependence on p5-libapreq, as that appears to be required
to run this with mod_perl (what would otherwise be the point? ;-)
Change log:
1.28 November 6, 2004
This version is entirely identical to 1.27 except for a fix to make
CPAN/PAUSE properly index the version number in
HTML::Mason::ApacheHandler. If you already installed 1.27 you do not
need to install this version unless you want to fix the "out of date
modules" report from the CPAN or CPANPLUS shells.
1.27 October 28, 2004
[ ENHANCEMENTS ]
- Full support for Apache2/mod_perl2.
[ BUG FIXES ]
- The request object was not available as $m in the preamble if
in_package was set. Reported by David Wheeler and David Baird. Task
id #538.
- Component with subcomponents or methods were not getting freed when
they were purged from the code cache. Task id #549.
- Component calls (<& &>) starting with a newline were compiled
incorrectly. Reported by Rick Delaney. Task id #564.
- If both a parent request and subrequest had autoflush set, output
from the subrequest wasn't actually flushed. Reported by Tony
Clayton. Task id #550.
- The documentation in HTML::Mason::Tests for the path and call_path
parameters was wrong. Reported by Michael Gray. Task id #528.
- Line numbers in errors were incorrectly reported if the error
happened in code after an <%args>, <%attr>, or <%flags> block.
Reported by Tony Clayton. Task id #552.
- The Apache handler now only sends headers once if make_request()
aborts, such as when a redirect is executed in a
MasonX::Interp::WithCallbacks callback.
1.26 April 5, 2004
[ BUG FIXES ]
- The fix to make CGIHandler support flush_buffer and autoflush caused
it to not rethrow any exceptions created during the request. If
error_mode was set to 'fatal', then an error would simply cause no
output to be generated. Task id #531.
- A comment in the last line of a component call with content caused a
syntax error in the compiled component. Reported by Todd Goldenbaum.
Task id #530.
- The various request handling methods in CGIHandler once again return
the value of calling the Interp object's exec() method.
- Explicitly handle redirect statuses when an abort exception is
thrown from the Interp object's exec() method. This fixes some
problems when this module was used with David Wheeler's
MasonX::Interp::WithCallbacks module.
- Using a <%shared> block when "in_package" was set to something other
than HTML::Mason::Commands led to an error like "Can't call method
"call_dynamic" on an undefined value". Reported by David Wheeler.
Task id #535.
1.25 December 12, 2003
[ BUG FIXES ]
- CGIHandler did not support $m->flush_buffer or autoflush. Reported
by Shane McCarron.
- Every line in the error stacktrace had a 'g' appended to it in HTML
error mode.
- The HTML error display of the stacktrace was not filtering out some
packages that it should have, so there were extra lines that made it
harder to find the real error.
- Several FakeApache methods were broken: path_info, uri, and
the_request. Reported by Matthias F. Brandstetter.
[ ENHANCEMENTS ]
- The CGIHandler request object now supports the autoflush parameter.
Remove patch-aa, which does not appear to be needed.
Drop p5-gdbm dependency.
Add dependencies for p5-Exception-Class>=1.14 and
p5-Class-Container>=0.10
The change log between the previous, ancient version and this is over
700 lines, and thus not included.