-
Notifications
You must be signed in to change notification settings - Fork 9
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
Implement Apollo Federation v2 #26
base: main
Are you sure you want to change the base?
Conversation
…testing configuration files pattern and permit safe overriding configs in local environment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing work, @Aeliot-Tm! Changes look good to me but will defer to @xiian or anyone else
at SK willing to give this a deeper review and a test run.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @Aeliot-Tm, and thanks for the PR.
I've not reviewed all of the code yet, but I've added some comments and questions on what I've looked through so far. Hopefully you can clarify for me!
# Conflicts: # .gitignore # composer.lock # src/FederatedSchema.php
@maccath I made updates. Could you recheck it, please? |
Any update on this PR? We could really use V2 :) |
Hi @Klaas-MY - we are still working through this on our end. To speed things up, you could help us test this by specifying this branch in your Thanks! |
Any updates on this PR? |
composer.json
Outdated
@@ -4,7 +4,7 @@ | |||
"type": "library", | |||
"license": "MIT", | |||
"require": { | |||
"php": "^7.1||^8.0", | |||
"php": "^7.4||^8.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we consider dropping support for PHP 7.4 now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Downgraded to PHP 7.1
But it cannot be tested on this version of PHP. It was locked implicitly on php >=7.3 when required PHPunit ^9.5
apollo-federation-php/composer.json
Line 30 in c1bc216
"phpunit/phpunit": "^9.5", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be great if the version bump could happen in #31 , and this PR could become mergeable without this PHP bump first. A minor release can happen first, and the version bumps of #31 can happen in a major breaking release.
When considering the version bump the Stitcher blogposts are helpful: https://stitcher.io/blog/php-version-stats-january-2023
The one thing I am always curious about is how much % of these stats are caused by CI pipelines (and hence the actual PHP <= 7.4 usage is lower).
The PHP supported versions is a better guidance, especially when considering a major release as a library.
The old library versions will still remain available through Packagist, and the need for new functionality will stimulate engineers to get their PHP versions updated.
Hi @maccath , Why does it take so long to check this PR? |
@Aeliot-Tm Thank you for contributing this PR and apologies for delays on reviews. In order to test this, we've been trying to integrate this on our end and that can take a bit of time. In addition to testing internally, we also run our code against the apollo-federation-subgraph-compatibility repo (which powers this page on apollographql.com). As you can see on the website, Apollo Federation PHP does not currently support Federation v2, but does support all features of Federation v1 (except federated tracing). We've run the test suite against this PR locally and had mixed success. We've put up a version of that test in a PR in our fork of apollo-federation-subgraph-compatibiity. It seems that the branch does not have the intended effect. The code for the test was updated according to the description of the PR and the updates to the README.md, but I think there are more modifications needed.
|
@xiian Thank you for feedback and the link to the testing repo. |
Is there anything that can get some help to get this functionality to a mergeable state? The deprecation functionality that was added in |
Proposed changes
Implemented directives:
@link
@inaccessible
@override
@shareable
@key
(added support of argumentresolvable
)How to test
All tests run on CI.
Unit Tests
Ref #24