- Windows binary made fully UNICODE aware. In previous versions,
the presence of non-ASCII chars in document root, CGI script name,
or directory name might have broken Mongoose as stand-alone
or as Windows service. Now Mongoose works with non-ASCII paths properly.
Internally, Mongoose uses UTF8 encoding. When making WinAPI calls,
mongoose converts UTF8 strings to wide chars and calls UNICODE API. - Enhanced authorization API by providing
mg_set_auth_handler()
and
mg_authorize_digest()
- Removed
mg_add_uri_handler()
, addedmg_set_request_handler()
.
There is only oneURI handler that handles all requests, just like in 4.x.
The reason for this change is to provide an ability to catch all URIs,
and at the same time signal Mongoose to continue handling specific URIs. - Added
mg_parse_multipart()
API for file uploads.
Note that the restriction on uploading huge files still exists,
and will be eliminated in the next release. - Allowing mongoose to bind to port 0, in which case it'll bind to any
random unused port. - Moved
idle_timeout_ms
run-time option to compile-time flag - Added asynchronous HTTP client, not documented yet. Documentation and
examples are coming in the next couple of weeks. Async Websocket client
is scheduled for the next release. See usage examples atunit_test.c
- Windows and MacOS pre-built binaries are now split to free and paid ones,
paid binaries include CGI, SSL, Lua, Sqlite, support and updates.
Linux pre-built binary includes all functionality and is free, and will
continue to be free. Source code for Windows and MacOS GUI is closed.
Disclaimer: source code for the command line stand-alone server,
as well as Mongoose library itself, will never be closed. - Multiple bug fixes and minor enhancements