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

[INTERNAL] Bump ava from 5.3.1 to 6.1.2 #985

Merged
merged 10 commits into from
Mar 4, 2024

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 4, 2024

Bumps ava from 5.3.1 to 6.1.2.

Release notes

Sourced from ava's releases.

v6.1.1

What's Changed

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

v6.1.0

What's Changed

  • Implement registerCompletionHandler() by @​novemberborn in avajs/ava#3283

    AVA 6 expects test code to clean up gracefully when the tests are complete, allowing the test environment (worker thread or child process) to exit. If this does not happen, AVA will report a timeout. You can use registerCompletionHandler() to perform any other clean up (or indeed exit the process) after AVA has completed the test execution. See the description here.

  • Fix potential bug with watch mode when no failed test files are written by @​novemberborn in avajs/ava#3287

  • Fix ava/internal ESM type module by @​codetheweb in avajs/ava#3292

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

v6.0.1

What's Changed

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

v6.0.0

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(https://github.com/avajs/ava/blob/HEAD/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.

... (truncated)

Commits
  • 2e0c2b1 6.1.1
  • 5161bf7 Update dependencies
  • 15dddf3 Fix external-assertions snapshot for Node.js 20.11
  • db0fdb2 Fix 'previous failures' in watch mode always incrementing
  • 735bf41 Update TypeScript recipe to suggest --import flag and tsimp
  • aae39b2 6.1.0
  • c3e2c72 Fix ava/internal ESM type module
  • 0a05024 Implement registerCompletionHandler()
  • cc8b839 Ensure AVA exits with code 1 after an unexpected process.exit() in a test worker
  • 35f6c86 Fix potential bug with watch mode when no failed test files are written
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

JIRA: CPOUI5FOUNDATION-801

@dependabot dependabot bot added dependencies javascript Pull requests that update Javascript code labels Feb 4, 2024
@dependabot dependabot bot requested review from matz3 and RandomByte February 4, 2024 10:51
@d3xter666 d3xter666 added the blocked Pull requests that are blocked label Feb 5, 2024
@flovogt flovogt added this to the ui5-builder v4 milestone Feb 5, 2024
@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/ava-6.1.1 branch from c985b9e to 877ccdd Compare February 22, 2024 13:54
@flovogt
Copy link
Member

flovogt commented Feb 22, 2024

@dependabot rebase

@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/ava-6.1.1 branch from 877ccdd to 9887800 Compare February 22, 2024 14:08
@flovogt flovogt removed the blocked Pull requests that are blocked label Feb 22, 2024
@flovogt flovogt removed the request for review from matz3 February 22, 2024 14:39
@flovogt flovogt force-pushed the dependabot/npm_and_yarn/ava-6.1.1 branch from c7c7003 to 6ac8360 Compare February 27, 2024 10:38
@flovogt flovogt requested a review from a team February 27, 2024 10:38
@flovogt flovogt force-pushed the dependabot/npm_and_yarn/ava-6.1.1 branch from 6ac8360 to 8967266 Compare February 27, 2024 10:41
@coveralls
Copy link

coveralls commented Feb 27, 2024

Coverage Status

coverage: 94.653% (+0.02%) from 94.63%
when pulling af14de1 on dependabot/npm_and_yarn/ava-6.1.1
into 671ce74 on main.

@d3xter666 d3xter666 force-pushed the dependabot/npm_and_yarn/ava-6.1.1 branch 2 times, most recently from dc07fa1 to 72478a0 Compare February 27, 2024 13:48
@d3xter666
Copy link
Contributor

Now should be ok for submission

@flovogt flovogt force-pushed the dependabot/npm_and_yarn/ava-6.1.1 branch from 72478a0 to f17d43c Compare February 27, 2024 14:13
@flovogt flovogt requested a review from d3xter666 February 27, 2024 14:13
@flovogt flovogt requested review from matz3 and flovogt February 27, 2024 14:34
flovogt
flovogt previously approved these changes Feb 27, 2024
@RandomByte
Copy link
Member

Florian and myself looked into this earlier, seemingly in parallel to you guys(?)

I'm still a little confused. It seems like ava 6 now runs multiple test files in the same process? Before there were isolated.

I can't explain why else the builder.js tests (which are all using .serial) can run into this race condition. After all, await graph.build() should ensure that the pool is cleared before resolving the promise, which should prevent the next test from running and using the same pool.

@matz3
Copy link
Member

matz3 commented Feb 27, 2024

I only looked into the test time outs in the minifier test, which are related to this change:

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

If there are no other changes to ava, this might rather be a bug in our code, right?

@RandomByte
Copy link
Member

I only looked into the test time outs in the minifier test, which are related to this change:

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

If there are no other changes to ava, this might rather be a bug in our code, right?

I think the race condition in the two getPool implementations that Yavor also corrected in his PR is legit. It can occur when two builds are running concurrently.

However, this should never happen in de builder.js tests, since they all run serially.

We spotted the problem in minifier.integration.js when running all tests serially using ava --serial. It seems like the first test initialized the pool and the second one relied it already being available. With this fix, the second tests can initialize the pool itself.

RandomByte
RandomByte previously approved these changes Feb 28, 2024
Copy link
Contributor Author

dependabot bot commented on behalf of github Mar 3, 2024

A newer version of ava exists, but since this PR has been edited by someone other than Dependabot I haven't updated it. You'll get a PR for the updated version as normal once this PR is merged.

@flovogt flovogt dismissed stale reviews from RandomByte and themself via af14de1 March 4, 2024 08:32
@flovogt flovogt force-pushed the dependabot/npm_and_yarn/ava-6.1.1 branch from f17d43c to af14de1 Compare March 4, 2024 08:32
@flovogt flovogt changed the title [INTERNAL] Bump ava from 5.3.1 to 6.1.1 [INTERNAL] Bump ava from 5.3.1 to 6.1.2 Mar 4, 2024
@flovogt flovogt merged commit e901466 into main Mar 4, 2024
17 checks passed
@flovogt flovogt deleted the dependabot/npm_and_yarn/ava-6.1.1 branch March 4, 2024 09:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies javascript Pull requests that update Javascript code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants