Changes for version 2.4
- the strict monster was here and fixed some bugs.
- remove all "use bytes".
- new function PApp::flush_state.
- remove uses of and64, or64 and so on, as well as 32-bit support. 64 bit perls are now required everywhere,, every time.
- fix a bunch of encoding problems now that us ebytes is gone.
- support charset in content-type in PApp::content_type.
- PApp::Config::DBH now caches the datasbase handle.
- papp-install now tries harder to not connect to the database unless requested.
- use more robust method to detect if PApp.xs has already been initialised.
- (internal) PApp::Config::new_dbh allows specifying the cache id and extra attributes.
- papp-scgid gained the --socket-umask option.
- take advantage of EV::Child::reinit in PApp::SCGI::Worker.
- force "set names latin1" on connections, for compatibility with existing code.
- agni --load-image broadcasts update events only after the import is fully done.
- XML::LibXSLT no longer supports strings directly, need to parse to XML::DOM object first.
- papp-scgid now also supports plain http requests, mainly for testing.
- xpcse no longer updates mtime to the previous second but instead waits up to one second to ensure mtime is nmot the current time. This slightly increases the delay before an upload is done but avoids editor5s (vim) from freaking out.
- change default connection charset to latin1 collate latin1_nopad_bin.
- bump maximum editform field length to 1GB (from 128kB) and make it configurable.
- fix endless loop on client EOF in PApp::SCGI.
- agni --clear-database no longer disables keys, instead, --load-image disables, then reenables keys.
- new functions PApp::abort_with_output and PApp::abort_with_json.
Documentation
commandline access to the PApp!Agni System.
administrate papp
get/set/clear/display environment variables
Modules
persistent data and objects
internationalisation support for PApp
multi-page-state-preserving web applications
perform various administrative tasks
multi-page-state-preserving web applications
multi-page-state-preserving web applications
a class representing a single mountable application
use PApp in a CGI environment
a workaround for the problem of nonserializable code.
load configuration settings and configure process
reference data stored in scalars, databases...
make javascript horrors less horrible
communicate between processes and the outside.
catch/broadcast various events
exception handling for PApp
a re-blocking buffer for multipart streams
utility functions for html generation
manage locks using sql
analyze and expire the state/user databases
analyze and normalize mimetypes and extensions
PCode compiler/decompiler and various other utility functions.
manage user-specific data.
preprocess source like "pxml"
use PApp in a SCGI environment
worker master process management
manage session-specific data.
manage users, preferences and access rights
manage user and access rights
various utility functions that didn't fit anywhere else
papp execution environment for perl files
pxml sections and more
wrapper for an XSLT implementation
wrapper for an XSLT implementation
wrapper for an XSLT implementation
convert bytes from one charset to another
persistence for Perl data structures
Provides
in Agni.pm
in PApp/CGI.pm
in PApp/Exception.pm
in PApp/SCGI.pm
in PApp/Application.pm
in PApp/CGI.pm
in PApp/CGI.pm
in PApp/Callback.pm
in PApp/DataRef.pm
in PApp/DataRef.pm
in PApp/DataRef.pm
in PApp/DataRef.pm
in PApp/DataRef.pm
in PApp/ECMAScript.pm
in PApp/EditForm.pm
in I18n/I18n.pm
in I18n/I18n.pm
in PApp/SCGI.pm
in PApp/XML.pm
in PApp/XML.pm
in PApp/XPCSE.pm