Skip to content

Plan migration to Webonyx 14 #283

Closed

Description

@moufmouf

Webonyx/Graphql-php 14 is out since 2 weeks now: https://github.com/webonyx/graphql-php/releases/tag/v14.0.0

We should plan a migration (and decide if this constitutes a major or not for us).

Activity

  1. MattBred commented on Aug 25, 2020

    @MattBred
    Contributor

    Hey @moufmouf any movement on this, or need any help with it?

  2. moufmouf commented on Aug 27, 2020

    @moufmouf
    MemberAuthor

    Hey @MattBred ,

    Thanks for asking. Actually, I haven't started working on this yet. I'd like to get this PR merged before: #269 and it is quite massive.

    I'd definitely accept some help with the migration to Webonyx 14 though!

  3. MattBred commented on Aug 27, 2020

    @MattBred
    Contributor

    Have you started any kind of plan/document on what would need changing yet?

  4. moufmouf commented on Aug 28, 2020

    @moufmouf
    MemberAuthor

    Not really.
    I believe it should be relatively easy, according to the migration documentation of Webonyx: https://github.com/webonyx/graphql-php/blob/master/UPGRADE.md

    The big question is: do we need to bump a major version in GraphQLite when upgrading Webonyx?

    GraphQLite acts as a wrapper around Webonyx and in theory, we could have minor versions of GraphQLite using different major versions of Webonyx. In practice, there is one breaking change (Strict coercion of scalar types) that might impact GraphQLite users.

    What do you think?

  5. MattBred commented on Sep 1, 2020

    @MattBred
    Contributor

    I think any breaking change of stable features should follow https://graphqlite.thecodingmachine.io/docs/semver otherwise that promise means nothing. If the stable public API of GraphQLite has a breaking change when updating the webonyx library, then it should bump up a major version. If the webonyx library has a new update with breaking changes that don't affect the public API of GraphQLite, then I would make it a minor update.

  6. oojacoboo commented on Mar 29, 2021

    @oojacoboo
    Collaborator

    @moufmouf @devmaslov Should we do this and target a 5.0 release now that #269 has been merged in?

  7. devmaslov commented on Mar 30, 2021

    @devmaslov
    Collaborator

    @oojacoboo
    The Webonyx's breaking change about strict coercion of scalar types has a great chance of affecting GraphQLite users, even though it would be a rare use case. Considering this, we should bump up the version to 5.0 with this update and I believe it worth doing so in the nearest future.

    There's one more thing. Based on the docs, we should drop the support of Doctrine Annotations in 5th version, which means as well PHP version less then 8. It might be too early for this. What do you think?
    https://graphqlite.thecodingmachine.io/docs/next/doctrine-annotations-attributes#docsNav

    BTW there's a PR for this already and looks like it needs some work. The unit tests are failing there. I can take a look into it closer to the weekend.
    #327

  8. oojacoboo commented on Mar 30, 2021

    @oojacoboo
    Collaborator

    @devmaslov thanks for looking into this.

    I think we should hold off on dropping Doctrine Annotations in version 5. We should deprecate Doctrine annotations first, for at least one full version, before dropping them. PHP 8 hasn't even been released for a year yet. I think we need to give this more time before making such a change.

  9. devmaslov commented on Mar 30, 2021

    @devmaslov
    Collaborator

    Totally agree

  10. MattBred commented on Apr 1, 2021

    @MattBred
    Contributor

    +1, forcing PHP8 would prevent a lot of people using it that can't upgrade yet because of other dependencies, or local dependencies on older PHP versions.

    I do agree with the major 5.0 version update for updating Webonyx.

  11. linked a pull request that will close this issueupdate to webonyx/graphql-php:^14.9.0 #327on Apr 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    dependenciesPull requests that update a dependency file

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions