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

frontport v16 work to main #4301

Open
wants to merge 17 commits into
base: main
Choose a base branch
from
Open

Conversation

yaacovCR
Copy link
Contributor

@yaacovCR yaacovCR commented Nov 26, 2024

EDITED:

this branch:

the only thing that is failing is our netlify checks, which should be removed as part of the transition to nextra

NOTE: this branch should be merged to main with the "rebase" strategy so as to preserve the original commits in history

Copy link

netlify bot commented Nov 26, 2024

Deploy Preview for compassionate-pike-271cb3 failed.

Name Link
🔨 Latest commit e562c35
🔍 Latest deploy log https://app.netlify.com/sites/compassionate-pike-271cb3/deploys/674ebeb19499050008f11368

Copy link

Hi @yaacovCR, I'm @github-actions bot happy to help you with this PR 👋

Supported commands

Please post this commands in separate comments and only one per comment:

  • @github-actions run-benchmark - Run benchmark comparing base and merge commits for this PR
  • @github-actions publish-pr-on-npm - Build package from this PR and publish it on NPM

preserving content

motivation: this clears the way to upgrade our eslint configuration to v9, which should hopefully let us update our custom rule configuration

currently, when attempting to frontport the next js website from v16 to main, we get eslint errors surrounding our custom rules. if we re-implement our custom rules according to the latest eslint configuration, it should make it easier

this change allows us to do that inter alia by removing the eslint typedoc plugin
yaacovCR and others added 16 commits December 3, 2024 10:13
This converts the existing website to nextra just like
https://github.com/graphql/graphql.github.io. This is a first step in
moving the documentation here and having a redirect from graphql.org to
graphql-js.org.

Not sure yet why codecov started failing 😅 when I run `testonly:cover`
locally it tells me we are 100% covered.

WDYT about isolating the dependencies for the website in that folder? As
seen in
graphql@9c7d615
this prevents the weird CI leaks that we're seeing

Resolves graphql#4200

---------

Co-authored-by: Yaacov Rydzinski <[email protected]>
Checked for broken styles and fixed them and also went over the links by
using linkinator. I did check a lot of tools but looks like there isn't
a good way at the moment to check for broken links that is maintained.

Resolves graphql#4242
Ultimately I was trying this out to see whether we can tweak the docs
easily, it made me realize that our docs are tailored to general GraphQL
rather than how do we use this library. It made me come up with a few
suggestions

- We should have a toggle on code examples to switch between
`buildSchema` and programatically creating the schema with i.e.
`GraphQLObjectType`
- Our documentation starts with a tutorial, this ultimately feels like a
mistake, we should lead with an explanation of what GraphQL.JS is and
what it aims to do, clearly outlining the goals of this project
- We should line out use-cases for building on this library and best
practices of how to go to production

Resolves graphql#2941 
Resolves graphql#2567
Not quite sure yet about contents of the overview page, also the header
is pretty odd, feels like a nextra bug or I goofed the CSS up 😅
generally though it looks like the extra-button and search/... aren't in
their own container preventing a good space-between. The absence of
links seems to cause thsi.
This provides people with the option to choose between the template
approach or the classes approach. This is a proposal to tackle
graphql#1368

[Preview](https://graphql-7w0ort26u-the-graph-ql-foundation.vercel.app/)

This has been applied throughout the codebase now, however one of the
things I am uncertain about is how we offer `buildSchema` with the
GraphQLDefer/... directives? Should we add an option to `buildSchema`?
The exports defined in that chapter seem to only exist in v17 so we
should explicitly flag that.
Following typescript documentation, it's not possible override interface
property, we can only add new props.

Since it's declared as unknown dict, even if we merge
`GraphQLErrorExtensions`, we can't access to our extensions without
workaround and verbose typescript in source-code.

It's annoying since apollo expose `GraphQLFormattedError` instead
`GraphQLError`

Refs:
https://www.typescriptlang.org/docs/handbook/declaration-merging.html
Refs: apollographql/apollo-client#11789
Currently input-unions and by extension the `@oneOf` directive aren't
present in the documentation. I have opted to put this into the advanced
section. The copy might be up for improvement, honestly fire away if
there's more cases to cover, just wanted to get the ball rolling here.

CC @benjie

---------

Co-authored-by: Benjie <[email protected]>
CC @dimaMachina

Is it possible for the sidebar on `api-v16` to restart? currently it
inherits the root one
@yaacovCR yaacovCR changed the title remove docusaurus machinery from main frontport v16 work to main Dec 3, 2024
@yaacovCR
Copy link
Contributor Author

yaacovCR commented Dec 3, 2024

this is ready for review, converted this PR to an integration branch for frontporting all of the v16 work to v17, basically just the website work and #4286

@yaacovCR yaacovCR requested a review from JoviDeCroock December 3, 2024 08:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants