Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

 

SilverStripe 4.0.0-rc1 - the goal is what we RC-ing

This release candidate 1 marks the final steps of a long road to a stable SilverStripe 4.0.0 release. See what this means for your upcoming project and what modules have already been updated for SS4.

Read post

We’re excited to say that we’re in release candidate stage. A lot has happened during the alpha and beta stages, prepare for our climactic performance in this final chapter. A big shout out to all those who have reported the issues they’ve found - raising issues on Github, talking with us on Slack or other forms of communication.

According to addons.silverstripe.org, over 160 modules are already compatible with SilverStripe 4.0 so if you’d like to start a new project, we think 4.0.0-rc1 is a solid choice. Perhaps your favourite module is close to being compatible and your contributions can help get it over the finish line—the beauty of open source.

Fixed a race condition with dotenv files

We found that in certain circumstances calling getenv() will fail to retrieve correct values. Please replace any calls to getenv() with SilverStripe\Core\Environment::getEnv() for environment variables, so that you do not end up with unexpected or missing values in the middle of a request.

New upgrade warnings tool

Some code can be detected as likely to be causing upgrade issues, but our tool did not have enough confidence to automatically fix it, so we're doing our best to show you useful warnings about this. You can run the inspection after upgrading your code.

composer global require silverstripe/upgrader
~/.composer/vendor/bin/upgrade-code inspect <path>

silverstripe upgrader bash

We’ve also added some instructions on how to adapt your composer dependencies to upgrade to SilverStripe 4, which enables you to run this tool.

Requirement files no longer error

When including files using the SilverStripe\View\Requirements API, we’ve updated it so that it no longer throws an exception and prevents the request from finishing when a file is not found. Instead it will provide a notice message in the response and can easily be logged without the message shown in production environments.

Let's get stabilised

Our release candidate is not the stable release—it is a potential version to act as the stable release, we may have missed something. So with everyone’s continued help, we hope to have a stable release very soon!

If you’re planning to upgrade from SilverStripe 3.x, we highly recommend going over the 4.0.0 upgrading guide and change notes: https://docs.silverstripe.org/en/4/changelogs/4.0.0

And to try a new installation of SilverStripe 4.0.0-rc1, you can easily install it by using composer:

composer create-project silverstripe/installer ./ss40 4.0.0-rc1

About the author
Christopher Joe

Chris is a senior developer at SilverStripe. He loves innovative ideas, especially in the web technologies space, and is constantly looking out for the next challenge. Currently working on his tan in the Javascript entangled space.

Post your comment

Comments

No one has commented on this page yet.

RSS feed for comments on this page | RSS feed for all comments

Like what you have read?

Sign up for our weekly blog digest sent to your inbox.

Subscribe