Skip to content

Comments

Drop backwards-compatibility layer#106

Closed
greg0ire wants to merge 2 commits intodoctrine:1.4.xfrom
greg0ire:would-be-2.x
Closed

Drop backwards-compatibility layer#106
greg0ire wants to merge 2 commits intodoctrine:1.4.xfrom
greg0ire:would-be-2.x

Conversation

@greg0ire
Copy link
Member

Draft PR because I don't actually want to get this merged, this is just to show what the diff with 1.4.x is, and to (hopefully) get a green build. If this looks ok, then we could move 2.x to 3.x, and this branch to 2.x

@greg0ire greg0ire requested review from alcaeus and beberlei May 11, 2020 16:54
@greg0ire
Copy link
Member Author

A quick grep shows that this is very far from complete 😅

@greg0ire
Copy link
Member Author

It also shows that another PR needs to be done to update the docs: they still refer to the outdated namespace.

@greg0ire
Copy link
Member Author

Regarding the docs, see #107

@greg0ire greg0ire force-pushed the would-be-2.x branch 3 times, most recently from 835fb9f to 925417c Compare May 11, 2020 17:35
@alcaeus
Copy link
Member

alcaeus commented May 12, 2020

If this looks ok, then we could move 2.x to 3.x, and this branch to 2.x

Note sure if that's necessary. IMO, the following works fine:

  • 1.3.x: Introduces new API and uses @deprecated annotations on deprecated code paths (already done)
  • 1.4.x: Keeps new API, introduces @trigger_error calls to announce deprecations loudly
  • 2.0.x: Drops legacy API, introduces parameter types (as those are ok to be removed when inheriting). Documentation informs people to add return types to inherited methods
  • 3.0.x: Introduces return types to all methods

@greg0ire
Copy link
Member Author

My main point with this PR is that I don't touch dependencies version constraints, including and especially the php one, and that's what would make bumping to 2.0 and dropping the *_exists calls from the ORM (for instance) acceptable.

@alcaeus
Copy link
Member

alcaeus commented May 12, 2020

Ah, I see. So we'd be postponing the argument types to 3.0 to avoid dropping PHP 7.2 in 2.0, because that would make it ineligible for ORM 2.7? My head is spinning, but I think I understood.

@greg0ire
Copy link
Member Author

Yes, that's exactly my point. Note that it indeed means postponing argument types to 3.0, but that 3.0 can and should still happen very soon IMO. It's just that there would be an easier-to-upgrade-to intermediary step.

@alcaeus
Copy link
Member

alcaeus commented May 12, 2020

If it makes upgrading ORM easier, sure :)

@greg0ire
Copy link
Member Author

I pushed this as 2.0.x :)

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.

2 participants