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

docs: add v8 beta blog post #9022

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

Conversation

JoshuaKGoldberg
Copy link
Member

@JoshuaKGoldberg JoshuaKGoldberg commented Apr 28, 2024

PR Checklist

Overview

Adds a preliminary blog post announcing the v8 beta, including:

  • A brief intro on the project and the leadup to v8
  • Steps to set it up (mostly pointing to getting started & configuration docs)
  • Lists of user-facing changes, especially breaking changes
  • Lists of developer-facing changes, especially breaking changes
  • Acknowledgements

As with v6's #6515, uses ⌛ to indicate parts that aren't yet merged in.

Sending for review now though I believe it should be blocked on a couple of other items, commented inline. I think it's ready for review in the meantime so we can ship it ASAP once those items are resolved.

💖

@JoshuaKGoldberg JoshuaKGoldberg added this to the 8.0.0 milestone Apr 28, 2024
@typescript-eslint
Copy link
Contributor

Thanks for the PR, @JoshuaKGoldberg!

typescript-eslint is a 100% community driven project, and we are incredibly grateful that you are contributing to that community.

The core maintainers work on this in their personal time, so please understand that it may not be possible for them to review your work immediately.

Thanks again!


🙏 Please, if you or your company is finding typescript-eslint valuable, help us sustain the project by sponsoring it transparently on https://opencollective.com/typescript-eslint.

Copy link

netlify bot commented Apr 28, 2024

Deploy Preview for typescript-eslint ready!

Name Link
🔨 Latest commit 227c9d7
🔍 Latest deploy log https://app.netlify.com/sites/typescript-eslint/deploys/664551817bee5c00089e3c60
😎 Deploy Preview https://deploy-preview-9022--typescript-eslint.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 96 (🔴 down 2 from production)
Accessibility: 100 (no change from production)
Best Practices: 92 (no change from production)
SEO: 98 (no change from production)
PWA: 80 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify site configuration.

However, ESLint v9 also includes a set of breaking changes that we added support for in typescript-eslint v8.
See the [ESLint v9 release blog post](https://eslint.org/blog/2024/04/eslint-v9.0.0-released) and for more details.

### ⏳ Project Service
Copy link
Member Author

Choose a reason for hiding this comment

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

I think we should consider project service stability & resolved naming a big enough feature to block releasing this blog post. #9004

Copy link
Member Author

Choose a reason for hiding this comment

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

Hmm, now that all the planned new features for it are in (allowDefaultProjectForFiles, defaultProject, maximumDefaultProjectFileMatchCount_THIS_WILL_SLOW_DOWN_LINTING) are in, we could give a big caveat/notice here that it's all available under the old EXPERIMENTAL_useProjectService name.

Copy link
Member Author

Choose a reason for hiding this comment

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

@JoshuaKGoldberg JoshuaKGoldberg added blocked by another PR PRs which are ready to go but waiting on another PR blocked by another issue Issues which are not ready because another issue needs to be resolved first labels Apr 28, 2024
@JoshuaKGoldberg JoshuaKGoldberg marked this pull request as ready for review April 28, 2024 16:46
@JoshuaKGoldberg JoshuaKGoldberg requested a review from a team April 28, 2024 16:46
@tbjgolden
Copy link

Had a read through this (and checked for typos) and looks good - can't wait! :D

JoshuaKGoldberg and others added 2 commits April 29, 2024 08:16
Co-authored-by: Kirk Waiblinger <kirk.waiblinger@gmail.com>
…v8-beta.md

Co-authored-by: Kirk Waiblinger <kirk.waiblinger@gmail.com>
JoshuaKGoldberg and others added 2 commits May 12, 2024 16:54
Co-authored-by: Kirk Waiblinger <kirk.waiblinger@gmail.com>
Co-authored-by: Brad Zacher <brad.zacher@gmail.com>
kirkwaiblinger
kirkwaiblinger previously approved these changes May 13, 2024
Copy link
Member

@kirkwaiblinger kirkwaiblinger left a comment

Choose a reason for hiding this comment

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

rocket

typescript-eslint v7 was our first version that supported ESLint's [new "flat" config file format](https://eslint.org/docs/latest/use/configure/configuration-files), which was already available in ESLint v8.
ESLint v9 still supports ESLint's [older legacy config file format](https://eslint.org/docs/latest/use/configure/configuration-files-deprecated) so our tooling does as well.
However, ESLint v9 also includes a set of breaking changes that we added support for in typescript-eslint v8.
See the [ESLint v9 release blog post](https://eslint.org/blog/2024/04/eslint-v9.0.0-released) and for more details.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
See the [ESLint v9 release blog post](https://eslint.org/blog/2024/04/eslint-v9.0.0-released) and for more details.
See the [ESLint v9 release blog post](https://eslint.org/blog/2024/04/eslint-v9.0.0-released) for more details.

Comment on lines +99 to +103
// Remove this line
project: true,
// Add line
projectService: true,
tsconfigRootDir: import.meta.dirname,
Copy link
Contributor

Choose a reason for hiding this comment

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

This is currently rendered as:

grafik

… which is a bit confusing. Either both comments should display verbatim, or both should be rendered like a diff. I saw below that the latter can be achieved like this:

Suggested change
// Remove this line
project: true,
// Add line
projectService: true,
tsconfigRootDir: import.meta.dirname,
// Remove this line
project: true,
// Added lines start
projectService: true,
tsconfigRootDir: import.meta.dirname,
// Added lines end


Typed linting for out-of-project files can be done by specifying two properties of a `parserOptions.projectService` object:

- `allowDefaultProjectForFiles`: a glob of a small number of out-of-project files to enable a slower default project on
Copy link
Contributor

Choose a reason for hiding this comment

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

Why is it slow? I don't quite get it from the context; maybe that can be improved somehow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked by another issue Issues which are not ready because another issue needs to be resolved first blocked by another PR PRs which are ready to go but waiting on another PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Docs: Add blog post announcing v8 beta
5 participants