Upgrade guide

Upgrading from 1.1

See discussion in Github issue.

Version 1.2 is a large upgrade over 1.1. It features a number of added features as well as some folder reorganization to help with the upgrade process in future. We also have run the new mix formatter which changed a lot of files. Unfortunately, this means upgrading existing projects from 1.1 to 1.2 is quite difficult.

Options

Copy your files into a fresh 1.2 project

If you haven't changed too many existing file and added mostly new ones, you could start a fresh 1.2 project and migrate over the work you've done on the 1.1 project. This is likely the easiest route.

Attempt a git merge

git remote add petal_pro git@github.com:petalframework/petal_pro.git
git fetch petal_pro
git merge petal_pro/main --allow-unrelated-histories

Comment from a Pro user:

  • Use rename_phoenix_project.sh to rename back to PetalPro

  • rsync -r --delete --exclude=.git ~/code/petal_pro-1.3.0/ ~/code/your-app

  • git checkout HEAD path/to/files/rsync/deleted/but/shouldnt/have (I used --delete with rsync so I'd know about files that were removed, for example, I think some of the org stuff was moved, and I don't want cruft)

  • git add -p

  • Use rename_phoenix_project.sh to rename back to your app name

Git diffing

Comment from a Pro user:

The easiest way for me is to create a fresh project from the updated petal_pro, rename it to the same name as your existing project, and then run a diff tool like Araxis merge against the root directories. As long as you have mostly added your own files and not modified the template files much it doesn't take too long. You can either merge the template changes into your existing project (better for git history) or merge your customizations into the fresh project.

Last updated