Simplifying upgrades with Adobe Commerce
July 21, 2021
Keeping your Adobe Commerce instance updated is key to maintaining a platform that has the latest features, and is secure, performant, and reliable. Enabling our customers to run predictable, repeatable, and frictionless upgrades is a priority for the Adobe Commerce product team. Over the past 18 months, we have made several important changes to our release process, including a predictable lifecycle and release policy, beta and pre-release programs, and streamlined release vehicles. We have also simplified the upgrade process with the introduction of quality patches, the upgrade compatibility tool, and a new marketplace extension compliance policy. As part of our continued efforts to simplify the upgrade process, we are excited to announce the new Upgrade best practices documentation, enhancements to the upgrade compatibility tool, and updated Marketplace compatibility policies.
Upgrade Best Practices
Adobe Commerce is known for its flexibility and ease of customization. It provides powerful extensibility points for merchants to customize the UI, extend the API and core services, and integrate with third-party systems. To ensure efficient upgrades, it is important to make these customizations the right way. That is why we are excited to announce our Upgrade best practices guide drawn from the vast knowledge and experience of our partners, merchants, and Adobe experts. The guide describes in detail:
- The levers that impact the complexity of an upgrade
- How to calculate upgrade effort and cost
- Development best practices and coding standards
- Upgrade planning and execution
- Post-upgrade testing
Upgrade compatibility tool enhancements
The upgrade compatibility tool is a command-line interface (CLI) tool that analyzes customizations on a given Adobe Commerce instance and identifies code that might need to be updated prior to an upgrade. In the initial release, the upgrade compatibility tool validated compatibility for PHP and the GraphQL API. With this release, we expanded the scope of coverage. With the enhancements the tool can now:
- Validate core file modifications: Adobe strongly recommends against customizing core product code. With this release, we added a checkpoint for customers and partners to identify any modifications to the core code and understand the impact of the modifications early and quickly. Adding this tool in your development process will help you identify issues proactively, preventing problems during future upgrades and reducing TCO.
- Export the report to a JSON file: This improvement was implemented following feedback from the community. Now, when you run the tool, the details of all identified issues are exported to a JSON file so you can read, share, and manage the results without having to run the tool again.
- Handle VBE validations better: VBEs (Vendor Bundled Extensions) are not part of Adobe Commerce core code but are tested and supported by Adobe. With this update, we now validate VBEs using the same approach we use for core code. This improvement will help users understand issues related to customizations and core code/VBEs clearly.
- Provide error codes: We introduced error codes to help you identify, understand, and solve issues during an upgrade. Error and warning messages provide a clear description and suggested solution.
We are actively expanding the scope of the upgrade compatibility tool, based on community feedback on which factors impact upgrades the most. You can join our #upgrade-compatibility-tool slack channel to get support from the Adobe product team and the community, as well as to help guide the future direction of this tool.
Marketplace Compatibility Policy for Extensions
Adobe is taking proactive measures to ensure the quality and compatibility of extensions in the marketplace. We have introduced a new compatibility policy that requires vendors to confirm compatibility of extensions for each minor release within 90 days and patch release within 30 days of becoming generally available. Extensions that do not meet these guidelines will be delisted from the Marketplace at the expiration of the deadline. In addition, the Commerce Marketplace Extension Quality Program validates submissions for baseline functionality, code quality, absence of malware, and more. This policy gives our merchants confidence in the extensions they deploy to meet their business needs.
Planning for future upgrades
With PHP 7.3 reaching end of support in December 2021, and Adobe Commerce 2.3 reaching end of support in April 2022, it is important that our customers update their environments to the latest version of Adobe Commerce. This will enable PCI compliance and ensure access to ongoing security updates, support, and new functionality. As Marketplace extensions are a key part of upgrades, and can be a major blocker if not compatible with the target version, the new Marketplace compatibility policy will help accelerate availability of extensions for new releases of Adobe Commerce making it easier for customers to upgrade. The new Upgrade best practices guide and updates to the upgrade compatibility tool provide partners and customers with the assets they need to plan for and simplify their upgrade process.
If you are using these older versions of PHP and Adobe Commerce, we encourage you to get started on your upgrade plan at the earliest.