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

Chore: Update changesets monorepo [skip netlify] (major) - autoclosed #228

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 6, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
ava (source) 5.3.1 -> 6.1.3 age adoption passing confidence
eslint (source) 8.56.0 -> 9.9.1 age adoption passing confidence
husky 8.0.3 -> 9.1.5 age adoption passing confidence
vitest (source) 1.2.1 -> 2.0.5 age adoption passing confidence

Release Notes

avajs/ava (ava)

v6.1.3

Compare Source

What's Changed

New Contributors

Full Changelog: avajs/ava@v6.1.2...v6.1.3

v6.1.2

Compare Source

What's Changed

Full Changelog: avajs/ava@v6.1.1...v6.1.2

v6.1.1

Compare Source

What's Changed

Full Changelog: avajs/ava@v6.1.0...v6.1.1

v6.1.0

Compare Source

What's Changed

Full Changelog: avajs/ava@v6.0.1...v6.1.0

v6.0.1

Compare Source

What's Changed

Full Changelog: avajs/ava@v6.0.0...v6.0.1

v6.0.0

Compare Source

Breaking Changes
  • AVA now requires Node.js versions 18.18, 20.8 or 21. Versions 14 and 16 are no longer supported. #​3251 #​3216

  • When tests finish, worker threads or child processes are no longer exited through proces.exit(). If your test file does not exit on its own, the test run will time out. #​3260

  • Changes to watch mode #​3218:

    • Watch mode can no longer be started via the ava.config.* or package.json configuration.
    • The ignoredByWatcher configuration has moved to the watchMode object, under the ignoreChanges key.
    • Watch mode now uses the built-in fs.watch() in recursive mode. This is supported on Linux in Node.js 20 or newer, and MacOS and Windows in Node.js 18 as well. There are caveats to keep in mind.
  • Failed assertions now throw, meaning that any subsequent code is not executed. This also impacts the type definitions. #​3246

  • Only native errors are now considered errors by the t.throws() and t.throwsAsync() assertions. Object.create(Error.prototype) is not a native error. #​3229

  • Changes to modules loaded through the require configuration #​3184:

    • If such modules export a default function, this function is now invoked.
    • Local files are loaded through @ava/typescript if necessary.
Improvements
Rewritten watcher

The watcher has been rewritten. It’s now built on fs.watch() in recursive mode.

@vercel/nft is used to perform static dependency analysis, supporting ESM and CJS imports for JavaScript & TypeScript source files. This is a huge improvement over the previous runtime tracking of CJS imports, which did not support ESM.

Integration with @ava/typescript has been improved. The watcher can now detect a change to a TypeScript source file, then wait for the corresponding build output to change before re-running tests.

The ignoredByWatcher configuration has moved to the watchMode object, under the ignoreChanges key.

See #​3218 and #​3257.

Failed assertions now throw

Assertions now throw a TestFailure error when they fail. This error is not exported or documented and should not be used or thrown manually. You cannot catch this error in order to recover from a failure, use t.try() instead.

All assertions except for t.throws() and t.throwsAsync() now return true when they pass. This is useful for some of the assertions in TypeScript where they can be used as a type guard.

Committing a failed t.try() result now also throws.

See #​3246.

t.throws() and t.throwsAsync() can now expect any error

By default, the thrown error (or rejection reason) must be a native error. You can change the assertion to expect any kind of error by setting any: true in the expectation object:

t.throws(() => { throw 'error' }, {any: true})

See #​3245 by @​adiSuper94.

The require configuration is now more powerful

It now loads ES modules.

Local files are loaded through @ava/typescript if necessary, so you can also write these in TypeScript.

If there is a default export function, it is invoked after loading. The function is awaited so it can do asynchronous setup before further modules are loaded. Arguments from the configuration can be passed to the function (as a [structured clone](https://developer.mozilla.org/en-US/docs/Web/API/structuredClone)).

See #​3184 by @​sculpt0r.

Other changes worth noting
  • Internal events can now be observed (experimentally). See #​3247 by @​codetheweb. It’s experimental and undocumented.
  • You can now use t.timeout.clear() to restore a previous t.timeout(). #​3221
  • Code coverage is flushed to disk at opportune moments. #​3220
New Contributors

Full Changelog: avajs/ava@v5.3.1...v6.0.0

eslint/eslint (eslint)

v9.9.1

Compare Source

v9.9.0

Compare Source

Features

  • 41d0206 feat: Add support for TS config files (#​18134) (Arya Emami)
  • 3a4eaf9 feat: add suggestion to require-await to remove async keyword (#​18716) (Dave)

Documentation

  • 9fe068c docs: how to author plugins with configs that extend other configs (#​18753) (Alec Gibson)
  • 48117b2 docs: add version support page in the side navbar (#​18738) (Amaresh S M)
  • fec2951 docs: add version support page to the dropdown (#​18730) (Amaresh S M)
  • 38a0661 docs: Fix typo (#​18735) (Zaina Al Habash)
  • 3c32a9e docs: Update yarn command for creating ESLint config (#​18739) (Temitope Ogunleye)
  • f9ac978 docs: Update README (GitHub Actions Bot)

Chores

v9.8.0

Compare Source

v9.7.0

Compare Source

Features

  • 7bd9839 feat: add support for es2025 duplicate named capturing groups (#​18630) (Yosuke Ota)
  • 1381394 feat: add regex option in no-restricted-imports (#​18622) (Nitin Kumar)

Bug Fixes

  • 14e9f81 fix: destructuring in catch clause in no-unused-vars (#​18636) (Francesco Trotta)

Documentation

  • 9f416db docs: Add Powered by Algolia label to the search. (#​18633) (Amaresh S M)
  • c8d26cb docs: Open JS Foundation -> OpenJS Foundation (#​18649) (Milos Djermanovic)
  • 6e79ac7 docs: loadESLint does not support option cwd (#​18641) (Francesco Trotta)

Chores

v9.6.0

Compare Source

v9.5.0

Compare Source

v9.4.0

Compare Source

v9.3.0

Compare Source

v9.2.0

Compare Source

v9.1.1

Compare Source

v9.1.0

Compare Source

v9.0.0

Compare Source

v8.57.0

Compare Source

Features

  • 1120b9b feat: Add loadESLint() API method for v8 (#​18098) (Nicholas C. Zakas)
  • dca7d0f feat: Enable eslint.config.mjs and eslint.config.cjs (#​18066) (Nitin Kumar)

Bug Fixes

  • 2196d97 fix: handle absolute file paths in FlatRuleTester (#​18064) (Nitin Kumar)
  • 69dd1d1 fix: Ensure config keys are printed for config errors (#​18067) (Nitin Kumar)
  • 9852a31 fix: deep merge behavior in flat config (#​18065) (Nitin Kumar)
  • 4c7e9b0 fix: allow circular references in config (#​18056) (Milos Djermanovic)

Documentation

Chores

typicode/husky (husky)

v9.1.5

Compare Source

v9.1.4

Compare Source

v9.1.3

Compare Source

  • fix: better handle space in PATH

v9.1.2

Compare Source

v9.1.1

Compare Source

v9.1.0

Compare Source

Super saiyan god dog! It's over 9.0.0!

There's a bug with this release which prevents the deprecation notice to appear and requires to remove #!/usr/bin/env sh and . "$(dirname -- "$0")/_/husky.sh" (which are deprecated by the way). I'll publish a new version to fix that. Sorry about any inconvenience.

What's new

You can now run package commands directly, no need for npx or equivalents.
It makes writing hooks more intuitive and is also slightly faster 🐺⚡️

### .husky/pre-commit
- npx jest
+ jest # ~0.2s faster

A new recipe has been added to the docs. Lint staged files without external dependencies (inspired by Prettier docs). Feel free to modify it.

### .husky/pre-commit
prettier $(git diff --cached --name-only --diff-filter=ACMR | sed 's| |\\ |g') --write --ignore-unknown
git update-index --again

For more advanced use cases, see lint-staged.

Fixes

  • bunx husky init command
  • Workaround for some hooks implementation on Windows 🤷

Deprecations

  • Remove #!/usr/bin/env sh and . "$(dirname -- "$0")/_/husky.sh" from your hooks
  • Move your code from ~/.huskyrc to .config/husky/init.sh

Support for these will be removed in v10, notices have been added.

Friendly reminder

If Git hooks don't fit your workflow, you can disable Husky globally. Just add export HUSKY=0 to .config/husky/init.sh.

I've seen some confusion about this on X, so just a heads-up!

Sponsoring

Husky is downloaded over 45M times per month and used by ~1.5M projects. If your company wants to sponsor, you can do so here: GitHub Sponsors.

Have a nice summer ☀️ I'm open to new opportunities/consulting so feel free to drop me a message 😉

v9.0.11

Compare Source

v9.0.10

Compare Source

v9.0.9

Compare Source

v9.0.8

Compare Source

v9.0.7

Compare Source

v9.0.6

Compare Source

v9.0.5

Compare Source

v9.0.4

Compare Source

v9.0.3

Compare Source

v9.0.2

Compare Source

What's Changed

New Contributors

Full Changelog: typicode/husky@v9.0.1...v9.0.2

v9.0.1

Compare Source

Kicking off the year with an exciting update!

TLDR;

Improved user experience and a (even) smaller package size while packing in more features!

👋 By the Way

I'm available for remote work (Front-end/Back-end mainly JS/TS but open to other stacks Rails, Go, Elixir). You can contact me at my mail: typicode at gmail 🙂

Introducing husky init

Adding husky to a project is now easier than ever. Although the installation process was straightforward, it often required consulting the documentation.

v8
npm pkg set scripts.prepare="husky install"
npm run prepare
npx husky add .husky/pre-commit "npm test"
v9
npx husky init

Adding a New Hook

Adding a hook is now as simple as creating a file. This can be accomplished using your favorite editor, a script or a basic echo command.

v8
npx husky add  .husky/pre-commit "npm test"
git add --chmod=+x .husky/pre-commit # On Windows
v9
echo "npm test" > .husky/pre-commit

Further Size Reduction

v8 was already the most compact Git hooks manager at approximately 6kB.

v9 takes this a step further, reducing the size to just 3kB, likely making it the smallest devDependency in your toolkit.

To give you an idea of how small it is, the biggest file in the project is the MIT license 😄

More to Come

Additional features are in the pipeline for v9. Stay tuned 🙌

Other Changes

  • Enhanced security with CI and npm --provenance for safer publishing.
  • Added $XDG_CONFIG_HOME support. Move ~/.huskyrc to ~/.config/husky/init.sh for centralized configuration.
  • Fixed permission issue for Windows-created hooks; they no longer need to be executable.
  • Removed husky install. Use husky or husky some/dir for the same functionality (deprecation notice to be added).
  • Modified behavior when .git is missing; it now triggers a warning instead of failure.
  • Replaced HUSKY_DEBUG=1 with HUSKY=2 for debugging.
  • Updated the Husky API for module usage.
  • Transitioned to ESM for module usage.
  • Dropped support for Node 14 and 16.
  • Revamped docs.

How to Migrate

v9 is backward compatible with v8, allowing you to freely upgrade and migrate your hooks later.

package.json

{
  "scripts": {
-   "prepare": "husky install"
+   "prepare": "husky"
  }
}

.husky/pre-commit

- #!/usr/bin/env sh
- . "$(dirname -- "$0")/_/husky.sh"
npm test
vitest-dev/vitest (vitest)

v2.0.5

Compare Source

   🚀 Features
   🐞 Bug Fixes
    View changes on GitHub

v2.0.4

Compare Source

   🐞 Bug Fixes
    View changes on GitHub

v2.0.3

Compare Source

   🚀 Features
   🐞 Bug Fixes
    View changes on GitHub

v2.0.2

Compare Source

v2.0.1

Compare Source

   🐞 Bug Fixes
    View changes on GitHub

v2.0.0

Compare Source

Vitest 2.0 is here! This release page lists all changes made to the project during the beta. For the migration guide, please refer to the documentation.

🚨 Breaking Changes
🚀 Features

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link

changeset-bot bot commented Aug 6, 2024

⚠️ No Changeset found

Latest commit: 6fb222e

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@renovate renovate bot force-pushed the renovate/dev/major-changesets-monorepo branch from f258f5d to 8a990cb Compare August 9, 2024 22:56
@renovate renovate bot force-pushed the renovate/dev/major-changesets-monorepo branch from 8a990cb to 60d5e9b Compare August 20, 2024 16:12
@renovate renovate bot force-pushed the renovate/dev/major-changesets-monorepo branch from 60d5e9b to 6fb222e Compare August 23, 2024 23:46
@renovate renovate bot changed the title Chore: Update changesets monorepo [skip netlify] (major) Chore: Update changesets monorepo [skip netlify] (major) - autoclosed Sep 2, 2024
@renovate renovate bot closed this Sep 2, 2024
@renovate renovate bot deleted the renovate/dev/major-changesets-monorepo branch September 2, 2024 03:50
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.

0 participants