Changes for version 3.0.6
* The exception text is now monospace, allowing syntax errors to be
read correctly.
* Pre-compiled .pto files no longer return 404.
* psecompile fixes.
Changes for version 3.0.5
* Improved import functionality.
* It is now possible to disable non-essential pre-packaged plugins.
* Prevented FutureWarning messages from appearing in Python 2.3.
* Various unicode fixes.
* Minor code fixes/enhancements.
Changes for version 3.0.4
* Added TEMPORARY_REDIRECT (307) to response.redirect.
* Fixed possible failure to remove import hook on errors.
* Errors during import should now be properly reported instead
of a "module not found" error.
* Fixed possible sys.modules contamination under high load.
* Fixed expiration of user cookies defined in client.cookies.
* Minor code fixes/enhancements.
Changes for version 3.0.3
* Fixed unicode handling inside custom tags.
* Fixed form parsing bug under certain circumstances.
* Fixed typo that prevented user_options from working.
* Importer fixes and improvements (better performance).
* Added an option to pserun to allow profiling of code.
Changes for version 3.0.2
* Minor bug fixes.
Changes for version 3.0.1
* FormKeyError was in the wrong place in the pse.conf file, and
it didnt work anyway. It is now in the plugin.request section
where it belongs.
* PSE will no longer die if a custom tag import fails.
* Session cookies now expire properly according to pse.conf.
* api.write_error will no longer fail if a string was not passed.
* psecompile will now successfully compile/copy symlinked directories.
Changes for version 3.0.0
* PSE now requires at least Python 2.3.1. Python 2.3.0 and older
versions of Python are no longer supported.
* PSE is now thread safe for use with multithreaded apache 2.0 mpm
modules. If you decide to use a multithreaded mpm, be sure your
plugins, custom tags and other modules used in your applications
are also thread safe.
* The name of the pse handler for mod_python has changed to
pse_handler. See UPGRADING.TXT for more information.
* PSE no longer uses the PythonAccessHandler directive in the
apache configuration file. You must delete these references.
* Authentication hooks have been removed from PSE. See the manual
for use of the new pse.plugins.response.authenticate function.
* A new function pse.call() works like pse.include(), but it runs
code in a separate namespace. Please see the PSE Manual for
details.
* PSE handles unicode better than previous versions. The default
encoding can be set with DefaultEncoding in pse.conf, which can
be changed per servlet using the pse.setencoding() function.
Please see the pse.conf file and the PSE Manual for details.
* A new funtion pse.flush() will flush client output immediately,
but any operations to alter headers will then raise an exception.
* The plugin architecture has changed significantly. While plugins
made for PSE 2.x will continue to work, much of the functionality
is deprecated. See UPGRADING.TXT and the PSE Manual for details.
* The pse.conf file has been reorganized. Specifically, many
options were moved to the Debug section. Please see the pse.conf
file for details.
* User plugins can be placed in directories other than in the
PSE distribution package directory; see pse.conf for details.
* The session plugin type can now be configured in the pse.conf
file rather than manipulating the modules in the PSE plugins
directory; see the PSE Manual for details.
* The SQLite session plugin now requires at least SQLite 3.0 and
version 2.0 or higher of the Python bindings (pysqlite2).
* User plugins can be disabled in the pse.conf file by specifying
"Enabled = no" in that plugin's configuration section.
* pse.plugins.response.redirect can now redirect requests in
different ways. See the PSE Manual for details.
* Access to form data using pse.form is deprecated; use
pse.plugins.request.form instead.
* The cookie interface in pse.plugins.client was broken in 2.x;
CookieDef was not available to create new cookies. The class name
has been changed to CookieClass and is now exposed to be able to
create and store new cookies. See the PSE Manual for details.
* Custom tag classes can cause PSE to suspend its processing of
text within the tag; see the PSE Manual for more information
* Raw HTTP POST data can now be obtained from
pse.plugins.request.content, a file-like object, for use with
XML-RPC or other applications.
* Unicode output is now passed through instead of being converted
to a string.
* Cached output is now stored in a separate directory from the
PSE template files; see pse.conf and the PSE Manual for details.
* Servlets compiled with the psecompile utility now compile to
.pto files, not to be confused with the old "cache" .pto files.
* Tracebacks no longer contain internal PSE frames leading up to
the running servlet's first frame.
* Added TraceAll to pse.conf to force PSE to attempt to show a
traceback even when the source is not available.
* A new api module was added to aid in the development of plugins
and custom tags. Please see the PSE Manual for details.
* Many bug fixes and code optimizations were completed.
* PSE includes an experimental CGI script that can be used when
mod_python is not available. WARNING: THIS IS EXPERIMENTAL!!
Please report bugs to pse.info@borko.org.
Changes for version 2.2.2
* Fixed negative line numbers in tracebacks.
* Tracebacks are collapsable in browsers supporting Javascript and CSS.
* Fixed file upload bug in forms.
Changes for version 2.2.1
* Fixed bugs in output caching and error reporting for includes.
* Fixed pse.include() to be able to include the compiled servlet if the
original source .pt file is absent.
* Included debian package stuff, suitable for building
debs for unstable(sid) debian.
Changes for version 2.2.0
* pse.conf is now expected to be in /etc/pse/ or in a similar location,
depending on where Python is installed (e.g. /usr/local/etc if Python
was installed in /usr/local), as opposed to being in the pse
package directory.
* The compile utility has been renamed to psecompile.
* _dbhash-session.py no longer exists in plugins. It is now the
default session.py modules.
* PSE will no longer log the perror string for most log entries.
* Fixed bug with
being convertedto
.
* The pserun utility no longer requires a fake _apache.py module.
* pse modules can be now imported outside of an apache environment.
* Added working setup.py to allow easy installation and source
tarballs to be made.
* Added a Windows installer.
* Various documentation updates and general clean ups.
Changes for version 2.1.1
* Parser fix for tag attributes with empty strings as values.
* Corrected sample dbpool plugin.
* Updated Troubleshooting guide.
Changes for version 2.1.0
* Changes to bring the code up to date for use with mod_python 3.1.
* Uncaught exceptions (not apache.SERVER_RETURN) in plugin finalize
routines now get reported.
* PSE now supports XML processing tags beginning with " tags
* The compile tool has been substantially upgraded in functionality
and now includes a -h/--help option
* Documentation has been extensively updated, and now includes a
chapter on installation and configuration and an index
* A 1.1 to 1.2 transition document was added to the documentation
* Distribution now has a contrib directory containing some sample
plugins and other modules for use with PSE
Changes for version 1.1.1
* Fixed Syntax Error during parsing if the module file does not end with
an EOL but ends in white space
Changes for version 1.1.0
* Made many documentation fixes, including an erroneous line in the
License text. This change did not affect the license terms.
* Added ShowTrace configuration option to pse.conf to control display
of tracebacks on errors
* You can no longer erroneously "outdent" to a negative indentation level
* Single : ?> expressions no longer re-indent, only "outdent"
* Prepending an equals symbol (=) to an attribute value of a custom tag
will cause the value to be treated as a python expression instead of
a string value
Changes for version 1.0.3
* Session modules now use SimpleCookie
Changes for version 1.0.2
* Plugins will not import if there are no initialize and finalize functions
* Developer documentation added
* Added more items to doc/Troubleshooting.txt
Changes for version 1.0.1
* Error from importing custom tag modules now shows traceback in apache log
* Session modules use BasicCookie instead of SmartCookie (security)
* Fixed HTML translation for tracebacks
Changes for version 1.0.0
* Official 1.0 release
Changes for version 0.3.7
* fixed bug where modules imported in custom tag modules would be deleted
* fixed parsing bug where \ would not be quoted in final output
Changes for version 0.3.6
* PSE no longer requires the Python Cryptography Toolkit
* Troubleshooting.txt added to the doc directory
* Debug code for PGSQL session module was accidently left in 0.3.5; removed
Changes for version 0.3.5
* fixed list parsing for config file
* removed redundant curdir in path, moved Path to the front of sys.path
* fixed sessions not being saved if pse.response.redirect is called
* from pse.tags import * now works in servlet modules
* miscellaneous minor bug fixes
Changes for version 0.3.4
* added the "tags" module to the pse module, containing custom tag classes
Changes for version 0.3.3
* added the ability to log tracebacks in a log file (see pse.conf)
* enhance and log HTML parse errors
Changes for version 0.3.2
* fixed column length of session key for sqlite
* added postgresql session module
* updated pse.conf to reflect config info for the pgsql session
Changes for version 0.3.1
* fixed devastating execution bug where servlet would not execute if
the .py module was not present
Changes for version 0.3.0
* the content type is always set, regardless of the success of the servlet
* corrected parser errors from changes in custom tag parsing
* added custom traceback module, cgitb no longer used
Changes for version 0.2.0
* added Changelog to distribution
* white space no longer removed from bare data when adding to custom tags
* added hwaddr module, now required to validate license key
* license is now keyed to the host, requires license upgrade
Changes for version 0.1.5
* preliminary cache control via the response plugin
* More fixes and documentation of CustomTags
Changes for version 0.1.4
* Fixes for custom tag parsing in parser.py and error logging in
config.py
Changes for version 0.1.3
* added user_options to pse module
* updated documentation
Changes for version 0.1.2
* .py files should now compile and load sanely
* fixed some errors and close session db after initial test
* set default values for all config variables
* comment out all config variables by default
* added init hook for plugin modules
* bail session modules if can't access db
* added form to the req structure for plugins to use
* moved id from client to request and made it work without
mod_unique_id
* added ability to configure plugins from pse.conf
* added configuration variables to the session plugins
* updated sample pse.conf
* updated documentation
Changes for version 0.1.1
* documentation updated to aid installation
* fixed bug in logging
Changes for version 0.1.0
* Initial version