When logged in to Craft, the "Utilities" tab will show you all the latest releases you can update to. In some cases, it will report that you have reached a breakpoint release:
You’ve reached a breakpoint! More updates will become available after you install Craft CMS 3.1.34.3.
If I'm updating to Craft 3.2 via composer, to ensure the all the migrations get run properly and respect that breakpoint, I believe that I would need to upgrade on the command line in two steps:
- Run
composer require craftcms/cms:3.1.34.3
- Run db migrations
- Run
composer require craftcms/cms:3.2.0
(or whatever the latest is) - Run db migrations
Over time, as Craft has multiple breakpoint releases it's possible that there are several breakpoint steps that need to be hit while updating from composer directly and, as far as I know, the only place to get information on breakpoint releases is via the Control Panel.
It is also possible for plugins to add breakpoint releases. So, there is a potential scenario that you have to know of and respect both Craft and plugin breakpoints. I'm not sure how Craft handles plugin breakpoints in the CP as I have not seen any do that yet, but I believe the awareness of them would also be necessary if you are doing everything from the command line.
So, it's possible if we have an older site upgrading through several breakpoints we need to do something like:
- Run
composer require craftcms/cms:3.0.41.1
- Run db migrations
- Run
composer require craftcms/cms:3.1.34.3
- Run db migrations
- Run
composer require plugin/some-plugin:1.2.3
- Run db migrations
- Run
composer require craftcms/cms:3.2.0
(or whatever the latest is) - Run db migrations
So, my questions:
- If we are upgrading to Craft 3 for the first time, should we be targeting the first breakpoint release as the initial version that we upgrade to?
- Is there any good way to know which breakpoint releases exist in Craft (aside from just seeing the next breakpoint on the CP utilities tab)?
- Is there any good way to know which breakpoint releases exist in Plugins?
- Can you summarize the potential issues that would arise if someone skipped breakpoints while upgrading?