Author: chrisz
Date: Wed Aug 3 08:45:04 2011
New Revision: 8191
Log:
Set version everywhere to 1.1 in order to build the release.
Added:
Webware/tags/Release-1_1/Docs/RelNotes-1.1.phtml
- copied unchanged from r8190, Webware/tags/Release-1_1/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/MiddleKit/Docs/RelNotes-1.1.phtml
- copied unchanged from r8190, Webware/tags/Release-1_1/MiddleKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/MiscUtils/Docs/RelNotes-1.1.phtml
- copied unchanged from r8190, Webware/tags/Release-1_1/MiscUtils/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/PSP/Docs/RelNotes-1.1.phtml
- copied unchanged from r8190, Webware/tags/Release-1_1/PSP/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/WebKit/Docs/RelNotes-1.1.phtml
- copied unchanged from r8190, Webware/tags/Release-1_1/WebKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/WebUtils/Docs/RelNotes-1.1.phtml
- copied unchanged from r8190, Webware/tags/Release-1_1/WebUtils/Docs/RelNotes-X.Y.phtml
Deleted:
Webware/tags/Release-1_1/CGIWrapper/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/COMKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/KidKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/MiddleKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/MiscUtils/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/PSP/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/TaskKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/UserKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/WebKit/Docs/RelNotes-X.Y.phtml
Webware/tags/Release-1_1/WebUtils/Docs/RelNotes-X.Y.phtml
Modified:
Webware/tags/Release-1_1/CGIWrapper/Properties.py
Webware/tags/Release-1_1/COMKit/Properties.py
Webware/tags/Release-1_1/KidKit/Properties.py
Webware/tags/Release-1_1/MiddleKit/Properties.py
Webware/tags/Release-1_1/MiscUtils/Properties.py
Webware/tags/Release-1_1/PSP/Properties.py
Webware/tags/Release-1_1/Properties.py
Webware/tags/Release-1_1/TaskKit/Properties.py
Webware/tags/Release-1_1/UserKit/Properties.py
Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.html
Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.txt
Webware/tags/Release-1_1/WebKit/Docs/Future.html
Webware/tags/Release-1_1/WebKit/Docs/Future.txt
Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.html
Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.txt
Webware/tags/Release-1_1/WebKit/Docs/Tutorial.html
Webware/tags/Release-1_1/WebKit/Docs/Tutorial.txt
Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.html
Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.txt
Webware/tags/Release-1_1/WebKit/Properties.py
Webware/tags/Release-1_1/WebKit/Tests/twill/Admin.twill
Webware/tags/Release-1_1/WebKit/Tests/twill/Docs.twill
Webware/tags/Release-1_1/WebKit/Tests/twill/KidKit.twill
Webware/tags/Release-1_1/WebKit/Tests/twill/MKBrowser.twill
Webware/tags/Release-1_1/WebKit/Tests/twill/PSP.twill
Webware/tags/Release-1_1/WebKit/Tests/twill/Testing.twill
Webware/tags/Release-1_1/WebKit/Tests/twill/WebKit.twill
Webware/tags/Release-1_1/WebUtils/Properties.py
Webware/tags/Release-1_1/_README
Webware/tags/Release-1_1/bin/setversion.py
Modified: Webware/tags/Release-1_1/CGIWrapper/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/CGIWrapper/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/CGIWrapper/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'CGIWrapper'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': "User's Guide", 'file': 'UsersGuide.html'},
Modified: Webware/tags/Release-1_1/COMKit/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/COMKit/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/COMKit/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'COMKit'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': "User's Guide", 'file': 'UsersGuide.html'},
Copied: Webware/tags/Release-1_1/Docs/RelNotes-1.1.phtml (from r8190, Webware/tags/Release-1_1/Docs/RelNotes-X.Y.phtml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ Webware/tags/Release-1_1/Docs/RelNotes-1.1.phtml Wed Aug 3 08:45:04 2011 (r8191, copy of r8190, Webware/tags/Release-1_1/Docs/RelNotes-X.Y.phtml)
@@ -0,0 +1,52 @@
+<% header(name + ' ' + versionString + ' Release Notes') %>
+
+<p><% name %> version <% versionString %> released on <% releaseDate %></p>
+
+<a name="Changes"></a><h2>Changes</h2>
+<ul>
+ <li>The main change in the Webware 1.1 branch is that it now requires
+ at least Python version 2.4, while the Webware 1.0 branch still supports
+ old Python releases down to version 2.0. This move allowed us to get rid
+ of a lot of cruft, workarounds and old fashioned code; the code has become
+ much cleaner and leaner, and by using more modern Python idioms also faster
+ in many places. We do not yet support Python 3, but these changes give us
+ a good starting point for further modernization of Webware for Python.</li>
+ <li>We also changed our style guideline and are using 4 spaces instead of
+ tabs throughout our codebase now, in order to conform a bit more with PEP8.
+ We did not modernize our naming conventions, though, because we want to stay
+ backward compatible with existing Webware applications.</li>
+ <li>The methods and objects which have been marked as deprecated
+ in version 1.0 and modules that are now available in the standard library
+ have been removed in Webware for Python 1.1.</li>
+ <li>The <code>NamedValueAccess</code> "magic" has been removed. See the
+ MiscUtils release notes for details.</li>
+ <li>We are now only using new-style classes in our code base. The
+ <code>Object</code> root class for WebKit objects has gone.</li>
+ <li>Webware (particularly MiddleKit) does not support <code>mxDateTime</code>
+ types any more, only the native datetime types. However, if python-dateutil
+ is not installed, Webware will still use <code>mxDateTime</code> internally
+ for string parsing (but the results will be <code>datetime</code> anyway).
+ This makes datetime handling much clearer and easier maintainable.</li>
+</ul>
+
+<a name="NewFeatures"></a><h2>New Features</h2>
+<ul>
+ <li>Added an adapter for any WSGI compliant webserver to communicate with
+ the Webware application server, which you can use straight away as WSGI
+ application script file for mod_wsgi.</li>
+ <li>Added new session store classes based on shelve and Memcached.</li>
+ <li>MiddleKit now supports SQLite as database.</li>
+ <li>A mod_webkit binary for Apache 2 64bit on Windows is now included.</li>
+</ul>
+
+<a name="Fixes"></a><h2>Fixes</h2>
+<ul>
+ <li>Fixed a long outstanding issue with filenames in tracebacks: Since the
+ installer compiled the files from a different directory (Webware) than the
+ appserver uses (WebKit), the stored filenames (co_filename) could sometimes
+ not be resolved.</li>
+ <li>Fixed problems when shutting down an app server with hanging threads.</li>
+ <li>More WebKit bugfixes are listed in the WebKit release notes.</li>
+</ul>
+
+<% footer() %>
Modified: Webware/tags/Release-1_1/KidKit/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/KidKit/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/KidKit/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'KidKit'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [{'name': "User's Guide", 'file': 'UsersGuide.html'}]
Copied: Webware/tags/Release-1_1/MiddleKit/Docs/RelNotes-1.1.phtml (from r8190, Webware/tags/Release-1_1/MiddleKit/Docs/RelNotes-X.Y.phtml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ Webware/tags/Release-1_1/MiddleKit/Docs/RelNotes-1.1.phtml Wed Aug 3 08:45:04 2011 (r8191, copy of r8190, Webware/tags/Release-1_1/MiddleKit/Docs/RelNotes-X.Y.phtml)
@@ -0,0 +1,34 @@
+<% header(name + ' ' + versionString + ' Release Notes') %>
+
+<p><% name %> version <% versionString %> released on <% releaseDate %></p>
+
+<a name="NewFeatures"></a><h2>New Features</h2>
+<ul>
+ <li>Added support for SQLite to MiddleKit.</li>
+</ul>
+
+<a name="Improvements"></a><h2>Improvements and Refinements</h2>
+<ul>
+ <li>SQL Server support in MiddleKit now done via pyodbc, because mxODBC is
+ a commercial product, while pyodbc is free and open source. Tested with
+ SQL Server 2008.</li>
+</ul>
+
+<a name="MinorChanges"></a><h2>Minor API Changes</h2>
+<ul>
+ <li>We are now only using new-style classes.</li>
+</ul>
+
+<a name="Deprecations"></a><h2>Deprecations</h2>
+<ul>
+ <li>The <code>_get</code> and <code>_set</code> methods of
+ <code>MiddleObject</code> have been deprecated in favor of
+ <code>valueForKey</code> and <code>setValueForKey</code>.</li>
+ <li>MiddleKit now does not support <code>mxDateTime</code> types any more,
+ only the native datetime types. However, if python-dateutil is not installed,
+ Webware will still use <code>mxDateTime</code> internally for string parsing
+ (but the results will be <code>datetime</code> anyway). This makes the whole
+ datetime handling much clearer and easier maintainable.</li>
+</ul>
+
+<% footer() %>
Modified: Webware/tags/Release-1_1/MiddleKit/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/MiddleKit/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/MiddleKit/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'MiddleKit'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': 'Introduction', 'file': 'Intro.html'},
Copied: Webware/tags/Release-1_1/MiscUtils/Docs/RelNotes-1.1.phtml (from r8190, Webware/tags/Release-1_1/MiscUtils/Docs/RelNotes-X.Y.phtml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ Webware/tags/Release-1_1/MiscUtils/Docs/RelNotes-1.1.phtml Wed Aug 3 08:45:04 2011 (r8191, copy of r8190, Webware/tags/Release-1_1/MiscUtils/Docs/RelNotes-X.Y.phtml)
@@ -0,0 +1,49 @@
+<% header(name + ' ' + versionString + ' Release Notes') %>
+
+<p><% name %> version <% versionString %> released on <% releaseDate %></p>
+
+<a name="NewFeatures"></a><h2>New Features</h2>
+<ul>
+ <li>Added the <code>DateParser</code> module for parsing strings to datetime
+ values using python-dateutil, mxDateTime or strptime.</li>
+ <li>Added the <code>Funcs.localTimeDelta</code> function to support setting
+ cookie expiration as datetime without timezone.</li>
+</ul>
+
+<a name="Improvements"></a><h2>Improvements and Refinements</h2>
+<ul>
+ <li>Simplified and modernized <code>DataTable</code>. Now using only native
+ datetime classes instead of mxDateTime.</li>
+</ul>
+
+<a name="MinorChanges"></a><h2>Minor API Changes</h2>
+<ul>
+ <li>Renamed the <code>positive_id</code> function to <code>positiveId</code>,
+ using the Webware naming convention.</li>
+ <li>The <code>asclocaltime</code> function has been from
+ <code>WebKit.Common</code> to <code>MiscUtils</code>.</li>
+ <li>Renamed the <code>pickleVersion</code> parameter to
+ <code>pickleProtocol</code> since it's referred to as "protocol" in the
+ pickle docs. If not specified, we always use the highest format available
+ (i.e. 2 instead of 1 as before).</li>
+</ul>
+
+<a name="Deprecations"></a><h2>Deprecations</h2>
+<ul>
+ <li>The methods and objects which have been marked as deprecated
+ in version 1.0 and modules that are now available in the standard library
+ have been removed in Webware for Python 1.1, particularly
+ <code>BasicDateTime</code>, <code>pydoc</code> and <code>inspect</code>.</li>
+ <li>The <code>NamedValueAccess</code> "magic" was disposed since it has
+ never been well documented and hardly anyone understood and used it.
+ It also made things difficult to maintain, and the key bindings had already
+ caused problems with garbage collection in the past which had been very hard
+ to find. And now that properties and new-style classes exist, this whole
+ approach can be considered outmoded. So the <code>NamedValueAccess</code>
+ mix-in and wrapper classes and the <code>UserDict</code> monkey-patch are
+ gone now. However, the <code>valueForKey</code> and <code>valueForName</code>
+ functions are still available and can be useful in some cases (for instance
+ for evaluating the <code>ActivityLogColumns</code>).</li>
+</ul>
+
+<% footer() %>
Modified: Webware/tags/Release-1_1/MiscUtils/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/MiscUtils/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/MiscUtils/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'MiscUtils'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': "User's Guide", 'file': 'UsersGuide.html'},
Copied: Webware/tags/Release-1_1/PSP/Docs/RelNotes-1.1.phtml (from r8190, Webware/tags/Release-1_1/PSP/Docs/RelNotes-X.Y.phtml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ Webware/tags/Release-1_1/PSP/Docs/RelNotes-1.1.phtml Wed Aug 3 08:45:04 2011 (r8191, copy of r8190, Webware/tags/Release-1_1/PSP/Docs/RelNotes-X.Y.phtml)
@@ -0,0 +1,12 @@
+<% header(name + ' ' + versionString + ' Release Notes') %>
+
+<p><% name %> version <% versionString %> released on <% releaseDate %></p>
+
+<a name="Improvements"></a><h2>Improvements and Refinements</h2>
+<ul>
+ <li>The parser has been optimized and checks for invalid attributes now.</li>
+ <li>Files included with the include directive are now watched by the import
+ manager so the app server can automatically reload when they are changed.</li>
+</ul>
+
+<% footer() %>
Modified: Webware/tags/Release-1_1/PSP/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/PSP/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/PSP/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'Python Server Pages'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [{'name': "User's Guide", 'file': 'UsersGuide.html'}]
Modified: Webware/tags/Release-1_1/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,10 +1,10 @@
name = 'Webware for Python'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
status = 'stable'
-releaseDate = '@@/@@/@@'
+releaseDate = '08/03/11'
requiredPyVersion = (2, 4, 0)
Modified: Webware/tags/Release-1_1/TaskKit/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/TaskKit/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/TaskKit/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'TaskKit'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': "Quick Start", 'file': 'QuickStart.html'},
Modified: Webware/tags/Release-1_1/UserKit/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/UserKit/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/UserKit/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'UserKit'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': "User's Guide", 'file': 'UsersGuide.html'},
Modified: Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.html
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.html Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.html Wed Aug 3 08:45:04 2011 (r8191)
@@ -15,9 +15,9 @@
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
-<tr class="field"><th class="field-name">Version:</th><td class="field-body">X.Y</td>
+<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td>
</tr>
-<tr class="field"><th class="field-name">Released:</th><td class="field-body">@@/@@/@@</td>
+<tr class="field"><th class="field-name">Released:</th><td class="field-body">08/03/11</td>
</tr>
</tbody>
</table>
Modified: Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.txt
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.txt Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/ApplicationDevelopment.txt Wed Aug 3 08:45:04 2011 (r8191)
@@ -3,8 +3,8 @@
Webware for Python
-:Version: X.Y
-:Released: @@/@@/@@
+:Version: 1.1
+:Released: 08/03/11
.. contents:: Contents
Modified: Webware/tags/Release-1_1/WebKit/Docs/Future.html
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/Future.html Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/Future.html Wed Aug 3 08:45:04 2011 (r8191)
@@ -15,9 +15,9 @@
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
-<tr class="field"><th class="field-name">Version:</th><td class="field-body">X.Y</td>
+<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td>
</tr>
-<tr class="field"><th class="field-name">Released:</th><td class="field-body">@@/@@/@@</td>
+<tr class="field"><th class="field-name">Released:</th><td class="field-body">08/03/11</td>
</tr>
</tbody>
</table>
Modified: Webware/tags/Release-1_1/WebKit/Docs/Future.txt
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/Future.txt Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/Future.txt Wed Aug 3 08:45:04 2011 (r8191)
@@ -3,8 +3,8 @@
Webware for Python
-:Version: X.Y
-:Released: @@/@@/@@
+:Version: 1.1
+:Released: 08/03/11
Warning
Modified: Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.html
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.html Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.html Wed Aug 3 08:45:04 2011 (r8191)
@@ -231,9 +231,9 @@
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
-<tr class="field"><th class="field-name">Version:</th><td class="field-body">X.Y</td>
+<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td>
</tr>
-<tr class="field"><th class="field-name">Released:</th><td class="field-body">@@/@@/@@</td>
+<tr class="field"><th class="field-name">Released:</th><td class="field-body">08/03/11</td>
</tr>
</tbody>
</table>
Modified: Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.txt
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.txt Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/InstallGuide.txt Wed Aug 3 08:45:04 2011 (r8191)
@@ -189,8 +189,8 @@
Webware for Python
-:Version: X.Y
-:Released: @@/@@/@@
+:Version: 1.1
+:Released: 08/03/11
You can check for the latest version at http://www.webwareforpython.org.
Copied: Webware/tags/Release-1_1/WebKit/Docs/RelNotes-1.1.phtml (from r8190, Webware/tags/Release-1_1/WebKit/Docs/RelNotes-X.Y.phtml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ Webware/tags/Release-1_1/WebKit/Docs/RelNotes-1.1.phtml Wed Aug 3 08:45:04 2011 (r8191, copy of r8190, Webware/tags/Release-1_1/WebKit/Docs/RelNotes-X.Y.phtml)
@@ -0,0 +1,120 @@
+<% header(name + ' ' + versionString + ' Release Notes') %>
+
+<p><% name %> version <% versionString %> released on <% releaseDate %></p>
+
+<a name="NewFeatures"></a><h2>New Features</h2>
+<ul>
+ <li>In <span class="filename">WebKit/Adapters</span> you find a new adapter
+ <span class="filename">WSGIAdapter.py</span> allowing any WSGI compliant
+ webserver to communicate with the Webware application server. You can use
+ it straight away as WSGI application script file for
+ <a href="http://code.google.com/p/modwsgi/">mod_wsgi</a>.</li>
+ <li>All worker threads are now tagged as daemon threads by default,
+ thereby allowing the app server to quit even if some of them cannot
+ be told to quit their work. This can be changed via the new
+ <span class="filename">AppServer.config</span> setting
+ <code>UseDaemonThreads</code>.</li>
+ <li>Two new session store classes have been added,
+ <code>SessionShelveStore</code> (using the shelve module) and
+ <code>SessionMemcachedStore</code> (using python-memcached).
+ The latter one is very useful if you want to share Webware sessions
+ between different app server instances. You can activate and configure
+ the new classes in <span class="filename">Application.config</span>.</li>
+ <li>A mod_webkit binary for Apache 2 64bit on Windows is now included.</li>
+ <li>With the new <span class="filename">AppServer.config</span> setting
+ <code>SilentURIs</code> you can specify request URIs for which you don't
+ want messages with request info to be printed in the server output.
+ By default, as earlier, all requests will appear in the server output.</li>
+ <li>Changes in servlet classes are not picked up using the AutoReload
+ mechanism; the corresponding modules are simply reloaded. However, this can
+ cause problems when other modules are dependent on the reloaded modules,
+ e.g. by inheriting from the reloaded servlet class. For such cases,
+ the new <span class="filename">Application.config</span> setting
+ <code>ReloadServletClasses</code>, when set to <code>False</code>, can be
+ used to suppress reloading of servlet classes and utilizing the AutoReload
+ mechanism for reloading the servlet classes instead (Bug 3016673 reported
+ by Patrick Gendron).</li>
+ <li>A new setting <code>AlwaysSaveSessions</code> has been introduced that
+ can be set to <code>False</code> in order to avoid saving unaltered sessions
+ (as suggested by Steve Schwarz).</li>
+ <li>The mod_webkit2 adapter now also works with 64bit builds of Apache 2.2;
+ we have included pre-compiled 32bit and 64bit dll files for Windows.</li>
+</ul>
+
+<a name="Improvements"></a><h2>Improvements and Refinements</h2>
+<ul>
+ <li>Made the mimetype guessing a bit more robust.</li>
+ <li>Instead of <code>mx.DateTime</code> types, we now use the native
+ datetime types for cookie expiration in <code>HTTPResponse</code>.</li>
+ <li>We now set the close-on-exec-flag on the ThreadedAppServer socket
+ (as suggested by Justin Akehurst).</li>
+ <li>The mod_webkit2 adapter would interpret the WKServer host address as IPv6,
+ but later created the socket connection with IPv4 even if it was an IPv6
+ address. Fixed this so that the WKServer address is always interpreted as IPv4.
+ The ThreadedAppServer only listens on an IPv4 socket anyway.</li>
+ <li>If the AppServer is launched with <code>runProfile = False</code>
+ (see <span class="filename">Profiler.py</span> for details), then the
+ profiling will be done with the <code>cProfile</code> module instead of
+ the <code>profile</code> module if possible (Python 2.5 and later).</li>
+ <li>The <code>Sessionstore.cleanStaleSessions()</code> method has been
+ made a bit more robust.</li>
+ <li>In the <code>AutoReloadingAppServer</code>, we do not add files more
+ than once to the watchlist any more. If a FAM module cannot be initialized,
+ we try to use the alternative FAM modules. Besides <code>python-fam</code>
+ and <code>python-gamin</code>, we now support <code>pyinotify</code>.</li>
+ <li>Slashes in module names (from nested contexts) are now replaced
+ with underscores, to make PSP and KidKit work with PyPy as well.</li>
+</ul>
+
+<a name="MinorChanges"></a><h2>Minor API Changes</h2>
+<ul>
+ <li>We are now only using new-style classes in our code base.</li>
+ <li>The internal <code>asclocaltime</code> function has been from
+ <code>WebKit.Common</code> to <code>MiscUtils</code>.</li>
+</ul>
+
+<a name="Bugfixes"></a><h2>Bugfixes</h2>
+<ul>
+ <li>The mod_webkit2 adapter interpreted the WKServer host address as
+ IPv6 in newer Linux versions and then was unable to connect.</li>
+ <li>Thread dumps now work with Python 2.5 and later (and the threadframe
+ module isn't necessary here any more).</li>
+ <li>For some kinds of bad URLs, the URLParser raised an AssertionError
+ instead of HTTPNotFound.</li>
+ <li>The modified <code>FieldStorage</code> class used by WebKit did not work
+ as before with Python 2.6 and newer. These Python versions already add query
+ string parameters to the fields passed via POST, but differently to how we
+ did this before. In WebKit, POST parameters used to completely override query
+ string parameters, the values were not appended to possibly existing values
+ in the query string. In order to stay compatible and because it seems to be
+ more reasonable, we restored the old behavior even for newer versions of
+ Python (thanks to Fionn Behrens for bringing this up).</li>
+ <li>Fixed a problem with FAM when files were imported while the thread loop
+ was initialized.</li>
+ <li>The <code>IncludeEditLink</code> setting had always been ignored
+ (assumed to be True).</li>.
+ <li>The <code>ServletCache</code> page in the Admin context did not show
+ anything when caching was not activated.</li>
+</ul>
+
+<a name="Deprecations"></a><h2>Deprecations</h2>
+<ul>
+ <li>The methods and objects which have been marked as deprecated
+ in version 1.0 and modules that are now available in the standard library
+ have been removed in Webware for Python 1.1, particularly:
+ <code>HTTPRequest.ServerSideDir</code>, <code>HTTPRequest.relativePath</code>,
+ <code>HTTPRequest.servletFilePath</code> and <code>HTTPResponse.addHeader</code>.
+ Removed support for the <code>404Text.txt</code> file name (it is called
+ <code>error404.html</code> now) and the <code>Port</code> setting (which is
+ <code>AdapterPort</code> now).</li>
+ <li>The <code>Object</code> root class for WebKit objects has gone.
+ It made things unnecessary complicated and did not contribute much
+ functionality besides named value access which hardly anyone was uning
+ and has now been removed anyway.</li>
+ <li>The internal <code>WebKit.Common</code> module is also gone. It was
+ mostly used for creating backward compatibility with old Python versions
+ which is now not necessary any more. Also, wild card imports (as in
+ <code>from Common import *</code>) are considered bad practice.</li>
+</ul>
+
+<% footer() %>
Modified: Webware/tags/Release-1_1/WebKit/Docs/Tutorial.html
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/Tutorial.html Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/Tutorial.html Wed Aug 3 08:45:04 2011 (r8191)
@@ -15,9 +15,9 @@
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
-<tr class="field"><th class="field-name">Version:</th><td class="field-body">X.Y</td>
+<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td>
</tr>
-<tr class="field"><th class="field-name">Released:</th><td class="field-body">@@/@@/@@</td>
+<tr class="field"><th class="field-name">Released:</th><td class="field-body">08/03/11</td>
</tr>
</tbody>
</table>
Modified: Webware/tags/Release-1_1/WebKit/Docs/Tutorial.txt
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/Tutorial.txt Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/Tutorial.txt Wed Aug 3 08:45:04 2011 (r8191)
@@ -3,8 +3,8 @@
Webware for Python
-:Version: X.Y
-:Released: @@/@@/@@
+:Version: 1.1
+:Released: 08/03/11
.. contents:: Contents
Modified: Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.html
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.html Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.html Wed Aug 3 08:45:04 2011 (r8191)
@@ -15,9 +15,9 @@
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
-<tr class="field"><th class="field-name">Version:</th><td class="field-body">X.Y</td>
+<tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td>
</tr>
-<tr class="field"><th class="field-name">Released:</th><td class="field-body">@@/@@/@@</td>
+<tr class="field"><th class="field-name">Released:</th><td class="field-body">08/03/11</td>
</tr>
</tbody>
</table>
Modified: Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.txt
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.txt Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Docs/UsersGuide.txt Wed Aug 3 08:45:04 2011 (r8191)
@@ -3,8 +3,8 @@
Webware for Python
-:Version: X.Y
-:Released: @@/@@/@@
+:Version: 1.1
+:Released: 08/03/11
.. contents:: Contents
Modified: Webware/tags/Release-1_1/WebKit/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'WebKit'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': 'Install Guide', 'file': 'InstallGuide.html'},
Modified: Webware/tags/Release-1_1/WebKit/Tests/twill/Admin.twill
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Tests/twill/Admin.twill Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Tests/twill/Admin.twill Wed Aug 3 08:45:04 2011 (r8191)
@@ -4,7 +4,7 @@
# twill test script (twill.idyll.org)
# Admin context
-setglobal version X.Y
+setglobal version 1.1
setglobal password WebKit
config use_tidy 0
Modified: Webware/tags/Release-1_1/WebKit/Tests/twill/Docs.twill
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Tests/twill/Docs.twill Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Tests/twill/Docs.twill Wed Aug 3 08:45:04 2011 (r8191)
@@ -4,8 +4,8 @@
# twill test script (twill.idyll.org)
# Docs context
-setglobal version X.Y
-setglobal date @@/@@/@@
+setglobal version 1.1
+setglobal date 08/03/11
config use_tidy 0
config use_BeautifulSoup 0
@@ -162,7 +162,7 @@
find '<h1 class="header">WebKit User\'s Guide</h1>'
find "<p>Webware for Python</p>"
find "<th.*>Version:</th><td.*>${version}</td>"
-# if release find "<th.*>Released:</th><td.*>${date}</td>"
+find "<th.*>Released:</th><td.*>${date}</td>"
find '<h1>Synopsis</h1>'
find '<h1>Credit</h1>'
find '<div class="footer">'
@@ -175,7 +175,7 @@
find '<h1 class="header">Beginner Tutorial</h1>'
find "<p>Webware for Python</p>"
find "<th.*>Version:</th><td.*>${version}</td>"
-# if release find "<th.*>Released:</th><td.*>${date}</td>"
+find "<th.*>Released:</th><td.*>${date}</td>"
find '<h1>Synopsis</h1>'
find '<div class="footer">'
back
@@ -183,7 +183,7 @@
find '<h1 class="header">Application Development With Webware</h1>'
find "<p>Webware for Python</p>"
find "<th.*>Version:</th><td.*>${version}</td>"
-# if release find "<th.*>Released:</th><td.*>${date}</td>"
+find "<th.*>Released:</th><td.*>${date}</td>"
find '<h1>Synopsis</h1>'
find '<div class="footer">'
back
@@ -195,7 +195,7 @@
find '<h1 class="header">Future Work</h1>'
find "<p>Webware for Python</p>"
find "<th.*>Version:</th><td.*>${version}</td>"
-# if release find "<th.*>Released:</th><td.*>${date}</td>"
+find "<th.*>Released:</th><td.*>${date}</td>"
find "To Do"
find '<div class="footer">'
back
Modified: Webware/tags/Release-1_1/WebKit/Tests/twill/KidKit.twill
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Tests/twill/KidKit.twill Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Tests/twill/KidKit.twill Wed Aug 3 08:45:04 2011 (r8191)
@@ -4,7 +4,7 @@
# twill test script (twill.idyll.org)
# KidKit context
-setglobal version X.Y
+setglobal version 1.1
config use_tidy 0
config use_BeautifulSoup 0
Modified: Webware/tags/Release-1_1/WebKit/Tests/twill/MKBrowser.twill
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Tests/twill/MKBrowser.twill Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Tests/twill/MKBrowser.twill Wed Aug 3 08:45:04 2011 (r8191)
@@ -4,7 +4,7 @@
# twill test script (twill.idyll.org)
# MKBrowser context
-setglobal version X.Y
+setglobal version 1.1
config use_tidy 0
config use_BeautifulSoup 0
Modified: Webware/tags/Release-1_1/WebKit/Tests/twill/PSP.twill
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Tests/twill/PSP.twill Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Tests/twill/PSP.twill Wed Aug 3 08:45:04 2011 (r8191)
@@ -4,7 +4,7 @@
# twill test script (twill.idyll.org)
# PSP context
-setglobal version X.Y
+setglobal version 1.1
config use_tidy 0
config use_BeautifulSoup 0
Modified: Webware/tags/Release-1_1/WebKit/Tests/twill/Testing.twill
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Tests/twill/Testing.twill Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Tests/twill/Testing.twill Wed Aug 3 08:45:04 2011 (r8191)
@@ -4,7 +4,7 @@
# twill test script (twill.idyll.org)
# Testing context
-setglobal version X.Y
+setglobal version 1.1
config use_tidy 0
config use_BeautifulSoup 0
Modified: Webware/tags/Release-1_1/WebKit/Tests/twill/WebKit.twill
==============================================================================
--- Webware/tags/Release-1_1/WebKit/Tests/twill/WebKit.twill Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebKit/Tests/twill/WebKit.twill Wed Aug 3 08:45:04 2011 (r8191)
@@ -4,7 +4,7 @@
# twill test script (twill.idyll.org)
# WebKit context
-setglobal version X.Y
+setglobal version 1.1
config use_tidy 0
config use_BeautifulSoup 0
Copied: Webware/tags/Release-1_1/WebUtils/Docs/RelNotes-1.1.phtml (from r8190, Webware/tags/Release-1_1/WebUtils/Docs/RelNotes-X.Y.phtml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ Webware/tags/Release-1_1/WebUtils/Docs/RelNotes-1.1.phtml Wed Aug 3 08:45:04 2011 (r8191, copy of r8190, Webware/tags/Release-1_1/WebUtils/Docs/RelNotes-X.Y.phtml)
@@ -0,0 +1,32 @@
+<% header(name + ' ' + versionString + ' Release Notes') %>
+
+<p><% name %> version <% versionString %> released on <% releaseDate %></p>
+
+<a name="MinorChanges"></a><h2>Minor API Changes</h2>
+<ul>
+ <li>To conform with Webwares naming conventions and because it now deviates
+ pretty much from the original <code>cgitb</code>, renamed
+ <code>WebUtils.cgitb</code> to <code>WebUtils.CGITraceback</code>.</li>
+</ul>
+
+<a name="Bugfixes"></a><h2>Bugfixes</h2>
+<ul>
+ <li>The modified <code>FieldStorage</code> class did not work as before with
+ Python 2.6 and newer. These Python versions already add query string parameters
+ to the fields passed via POST, but differently to how we did this before.
+ POST parameters used to completely override query string parameters, the values
+ were not appended to possibly existing values in the query string. In order
+ to stay compatible and because it seems to be more reasonable, we restored the
+ old behavior even for newer versions of Python (thanks to Fionn Behrens for
+ bringing this up).</li>
+</ul>
+
+<a name="Deprecations"></a><h2>Deprecations</h2>
+<ul>
+ <li>The methods and objects which have been marked as deprecated
+ in version 1.0 and modules that are now available in the standard library
+ have been removed in Webware for Python 1.1, particularly
+ <code>Cookie</code>, <code>cgitb</code> and <code>WebFuncs</code>.</li>
+</ul>
+
+<% footer() %>
Modified: Webware/tags/Release-1_1/WebUtils/Properties.py
==============================================================================
--- Webware/tags/Release-1_1/WebUtils/Properties.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/WebUtils/Properties.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,6 +1,6 @@
name = 'WebUtils'
-version = ('X', 'Y', 0)
+version = (1, 1, 0)
docs = [
{'name': "User's Guide", 'file': 'UsersGuide.html'},
Modified: Webware/tags/Release-1_1/_README
==============================================================================
--- Webware/tags/Release-1_1/_README Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/_README Wed Aug 3 08:45:04 2011 (r8191)
@@ -1,7 +1,7 @@
Webware for Python
-:Version: X.Y
-:Released: @@/@@/@@
+:Version: 1.1
+:Released: 08/03/11
README
Modified: Webware/tags/Release-1_1/bin/setversion.py
==============================================================================
--- Webware/tags/Release-1_1/bin/setversion.py Wed Aug 3 08:40:54 2011 (r8190)
+++ Webware/tags/Release-1_1/bin/setversion.py Wed Aug 3 08:45:04 2011 (r8191)
@@ -62,8 +62,8 @@
# releaseDate format should be 'MM/DD/YY'.
# Update this to change the current version and release date:
-version = ('X', 'Y', 0)
-releaseDate = '@@/@@/@@'
+version = (1, 1, 0)
+releaseDate = '08/03/11'
# Set Version info in files (should not be done on the trunk):
setVersion = True
|