Our guiding principles for new development
- We keep the Sulu Core compact and flexible.
Sulu cares about innovating. We listen to our community and add widely requested features to the Core, but keep it tight so it’s not overloaded. We usually prefer to provide additional features in separate bundles to keep the Core clean.
- We minimize legacy code and technical debt.
We update Sulu to be compatible with the latest versions of its underlying technology. Sometimes we’ll break things in major versions (and let you know). We view breaking changes as a positive: they allow us to move and evolve with technology.
- We’re building a stable, high-quality experience for both Developers and Content Managers.
The Sulu UI is built exclusively for Content Managers. Developers manage the web project and install new bundles. We recognize that organizations like having the freedom to use the Symfony framework to build on their requirements, unrestricted by their CMS.
Our Release Cycle
Major Versionevery 2-3 years
- Remove deprecated features
- Bump dependencies
- Major refactorings
- Will contain backward compatibility breaks
Minor Versionevery ~6 months
(could be delayed)
- Compatibility with new Symfony versions
- New features
- Minor refactoring
- avoided unless there’s a critical issue or new PHP or Symfony version
Patch Versionad hoc
- Critical bug fixes
- Small improvements
- unless there's a critical issue
Support, Maintenance, and Compatibility
- Long Term Support
The Long Term Support (LTS) versions will receive fixes for security issues and critical bugs. The LTS version is the last minor version of the previous major version.
- Version maintenance
Maintained versions are actively kept up and will receive bug fixes and improvements. The maintained versions of Sulu are the last two minor versions of the current major version. Support for unmaintained versions is available for a fee on request.
- PHP & Symfony Compatibility
We aspire for compatibility with new PHP and Symfony versions as soon as possible. If new versions of PHP or Symfony force us to break backward compatibility in a patch version, we will establish compatibility in the next minor version.