Announcing... the first beta for SilverStripe 3.2! It’s an exciting time for us, and we want to share some of that excitement with you. Beta means that we are satisfied with the features we and the community developed, and are ready to release it to officially open it up to begin the polishing and bugfixing as we head toward a stable release. We'll be running this first beta phase for approximately 4 weeks before any additional beta phase we might need to run.
Here are some of the new features you can expect from SilverStripe 3.2…
We’ve spent a great deal of time improving the experience so you can save a great deal of time using it. The publish/unpublish/delete actions have been overhauled. Now they’re simpler and more predictable. We’ve made many interface elements resize or collapse themselves, to give you more space to work on the important things.
We’re also actively seeking User Experience (UX) input as part of every new feature we add to the CMS. If you’re keen to be a part of the evolution of SilverStripe CMS, be on the lookout for new user surveys, user-group tests and RFCs. We want to build the best possible experience for you, and we need your help to do it!
The biggest new feature of SilverStripe 3.2 is the new ORM. We’re proud of the steps we’ve taken towards modularity and clean code. As a result, we’ve split the old connector classes into smaller, more focussed roles. You can still use your favourite database, and extending the ORM will be easier for you and maintaining it will be easier for us.
By default all SQL queries are parameterised as standard, meaning the threat of potential SQL injection vulnerabilities are all but eliminated.
Consider using PDO now
We’re planning to make PDO (PHP Data Objects) the default database driver in SilverStripe 4.0 onwards. We encourage you to start upgrading to PDO now and this is supported from SilverStripe 3.2. It’s faster and more powerful than older connectors/drivers, and it will help us to improve the ORM if we can use the full power of PDO.
If you switch to PDO before SilverStripe 4.0, that’ll be one less breaking change to have to deal with when the next major release becomes available.
If you’re worried about how the new ORM and features will affect your projects, then please read the upgrading notes to be informed of any changes that could affect your code.
We’ve gone to great efforts to make sure it’s nearly 100% backwards compatible. The adoption of Semantic Versioning last year has challenged us and the community to re-think the way we do things. With that in mind we have gone through great lengths to make sure that existing code works and will continue to work in any 3.x version going forward, even so far as to go back and amend prior code to bring it in line with this commitment.
However, sometimes issues will arise, and we would like to hear about any upgrading issues that you encounter. Our desire is to make SilverStripe 3.2 a drop-in replacement for SilverStripe 3.1.x; So we are looking at you to raise any area where this may not be the case. That’s one of the benefits of sticking to SemVer!
Updated Documentation and lessons
We’ve updated the user,developer,and api documentation for general use and upgrading, so you know exactly what you need to do to make use of SilverStripe 3.2. We’re also planning a lesson or two, to show what’s new in SilverStripe 3.2. Keep an eye out for those in the near future, in the meantime if you are new to SilverStripe development, head over to the online lessons.
You can get a fresh copy of 3.2 installed via composer using the following command:
composer create-project silverstripe/installer /path/to/project 3.2.0-beta1
Or head over to the pre-release downloads to grab the files via zip.