Pyht ToolPyht processes html files with embedded python processing directives.
- Added getupload()
- Added test for the presence of form data before iterating over its keys
- Permitted "@" in form input
- Added current directory (directory of .pyht file) to sys.path
- Less error prone way of finding the name of the .pyht file we're running (that is, separating the pyht file part from additional path elements of the URL
- Applying path element removal from 'urlname" and "urlpath" builtins, too.
- Added sendmail(sender, recipient, subject, text) to the available functions.
- Apache 2.0.x with the worker MPM (Multi-Processing Module) can stop reading output from a cgi-bin program (if the http socket is taken down?) which causes a broken pipe exception to be raised. Catch that and exit if it happens.
- Added full script path to subject line in error-report mails, and refrain from sending mail when not running as cgi-bin - then it's better to show the error directly.
- Added script failure reporting through mail, instead of on generated web page.
- Refactoring and fixes to make pyht run as a command line program too; not only as a cgi-bin program.
- Changed builtin filetime to return 0 on file not found. Added virtualinc() to use a path relative to DOCUMENT_ROOT. Fixed a bug in header handling. Added stripping of arguments from the script name.
- Preparations for using pyht as a module, not cgi-script. Moved execglobals from the code executed when standalone. Made filetext() return an empty string when file not found.
- Added convenience functions listdir() and filetext(). Moved a number of convenience functions from locals to globals. Commented out the caching - working out when the cache is out of date requires more sophistication than we've got now. Improved output of http headers vs. page content. Tweaked the untainting function.
- If we're not run as a cgi-bin script, get args from the command line. Added cache debug comments.
- Fixed the inline eval version to handle eval results which aren't strings. Added convenience functions filetime() and timestr()
- Small convenience fixes
- Added maybeinc() version of include()
- Some refactoring. Added new function timestr(). Added html comments to the output showing the cache status.
- Added caching in a .cache file. Cache is invalidated if any file in the .pyht file's directory is newer than the .cache file.
- Added 'out' function which makes line indented to the base indentation of the python script
- Added sandbox environment for execution of the embedded scripts.
- Added code to discard initial blank lines before deciding on the start indentation of embedded python code.
- Fixed a bug in incremental search for embedded code.
- Initial version