Apache2-PageKit

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

Revision history for Perl extension Apache::PageKit.

	For more details on migration, see migration/README
2.15	No functional changes to 2.14_15 API compatible to 1.19

1.19
	! Adjust post_max limit to sync with yet another incompatble 
		change in libapreq2. The new default limit is 
		64_000_000 instead of 100_000_000 the current limit
		in libapreq2 is 64 * 1024 * 1024
		( Boris Zentner )
	- Fix: typo in Apache2::PageKit::View::get_static_gzip
		should improve speed of sending static gzipped files
		( Shimon Rura )

1.18
	- Allow testsuit to catch up with Changes in Apache::Test. 
		POST's can be redirected on the fly. 
		Otherwise the tests 05, 06 and 07 fail.
		( Boris Zentner )
1.17
	- Add: new config option use_recent_login_timeout in the global
		section of Config.xml. Defaults to yes.
		( Boris Zentner, Shimon Rura )
	- Adjust Makefile.PL to support ExtUtils::MakeMaker > 6.21
		( Boris Zentner, Mike Castle )
1.16
	- Fix: Use Apache::ServerRec and Apache::ServerUtil in 
		Apache::ErrorReport ( Boris Zentner )
	! The param method returns a empty list in list context if 
		the param was not defined. Older PageKits returned undef
		( Boris Zentner )
	- Fix: add missing : in binmode $fh, ":encoding(...)";
		( Boris Zentner )
	- Fix: typo in scripts/pkit_rename_app.pl ( Boris Zentner )
1.15
	- Add: request_class parameter just for the case, that you like 
		another class or subclass do what Apache::Request do for
		you. Defaults to Apache::Request::PageKit
		( Boris Zentner )
	- Fix: conversion error if the tmpl file's encoding is != utf8 
		and no content_var's are used. affects only perl < 5.8.0
		( Boris Zentner )
	- Add: Basic testsuite ( Boris Zentner )
	- Remove setup_eg.pl this file is obsolete ( Boris Zentner )
	- Fix: Fresh created session cookie headers are wrongly not send
		for pkit_redirect pages this is fixed now. ( Boris Zentner )
	- Add: Experimental support for Template Toolkit. Enabled with
                template_class = "Template" in your Config.xml
                ( Boris Zentner)
	- Fix: with pkit_admin=on and perl 5.8.x the input data is 
		converted to your default_input_charset.
		( Boris Zentner, Sean Lee )
	- Send Content-Length header for static files. ( Boris Zentner )
	- Fix: eg/dbfile needs rw permission even for nobody or nouser
		if apache is started as root. 
		( Boris Zentner, Shawn Poulson )
1.14
	- Fix: parse for xsl-params again in the xsl files. This was 
		broken in 1.13. ( Ben Ausden )
	- Fix: add use Apache::PageKit::Model to eg/Model/MyPageKit.Common.pm
		since it is possible that the application class is loaded
		before Apache::PageKit ( Boris Zentner )
        - the eg site use DBD::SQLite now. This obsoletes
		DBD::CSV, SQL::Statement and Text::CSV_XS.
		( Boris Zentner )
	- fop_command can be disabled with fop_command = ""
		( Boris Zentner, Shimon Rura )
	- Remove Apache->request calls from Apache::PageKit::Edit
		just to make apache 2 changes smaller ( Boris Zentner )
	- Fix: Parse Accept-Charsets more pettier ( Boris Zentner )
	! If the client browser has no accept charset header or no good one,
		deliver in the default_output_charset and set the charset
		in the content_type header. ( Erik Günther )
	- Fix uri_prefix in conjunction with can_edit
		( Boris Zentner, Erik Günther ) 
1.13
	- Add support for Apache2 ( Boris Zentner )
	- Add scripts/pkit_rename_app.pl it helps to start new applications
		fast ( Boris Zentner )
	- Add <PKIT_COMMENT> and </PKIT_COMMENT> tags. ( Boris Zentner )
	- Fix filetest for upload_tmp_dir ( Boris Zentner )
	- Fix locale support. One message was twice in the .po files.
		( Boris Zentner )
	- Fix Encoding of Apache::PageKit::Edit. Use HTML::Entities
		and encode only '<>&"' ( Boris Zentner )	
	- Fix encoding of Apache::ErrorReport stacktrace
		( Boris Zentner, Paul Flinders )
1.12
	- PageKit now install the right version for the installed perl.
		This requires the patch command if you use perl 5.8.x.
		( Boris Zentner )
	- Replace Apache::test with Apache::Test ( Boris Zentner )
	- Workaround segfault in XML::LibXML2 in context with findnodes
		( Boris Zentner )
	- Add large comments in front of custom response headers for MSIE.
		( Boris Zentner )
	- Send full response messages if no data is send to the user.
		This fix display problems on some browsers.
		( Boris Zentner, Rob Starkey )
	- Send headers even if we process a SubRequest
		( Boris Zentner, Anton Permyakov )
	- Some case changes in the eg site, to get it working
		case-sensitive. ( Boris Zentner )
	- All PageKit vars in the output object like pkit_user, pkit_done
		and so on are in lowercase now. This is usefull if we use
		another templating engine where case matters.
		( Boris Zentner )
	- Add docs for pkit_internal_execute_redirect
		( Boris Zentner )
	- pkit_internal_redirect and pkit_internal_execute_redirect
		handle page_id's with parameters (Boris Zentner)
	- Fix: Cache handling on the client side more restrictive
		( Boris Zentner )
	- Fixed bug in params_as_string when value is 0 ( TJ Mather )
	- Improved error message when template not found
		and XML::LibXSLT not installed ( TJ Mather )
	- Fix: Expansion of multivalued parameters for HTML::Template
		( Paul G. Weiss )
	- FIX: Typo in HAVE_NOT_MESSAGES close tag.
		( Boris Zentner )
	- Add new option upload_tmp_dir
		see Apache::Request TEMP_DIR ( Ben Ausden )
	- Large speedup for all static pages ( Boris Zentner )
	- Add docs for the ignore_fillinform_fields methode
		(Boris Zentner)
	- Fix: remove again 0xa0 chars from FAQ.pod
		(Boris Zentner)
1.11
	- Fix early delivery of static pages (Paul G. Weiss)
	- Add Apache::PageKit::FAQ (Boris Zentner)
	- Fix: Search attributes for a page in the sections
        	even if the page has some other attributes
		(Glenn Morgan)
	- Fix: Add missing # to the colors in eg/Common.pm
		(Boris Zentner)
	- Fix expansion of unused pkit_macro tags to ''
		(Boris Zentner)
	- Fix pkit_get_session_id to work even without a real

Changes  view on Meta::CPAN

	- Moved most of POD documentation to DocBook, published
		at http://www.pagekit.org/guide
	- Renamed <PKIT_*> tags as follows:
	  <PKIT_IF NAME="VIEW:view"> -> <PKIT_VIEW NAME="view">
	  <PKIT_LOOP NAME="MESSAGE"> -> <PKIT_MESSAGES>, <PKIT_IS_ERROR>, <PKIT_MESSAGE>
	  <PKIT_VAR NAME="HOSTNAME"> -> <PKIT_HOSTNAME>
	- support for relative and absolute names for PKIT_COMPONENT
	- you may now place static HTML files in the pagekit/View/Default
		or View/pkit_view directories.
		If pagekit can not locate the approriate
		template/xml file, it will return declined, but set
		the filepath so that apache returns the files.
	- fixed up static handing with default_page and not_found_page
		(Boris Zentner)
	- Replaced MyPageKit::Common with __PACKAGE__ in Common.pm
		(Boris Zentner)

0.99
	- document() function now works in XML::XPathTemplate
	- logins are redirected to selfurl if there is no pkit_done param
	- merged View/Component and Page directories.
	- $model->input_param -> $model->input, $model->fillinform, $model->pnotes
	- $model->output_param -> $model->output
	- $model->dispatch(class,method,params) now is
		my $class_object = $model->pkit_create(class)
		$class_object->method(params);
	- authentication code no longer sets $model->input_param('pkit_user')
		and $model->output_param('pkit_user')
	- Fixed warning messages if $^W is turned on
	- Now requires classes if they are not already loaded.  (Boris Zentner)
	- Fixed bug when calling pkit_get_orig_uri from pkit_get_default_page
	- Fixed bug when page_id is not found.
	- Now matches </PKIT_COMPONENT>, </PKIT_VAR>, </MODEL_VAR> tags
		generated by XSLT
	- Fixed bug in View.pm for checking for new uploads to $pkit_view
		directory.
	- Fixed bug in XML::XPathTemplate where queries were converted
		to lowercase. (Boris Zentner)

0.98	Mon May  7 14:37:08 2001 EST
	- Added support for XML::LibXSLT - can now generate
                pages from XML and XSL stylesheets
	- Separated out XML Template code in new module,
		XML::XPathTemplate
	- update last_activity in session for every hit -
		makes sure that recent_login works everytime
		and overcomes the fact that Apache::Session only
		does a shallow check of the hash.
	- Fixed bug with pkit_get_orig_uri
	- Checks for recursive PKIT_COMPONENTS (that is over 100)
	- When user logs out of a page that requires a login,
		goes to default_page instead of login_page
	- Fixed bug with cache when new template was placed in a
		directory when there was already a corresponding template
		in the 'Default' directory
	- Added pkit_cleanup_code hook for Model class (Boris Zentner)
	- Error code rewritten, since using $SIG{__DIE__} does not
		play well with eval, and there were problems with the
		server hanging after a die, when the session wasn't
		properly deleted.  Die's are now trapped using 'eval'.
		Also renamed Apache::PageKit::Error to Apache::ErrorReport
	- pkit_message works when you perform a redirect
		using $model->pkit_redirect
	- Fixed bug with use_template is set to 'no'
	- Fixed bug with XPath queries.
	- Fixed bug with locating only files in Page dir for
		preparse_templates

0.97	Wed Apr 25 17:07:31 2001 EST
	- Login code has been rewritten.  To attempt a login, the
		pkit_login request parameter must be set.
		The new_credential configuration option is no longer
		supported.
	- added can_edit to server config section Config.dtd file.
	- Names in <CONTENT_VAR> and <CONTENT_LOOP> tags are
		XPath queries
	- Removed support for navigation bars, since they didn't fit
		in well with the new Content and View modules.  Might
		add them back if there is demand and I can find an
		clean way of doing it (using XPointers in content
		XML file???)
	- Removed support for $model->content_param, since content
		is now compiled into template and it is not possible
		to get or set the tags run time.
	- Automically converts UTF-8 Encoding to latin1 encodeing,
		if Unicode::String is loaded (Yann Kerhervé)
	- fixed bug with pre-parsing content from sub-directories
	- input_param now works with parameters containing multiple values
	- Add $model->pkit_set_errorfont($field), used mark <PKIT_ERRORFONT>
		tags for errors.
	- Added pkit_root method, gets PageKit root directory
	- no longer escape pkit_done
	- works with mod_proxy_add_uri.c apache module, using X-Original-URI
		header
	- Removed PKIT_LOGINOUT_LINK, this tag was
		not necessary and cluttered the API,
		see migration/README for details
	- removed search_engine_headers config option
	- server_id is now passed to startup, solves
		problem with server options not being
		loaded properly at startup.
	- Added pkit_get_session_id
	- Added pkit_fixup_uri method
	- Added request_param_in_tmpl global attribute, which
		supplements request_param_in_tmpl page attribute
	- Added $model->pkit_output_filter, a hook that can
		be used to filter the output
	- Added <PKIT_VAR NAME="HOSTNAME">, which specifies
		current host name.
	- Added $model->pkit_get_server_id - gets server id from
		Config.xml file.
	- Added $model->pkit_get_default_page - put in so that
		it can be overridden in derived model class
	- if cache_dir is not set, default to the PKIT_ROOT/View/cache
		and PKIT_ROOT/Content/cache
	- moved html_clean_level from global section to server section
	- added pkit_post_common_code hook, similar to
		pkit_common_code, but called after page code is
		executed.
	- Added <CONTENT_(IF|UNLESS|ELSE)> tags.
	- Fixed typo with login/out message.
	- Components can now have content associated with them
		(needs testing)
	- Fixed problems with Content caching when page_id contains
		'/' - content cache files are now determined my using
		a MD5 hash

0.96	Fri Feb 02 04:18:22 2001 EST
	- added $model->pkit_input_hashref method, gets inputs
		(request params) as a reference to hash
	- renamed pkit_set_page_id to pkit_internal_redirect
		easier to remember and naming consistant with
		pkit_redirect method
	- Added installation troubleshooting tips, thanks to
		Chris Burbridge and Nick Wood for helpful pointers
	- Apache::PageKit->handler and startup are now called as
		 class methods
	- pagekit.org example cookies should work even when
		the url is not of the form *.pagekit.org
	- fixed error when cookie_domain was not set
	- cookie_domain is now a NMTOKENS field and you can pass
		multiple domains to it, seperated by spaces
	- Added $model->pkit_query method which is a wrapper to
		HTML::Template::query
	- Added support for <PKIT_VAR NAME="LAST_CRUMB">
	- Fixed errors with s/cookie_crumb/bread_crumb/
	- Added session_expires to control the expire time for
		the session cookie

0.95	Tue Jan 16 15:12:21 2001 EST
	- Added method $model->pkit_redirect($url)
	- Cache files are now 'chown'ed to the user and group
		specified in the User and Group apache configuration
		directives.  This is because the cache files are
		generated under server startup, which is typically
		run under 'root', but the cache files need to be
		writeable by the Apache children, which run under
		a non-root user.
	- Made the Model base class (MyPageKit::Common) user
		configurable, using the model_bass_class global
		configuration option. This way two or more distinct
		pagekit sites can operate on the same server.
	- Added cache_dir global configuration option that
		allows the administrator to specify the directory
		to store the view and content cache.
	- Fixed Apache::PageKit::Model->dbh so that it calls
		MyPageKit::Common->pkit_dbi_connect if there isn't
		already a database handle.

0.94	Wed Jan 10 02:25:51 2001 EST
	- Replaced derived Apache::PageKit handler module (eg MyPageKit)
		with MyPageKit::Common and Apache::PageKit->handler.
		See migration/README for details.
	- Changed structure of Model to allow for multiple model
		objects, each containing a reference to a common
		$pk object.
	- <PKIT_ERRORFONT name="foo"> bar</PKIT_ERRORFONT> is now
		precompiled to <TMPL_VAR NAME="PKIT_ERRORFONT_BEGIN_foo">
		bar</TMPL_VAR NAME="PKIT_ERRORFONT_END_foo"> for
		improved performance.
	- $dbh, $apr, and $session are now accessed from model through
		dbh, apr, and session methods.
	- Added docs on support for dynamically loaded components
		that get specified at runtime using systax like
		<PKIT_COMPONENT NAME="<MODEL_VAR NAME="foo">">
	- You can now pass a hash reference to set multiple parameters
		for output_param method
	- Removed support for PKIT_INTERNET_EXPLORER and
		PKIT_NETSCAPE tags.  These tags clutter the
		API and are easily implemented in the model.

0.93	Wed Jan 03 01:49:06 2001 EST
	- Fixed documentation in Apache::PageKit::Model,
		where output_param method was listed
		as param.
	- Updated pagekit.org web site with links to
		a browsable repository of source code
		and more documentation.
	- Fixed problem with make test, with language
		cache files conflicting b/c of different
		default languages in test.

0.92	Sun Dec 31 21:32:30 2000 EST
	- Rewrote Model class so that Model classes are
		standalone and not dependent on the PageKit
		architecture.
		* functions in Model now get called
			as methods of derived Model class
		* inputs and outputs are now accessed
			by $model->input_param and 
			$model->output_param instead of
			$apr->param and $view->param
		* $pk->redirect is no longer available
		* $pk->continue no longer available, use
			$model->pkit_set_page_id instead
		* $pk->message moved to $model->pkit_message
		* page and component_dispatch_prefix replaced
			by model_dispatch_prefix
	- XML and template files are now parsed by calling
		Apache::PageKit::startup function.  Should fix
		problems when PageKit is used inside a
		<Directory>, <Location> or <Files> section.
	- Fixed bug with not getting fill_in_form configuration
		setting in View.pm
	- Fixed bugs with language localization and session
		management.
	- Improved language localization example on pagekit.org
		web site

0.91  Tue Dec 26 04:05:56 2000 EST
	- Changed name of page_id_match configuration directive to
		uri_match.
	- Fixed some permission problems when 'make test' is run
		as root.

0.90  Sun Dec 24 01:26:18 2000 EST
	- Major changes in API and streamlining of pagekit
		in preparation for 1.0 beta release.  
	- Removed seldom used options and replaced others with
		more user-friendly versions.
	- Renamed Controller directory to Config directory
	- Renamed <TMPL_VAR> and <TMPL_LOOP> tags to
		<MODEL_VAR> and <MODEL_LOOP> for Model Data and
		<CONTENT_VAR> and <CONTENT_LOOP> for Content Data and
		<PKIT_VAR> and <PKIT_LOOP> for PageKit Data
	- Renamed <PKIT_INCLUDE> to <PKIT_COMPONENT> and replaced
		'include' with 'component' across the framework
	- Moved and renamed nav_title option from config to 
		<NAV_TITLE> </NAV_TITLE> in content XML for
		better foreign language support.
	- Renamed Apache::PageKit::FormValidator to Apache::PageKit::Model
		and redesigned class to replace form_validator
		constructor option with $model->validate_input($hash_ref)
		method.  Eliminated error_page and error_page_run_code
		options (user should use $pk->continue
		in model instead).  This should make the development
		easier because all the logic is in the Model class instead
		being scattered across the derived class and configuration.
	- View templates get pre-parsed using file_cache/cache option of
		HTML::Template, and the HTML can be optimized by
		using HTML::Clean if html_clean_level is set to >=1
	- Changed template_cache option to use yes for cache
		in HTML::Template and no for file_cache.
		Got rid of shared_cache, since it is problematic
		and file_cache is almost as fast.
	- Moved fill_in_form to page attr from global attr
	- Removed support for domains, including page_domain,
		domain, is_topdomain attributes.
	- Removed page based linking attributes, including
		support for <PKIT_LINK> and <PKIT_JAVASCRIPT> tags and
		is_popup, is_secure, popup_width, and popup_height.

0.89  Sun Dec  3 18:27:11 2000 EST
	- Major changes in API, leading up to 0.9 pre-beta and 1.0 beta release
	- Created Apache::PageKit::Config, for configuration directives,
		replacing Apache::PageKit::Info
	- Created Apache::PageKit::Content, for XML content
	- Created content XML files for separation of
		content from presentation
	- Reorganized pagekit.org files into Model/View/Content/Controller
		directories
	- Rewrote pagekit.org site to use DBD::Sprite and Apache::Session::File
		instead of MySQL, so could include in test suite without
		requiring MySQL
	- Used Apache::Test in test suite to test working copy of pagekit.org
		web site.

0.05  Tue Oct 31 14:12:00 2000 EST
	- Added support for language localization
	- No longer require that entry in page.xml exist for all pages
	- Replaced View and Module templates with Include templates
		view parameter in page.xml is no longer used
	- Renamed ModuleCode to IncludeCode
	- Added <PKIT_NETSCAPE> and <PKIT_INTERNET_EXPLORER> tags
	- Added $pk->redirect method
	- Added $pk->continue method

0.04  Tue Aug 29 13:12:53 2000 EST
        - Added support for <TMPL_LOOP> XML tag
        - modified pagekit.org to use <TMPL_LOOP>

0.03  Tue Aug 29 00:13:33 2000 EST
        - Replaced use of Apache::Session with adaption of
		HTML::Embperl::Session

0.02  Mon Aug 28 18:44:15 2000 EST
	- Added XML Support for attributes and <TMPL_VAR> Elements



( run in 1.828 second using v1.01-cache-2.11-cpan-39bf76dae61 )