| 1 |
2006-04-24: |
|---|
| 2 |
* CherryPy-2.2.1 released (thread_data bug fix) |
|---|
| 3 |
|
|---|
| 4 |
2006-04-03: |
|---|
| 5 |
* CherryPy-2.2.0 released |
|---|
| 6 |
|
|---|
| 7 |
2006-03-29: |
|---|
| 8 |
* Moved to Combined Log Format |
|---|
| 9 |
|
|---|
| 10 |
2006-03-26: |
|---|
| 11 |
* Reorganized all tests to cleanly separate client-side and server-side code |
|---|
| 12 |
|
|---|
| 13 |
2006-03-06: |
|---|
| 14 |
* CherryPy-2.2.0rc1 released |
|---|
| 15 |
* Fixed various bugs (including session) |
|---|
| 16 |
|
|---|
| 17 |
2006-03-01: |
|---|
| 18 |
* New test\benchmark.py tool |
|---|
| 19 |
|
|---|
| 20 |
2006-02-16: |
|---|
| 21 |
* Removed _cphttpserver, the native HTTP server that was deprecated in CP 2.1 (fumanchu) |
|---|
| 22 |
|
|---|
| 23 |
2006-02-14: |
|---|
| 24 |
* New _cpengine module isolates "app server" from "HTTP server" state-management logic. |
|---|
| 25 |
|
|---|
| 26 |
2006-01-27: |
|---|
| 27 |
* CherryPy-2.2.0beta released |
|---|
| 28 |
* Lots of improvements to sessionfilter |
|---|
| 29 |
* Added cherrypy.lower_api switch (people get a speed boost if they |
|---|
| 30 |
* set it to True) |
|---|
| 31 |
|
|---|
| 32 |
2006-01-02: |
|---|
| 33 |
* New _cptree module, with strong encouragement to call tree.mount(Root()[, baseurl]) instead of cherrypy.root = Root(). |
|---|
| 34 |
|
|---|
| 35 |
2005-12-05: |
|---|
| 36 |
* Added support for specifying the Content-Type to be used by defaults |
|---|
| 37 |
* Added a response headers filter to specify HTTP headers |
|---|
| 38 |
|
|---|
| 39 |
2005-12-03: |
|---|
| 40 |
* Huge change: switching to lowercase_with_underscore names everywhere ... CP keeps backward compatibility though (remi) |
|---|
| 41 |
|
|---|
| 42 |
2005-10-21: |
|---|
| 43 |
* CherryPy-2.1.0 released |
|---|
| 44 |
* Changed the default value for sessionFilter.locking from "implicit" to "explicit" (remi) |
|---|
| 45 |
|
|---|
| 46 |
2005-10-06: |
|---|
| 47 |
* CherryPy-2.1.0-rc2 released |
|---|
| 48 |
* Bug in sessionfilter fixed |
|---|
| 49 |
|
|---|
| 50 |
2005-09-15: |
|---|
| 51 |
* CherryPy-2.1.0-rc1 released |
|---|
| 52 |
|
|---|
| 53 |
2005-09-14: |
|---|
| 54 |
* The new HTTP error mechanism has been completely rewritten (see tutorial |
|---|
| 55 |
10) |
|---|
| 56 |
|
|---|
| 57 |
2005-09-10: |
|---|
| 58 |
* New session implementation. See the CherryPy book for docs (remi) |
|---|
| 59 |
* New server.maxRequestBodySize and maxRequestHeaderSize options. |
|---|
| 60 |
* See the CherryPy book for docs (remi) |
|---|
| 61 |
|
|---|
| 62 |
2005-09-04: |
|---|
| 63 |
* Generalized mechanism for handling HTTP errors |
|---|
| 64 |
* raising a HTTPStatusError will automatically send an appropriate error page |
|---|
| 65 |
* All errors in production mode will cause CP to respond with a http error |
|---|
| 66 |
|
|---|
| 67 |
2005-08-17: |
|---|
| 68 |
* The session filter has been simplified, the mechanism for creating multiple sessions has been removed. However .. (mikerobi) |
|---|
| 69 |
* The session filter can placed inside a _cpFilterList to provide an alternative to the default session. (mikerobi) |
|---|
| 70 |
|
|---|
| 71 |
2005-08-09: |
|---|
| 72 |
* The config section [global] is now distinct from, and the parent of, [/]. (fumanchu) |
|---|
| 73 |
* cherrypy.request.path is now parsed and set before onStartResource filter methods are called. (fumanchu) |
|---|
| 74 |
* Absolute Request-URI's are now acceptable, and are converted to relative paths. (fumanchu) |
|---|
| 75 |
* A Request-URI of "*" now maps to the [global] config section, and to cherrypy.root._global. (fumanchu) |
|---|
| 76 |
|
|---|
| 77 |
2005-07-12: |
|---|
| 78 |
* CherryPy-2.1.0-beta released. Check http://www.cherrypy.org/wiki/WhatsNewIn21 for instructions on how to upgrade from 2.0. (remi) |
|---|
| 79 |
|
|---|
| 80 |
2005-07-09: |
|---|
| 81 |
* Request entities that are not form params now get stuck in cherrypy.request.body (as a temp file object). (fumanchu) |
|---|
| 82 |
* cherrypy.config.update can be called with an the keyword override=False to prevent values from being overwritten. |
|---|
| 83 |
2005-07-06: |
|---|
| 84 |
* Added code-coverage tools. (fumanchu) |
|---|
| 85 |
|
|---|
| 86 |
2005-06-25: |
|---|
| 87 |
* BACKWARD INCOMPATIBILITY: Removed cpg module, renamed _cpserver to server, _cpconfig to config, cperror to _cperror. See http://www.cherrypy.org/wiki/PackageLayout21 (fumanchu) |
|---|
| 88 |
|
|---|
| 89 |
2005-06-21: |
|---|
| 90 |
* New generic HTTPRedirect exception for 3xx responses. (fumanchu) |
|---|
| 91 |
|
|---|
| 92 |
2005-06-17: |
|---|
| 93 |
* Handle all HTTP methods. (fumanchu) |
|---|
| 94 |
|
|---|
| 95 |
2005-06-16: |
|---|
| 96 |
* First check-in of the documentation project (lawouach) |
|---|
| 97 |
|
|---|
| 98 |
2005-06-11: |
|---|
| 99 |
* getSpecialFunction renamed getSpecialAttribute (mikerobi) |
|---|
| 100 |
|
|---|
| 101 |
2005-06-10: |
|---|
| 102 |
* New test suite (no forks, no exec). (fumanchu) |
|---|
| 103 |
* New lib/profiler module. (fumanchu) |
|---|
| 104 |
* New session filter (mikerobi) |
|---|
| 105 |
* New config.getAll function (mikerobi) |
|---|
| 106 |
|
|---|
| 107 |
2005-06-09: |
|---|
| 108 |
* New sessionauthenticatefilter. This replace CSAuthenticate implementation (based on aspect). (Remi) |
|---|
| 109 |
* New nsgmlsfilter. Provides XHTML validation (you need NSGMLS installed). (Remi) |
|---|
| 110 |
|
|---|
| 111 |
2005-06-02: |
|---|
| 112 |
* New WSGI server. (Peter) |
|---|
| 113 |
|
|---|
| 114 |
2005-06-01: |
|---|
| 115 |
* Core (_cphttptools) was completely rewritten to use iterators throughout. (fumanchu) |
|---|
| 116 |
* HTTP server has been decoupled from _cpserver. (fumanchu) |
|---|
| 117 |
* New WSGI interface to the builtin http server; WSGI is now the default. (fumanchu) |
|---|
| 118 |
* Moved session handling into a filter. (fumanchu) |
|---|
| 119 |
* New testCore.py for testing basic request and error handling. (fumanchu) |
|---|
| 120 |
* autoreload disabled if cpg.server.start is called with initOnly=True. (fumanchu) |
|---|
| 121 |
* BACKWARD INCOMPATIBILITY: filters changed, see http://www.cherrypy.org/wiki/Filters21. (fumanchu) |
|---|
| 122 |
|
|---|
| 123 |
2005-05-20: |
|---|
| 124 |
* BACKWARD INCOMPATIBILITY: New config system, see http://www.cherrypy.org/wiki/ConfigSystem21 (Remi) |
|---|
| 125 |
* Fixed small bug in httptools.redirect (Remi) |
|---|
| 126 |
* Allow methods to return recursive generators (Remi) |
|---|
| 127 |
* Methods can now return file objects which are red in 64kb chunks. (Mike) |
|---|
| 128 |
|
|---|
| 129 |
2005-04-25: |
|---|
| 130 |
* CherryPy-2.0-final released |
|---|
| 131 |
* Added tests about static content and httptools.redirect (Remi) |
|---|
| 132 |
* Handle %20 (and others) in static content - ticket #104 (Remi) |
|---|
| 133 |
* If y is a static dir make y/a?b try and serve a file named a?b (Dan) |
|---|
| 134 |
* Pass threadIndex to onStartThreadList functions - ticket #91 (Remi) |
|---|
| 135 |
* Renamed "configDict" into "configMap" for consistency - ticket #82 (Remi) |
|---|
| 136 |
* Dots in requests path are now replaced by underscores - ticket #87 (Remi) |
|---|
| 137 |
* Improved WSGI support and added example (seems to work OK) (Peter, Remi) |
|---|
| 138 |
* Added DecodingFilter (Remi) |
|---|
| 139 |
* Added form module (port from CP1 Form.cpy) (Remi) |
|---|
| 140 |
* Improved the way static files are being served (Remi) |
|---|
| 141 |
|
|---|
| 142 |
2004-12-29: |
|---|
| 143 |
* CherryPY-2.0-beta released |
|---|
| 144 |
* xmlrpcfilter added (Remco) |
|---|
| 145 |
* cpg.response.body is now always an iterable type - ticket #59 (Carlos) |
|---|
| 146 |
* Allowed default session functions to be accessed by other modules - ticket #56 (Remi) |
|---|
| 147 |
* Added cpg.threadData - ticket #53 (Remi) |
|---|
| 148 |
* Added request.requestLine - ticket #52 (Remi) |
|---|
| 149 |
* logFile config option is now honored - ticket #51 (Remi) |
|---|
| 150 |
* Added cpg.request.remoteAddr and cpg.request.remoteHost - ticket #34 (Eurleif) |
|---|
| 151 |
* Improved baseurlfilter to handle x-forwarded-host - ticket #49 (Kender) |
|---|
| 152 |
* Made object mapping algorithm iterative instead of recursive - ticket #48 (Jesir Vargas) |
|---|
| 153 |
* Improved testing framework (Remco) |
|---|
| 154 |
* Check that response is a string *after* filters have been applied (ticket #28) (Remi) |
|---|
| 155 |
* Removed all XML-RPC references from the core: it is now a filter (ticket #30) (Remi) |
|---|
| 156 |
* Removed "response encoding" from the core: it is now in a filter (ticket #31) (Remi) |
|---|
| 157 |
* Implemented filters and a couple of sample filters (Remi) |
|---|
| 158 |
* Fixed "cleanUpOldSessions" bug (ticket #12) (Remi) |
|---|
| 159 |
* "file" storage type for sessions now works fine (Remi) |
|---|
| 160 |
* Ticket #6: If a response is unicode, it gets encoded automatically. Encoding is specified in the config file unser [server].encoding (the default is UTF-8). (Remi) |
|---|
| 161 |
* Added more unittest (Remi) |
|---|
| 162 |
* Fixed file upload bug (Remi) |
|---|
| 163 |
|
|---|
| 164 |
2004-10-13: |
|---|
| 165 |
* First alpha release of CherryPy-2 (Remi) |
|---|
| 166 |
|
|---|