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

Version 5.0.0 #342

Closed
wants to merge 1 commit into from
Closed

Conversation

znarf
Copy link

@znarf znarf commented Dec 4, 2023

Given that graphql-eslint is currently not a suitable replacement and that this plugin has not been updated in 3 years, I'm proposing the following maintenance release.

I made great care of modifying the strict minimum for that purpose and kept things simple.

Dropping compatibility with various version of Node, Eslint and GraphQL is due to dependencies own compatibilities.

I hope it can be accepted and published to npm, or that someone can invite me to do so. If that's not possible, I'll publish it as @opencollective/eslint-plugin-graphql.


Upgrade all dependencies and compatibility with latest Eslint and GraphQL.

  • upgrade all dependencies to their latest version
  • remove pretty-quick and husky (was misconfigured)
  • ensure compatibility with Eslint 7 and 8
  • ensure compatibility with GraphQL 16

Breaking changes:

  • drop compatibility with Node.js < 16
  • drop compatibility with GraphQL < 14.2
  • drop compatibility with Eslint < 7

- upgrade all dependencies to their latest version
- remove pretty-quick and husky (was misconfigured)

- ensure compatibility with Eslint 7 and 8
- ensure compatibility with GraphQL 16

BREAKING:

- drop compatibility with Node.js < 16
- drop compatibility with GraphQL < 14.2
- drop compatibility with Eslint < 7
@jerelmiller
Copy link
Member

jerelmiller commented Dec 4, 2023

Hey @znarf 👋

Would you mind giving a bit more detail about what you shared here?

Given that graphql-eslint is currently not a suitable replacement

We are very likely to fully deprecate eslint-plugin-graphql in the near future and this statement caught my eye.

Edit: Fixed the reference to the wrong package name

@JounQin
Copy link

JounQin commented Dec 4, 2023

@jerelmiller

We are very likely to fully deprecate graphql-eslint in the near future

I suppose you mean deprecate eslint-plugin-graphql?

@jerelmiller
Copy link
Member

@JounQin oops yes thats what I meant. I read graphql-eslint as I was typing that message and wrote the wrong thing 😭. Thanks for the correction!

@znarf
Copy link
Author

znarf commented Dec 5, 2023

@jerelmiller Based on your feedback, I had yet another look at graphql-eslint today and it seems I got it wrong. It's now indeed covering rules like no-deprecated or fields-on-correct-type which were our main use cases.

If I remember, I think I got stuck migrating our slightly complex setup and was missing migration guidelines.

There are still some gotchas when using multiple schemas, but it should ultimately work.

While this PR was carefully crafted and ready to go, I now understand it would send the wrong message to release a new version.

Closing!

@znarf znarf closed this Dec 5, 2023
@znarf
Copy link
Author

znarf commented Dec 5, 2023

Fyi, we're actually blocked because @graphql-eslint doesn't seem to support the feature mentioned here as Additional Schemas or Tags

This plugin can be used to validate against multiple schemas by identifying them with different tags.

@JounQin
Copy link

JounQin commented Dec 5, 2023

I think you should post a feature request or PR even better for graphql-eslint.

@jerelmiller
Copy link
Member

@znarf good to know! We are going to be in contact with the owners of that package (The Guild) before we deprecate, so this is an item we can take note of in that discussion.

As @JounQin said, I'd highly encourage you at the very least to open a feature request over there as well to know there is community interest in that feature.

@znarf
Copy link
Author

znarf commented Dec 6, 2023

Sure, I'll provide at least a test case. I started to have a look at implementation but the PR is a bit of a longshot.

@dimaMachina
Copy link

@znarf Hi, I am the maintainer of GraphQL-ESLint

GraphQL-ESLint has the support for additional schemas 🙂. It’s not described in docs but described in github examples.
Here is working example for future v4 or for current v3

I plan to rewrite graphql-eslint docs and describe the use of multiple schemas too! Also, all roadmap for v4 is done, and first 4.alpha was released. Actually, the missing part to release v4 is to update docs 😅

@znarf
Copy link
Author

znarf commented Dec 7, 2023

@dimaMachina Thank you for jumping there! Our use case is actually multiple schemas BUT in the same file. I have studied the docs and the code and it doesn't look possible.

I started exploring that support here: https://github.com/opencollective/graphql-eslint/pull/1/files

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.

4 participants