Fost 4 release 4.15.06.44953 now out
Created 2015-06-25T04:45:35.500Z, last edited 2015-07-04T04:18:46.437Z
This is the first release for C++14. It includes a preview of a first version of the Fost 5 threading library, but fost-windows has been removed due to continued in-accessibility to a compiler and test platform. Old versions of Boost should probably be rebuilt so that they will be built with C++14.
All of the changes for this switch are going to take a bit of time to settle down. So far we are using C++14 for Android and Linux projects based on this release, but the packaging of it is probably still a bit off in some of the -dev projects.
We've also restricted the Boost versions that we're supporting to 1.55 through 1.58. And Android library is currently using 1.56.
Building on Linux
git clone --branch=4.15.06.44953 --recursive [email protected]:KayEss/fost-hello.git cd fost-hello Boost/build 58 0 Boost/install 58 0 hello/compile dist/bin/hello-world-d
Download locations
Applications
- beanbag — Stand alone transactional JSON database server — [email protected]:KayEss/beanbag.git
- beanbag-seed — Seed project for giving you a starting point to develop web applications using Beanbag — [email protected]:KayEss/beanbag-seed.git
- fost-hello — Sample seed project — [email protected]:KayEss/fost-hello.git
- mengmon — Stand alone web server — [email protected]:KayEss/mengmom.git
Libraries
- f5-threading — Preview of the first Fost 5 library which includes help for threading.
- fost-aws — Amazon AWS and OpenStack — [email protected]:KayEss/fost-aws.git
- fost-android — Eclipse project for Android that allows Fost 4 and Beanbags to be used on mobile devices — [email protected]:KayEss/fost-android.git
- fost-android-ndk — The native code for Android. Includes required parts of Boost configured to use the standard Android build system.
- fost-beanbag — Transactional JSON database — [email protected]:KayEss/fost-beanbag.git
- fost-base — Build system and core libraries — [email protected]:KayEss/fost-base.git
- fost-internet — Internet protocols, servers & clients — [email protected]:KayEss/fost-internet.git
- fost-meta — All libraries in one wrapper — [email protected]:KayEss/fost-meta.git
- fost-orm — Object/Relational mapping — [email protected]:KayEss/fost-orm.git
- fost-postgres — PostgreSQL — [email protected]:KayEss/fost-postgres.git
- fost-py — Python (2.x) bindings — [email protected]:KayEss/fost-py.git
- fost-web — Web server libraries — [email protected]:KayEss/fost-web.git
Detailed change log
fost-aws
- Remove explicit types to get rid of auto_ptr uses.
fost-base
- Use
std::rethrow_exceptionto move an exception between threads. - Added variadic versions of
fostlib::push_backandfostlib::insert. - Add coercions for ascii_string and utf8_string to json.
- We need libatomic if we're using gcc++ (or clang) for many programs so just have it included.
- Pretty up some common log patterns when using colour output.
- Added colour options to the
stdoutlogger. - Remove the
FOST_HAS_MOVEdefine because with C++14 we don't need it. - Test file names can now end in
.tests.cppas well as-tests.cpp. - Removed internal uses of
boost::scoped_ptr. - Add SHA256 to the crypto wrappers.
- Replace all uses of
boost::filesystem::wpathwithpath. - When building an executable make sure that we pull in at least everything for fost-core.
- Fix a build error with Boost 1.58.0.
- Switch to C++14.
- Improve the exception information where a
jcursor::insertfails due to existing data at the requested key.
fost-internet
- Remove all uses of auto_ptr. Replace some with move semantics, others with unique_ptr.
- Fixed up the tests to use the new service API on the network connections.
- Changed the way that Boost ASIO IO services are used so that server accept sockets can be serviced totally independantly. This is an ugly workaround for the problem, but does at least cause all requests to be properly serviced.
- Allow apostrophes in the
fostlib::url::filepath_stringstrings.
fost-orm
- Add a pre-commit mechanism to the
jsondb::local. - Make the JSON DB local transaction movable.
- Add a
datamember to the local JSON transaction so all of the data can be fetched. - Add JSON database post-commit hooks to augement the transactions ones we already had.
- Fix a build error with Boost 1.58.0.
- Switch to C++14 and remove
auto_ptrs.
fost-py
- Strip out auto_ptr.
- Add a new test so we can check the version of Python we're using.
- Alter the fpython tests so they don't rebuild the host for each one.
- Updated to C++14.
© 2002-2026 Kirit & Tai Sælensminde. All forum posts are copyright their respective authors.
Licensed under a Creative Commons License. Non-commercial use is fine so long as you provide attribution.

