Most obvious change is the version bump has finally come through. There's also some new functionality in the crypto wrappers for better password hashes.
There's a couple of new libraries that we're going to be included sometime in the next few releases. We're also redesigning the Postgres handling which hopefully will lead to the removal of most, if not all, of the old O/RM code for a simpler and lighter wrapper around the core Postgres features.
There's also a big change in the pipeline for Android to support the switch from gcc to clang — watch this space.
Building on Linux
git clone --branch=5.16.03.44971 --recursive git@github.com: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 — git@github.com:KayEss/beanbag.git
- beanbag-seed — Seed project for giving you a starting point to develop web applications using Beanbag — git@github.com:KayEss/beanbag-seed.git
- fost-hello — Sample seed project — git@github.com:KayEss/fost-hello.git
- mengmon — Stand alone web server — git@github.com:KayEss/mengmom.git
Libraries
- f5-threading — Preview of the first Fost 5 library which includes help for threading.
- fost-aws — Amazon AWS and OpenStack — git@github.com:KayEss/fost-aws.git
- fost-android — Eclipse project for Android that allows Fost 4 and Beanbags to be used on mobile devices — git@github.com: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 — git@github.com:KayEss/fost-beanbag.git
- fost-base — Build system and core libraries — git@github.com:KayEss/fost-base.git
- fost-internet — Internet protocols, servers & clients — git@github.com:KayEss/fost-internet.git
- fost-meta — All libraries in one wrapper — git@github.com:KayEss/fost-meta.git
- fost-orm — Object/Relational mapping — git@github.com:KayEss/fost-orm.git
- fost-postgres — PostgreSQL — git@github.com:KayEss/fost-postgres.git
- fost-py — Python (2.x) bindings — git@github.com:KayEss/fost-py.git
- fost-web — Web server libraries — git@github.com:KayEss/fost-web.git
Detailed change log
fost-aws
- Removed use of deprecated Fost APIs.
fost-base
- New
fostlib::crypto_bytes
function returns an array of bytes from a cryptographically secure location. - Add new
fostlib::array_view
that allows for looking at memory areas. - Implement PKBKDF2 with HMAC and SHA256 that produces a fixed length (64 bytes) derived key and one that produces a derived key whose length can be chosen at run time.
- Added
fostlib::crypto_compare
which is intended to be as close as possible to constant time for comparison of memory blocks (byte arrays and strings). - Allow HMAC with
std::array<unsigned char, n>
secrets. - gcc doesn't really get [[deprecated]] so disable the warnings.
- Add a new
werror
build option which sets the -Werror
compile flag and turns warnings into errors. Fix remaining warnings in clang builds. - Deprecated the
fostlib::exceptions::exception::info
members. Added a coercion from fostlib::exceptions::exception
to fostlib::json
. Add a new forwarded exception type. Add #define FOST_NO_STD_EXCEPTION_PTR
to control use of std::exception_ptr
. - Fix a problem with the variadic
insert
where it expected a jcursor
rather than converted to one. - Add digest and HMAC overloads for
std::vector<unsigned char>
.
fost-beanbag
- Removed use of deprecated Fost APIs.
fost-internet
- Removed use of deprecated Fost APIs.
- Make sure the web server logs an error message when it catches an excepion.
fost-orm
- Improved an error message for file backed JSON databases.
- Removed use of deprecated Fost APIs.
fost-py
- Removed use of deprecated Fost APIs.
fost-web
- Allow multiple configuration files to be loaded by the web server and explicitly load up the logging options.
- Added Date, Expires to static response headers.
- Implemented 304 response.
- Removed use of deprecated Fost APIs.