CppCMS 0.999.0 - Release Candidate 1
The first release candidate of the next version of CppCMS is available - the API can be considered stable from this point and would not be changed in backward incompatible way.
New Features:
Templates engine improvements:
Added template helpers support functions
<% using ... %>and<% render ... %>that allow using other views directly from the code and not just templates as it was done before.Added new syntax
<% form block foo %>...<% end %>as better alternative to:
<% form begin foo %>...<% form end foo %>Improved error messages in templates compiler such that it gives more clear errors in case of syntax error.
Changed semantics of
application::renderfunction such that it would not override an application that was assigned to the contend (if it was assigned at all)
cppcms_scaleimprovements:- Support of session storage in addition to cache storage now providing full scalability of CppCMS services.
- Now it uses same configuration method as CppCMS process - JSON file with optional command line parameters.
cppcms_scalenow can run as Unix deamon and as Windows service.
URL Mapper does not throws by default, but rather create an invalid URL making initial programming easier.
The behavior can be reverted back by setting
misk.invalid_url_throwsoption to true.Added recursive
shared_mutexsupport to booster.Provided an experimental support of STLPort 5.2.
Vandalism on Project's Wiki
Update: the registration option had returned back.
Due to acts of vandalism on the project's wiki, registration of new users on the wiki was temporary disabled.
Every existing user have to re-login again to be able to work.
CppCMS 0.99.11 Released
New Features:
Fully refactored views loading and unloading code. The views interface now is documented, public and clear.
Documentation updates, now all public classes and functions have full Doxygen reference documentation.
Added multiple examples and created examples page in Doxygen reference documentation. New examples are:
- JSON RPC
- JSON RPC Chat
- File Upload Example
Internal File Server Improvements:
- Added support of simple URL rewriting
- Reduced memory copying in sending files
Added support of dynamic session storage backend loading as plugins, implemented several session storage backends under
contribsection:- Berkeley DB
- Sqlite3
- CppDB with MySql and PostgreSQL servers
Removed dependency on pthreads-win32 under Windows 2000 and XP.
Improved JSON-RPC handling - reduced copying of json objects.
Added support of custom timezone for logging closing #3432220, changed default time zone in the log file to local time rather then GMT.
Added JavaScript JSON-RPC Client implementation under
contribsectionPerformance improvements in TCP Cahce Server.
Bugs:
- Fixed use of deprecated functions in examples, closing #3404317
- Spelling improvements, closing #3206151, thanks Augustin for the contribution.
- Fixed TLS behavior such that TLS pointer destruction, still allows destruction of local objects
- Fixed issue #3441849, Typo in
cppcms::http::context::complition_type, now it iscppcms::http::context::completion_type, as correct spelling requires. - Fixed cosmetic issue #3460062
- Fix incorrect condition check in PCRE using
- Fixed bug #3386163, setting
REMOTE_ADDRbehind HTTP Proxy feature was not working. Lineup with Boost.Locale:
- fixed problems with build with clang
- fixed handing of invalid characters in
MultiByteToWideCharAPI on windows
CppDB 0.3.0 Released
New Features:
- Added session specific storage for custom data
- Added support of one time initialization
- Added version number API
- Added an option to clear the connections pool
- Added busy_timeout option to sqlite3 backend.
Changed library version format to Major.Minor.Patch
Majoris updated when the library breaks its ABI or API, should not happen often.Minoris updated when new features or new API is introduced, The library remains fully backward compatiblePatch- maintenance bug fix release, no changes in public API.
Bugs:
- Fixed bug #3451653 - disconnected connections are recycled to the pool
- Fixed issue #3439445 - build problem on some distributions
CppDB 0.0.4 Released
CppDB 0.0.4 Released
This release mostly includes multiple bug fixes and few new features:
Features:
- Added
empty()andclear()members forcppdb::statement - Added an option to provide default value when the value is NULL in
result::get()instead of throwing an exception. Thanks to Krzysztof Wrzalik.
Bugs:
- Switched to using ODBC as internal backend by default due to multiple issues with dynamic unloading of ODBC backend. Now if you want to use it dynamically you must sed the build option
-DODBC_BACKEND_INTERNAL=OFF - Build issue of PostgreSQL with MSVC compiler.
- Various fixes for FreeBSD, Solaris and Darwin
- Fixed bug #3317277: a exception is not thrown when connection to PostgreSQL server could not be established.
- Fixed bug #3439445: added search path to PostgreSQL headers for some Linux distributions.
The release is fully backward compatible (API and ABI) with previous release.

