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

Relocate federation packages to new federation repository #4561

Merged
merged 4 commits into from
Sep 11, 2020

Conversation

abernix
Copy link
Member

@abernix abernix commented Sep 11, 2020

These packages are not going away, they're just moving to their new home on the Apollo Federation repository. This is part of the work explained in #4560 and further discussed (in technical detail) within apollographql/federation#134, which is also the PR that introduces the same code to that repository (apollographql/federation) that this PR removes from this repository (apollographql/apollo-server).

This PR and removing this code doesn't absolve us from remaining concerns that are important in this migration (existing PRs, for example), but as noted in #4560, stand-by for further progress on that (and see the related project board for details, including such concerns as moving existing issues, and addressing existing PRs).

Closes #4560

…oving.

This is a precursor to a step that will remove this code which has been
moved to another repository.

See #4560 for details,
and follow the next commit for the removal!
Everything will continue, however, as federation becomes more independent
from Apollo Server, it (and its concerns, like Apollo Gateway) move to their
own repository.  (It's always been relatively independent, but it didn't
necessarily warrant its own repository before.)

This includes `apollo-federation-integration-testsuite` (unpublished to
npm), `@apollo/gateway (which lived in `packages/apollo-gateway` here and as
`/gateway-js` on the new repository), and `@apollo/federation` (which lived
in `packages/apollo-federation` here and as `/federation-js` on the new
repository).

See #4560 for details,
and also apollographql/federation#134 for where (and
how) it was introduced on the other side.
Copy link
Member

@glasser glasser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As mentioned on Slack there's a regexp in jest.config.base.js that needs updating. Assuming that doesn't break CI (and that you make the appropriate changes so that codecov won't fail on all PRs) LGTM! Thanks for getting this in today, since it'll make my current work capable of building :)

@abernix
Copy link
Member Author

abernix commented Sep 11, 2020

The codecov/project failure here, I will claim/think, is because the relative change we allow when contrasted against the base branch (main) has changed more than 1%.

Given the change we're making here, the fluctuation against base is expected and merging this should set a new baseline. (Or, alternatively, I will follow-up with a change to the codecov.yml.

glasser added a commit that referenced this pull request Sep 22, 2020
In #4561 we removed `@apollo/federation` and `@apollo/gateway` from the
apollo-server repo. This means that the acephei example doesn't know where to
import them from. Adding them to examples/acephei/package.json led to very
strange errors so let's just add them as top-level dev dependencies.

Additionally, removing `@apollo/federation` seemed to make it so that TypeScript
can't find `apollo-env` any more, but it also seems like maybe the references to
it in the tsconfig.json lines aren't necessary? Not sure what's going on here
but leaving them in led to build errors and removing them didn't.

Finally, update the uses of `engine:` to use the new post-#4453 APIs, and spell
the version "set up" as two words.
glasser added a commit that referenced this pull request Sep 22, 2020
In #4561 we removed `@apollo/federation` and `@apollo/gateway` from the
apollo-server repo. This means that the acephei example doesn't know where to
import them from. Adding them to examples/acephei/package.json led to very
strange errors so let's just add them as top-level dev dependencies.

Additionally, removing `@apollo/federation` seemed to make it so that TypeScript
can't find `apollo-env` any more, but it also seems like maybe the references to
it in the tsconfig.json lines aren't necessary? Not sure what's going on here
but leaving them in led to build errors and removing them didn't.

Finally, update the uses of `engine:` to use the new post-#4453 APIs, and spell
the version "set up" as two words.
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Apr 21, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ℹ️ Federation Packages Repository Move
3 participants