Fost 5 release now out

Created 24th June, 2018 03:08 (UTC), last edited 24th June, 2018 10:35 (UTC)

This is the last release that will use Boost build (bjam). We're joining the cmake bandwagon instead. This is more of a sideways step than a forwards one, but hopefully might make some things easier in the long run, although in the short term there are likely poor choices in how to structure the builds.

We are deleting the old boost build files (Jamroots and Jamfiles) from everywhere and tidying up a few other small things at the same time.

With cmake it should become simpler to compile using odd compilers (especially cross compiling) and its ability to generate Visual Studio and XCode project files should make it simpler to work on those platforms, not to mention all of the IDEs that use cmake natively.

Some early advantages are that project layouts are now much more flexible because the cmake link directives don't need paths to targets and also that openssl can be easily replaced by boringssl.

As part of this work we're now dropping fost-orm and fost-py. The only library from fost-orm carried forwards is fost-jsondb which is now part of fost-beanbag. There are no new Python bindings.

Also, due to changes in OpenSSL the oldest version of Boost that will be supported by the cmake based builds will be 1.62.0.

Building on Linux & Mac

git clone --branch= --recursive
cd fost-hello

On the Mac you will need to set DYLD_LIBRARY_PATH before running hello-world-d

export DYLD_LIBRARY_PATH=dist/lib

Download locations


  • beanbag — Stand alone transactional JSON database server —
  • beanbag-seed — Seed project for giving you a starting point to develop web applications using Beanbag —
  • fost-hello — Sample seed project —
  • mengmon — Stand alone web server —
  • wright — Experimental build system —


  • f5-cord — First version of a new string library with compile time string and Unicode support —
  • f5-threading — Preview of the first Fost 5 library which includes help for threading —
  • fost-aws — Amazon AWS and OpenStack —
  • fost-android — Eclipse project for Android that allows Fost 4 and Beanbags to be used on mobile devices —
  • 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 —
  • fost-base — Build system and core libraries —
  • fost-internet — Internet protocols, servers & clients —
  • fost-meta — All libraries in one wrapper —
  • fost-orm — Object/Relational mapping —
  • fost-postgres — PostgreSQL —
  • fost-py — Python (2.x) bindings —
  • fost-web — Web server libraries —
  • fost-wright — Experiment in a build system —

Detailed change log


  • Add a memory method to the u8view so that the underlying memory buffer can be accessed.


  • Add support for password configuration on the connection strings.
  • Allow database connection string settings to come from the environment.


  • Add coercions for jcursor index value types.
  • Add some basic base16 support.
  • Add various base32 encoding flavours (base32, base32hex and base32c)
  • Add a fork of Crypto++'s fork of tweetnacl to generate ed25519 signing key pairs.


  • Add fost-hod for handling packet oriented data over TCP.


  • Add a pathname view and a file serving view.