Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
WHY
BEFORE - What was wrong? What was happening before this PR?
As me and @tabacitu discussed before, most if not all of the changes required to upgrade Backpack in major versions, are things like "check if you have X file published, if you do, check this", "check if you have version x/y/z if you have b/c/d".
All those tasks can be automated for 90% of the use cases.
AFTER - What is happening after this PR?
We should have a reliable "upgrade" command that checks what user needs to be aware given the upgrade guide, and we provide some automatically fixes, and sometimes when it's difficult/not possible to automate, we let the user know the next steps.
HOW
How did you achieve that, in technical terms?
Creating kind of a "upgrade framework", that would let us create "Steps" for each upgrade process. Each step can have the fix etc when applicable.
Is it a breaking change?
no