Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Start to add Migrations versions of base interfaces #749

Merged
merged 2 commits into from
Sep 21, 2024
Merged

Conversation

markstory
Copy link
Member

@markstory markstory commented Sep 18, 2024

These are important interfaces for userland code. All of the current migrations extend from phinx base classes. I'd like to try updating migrations internals by doing the following changes

  • Add SeedInterface and MigrationInterface.
  • Add decorator that adapts between phinx and migrations. Manager::getSeeds(), getMigrations()
  • Move phinx shims into adapter/decorator
  • Update the internals to use migrations interfaces.
  • Introduce a new base class that is all migrations
  • Provide upgrade tool to update migration classes.

If all goes well, we'll have an opt-in path for applications to upgrade to the new namespaces and code before a breaking change where phinx compatibility is removed.

These are important interfaces for userland code. All of the current
migrations extend from phinx base classes. I'd like to try updating
migrations internals by doing the following changes

- [ ] Add SeedInterface and MigrationInterface.
- [ ] Add decorator that adapts between phinx and migrations. Manager::getSeeds(), getMigrations()
- [ ] Move phinx shims into adapter/decorator
- [ ] Update the internals to use migrations interfaces.
- [ ] Introduce a new base class that is all migrations
- [ ] Provide upgrade tool to update migration classes.

If all goes well, we'll have an opt-in path for applications to upgrade
to the new namespaces and code before a breaking change where phinx
compatibility is removed.
@markstory markstory added this to the 4.x (CakePHP 5) milestone Sep 18, 2024
@markstory markstory merged commit d69b33d into 4.next Sep 21, 2024
16 checks passed
@markstory markstory deleted the seedinterface branch September 21, 2024 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant