]> git.proxmox.com Git - ceph.git/blame - ceph/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb/RELEASE_NOTES.md
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / third_party / prometheus-cpp / 3rdparty / civetweb / RELEASE_NOTES.md
CommitLineData
1e59de90
TL
1Release Notes v1.15
2===
3### Objectives: *bug fixes, remove legacy interfaces*
4
5Changes
6-------
7
8- New configuration for URL decoding
9- Sanitize filenames in handle form
10- Example "embedded_c.c": Do not overwrite files (possible security issue)
11- Remove obsolete examples
12- Remove "experimental" label for some features
13- Remove MG_LEGACY_INTERFACE that have been declared obsolete in 2017 or earlier
14- Modifications to build scripts, required due to changes in the test environment
15- Unix domain socket support fixed
16- Fixes for NO_SSL_DL
17- Fixes for some warnings / static code analysis
18- Update version number
19
20
21Release Notes v1.14
22===
23### Objectives: *mbedTLS, Lua API enhancements, log filtering*
24
25Changes
26-------
27
28- Change SSL default setting to use TLS 1.2 as minimum (set config if you need an earlier version)
29- Add local_uri_raw field (not sanitized URI) to request_info
30- Additional API functions and a callback after closing connections
31- Allow mbedTLS as OpenSSL alternative (basic functionality)
32- Add OpenSSL 3.0 support (OpenSSL 3.0 Alpha 13)
33- Support UNIX/Linux domain sockets
34- Fuzz tests and ossfuzz integration
35- Compression for websockets
36- Restructure some source files
37- Improve documentation
38- Fix HTTP range requests
39- Add some functions for Lua scripts/LSP
40- Build system specific fixes (CMake, MinGW)
41- Update 3rd party components (Lua, lfs, sqlite)
42- Allow Lua background script to use timers, format and filter logs
43- Remove WinCE code
44- Update version number
45
46
47Release Notes v1.13
48===
49### Objectives: *Various updates and fixes, additional API functions*
50
51Changes
52-------
53
54- Add arguments for CGI interpreters
55- Support multiple CGi interpreters
56- Buffering HTTP response headers, including API functions mg_response_header_* in C and Lua
57- Additional C API functions
58- Fix some memory leaks
59- Extended use of atomic operations (e.g., for server stats)
60- Add fuzz tests
61- Set OpenSSL 1.1 API as default (from 1.0)
62- Add Lua 5.4 support and deprecate Lua 5.1
63- Provide additional Lua API functions
64- Fix Lua websocket memory leak when closing the server
65- Remove obsolete "file in memory" implementation
66- Improvements and fixes in documentation
67- Fixes from static source code analysis
68- Additional unit tests
69- Various small bug fixes
70- Experimental support for some HTTP2 features (not ready for production)
71- Experimental support for websocket compression
72- Remove legacy interfaces declared obsolete since more than 3 years
73- Update version number
74
75
76Release Notes v1.12
77===
78### Objectives: *Multiple improvements and extensions in various areas, including compatibility, Lua scripting, documentation*
79
80Changes
81-------
82
83- Updates/improvements for LuaXML
84- Updates and tests for JSON for Lua
85- BoringSSL support
86- Add Remark: Do not use Git for Windows V2.24 (but <= V2.23 or >= V2.25)
87- Format configuration dialogs for Windows
88- Add option "hide_tray" to start without Windows systray icon
89- URI checking according to "remove_dot_segments" algorithm from RFC
90- Experimental support for a new server and client start API
91- Additional callbacks to initialize external SSL context
92- More cache control options for static files
93- Trace function for Lua server pages
94- Access to client certificate data for Lua pages
95- Allow to configure SOMAXCONN (max. number of waiting connections)
96- Include some build options for Zephyr
97- Support for flawed CGI interpreters returning only <LF> instead of <CR><LF>
98- Add NO_FILESYSTEM flag for (embedded) system without any file system
99- Several fixes for server side Lua scripts
100- Disable SSL renegotiation for new OpenSSL version
101- Allow to force TLSv1.3 (disable TLSv1.2)
102- Prefer pre-compressed *.gz file, if it already exists
103- Fix some #include statements for various compilers / OS / SDK versions
104- Support for Linux Standard Base (LSB)
105- Fixes to mg_get_*_info() API functions
106- Fix some bugs/deficiencies in examples and tests
107- Fix some static source code analysis warnings
108- Add Conan package build
109- Fix include for Lua pages in "Kepler Syntax"
110- Replace some uses of deprecated Linux and OpenSSL API functions
111- Improved documentation and examples
112- Fixes for timeout handling
113- Fixes for the request queue (rare loss of requests)
114- Client side SNI
115- Update version number
116
117
118Release Notes v1.11
119===
120### Objectives: *Support multiple domains and certificates, support websocket ping-pong, on-the-fly compression, additional API functions*
121
122Changes
123-------
124
125- Add API function to send file body for C and Lua
126- Fix several warnings from different compilers and static code analyzers
127- Drop Symbian support from the code
128- Improve examples
129- Timeout for CGI scripts
130- Fix for requests using IPv6 addresses as hostname
131- Shared data for Lua scripts and Lua server pages
132- Add API function for 30x redirect
133- Script for Linux bash auto-completion
134- Add HTTP JSON C callback example
135- Add helper function for HTTP 200 OK response
136- Allow Kepler Syntax for Lua Server pages
137- Update duktape to 2.2.0 and Lua to 5.3.4
138- Optional support for on-the-fly compression (if zlib is available and USE_ZLIB is set)
139- Add method to replace mg\_cry and log\_access by own implementation
140- Fixes for IPv6 support
141- Add server support for websocket ping pong protocol
142- Fix misspellings in source code and documentation
143- Add error msg to http_error callback
144- Move unit test to a new directory
145- Remove remote\_ip request\_info member (it has been legacy since several versions)
146- Use gmtime_r instead of gmtime, if available
147- Add some functions to C++ wrapper
148- Support multiple domains with different certificate files (TLS server name identification, SNI)
149- Provide client peer certificate (X509) in mg\_client\_cert structure
150- Add new callback (get\_external\_ssl\_ctx) to provide pre-initialized TLS context
151- Improve unit tests
152- Fix ssl init for HTTPS clients
153- Update version number
154
155
156Release Notes v1.10
157===
158### Objectives: *OpenSSL 1.1 support, add server statistics and diagnostic data*
159
160Changes
161-------
162
163- Add missing `mg_` or `MG_` to symbols in civetweb.h. Symbols without will be removed a future version.
164- Add HTTPS server configuration example
165- Lua Pages: mg.include should support absolute, relative and virtual path types
166- Add API function for HTTP digest authentication
167- Improved interface documentation
168- Support parameters for Lua background scripts
169- Use new connection queue implementation (previously ALTERNATIVE\_QUEUE) as default
170- Add USE\_SERVER\_STATS define, so the server collects statistics data
171- Convert system\_info text output and all other diagnostic strings to JSON format
172- Add experimental function to query the connection status (may be dropped again)
173- Add document on proposed future interface changes (for comments)
174- Officially drop Symbian support
175- Ignore leading blank lines in multipart messages (for Android upload service)
176- Rewrite some functions, in particular request parsing
177- CORS preflight directly in the server, with additional config options
178- Solve some warnings from different static source code analysis tools
179- Collect server status data
180- Allow hostname in listening\_ports
181- Make maximum request size configurable
182- Allow multiple Sec-Websocket-Protocol
183- Add configuration option to send additional headers
184- Add configuration option for Strict-Transport-Security
185- Mark "file in memory" feature is a candidate for deletion
186- Improve examples
187- Fix timeout error when sending larger files
188- Add mg\_send\_chunk interface function
189- Allow to separate server private key and certificate chain in two different files
190- Support for multipart requests without quotes (for some C# clients)
191- Initialize SSL in mg\_init\_library, so https client functions can be used when no server is running
192- Allow "REPORT" HTTP method for REST calls to scripts
193- Allow to compile civetweb.c with a C++ compiler
194- Lua: Remove internal length limits of encode/decode functions
195- Allow sub-resources of index script files
196- Add config parameter allow\_index\_script\_resource the aforementioned feature
197- Remove deprecated "uri" member of the request from the interface
198- Improve documentation
199- Make auth domain check optional (configuration)
200- Update unit test framework to check 0.11.0 (C89/C90 compilers still need a patched version)
201- Limit depth of mg.include for Lua server pages
202- Additional unit tests
203- OpenSSL 1.1 support
204- Update version number
205
206
207Release Notes v1.9.1
208===
209### Objectives: *Bug fix*
210
211Changes
212-------
213
214- Add "open website" button for pre-built Windows binaries
215- Fix for connections closed prematurely
216- Update to a new check unit test framework and remove patches required for previous version
217- Update version number
218
219
220Release Notes v1.9
221===
222### Objectives: *Read SSI client certificate information, improve windows usability, use non-blocking sockets, bug fixes*
223
224Changes
225-------
226
227- Add library init/exit functions (call is now optional, but will be required in V1.10)
228- Windows: Show system information from the tray icon
229- Windows: Bring overlaid windows to top from the tray icon
230- Add Lua background script, running independent from server state
231- Move obsolete examples into separated directory
232- Change name of CMake generated C++ library to civetweb-cpp
233- Add option to set linger timeout
234- Update Duktape and Lua (third-party code)
235- Add continuous integration tests
236- Add API documentation
237- Limit recursions in .htpasswd files
238- Fix SCRIPT_NAME for CGI directory index files (index.php)
239- Use non-blocking sockets
240- stdint.h is now required and no longer optional
241- Rewrite connection close handling
242- Rewrite mg_fopen/mg_stat
243- Enhanced tray icon menu for Windows
244- Add subprotocol management for websocket connections
245- Partially rewrite timeout handling
246- Add option keep_alive_timeout_ms
247- Improve support for absolute URIs
248- Allow some additional compiler checks (higher warning level)
249- Add option for case sensitive file names for Windows
250- Short notation for listening_ports option when using IPv4 and IPv6 ports
251- Make usage of Linux sendfile configurable
252- Optimize build matrix for Travis CI
253- Retry failing TLS/HTTPS read/write operations
254- Read client certificate information
255- Do not tolerate URIs with invalid characters
256- Fix mg_get_cookie to ignore substrings
257- Fix memory leak in form handling
258- Fix bug in timer logic (for Lua Websockets)
259- Updated version number
260
261
262Release Notes v1.8
263===
264### Objectives: *CMake integration and continuous integration tests, Support client certificates, bug fixes*
265
266Changes
267-------
268
269- Replace mg_upload by mg_handle_form_request
270- CGI-scripts must receive EOF if all POST data is read
271- Add API function to handle all kinds of HTML form data
272- Do not allow short file names in Windows
273- Callback when a new thread is initialized
274- Support for short lived certificates
275- Add NO_CACHING compile option
276- Update Visual Studio project files to VS2015; rename directory VS2012 to VS
277- Sec-Wesocket-Protocol must only return one protocol
278- Mark some examples and tests as obsolete
279- Remove no longer maintained test utils
280- Add some default MIME types and the mg_send_mime_file API function.
281- Client API using SSL certificates
282- Send "Cache-Control" headers
283- Add alternative to mg_upload
284- Additional configuration options
285- Fix memory leaks
286- Add API function to check available features
287- Add new interface to get listening ports
288- Add websocket client interface and encode websocket data with a simple random number
289- Support SSL client certificates
290- Add configuration options for SSL client certificates
291- Stand-alone server: Add command line option -I to display information about the system
292- Redirect stderr of CGI process to error log
293- Support absolute URI; split uri in mg_request_info to request_uri and local_uri
294- Some source code refactoring, to improve maintainability
295- Use recursive mutex for Linux
296- Allow CGI environment to grow dynamically
297- Support build for Lua 5.1 (including LuaJIT), Lua 5.2 and Lua 5.3
298- Improve examples and documentation
299- Build option CIVETWEB_SERVE_NO_FILES to disable serving static files
300- Add Server side JavaScript support (Duktape library)
301- Created a "civetweb" organization at GitHub.
302- Repository moved from https://github.com/bel2125/civetweb to https://github.com/civetweb/civetweb
303- Improved continuous integration
304- CMake support, continuous integration with Travis CI and Appveyor
305- Adapt/port unit tests to CMake/Travis/Appveyor
306- Bug fixes, including issues from static code analysis
307- Add status badges to the GitHub project main page
308- Updated version number
309
310
311Release Notes v1.7
312===
313### Objectives: *Examples, documentation, additional API functions, some functions rewritten, bug fixes and updates*
314
315Changes
316-------
317
318- Format source with clang_format
319- Use function 'sendfile' for Linux
320- Fix for CRAMFS in Linux
321- Fix for file modification times in Windows
322- Use SO_EXCLUSIVEADDRUSE instead of SO_REUSEADDR for Windows
323- Rewrite push/pull functions
324- Allow to use Lua as shared objects (WITH_LUA_SHARED)
325- Fixes for many warnings
326- URI specific callbacks and different timeouts for websockets
327- Add chunked transfer support
328- Update LuaFileSystem
329- Update Lua to 5.2.4
330- Fix build for MinGW-x64, TDM-GCC and clang
331- Update SQLite to 3.8.10.2
332- Fix CGI variables SCRIPT_NAME and PATH_TRANSLATED
333- Set TCP_USER_TIMEOUT to deal faster with broken connections
334- Add a Lua form handling example
335- Return more differentiated HTTP error codes
336- Add log_access callback
337- Rewrite and comment request handling function
338- Specify in detail and document return values of callback functions
339- Set names for all threads (unless NO_THREAD_NAME is defined)
340- New API functions for TCP/HTTP clients
341- Fix upload of huge files
342- Allow multiple SSL instances within one application
343- Improve API and user documentation
344- Allow to choose between static and dynamic Lua library
345- Improve unit test
346- Use temporary file name for partially uploaded files
347- Additional API functions exported to C++
348- Add a websocket client example
349- Add a websocket client API
350- Update websocket example
351- Make content length available in request_info
352- New API functions: access context, callback for create/delete, access user data
353- Upgraded Lua from 5.2.2 to 5.2.3 and finally 5.2.4
354- Integrate LuaXML (for testing purposes)
355- Fix compiler warnings
356- Updated version number
357
358
359Release Notes v1.6
360===
361### Objectives: *Enhance Lua support, configuration dialog for windows, new examples, bug fixes and updates*
362
363Changes
364-------
365
366- Add examples of Lua pages, scripts and websockets to the test directory (bel)
367- Add dialog to change htpasswd files for the Windows standalone server (bel)
368- Fix compiler warnings and warnings from static code analysis (Danny Al-Gaaf, jmc-, Thomas, bel, ...)
369- Add new unit tests (bel)
370- Support includes in htpasswd files (bel)
371- Add a basic option check for the standalone executable (bel)
372- Support user defined error pages (bel)
373- Method to get POST request parameters via C++ interface (bel)
374- Re-Add unit tests for Linux and Windows (jmc-, bel)
375- Allow to specify title and tray icon for the Windows standalone server (bel)
376- Fix minor memory leaks (bel)
377- Redirect all memory allocation/deallocation through mg functions which may be overwritten (bel)
378- Support Cross-Origin Resource Sharing (CORS) for static files and scripts (bel)
379- Win32: Replace dll.def file by export macros in civetweb.h (CSTAJ)
380- Base64 encode and decode functions for Lua (bel)
381- Support pre-loaded files for the Lua environment (bel)
382- Server should check the nonce for http digest access authentication (bel)
383- Hide read-only flag in file dialogs opened by the Edit Settings dialog for the Windows executable (bel)
384- Add all functions to dll.def, that are in the header (bel)
385- Added Lua extensions: send_file, get_var, get_mime_type, get_cookie, url_decode, url_encode (bel)
386- mg_set_request_handler() mod to use pattern (bel, Patch from Toni Wilk)
387- Solved, tested and documented SSL support for Windows (bel)
388- Fixed: select for Linux needs the nfds parameter set correctly (bel)
389- Add methods for returning the ports civetweb is listening on (keithel)
390- Fixes for Lua Server Pages, as described within the google groups thread. (bel)
391- Added support for plain Lua Scripts, and an example script. (bel)
392- A completely new, and more illustrative websocket example for C. (bel)
393- Websocket for Lua (bel)
394- An optional websocket_root directory, including URL rewriting (bel)
395- Update of SQLite3 to 3.8.1. (bel)
396- Add "date" header field to replies, according to the requirements of RFC 2616 (the HTTP standard), Section 14.18 (bel)
397- Fix websocket long pull (celeron55)
398- Updated API documentation (Alex Kozlov)
399- Fixed Posix locking functions for Windows (bel2125)
400- Updated version number
401
402
403Release Notes v1.5
404===
405### Objectives: *Bug fixes and updates, repository restoration*
406
407Changes
408-------
409
410- Corrected bad mask flag/opcode passing to websocket callback (William Greathouse)
411- Moved CEVITWEB_VERSION define into civetweb.h
412- Added new simple zip deployment build for Windows.
413- Removed windows install package build.
414- Fixes page violation in mod_lua.inl (apkbox)
415- Use C style comments to enable compiling most of civetweb with -ansi. (F-Secure Corporation)
416- Allow directories with non ASCII characters in Windows in UTF-8 encoded (bel2125)
417- Added Lua File System support (bel2125)
418- Added mongoose history back in repository thanks to (Paul Sokolovsky)
419- Fixed keep alive (bel2125)
420- Updated of MIME types (bel2125)
421- Updated lsqlite (bel2125)
422- Fixed master thread priority (bel2125)
423- Fixed IPV6 defines under Windowe (grenclave)
424- Fixed potential dead lock in connection_close() (Morgan McGuire)
425- Added WebSocket example using asynchronous server messages (William Greathouse)
426- Fixed the getcwd() warning (William Greathouse)
427- Implemented the connection_close() callback (William Greathouse)
428- Fixed support URL's in civetweb.c (Daniel Oaks)
429- Allow port number to be zero to use a random free port (F-Secure Corporation)
430- Wait for threads to finish when stopping for a clean shutdown (F-Secure Corporation)
431- More static analysis fixes against Coverity tool (F-Secure Corporation)
432- Travis automated build testing support added (Daniel Oaks)
433- Updated version numbers.
434- Added contributor credits file.
435
436
437Release Notes v1.4
438===
439### Objectives: *New URI handler interface, feature enhancements, C++ extensions*
440The main idea behind this release is to bring about API consistency. All changes
441are backward compatible and have been kept to a minimum.
442
443Changes
444-------
445
446- Added mg_set_request_handler() which provides a URI mapping for callbacks.
447 This is a new alternative to overriding callbacks.begin_request.
448- Externalized mg_url_encode()
449- Externalized mg_strncasecmp() for utiliy
450- Added CivetServer::getParam methods
451- Added CivetServer::urlDecode methods
452- Added CivetServer::urlEncode methods
453- Dealt with compiler warnings and some static analysis hits.
454- Added mg_get_var2() to parse repeated query variables
455- Externalized logging function cry() as mg_cry()
456- Added CivetServer::getCookie method (Hariprasad Kamath)
457- Added CivetServer::getHeader method (Hariprasad Kamath)
458- Added new basic C embedding example
459- Conformed source files to UNIX line endings for consistency.
460- Unified the coding style to improve reability.
461
462
463Release Notes v1.3
464===
465### Objectives: *Buildroot Integration*
466
467Changes
468-------
469
470- Made option to put initial HTMLDIR in a different place
471- Validated build without SQLITE3 large file support
472- Updated documentation
473- Updated Buildroot config example
474
475
476Release Notes v1.2
477===
478### Objectives: *Installation Improvements, buildroot, cross compile support*
479The objective of this release is to make installation seamless.
480
481Changes
482-------
483
484- Create an installation guide
485- Created both 32 and 64 bit windows installations
486- Added install for windows distribution
487- Added 64 bit build profiles for VS 2012.
488- Created a buildroot patch
489- Updated makefile to better support buildroot
490- Made doc root and ports configurable during the make install.
491- Updated Linux Install
492- Updated OS X Package
493- Improved install scheme with welcome web page
494
495Known Issues
496-----
497
498- The prebuilt Window's version requires [Visual C++ Redistributable for Visual Studio 2012](http://www.microsoft.com/en-us/download/details.aspx?id=30679)
499
500
501Release Notes v1.1
502===
503### Objectives: *Build, Documentation, License Improvements*
504The objective of this release is to establish a maintable code base, ensure MIT license rights and improve usability and documentation.
505
506Changes
507-------
508
509- Reorangized build directories to make them more intuitive
510- Added new build rules for lib and slib with option to include C++ class
511- Upgraded Lua from 5.2.1 to 5.2.2
512- Added fallback configuration file path for Linux systems.
513 + Good for having a system wide default configuration /usr/local/etc/civetweb.conf
514- Added new C++ abstraction class CivetServer
515- Added thread safety for and fixed websocket defects (Morgan McGuire)
516- Created PKGBUILD to use Arch distribution (Daniel Oaks)
517- Created new documentation on Embeddeding, Building and yaSSL (see docs/).
518- Updated License file to include all licenses.
519- Replaced MD5 implementation due to questionable license.
520 + This requires new source file md5.inl
521- Changed UNIX/OSX build to conform to common practices.
522 + Supports build, install and clean rules.
523 + Supports cross compiling
524 + Features can be chosen in make options
525- Moved Cocoa/OSX build and packaging to a separate file.
526 + This actually a second build variant for OSX.
527 + Removed yaSSL from the OSX build, not needed.
528- Added new Visual Studio projects for Windows builds.
529 + Removed Windows support from Makefiles
530 + Provided additional, examples with Lua, and another with yaSSL.
531- Changed Zombie Reaping policy to not ignore SIGCHLD.
532 + The previous method caused trouble in applciations that spawn children.
533
534Known Issues
535-----
536
537- Build support for VS6 and some other has been deprecated.
538 + This does not impact embedded programs, just the stand-alone build.
539 + The old Makefile was renamed to Makefile.deprecated.
540 + This is partcially do to lack fo testing.
541 + Need to find out what is actually in demand.
542- Build changes may impact current users.
543 + As with any change of this type, changes may impact some users.
544
545
546Release Notes v1.0
547===
548
549### Objectives: *MIT License Preservation, Rebranding*
550The objective of this release is to establish a version of the Mongoose software distribution that still retains the MIT license.
551
552Changes
553-------
554
555- Renamed Mongoose to Civetweb in the code and documentation.
556- Replaced copyrighted images with new images
557- Created a new code repository at https://github.com/civetweb/civetweb
558- Created a distribution site at https://sourceforge.net/projects/civetweb/
559- Basic build testing