avajs/ava
### [`v2.4.0`](https://togithub.com/avajs/ava/releases/v2.4.0)
[Compare Source](https://togithub.com/avajs/ava/compare/v2.3.0...v2.4.0)
#### Experimental `t.try()` assertions
Thanks to the amazing work and patience of [@qlonik](https://togithub.com/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_](https://togithub.com/avajs/ava/blob/master/docs/06-configuration.md#experiments) 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`:
```json
{
"ava": {
"nonSemVerExperiments": {
"tryAssertion": true
}
}
}
```
`ava.config.js`:
```js
export default {
nonSemVerExperiments: {
tryAssertion: true
}
};
```
We'd love to hear your feedback. Please join us in this issue: [#2250](https://togithub.com/avajs/ava/issues/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:
Thanks again [@qlonik](https://togithub.com/qlonik)!
#### Other changes
- We've added the [common pitfall](https://togithub.com/avajs/ava/blob/master/docs/08-common-pitfalls.md) of sharing variables across asynchronous tests [`49b202f`](https://togithub.com/avajs/ava/commit/49b202fb5c376e71c1400f6c35043280cf417140)
- We've updated the [endpoint testing recipe](https://togithub.com/avajs/ava/blob/master/docs/recipes/endpoint-testing.md) to focus on the concept, not specific libraries [`67e4dea`](https://togithub.com/avajs/ava/commit/67e4deac2857503e5fac7d38da2d23014eb29724)
#### All changes
[`v2.3.0...v2.4.0`](https://togithub.com/avajs/ava/compare/v2.3.0...v2.4.0)
#### Thanks
Thank you [@jeremenichelli](https://togithub.com/jeremenichelli), [@jamesgeorge007](https://togithub.com/jamesgeorge007), [@dongjae93](https://togithub.com/dongjae93), [@qlonik](https://togithub.com/qlonik) and [@tryzniak](https://togithub.com/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](https://medium.com/@vadimdemedes/making-your-first-contribution-de6576ddb190#.umxr7id07) on getting started contributing and a comprehensive [contributing guide](https://togithub.com/avajs/ava/blob/master/contributing.md).
### [`v2.3.0`](https://togithub.com/avajs/ava/releases/v2.3.0)
[Compare Source](https://togithub.com/avajs/ava/compare/v2.2.0...v2.3.0)
#### Changes
- We've fixed some bugs to improve watch mode. [`ffa62ce`](https://togithub.com/avajs/ava/commit/ffa62ce94dec43f18a0c66623fa604036ef8dc48) [`9e8d28f`](https://togithub.com/avajs/ava/commit/9e8d28f4408b2e218e6a315d454dd68f66351351)
- AVA now prints an error when it receives non-existent test files on the command line. [`f01d05f`](https://togithub.com/avajs/ava/commit/f01d05f0c8373ff3fe8134364031fb36cba2850e)
- 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`](https://togithub.com/avajs/ava/commit/8628976e1ddd8fea2ff8177f8ab47c80410b424f)
- Internal errors that may occur for some edge cases are now printed. [`b27cb8d`](https://togithub.com/avajs/ava/commit/b27cb8d538c58743ba3f5d46e0523e7a0ca5982c)
- TTY in the worker processes should follow the new APIs in Node.js 12.7.0 (when used with those Node.js versions). [`7dcb473`](https://togithub.com/avajs/ava/commit/7dcb473d90d9415c691da90df75a0452d846cc29)
- 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`](https://togithub.com/avajs/ava/commit/9baca8ca4dcbf9512c1f7a33adaeedd37fc8eda2)
- AVA now supports dynamic import through our [stage-4](https://togithub.com/avajs/babel-preset-stage-4) preset.
- AVA now uses [`import-local@^3.0.2`](https://togithub.com/sindresorhus/import-local/releases/tag/v3.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](https://devblogs.microsoft.com/typescript/announcing-typescript-3-5/). [`2fc7d56`](https://togithub.com/avajs/ava/commit/2fc7d56475ca1d77078abc3e08390341bedda58f)
#### All changes
[`v2.2.0...v2.3.0`](https://togithub.com/avajs/ava/compare/v2.2.0...v2.3.0)
#### Thanks
Thank you [@MarchWorks](https://togithub.com/MarchWorks), [@yovasx2](https://togithub.com/yovasx2) and [@bobthekingofegypt](https://togithub.com/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](https://medium.com/@vadimdemedes/making-your-first-contribution-de6576ddb190#.umxr7id07) on getting started contributing and a comprehensive [contributing guide](https://togithub.com/avajs/ava/blob/master/contributing.md).
Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
Newsflash: Renovate has joined WhiteSource, and is now free for all use. Learn more or view updated terms and privacy policies.
This PR contains the following updates:
2.2.0
->2.4.0
Release Notes
avajs/ava
### [`v2.4.0`](https://togithub.com/avajs/ava/releases/v2.4.0) [Compare Source](https://togithub.com/avajs/ava/compare/v2.3.0...v2.4.0) #### Experimental `t.try()` assertions Thanks to the amazing work and patience of [@qlonik](https://togithub.com/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_](https://togithub.com/avajs/ava/blob/master/docs/06-configuration.md#experiments) 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`: ```json { "ava": { "nonSemVerExperiments": { "tryAssertion": true } } } ``` `ava.config.js`: ```js export default { nonSemVerExperiments: { tryAssertion: true } }; ``` We'd love to hear your feedback. Please join us in this issue: [#2250](https://togithub.com/avajs/ava/issues/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:Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "
rebase!
".:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
Newsflash: Renovate has joined WhiteSource, and is now free for all use. Learn more or view updated terms and privacy policies.