We are very happy to announce that a new alpha version for ImpressCMS 2.0 has been released.
This version contains some major architectural changes, which we believe will make this ImpressCMS version easier to maintain and extend, and more in line with the current direction the PHP ecosystem is moving on.
Alpha releases are meant to give you a good idea of the current state of the ImpressCMS developments for version 2. They also serve as input for us for bug reports and feature requests to take into account during the next development cycles.
The major changes in this alpha version are situated in the way we handle libraries,
Composer is the de dependency tool in the PHP world. It is really great at managing the libraries and other parts that you need in the right versions to get your project up and running. If that sounds like something useful to have available when installing different modules and libraries in your CMS, we thought alike.
At the moment, our use of composer is limited to the automatic discovery of PHP classes and the inclusion of external libraries. That will be extended in the following releases towards 2.0 final, as the aim is to use composer also in the installation of the addons.
the protector module has been our companion since the beginning of ImpressCMS, and has proven a powerful, although sometimes overly protective, weapon in our never-ending battle to keep you as safe as possible. The reality is that the module has not been in development for quite some time now, and as such is no longer compatible with the PHP versions that are actively supported. ImpressCMS compatibility with PHP 7 required this.
Depending on the next evolutions during the ImpressCMS development, we might consider rewriting the protector module to make a version that is compatible with PHP7 and native ImpressCMS2, but that hasn't been decided yet.
As you can deduce from the paragraph above, we now have PHP7 support. You can now run your site on the latest PHP major version, with the support and speed bonuses that it entails. ImpressCMS should run without problems on PHP 7.1, there are still a few known issues with PHP 7.2, but those are under investigation.
We decided to adopt the dotenv system to store configuration variables. This system is widely used by a number of frameworks and applications, and makes it easy to define different configurations depending on the environment you're deploying your application in.