On behalf of the MODX Team, contributors and the entire worldwide community who build on and succeed with MODX Revolution, we’re proud to announce the official release of MODX Revolution 3.0.0-pl. Accept no substitutes.
Revolution 3.0 is the culmination of years of work by dozens of contributors who continue to help make MODX the best CMS for growing business and people who care deeply about Creative Freedom™ in how they build websites that fit their business—not the other way around.
MODX Revolution 3.0 is a major version release, however, one of the aims of this release was to retain as much compatibility with the version 2 branch of Revolution as possible. We felt this would enable people to move to 3 more easily and ensure the Extras that site builders and owners know and love would continue to work.
Given the large number of changes, and so you do not accidentally break live websites, you should read through this post before upgrading your websites from Revolution 2.x to MODX Revolution 3.0.0. Revolution 2.x will continue to be supported for the forseeable future with patch releases until you can safely make the transition to 3.x.
What’s New In Revolution 3.0?
Revolution 3.0 is a significant milestone in the 17+ year history of MODX (yep, we started in 2004). It builds upon the core principles of providing the best foundation to build a website no matter what technology you choose, having only the essential functionality in the core. It’s easy to use and customize as your needs change.
With that in mind, take a look at what’s new in MODX Revolution 3.0.
A Refreshing User Interface Refresh
For users of MODX Revolution 3, what immediately stands out is a new, more welcoming login screen and contemporary, more responsive Manager design that retains all the critical design features and paradigms of the MODX you know.
More User Experience Enhancements
In addition to those noticeable changes, here are some valuable new features and improvements:
- Passwordless login. This allows users to log in following single-use, tokenized links sent to your email address. This is extremely simple and handy for those who don’t make or can’t remember strong passwords.
- A new, enhanced Template selector that pops up when creating a new Resource from the Resource Tree, lets you enter the title, content type, parent and template (with image preview) before creating the new Resource for a smoother, simpler user experience with fewer steps or page reloads.
- Visual breadcrumbs in the Manager shows, at a glance, where a Resource is in the Tree, and allows quick navigation to ancestor Resources.
- To improve the signal to noise ratio in the MODX Error Log, deprecation logs have been moved to a separate tab at Manage > Reports > Error log. This makes it much easier to find actual problems in the logs.
- The Manager language is now session-specific. This allows easier multilingual use and enables a user to switch languages, as needed, on the login screen or in the Manager.
One of the key goals of MODX Revolution 3 was to improve and modernize the experience for developers who build on, extend and contribute to the open source project. The velocity of web development and improvements in practices and the release cycle of PHP has dramatically changed the web development landscape since Revo 2 was first released in 2010.
Here are just some of the important ways in which we’ve improved Revo 3 for developers:
- A significant modernization of the much of the Revolution codebase
- Namespaces are now part of the Revo core
- Dependencies are (auto-)loaded through Composer
We’ve added a dependency injection container, including new standardized HTTP services, with more uses coming in future releases
- xPDO 3 makes it possible for you to use namespaces in your custom models and use new CLI tools for model generation
More technical information, including a list of breaking changes, can be found in Upgrading from 2.x to 3.0 in the MODX Documentation.
Key Changes from 2.x
There are quite a number of changes in Revolution 3 that break compatibility or alter how things work. You can review Breaking Changes in Revolution 3 to see what might affect when you upgrade. We’ve included a few of the most important considerations to review below you choose to use or upgrade to 3.0.
The core Directory Can No Longer Be Moved
With the incorporation of Composer in Revolution 3.0, the MODX core directory cannot be moved or renamed. Therefore, when updating a site with a relocated/renamed core directory, you'll need to restore that to its original location first. For those accustomed to moving the core for added security, we recommend configuring your web server to prevent access to the core directory.
Support for sqlsrv Removed
We removed support for sqlsrv (Microsoft SQL Server Driver for PHP) to lighten the core given the lack of use in the MODX Community and greater support for MySQL derivatives in Windows environments.
We made every effort to enable Extras from Revolution 2.0 to continue to work in 3.0. However, there are older, yet functional, Extras and custom-developed Extras that may not work properly without changes. You’ll find information related to those changes in the Upgrading from 2.x to 3.0 section of the MODX Documentation as well. You may wish to search this extensive list of tested Extras with their MODX 3 compatibility.
Upgrading to Revo 3
We very, extremely, redundantly, and strongly recommend taking a backup of your site prior to performing an upgrade, which should first be done in a staging environment using a copy of your website. Make sure to take a backup first!
For most people, upgrading to MODX Revolution 3.0.0 will be fairly straightforward. There are a few key things to note before attempting to upgrade your site.
- As mentioned above, the MODX core must be in the default location before upgrading
- The site must be on the minimum PHP version (7.2.5) prior to upgrading or the upgrade will not work as the setup script requires it to complete properly. If your PHP is below 7.2.5, be sure to resolve that before running the MODX Setup (installer). We strongly encourage you to run on PHP 7.4 or later versions since PHP 7.3 and earlier are no longer supported.
- Some widely used Extras such as pdoTools and MIGX do not yet work reliably in Revolution 3.x.
- Custom Extras—especially those with Custom Manager Pages (CMPs)—may not work as expected.
Testing and Upgrading in MODX Cloud
If your sites are hosted and managed in MODX Cloud, you’re lucky. You can create a staging environment from a complete Snapshot. Once you create your new Cloud instance, you can then use the normal MODX Cloud upgrade button to initiate the upgrade and select Revolution 3.0.0 from the available versions. If you’re a MODX Cloud customer that is unsure how to do this safely, please contact our support team via the Help button inside the MODX Cloud Dashboard.
Need Help Upgrading? The Garage is Open
If you’re not sure how to upgrade but would like to get your site onto Revolution 3.0.0, check out the MODX Garage and Speed Shop to contact the MODX team for expert assistance. We can advise you of your options.
More On Upgrading to Revo 3
For everything you need to know before upgrading from Revolution 2.x to 3.0.0, please review Upgrading from 2.x to 3.0 in the MODX Documentation. It contains detailed information about all changes, breaking and new that will affect your decision to upgrade and the best approach.
Do I Need to Upgrade to Revo 3?
While we believe it’s important to your site up to date with the latest versions of our software, we also understand that this is a big change that might require preparation. We will continue to support Revolution 2 for some time. As such, there will be a new release of Revolution 2.8 coming soon as well for those not ready to upgrade. We’ll continue to incorporate security and other important fixes into Revolution 2.
Gratitude and Acknowledgement
We could not have reached the milestone release of Revolution 3 without the support, input, and contributions of the people who choose MODX. However, we’d like to especially thank those individuals who contributed directly to the development of this release: Agel_Nash, Bakha, Bakhtovar Gulomov, Bob Ray, Bochkarev Ivan, Bruno17, Codenator81, CrazyBoy49z, Dettroxx, Digital Penguin, Fabian Christen, Gauke Pieter Sietzema, GulomovCreative, Ibochkarev, Igor Sukhinin, Ilya Utkin, Ivan Bochkarev, Ivan Klimchuk, JP DeVries, Jan Peca, Jason Coward, Jens Külzer, Jim Graham, Joeke Kloosterman, John Peca, Jon Leverrier, Josh Gulledge, Joshua Lückers, Joshua Lückers, Kristian Pars, Kudashev Serge, Mark Hamstra, Mark Willis, Mat Dave Jones, Michael Snow, Mike Reid, Mikhail, Murray, Murray Wood, OptimusCrime, Raffy, Ruslan Aleev, Ruslan-Aleev, Ryan Thrash, Sander Drenth, Serge Kudashev, Sergey Shlokov, Thomas Jakobi, Vasily Naumkin, Yana, Yura Finiv, andchir, atid, devlanda, digitalpenguin, halftrainedharry, meshkov, mvoevodskiy, oobrun, sander, sepiariver, sergant210, wax100, Павел Гвоздь, and ЕвгенийWebinmd.
Download MODX Revolution 3
If you want to start your next project or upgrade your site to this landmark release of MODX Revolution head click the button below or, if in MODX Cloud, choose Revolution 3.0.0 as the version to install when creating or upgrading your Cloud.