Fost 5 release now out

Created 31st March, 2019 03:51 (UTC), last edited 24th June, 2019 04:21 (UTC)

We've now finally started the process of porting the fostlib::string implementation to use f5::u8string. A short write up about the design can be found in the repository. There are going to be a lot of new deprecations in the next release and we'll then start to remove the deprecated code after that.

Building on Linux & Mac

You should install Boost development packages using your package manager or brew to safe you from having to build them.

git clone --branch= --recursive
cd fost-hello
mkdir build.tmp
cd build.tmp
cmake -G Ninja .. -DCMAKE_INSTALL_PREFIX=../dist
ninja install/strip
export LD_LIBRARY_PATH=../dist/lib

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 —
  • test-android — Android application that runs Fost unit tests —
  • wright — Experimental build system —


  • f5-cord — First version of a new string library with compile time string and Unicode support —
  • f5-json-schema — JSON Schema validation —
  • f5-threading — Preview of the first Fost 5 library which includes help for threading —
  • fost-aws — Amazon AWS and OpenStack —
  • 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-postgres — PostgreSQL —
  • fost-web — Web server libraries —
  • fost-wright — Experiment in a build system —

Detailed change log


  • Add ends_with on the u8view and u8string.


  • Add debug logging for the HTTP schema loader.


  • Split the CMake configuration into smaller parts.
  • Changes to string handling to support wider adoption of f5::u8string
  • Further changes needed for new f5-cord string implementation.


  • Add test.throw view to help with testing and control.exception.catch for running alternative views when exceptions are thrown.
  • Fix fost.proxy.transparent. Pass the correct path.
  • Add fost.control.status-condition view


  • Made implementation compatible with future changes to string APIs.


  • fostgres.sql supporting precondition
  • Fixed a bug in the HTTP tests not doing name look ups correctly.
  • Add debug logging of the database JSON schema loader.
  • Add view
  • Add fostgres-tests
  • POST support configuration as an array


  • Implement app logins for Facebook and Google.
  • Abandon unregister user when merge failed
  • Fix merge_record failed when user has app installation record
  • Trigger merge account when user token and login mismatch
  • Add merge identities
  • Remove usage of app token
  • Fix AuthN login schema
  • Add odin.middleware.reference view