ava v2.4.0 Release Notes

Release Date: 2019-09-16 // 3 months ago
  • Experimental t.try() assertions

    ✅ Thanks to the amazing work and patience of @qlonik we're shipping a new assertion! t.try() lets you perform assertions and decide whether to commit or discard their outcome. All kinds of interesting things can be built on top of this, from fuzzy testers to new test interfaces and more.

    We're excited to get this out there, but it's not quite done yet. For now you have to opt in to this new feature. Being opt-in, we may make changes (breaking ones even!) until we feel this is stable.

    🔧 To opt in, configure AVA with the following:

    📦 package.json:

    { "ava": { "nonSemVerExperiments": { "tryAssertion": true } } }
    

    ava.config.js:

    export default { nonSemVerExperiments: { tryAssertion: true } };
    

    We'd love to hear your feedback. Please join us in this issue: #2250

    Also, if you're looking to help out with the remaining issues so that we can ship this without the opt-in, have a look at this project: https://github.com/orgs/avajs/projects/1

    Thanks again @qlonik!

    Other changes

    All changes

    v2.3.0...v2.4.0

    Thanks

    Thank you @jeremenichelli, @jamesgeorge007, @dongjae93, @qlonik and @tryzniak. We couldn't have done this without you!

    Get involved

    We welcome new contributors. AVA is a friendly place to get started in open source. We have a great article on getting started contributing and a comprehensive contributing guide.


Previous changes from v2.3.0

  • 🔄 Changes

    • 🛠 We've fixed some bugs to improve watch mode. ffa62ce 9e8d28f
    • ✅ AVA now prints an error when it receives non-existent test files on the command line. f01d05f
    • ✅ When using the TAP reporter, remaining tests are now included in failed test count. Failed hooks are no longer treated as test failures, and logs are printed. 8628976
    • 🖨 Internal errors that may occur for some edge cases are now printed. b27cb8d
    • 👷 TTY in the worker processes should follow the new APIs in Node.js 12.7.0 (when used with those Node.js versions). 7dcb473
    • 👍 AVA now handles stage-4 syntax like dynamic import, and stage-3 syntax like BigInt, numeric separators and class properties that are supported by V8. 9baca8c
    • 👍 AVA now supports dynamic import through our stage-4 preset.
    • 🚀 AVA now uses import-local@^3.0.2 which fixes issues with Lerna projects.
    • For our TypeScript users , we've changed the default type of t.context to unknown, in line with TypeScript's changes in their 3.5 release. 2fc7d56

    All changes

    v2.2.0...v2.3.0

    Thanks

    Thank you @MarchWorks, @yovasx2 and @bobthekingofegypt. We couldn't have done this without you!

    Get involved

    We welcome new contributors. AVA is a friendly place to get started in open source. We have a great article on getting started contributing and a comprehensive contributing guide.