Skip to content
This repository has been archived by the owner on May 29, 2022. It is now read-only.

Update ava to version 0.18.0 🚀 #14

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

greenkeeperio-bot
Copy link
Contributor

Hello lovely humans,

ava just published its new version 0.18.0.

State Update 🚀
Dependency ava
New version 0.18.0
Type devDependency

This version is not covered by your current version range.

Without accepting this pull request your project will work just like it did before. There might be a bunch of new features, fixes and perf improvements that the maintainers worked on for you though.

I recommend you look into these changes and try to get onto the latest version of ava.
Given that you have a decent test suite, a passing build is a strong indicator that you can take advantage of these changes by merging the proposed change into your project. Otherwise this branch is a great starting point for you to work on the update.

Do you have any ideas how I could improve these pull requests? Did I report anything you think isn’t right?
Are you unsure about how things are supposed to work?

There is a collection of frequently asked questions and while I’m just a bot, there is a group of people who are happy to teach me new things. Let them know.

Good luck with your project ✨

You rock!

🌴


GitHub Release

This release is one of the biggest, most feature-packed release we’ve had in a long time. We have prepared lots of tasty things for you - snapshot testing, magic assert, precompiling test helpers, improvements to Babel transpilation, and more. Our team and contributors have been working hard to deliver all this goodness. We can’t wait to hear your feedback and don’t hesitate to suggest new ideas and report bugs!

Highlights

Dropped support for Node.js 0.10 and 0.12

As mentioned in the 0.17.0 release notes, we’re dropping support for Node.js 0.10 and 0.12 in this release. They’re both out of maintenance mode. Time to upgrade!

Magic assert

magic-assert-combined2

We completely overhauled the error output to make it as easy and fast as possible to detect the source of the failure. Magic assert, as we call it internally, adds code excerpts and clean diffs for actual and expected values. If values in the assertion are objects or arrays, only a difference is displayed to remove the noise and focus on the problem. Oh, and the diff is syntax-highlighted too! If you are comparing strings, both single and multi line, AVA displays a different kind of output, highlighting the added or missing characters. Last but not least, you don’t have to update any of your tests to take advantage of this! Third-party assertion libraries, like expect, chai and others, are supported out-of-the-box as well.

c9e6e6f

Snapshot testing

We now have snapshot testing, thanks to @lithin

snapshot-testing

Snapshot testing simply saves a stringified state of some data structure and compares it on the next run. It was popularized with React component testing, but you can use it with anything that can be stringified. For example, ensuring API responses stay the same.
ee65b6d

Precompile helper files

Previously, AVA transpiled your test files, but not your test helpers. Now we transpile helper files too! Helpers are files starting with _ or any files in a helpers directory inside the test directory. These are usually used for utilities and shared logic between test files.
410cb8d

Improving language support

We’ve come up with a specification for how AVA handles Babel projects and may better support other languages like TypeScript. Customizing transpilation of test and helper files will be easier, and AVA will start transpiling source files too. We’ve started work on this, but there are no user-facing changes yet.
076eb81

Miscellaneous

  • Removed deprecated assertions (t.ok, t.notOk, t.same, t.notSame). If you haven’t migrated yet, you can do so automagically with our codemod. c010fd7
  • Removed the --source flag. Use the package.json config instead. 34bebc4
  • Support symlinked test files. 033d4dc
  • No longer using babel-runtime. Built-ins like Map and Promise are no longer replaced with polyfills. ad5122d
  • Prints a warning when test.only() is used, so you don’t mistakenly think you’re running all the tests. 22a6081
  • Prints a warning when --fail-fast is enabled, so you’re aware AVA didn’t run all your tests. 09d23f5
  • Exits with an error when --watch is used in CI, as otherwise the process would never exit, since watch mode is persistent. 0606ff7
  • Only transpile what’s needed on Node.js 6. We already did that for Node.js 4. 5158ac8
  • Flow type definition improvements: ce42fcb 314f7a0
  • TypeScript type definition improvement: 0603edc

All changes

v0.17.0...v0.18.0

Thanks

💖 Huge thanks to @lithin, @ThomasBem, @leebyron, @rnkdev, @sebald, @gconaty, @jarlehansen, @LasaleFamine, @asafigan, for helping us with this release. We couldn’t have done it 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.


The new version differs by 63 commits .

  • 2623c11 0.18.0
  • a45cdb9 Mention magic assert in the readme
  • c980f97 Fix crash with snapshot testing
  • 34bebc4 Removed --source CLI flag (#1215)
  • ca016c0 Remove the repeating dependency
  • 751d2a8 Cut testing time of AVA itself by more than half
  • b3eaf30 Bump dependencies
  • aa1b8bb Finish ES2015ifying the codebase \o/
  • c9e6e6f Magic assert (#1154)
  • 9616dde Improve metadata checks (#980)
  • 173da28 Improve error message for watch mode in CI (#1208)
  • 872d2ed Various minor tweaks
  • 2bdf72a Bump lodash.isequal (#1206)
  • 0606ff7 Exit with error if --watch is used in CI (#1203)
  • 83937bf Some tweaks to the TS make file

There are 63 commits in total. See the full diff.


✨ Try the all new Greenkeeper GitHub Integration
With Integrations first-class bot support landed on GitHub and we’ve rewritten Greenkeeper to take full advantage of it. Simpler setup, fewer pull-requests, faster than ever.

Screencast

Try it today. Free for private repositories during beta.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants