Fost 4 release 4.12.09.44431 now out
Created 16th November, 2012 12:39 (UTC), last edited 16th November, 2012 13:09 (UTC)
This release was tagged a bit late, and this announcement is even later — sorry for that. Hopefully all of the good stuff in it makes up for that.
Linux & Mac |
---|
svn co http://svn.felspar.com/public/fost-hello/tags4.12.09.44431 fost-hello
cd fost-hello
Boost/build
hello/compile
dist/bin/hello-world-d On the Mac you will need to set DYLD_LIBRARY_PATH before running hello-world-d export DYLD_LIBRARY_PATH=dist/lib
dist/bin/hello-world-d |
Windows |
---|
svn co http://svn.felspar.com/public/fost-hello/tags/4.12.09.44431 fost-hello
cd fost-hello
Boost\build
hello\compile
dist\bin\hello-world-gd |
Download locations
Everything is available through our Subversion repository. Below are the locations for the tagged releases for Fost 4.12.09.44431 components.
Detailed change log
fost-base
- Removed a dead constructor that does nothing in
worker
. - No longer pass on log messages captured during tests. This stops expected errors from being displayed and confusing the test results.
- Added a basic parser for the RFC1123 formatted dates used in protocols like SMTP and HTTP. Only the format produced by the Fost libraries is currently supported.
- The parser lock is now recursive. This means that we can be more aggressive about using it without causing deadlocks. Also removed the parser wrapper that doesn't take a lock so all uses are explicitly forced to acquire the lock at the right time.
- Deliberately leak the thread counter so that it can't be destructed before threads that are terminating in a global destructor get run.
- Added instrumentation for the number of worker threads in use. Also added decrement to the counter implementation.
- Fixed a bug on Windows where the pre-increment would return the old value rather than the new one.
- Dynamic loading of a library now tries with platform specific prefixes and suffixes before trying the name provided.
- Implement JSON casts for json::array_t and json::object_t.
- Allow the use of constant workers (and in_proc) which makes certain thread wrappers more obvious to implement.
- Implement futures with void type for worker and in_proc. We can still wait on them.
- Added startswith and endswith members to the string class.
- Allow time stamps and time differences to be added and subtracted.
- Made time stamps comparable and also added in a new timediff implementation based on the Boost library version.
- Silenced a clang warning that turns up under some circumstances.
- Added configuration for the log level for the stdout global logger.
- Changed the logging DSL for logging JSON objects thanks to suggestions from jeroen Vermeulen.
fost-internet
- The URL parser (string constructor) now acquires the parser lock. This should help stop Boost Spirit failures.
- Changed some log output for the HTTP server to produce JSON objects rather than an array.
- Support the clang toolset in the compile script.
- Removed some dead code.
fost-orm
- Added
set
to the jsondb::local
transaction to update the value of the JSON irrespective of what is already there. - The JSON DBs backed to disk can be created with a
boost::filesystem::wpath
instance, not only from a fostlib::string
. - Changed the logic when a JSON DB is loaded so that it doesn't rely on exceptions.