Snap! Release 1.8

Today I created a new release, version 1.8. You can find it on github.

This includes a ton of bug fixes that 1.7 was plagued with. It also includes new code (thread pool/thread worker) and especially, a break up of several objects from the libsnapwebsites to their own contrib projects.

This includes:

  • snapdev (18 header only functions from the libsnapwebsites)
  • addgetopt (snap_config.cpp/.h)
  • cppthread (snap_thread.cpp/h)
  • snaplogger (log.cpp/h)
  • eventdispatcher (snap_communicator.cpp/h)
  • snapcatch2 (our own catch project compatible with our projects)
  • cassandra-cpp-driver-snap (our own project)
  • libuv1-snap (our own project)

There is one other new project coming, snaprfs, which will allow for copying data between computers without having to do anything other than a one time setup which can happen at installation time.

The broken up code is going to be particularly useful to develop other projects where I want to reuse those elements, especially the cppthread, eventdispatcher, and snaplogger. I think that those three are particularly useful libraries and tools.

For more details, see the info about the release on github.

Many more things are coming:

  • better handling of the data in Cassandra (with blobs; instead of accessing the data one cell at a time, we want to read one blob which in comparison should be close to instantaneous)
  • snaprfs to duplicate files between computer (See above)
  • ipload to prepare a firewall from configuration files which we can easily tweak between projects by adding new files in the "/etc/iplock/rules/rules.d/..." folder
  • attempt to remove all the remaining "list" and use "index" instead
  • switch to the new projects: cppthread, snaplogger, eventdispatcher

These are the main feature I'm targetting for 1.9.

I also will try working with ScyllaDB instead of Cassandra. I have a new server which will allow me to create a real cluster running at full speed to test whether that will help or not. I can test with RAM disks (I have 512Gb of RAM) so that way it can really be full speed and 100% simulate a cluster on Digital Ocean where we generally run our Snap! servers.

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Syndicate content

Snap! Websites
An Open Source CMS System in C++

Contact Us Directly