Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 339 lines (237 sloc) 13.351 kB
016cdcd @mikedickey Merging net/develop into net subdir
mikedickey authored
1 Version 4.0.3 (2011-04-14)
2 ==========================
3
4 * Added support for new libraries and build environments (1105, 1106, 1107)
5
6
7 Version 4.0.1 (2011-03-08)
8 ==========================
9
10 * Added read() and write() methods to HTTPMessage for serialization (1086)
11 * Improved error handling in HTTP(Request/Response)(Reader/Writer) (1083)
12
13
14 Version 3.0.21 (2011-01-25)
15 ===========================
16
17 * HTTP Parser - fixed various chunked content parsing errors (991)
18 * HTTP Parser - now recovers gracefully if status line is missing comment (994)
19 * HTTP Parser - handle "deflate" encoded content with zlib headers (1008)
20 * HTTP Parser - ignore tab characters in query string content (1014)
21 * HTTP Parser - allow for empty cookie names (1015)
22 * HTTP Parser - don't remove unquoted spaces from cookie values (1016)
23 * HTTP Parser - allow for responses with no HTTP headers (1017)
24 * HTTP Parser - improve recovery from truncated requests (1033)
25 * HTTP Parser - recover from empty query parameter names (1006)
26 * HTTP Parser - raw headers strings were sometimes truncated (1031)
27 * TCPTimer.cpp was missing boost/bind.hpp include file (1005)
28 * TCPConnection - now allows for SSL state change (1024)
29 * HTTPMessage - added headers_only options for send() and receive() (1025)
30
31
32 Version 3.0.9 (2010-04-30)
33 ==========================
34
35 * HTTPReader - add support for timeouts (900)
36
37
38 Version 3.0.5 (2010-04-02)
39 ==========================
40
41 * TCPConnection - add accessors for ssl socket object (901)
42
43
44 Version 3.0.3 (2010-03-12)
45 ==========================
46
47 * HTTPTypes::url_encode() crashes when input string has negative char (877)
48 * TCPConnection::write() was not passing error_code by reference (878)
49
50
51 Version 3.0.1 (2010-03-01)
52 ==========================
53
54 * Added ability to dynamically remove resources from HTTPServers (834)
55 * Added support to HTTPParser for saving the raw HTTP headers (842)
56 * HTTPParser now uses a default status code of 0 instead of 200 (817)
57 * Removed build numbers from Unix library names (861)
58
59
60 Version 2.2.12 (2010-02-16)
61 ===========================
62
63 * Made HTTP query parameter map case-insensitive (836)
64
65
66 Version 2.2.10 (2010-01-20)
67 ===========================
68
69 * HTTPParser will now ignore attributes from Set-Cookie HTTP headers (808)
70 * Disabled default building of static libraries in Unix autoconf scripts (825)
71
72
73 Version 2.2.8 (2009-12-04)
74 ==========================
75
76 * HTTP client library not sending payload content that started with NULL (777)
77 * Added support for newer Boost releases (through 1.41) and for gcc 4.4 (780)
78
79
80 Version 2.2.2 (2009-10-09)
81 ==========================
82
83 * HTTPParser query parameter parsing failed on LF & CR characters (681)
84 * Improved autoconf detection for support of Boost.Lockfree library (692)
85 * Improved error handling in PluginManager when loading fails (736)
86 * Fixed "make install" on Unix platforms using autoconf (378)
87 * Pion's unit tests now use random port numbers (690)
88
89
90 Version 2.1.4 (2009-07-31)
91 ==========================
92
93 * Switched default logging to use log4cplus 1.0.3 instead of log4cxx (274, 514)
94 * Updated and merged in the latest version of the boost.lockfree library (647)
95 * Added PionId class to replace dependency on the OSSP UUID library (515)
96 * The Unix build scripts now auto-detect everything correctly (591)
97 * Fixed copy methods for HTTPMessage, HTTPRequest & HTTPResponse (590)
98 * Added setMaxContentLength() method to HTTPServer (589)
99
100
101 Version 2.0.8 (2009-06-05)
102 ==========================
103 * Fixed bug with "./configure --with-debug" failing on boost thread tests (598)
104
105
106 Version 2.0.6 (2009-05-26)
107 ==========================
108 * HTTPParser exception thrown when Content-Length had leading whitespace (585)
109 * Miscellaneous improvements to Windows MSVC build projects (564)
110
111
112 Version 1.2.4 (2009-03-27)
113 ==========================
114 * Removed dependencies on sqlite since it is now embedded into platform (475)
115 * HTTPParser dropping requests when TCP connection contained 304 responses (481)
116 * Updated PionLockedQueue so that it now always keeps track of the size (469)
117
118
119 Version 1.1.4 (2009-02-16)
120 ==========================
121 * Build updated to Boost 1.36 & 1.37 (314, 270)
122 * Updates to support and use the latest Boost.Lockfree library (408, 409)
123 * Unit test cleanup and refactoring (416)
124
125
126 Version 1.0.10 (2009-01-22)
127 ===========================
128 * Added support and unit tests for maximum HTTP payload content sizes (399)
129 * Updated HTTPParser to recover from missing packets and other errors (407)
130 * TCPServer can now bind to privileged ports when running as setuid (522)
131 * Fixed occasional crashes in pion-net unit tests on multi-core systems (528)
132
133
134 Version 1.0.8 (2008-12-17)
135 ==========================
136 * Various improvements to how docs are built/cleaned (379)
137
138
139 Version 1.0.6 (2008-11-20)
140 ==========================
141 * Pruning orphaned connections (346)
142 * Fixing auto generated INSTALL file (347)
143 * Autoconf fixes (347)
144
145
146 Version 1.0.4 (2008-10-16)
147 ==========================
148 * Cookie collection now case sensitive (500)
149 * Added unit test and fixed bug when parsing query strings with "&&" (333)
150 * Added HEADER_X_FORWARDED_FOR to HTTPTypes (318)
151 * Added TCPConnection::connect() function that performs dns lookups (318)
152
153
154 Version 1.0.0 (2008-09-12)
155 ==========================
156
157 * QueryService added, then removed, and placed into pion::platform
158 * Update clear() function to clear all members()
159 * Added test to see if base64 routines handle binary data in strings properly
160
161
162 Version 0.6.0 (2008-08-29)
163 ==========================
164
165 * Fixed bug with the --disable-logging configure option breaking build (254)
166 * Updated HTTPParser::parseCookieHeader() to be usable for char[] as well
167 * Only HTML documentation is now build with Doxygen when using "make docs"
168
169
170 Version 0.5.8 (2008-07-18)
171 ==========================
172
173 * Simplified HTTPParser class and eliminated some redundant code (240)
174 * HTTPTypes::url_encoded() was not properly encoding space characters (239)
175 * HTTPParser was not extracting POST query when charset is specified (243)
176 * Unable to compile HTTPAuth code with log4cplus support (249)
177 * TCPStream unit tests were occasionally failing (206)
178 * Added --with-boost-extension option to Unix configure script (217)
179 * Misc updates to get things building on gcc 4.2 and gcc 4.3 (241)
180
181
182 Version 0.5.6 (2008-05-02)
183 ==========================
184
185 * Added support for user authentication using cookies and HTTP Basic-Auth
186 * Added support to HTTPServer to redirect/rewrite HTTP requests internally
187 * Updated HTTPRequest to track the original resource requested when redirected
188 * Refactored PionScheduler so that two scheduling policies are now provided
189 * Added PionLockedQueue and PionLockFreeQueue based on Michael & Scott's work
190 * Added "make docs" Unix build option that uses Doxygen to build all the docs
191 * Unix build scripts now support dynamic versions of the Boost.UnitTest libs
192 * Boost 1.35.0 or later is now REQUIRED (it includes ASIO); see README.boost
193
194
195 Version 0.5.4 (2008-03-07)
196 ==========================
197
198 * HTTPMessage header names now use case-insensitive comparisons (#79)
199 * Fixed parsing errors when chunked content included extra whitespace (#73)
200 * Fixed HTTP parsing errors when there was no "Content-Length" header (#78)
201 * Fixed a bug that caused HTTPServer to not find resources correctly (#85)
202 * HTTPServer now lets you bind any function object to resources (#69)
203 * Moved plugins functionality from HTTPServer into a new WebServer class (#69)
204 * PionScheduler is no longer a singleton; now is a member of TCPServer (#86)
205 * PionScheduler can now be extended to provide alternative algorithms (#86)
206 * Added TCPStream: a std::basic_iostream wrapper around TCPConnection
207 * Added getRemotePort() and getRemoteEndpoint() members to TCPConnection
208 * Web service plugins are now functions objects; no more handleRequest()
209 * Moved web service plugins into the pion::plugins namespace
210
211
212 Version 0.5.2 (2007-12-17)
213 ==========================
214
215 * Added support for parsing chunked HTTP requests and responses (#37)
216 * Refactored PluginManager out of HTTPServer service management code (#62)
217
218
219 Version 0.4.2 (2007-12-14)
220 ==========================
221
222 * OpenSSL functionality is now enabled for MSVC
223 * PionCounter is now a thread-safe 64-bit integer counter
224 * PionScheduler now uses boost::detail::atomic_count instead of PionCounter
225 * Added unit tests and fixed some bugs related to sending chunked responses
226 * Boost 1.34.1 and ASIO 0.3.9 are now REQUIRED; see README.boost
227
228
229 Version 0.4.0 (2007-11-08)
230 ==========================
231
232 * Added support to send HTTP requests and parse responses; lots of refactoring
233 * Added unit tests! Integrated into MSVC, or use "make check" for Unixes
234 * The log4cxx library can now be used to build with MSVC (see README.msvc)
235 * PionNetEngine singleton was removed; servers are now used independently
236 * Added "writable" FileService option that lets you add, change & delete files
237 * Servers can now be bound to any endpoints that are supported by ASIO
238 * Added new PionCounter and PionScheduler classes to the Common Library
239 * The WebService::handleRequest() function now returns void instead of bool
240 * Renamed PionServerTest to PionHelloServer & PionServiceTest to PionWebServer
241 * Improved performance and flexibility of Boost library detection in autoconf
242 * Logging via std::ostream is now the default (see --disable-logging)
243 * Logging via std::ostream now uses a globally-shared priority level
244 * MSVC projects were failing to build if there were spaces in the path
245 * Fixed various crashes that mainly occurred during shutdown in Windows
246 * Boost 1.34.1 and ASIO 0.3.8 are now REQUIRED; see README.boost
247
248
249 Version 0.3.4 (2007-10-12)
250 ==========================
251
252 * Renamed "libpion" to "Pion Network Library" (or "pion-net" for short)
253 * Rearranged directories & files to separate out the "Pion Common Library"
254 * Added support to HTTPResponse for sending chunked responses
255 * Added new options to FileService: max_cache_size and max_chunk_size
256 * Updated log4cxx support so that it works with both 0.9.7 and 0.10.x
257
258
259 Version 0.3.2 (2007-09-14)
260 ==========================
261
262 * Added support for MSVC compiler (see builds/VC/libpion.vcproj file)
263 * Added support for HTTP/1.1 pipelining (multiple requests in single packet)
264 * Added support for linking static HTTP module libraries into programs
265 * Added accessor functions for client IP address in HTTPRequest/TCPConnection
266 * Moved more I/O logic into TCPConnection to cleanup SSL checks
267 * Changed start() to startup() and stop() to shutdown() in PionEngine
268
269
270 Version 0.2.4 (2007-09-05)
271 ==========================
272
273 * Fixed a bug in HTTPServer that caused it to not find some modules correctly
274 * Removed writeNoCopy(const T& data) function since only strings make sense
275 * Updated cookie parser to ignore garbage after quoted values
276 * Updated build scripts so that they find Boost libs build with GCC 4.1
277 * Updated cygwin patches for Boost 1.34.1
278
279
280 Version 0.2.2 (2007-06-26)
281 ==========================
282
283 * Accept errors caused servers to stop listening for new connections
284
285
286 Version 0.2.0 (2007-06-19)
287 ==========================
288
289 * Boost 1.34.0 and ASIO 0.3.8 are now REQUIRED; see README.boost
290 * Lots of platform testing and better platform-specific documentation
291 * Added support to FileModule for the "cache" and "scan" options
292 * Added Last-Modified HTTP header to FileModule and support for client cache
293 * Changed HTTPServer error handlers to use functions rather than modules
294 * Re-worked PionPlugin library so that it handles reference counting internally
295 * Added start() and stop() virtual functions to HTTPModule
296 * Added beforeStarting() and afterStopping() virtual functions to TCPServer
297 * Added PionHashMap.hpp for setting-up unordered map types
298 * Added work-around for bug that causes Windows to crash @ shutdown
299
300
301 Version 0.1.6 (2007-06-01)
302 ==========================
303
304 * Added support for HTTP module configuration files (see testmodules.conf)
305 * Added support for parsing & setting cookies (Version 1, RFC 2109)
306 * Added a CookieModule that displays and lets you add/delete cookies
307 * Added LogModule that displays events when an external log library is used
308 * Added support to FileModule for cygwin paths and "file" option
309 * Added support for SSL/TLS using OpenSSL (must use --with-openssl)
310 * Plug-ins now use pion_create_PLUGINNAME and pion_destroy_PLUGINNAME
311 * Fixed bugs related to the parsing of request (POST) content
312
313
314 Version 0.1.4 (2007-05-25)
315 ==========================
316
317 * Fixed miscellaneous bugs with the HTTPResponse class
318 * Added support for parsing POST content, and GET and POST query parameters
319 * Added support for passing configuration options to HTTP modules
320 * Added EchoModule and FileModule, and stubs for LogModule
321 * Added support for HTTP modules to be dynamically-loadable libraries
322 * Added support for pkg-config (http://pkg-config.freedesktop.org/wiki/)
323 * Moved around some of the source directories & renamed test programs
324 * Added build support & documentation for FreeBSD, Solaris and Windows
325 * Added Xcode project file for Mac OS X (you must still use "configure")
326
327
328 Version 0.1.2 (2007-05-01)
329 ==========================
330
331 * Added support for log4cplus, log4cpp and std::ostream logging
332 * Added more detailed build information for Linux and Mac OS X
333
334
335 Version 0.1.0 (2007-04-30)
336 ==========================
337
338 * First alpha release with very basic functionality
Something went wrong with that request. Please try again.