Skip to content

Releases: rtfeldman/node-test-runner

0.19.1-revision15

15 Feb 23:42
Compare
Choose a tag to compare

Fixed

This version replaces the glob dependency with tinyglobby, which is used by elm-review, and many other popular projects. This has a couple of benefits:

  • Restores the Node.js 12 support lost in 0.19.1-revision13.
  • Fixes globs that resolve to directories on Windows. Regression since 0.19.1-revision13, due to the glob upgrade. The test suite was previously missing coverage for this.
  • tinyglobby is much smaller than glob, reducing the installation size and number of indirect dependencies.

Thanks to Jeroen Engels for making the pull request fixing this, and to @lishaduck for introducing tinyglobby to elm-review and suggesting elm-test should use it too!

0.19.1-revision14

15 Feb 09:46
Compare
Choose a tag to compare

Fixed

0.19.1-revision13 unfortunately did not work out of the box in Node.js 12–18 due to a bug in npm versions older than v10. This version is a quick-fix that restores support for Node.js 14–18, while still not causing deprecation warnings. Thanks to @lishaduck for reporting!

Unfortunately, Node.js 12 is still broken. You need to stay on 0.19.1-revision12 if you use Node.js 12.

(For those interested, the fix was changing the glob version range to ^8.0.3 to ^8.0.3 || ^9.0.0 || ^10.0.0. ^11.0.0 was removed from it due to the linked npm bug.)

0.19.1-revision13

14 Feb 22:12
8ef89c8
Compare
Choose a tag to compare

Fixed

  • elm-test no longer fails with an error about duplicate source directories if your elm.json contains "source-directories": ["tests"].
  • The glob dependency version has been updated from ^8.0.3 to ^8.0.3 || ^9.0.0 || ^10.0.0 || ^11.0.0. This allows npm (or your package manager of choice) to install the latest version of glob that works with your Node.js version. Versions 8 and 9 are deprecated. If you use Node.js 16 or later, this allows you to get rid of deprecation warnings.
  • The elm-solve-deps-wasm dependency version has been updated from ^1.0.2 to ^1.0.2 || ^2.0.0, which is the same version constraint that elm-review 2.13.0 uses. If you install the latest version of both elm-test and elm-review, you only get one copy of elm-solve-deps-wasm in node_modules/ instead of two, saving about 288 KB.

0.19.1-revision12

16 Feb 18:28
59a8666
Compare
Choose a tag to compare

Fixed

  • elm-test --report junit now works with elm-program-test. The junit report is XML. elm-program-test uses some characters that are not allowed in XML. This version replaces such disallowed characters with an Elm-style escape sequence, instead of crashing like it did before. Thanks to Christoph Hermann for reporting and to Ilias Van Peer for fixing!

0.19.1-revision11

02 Jan 19:50
9c4ffdc
Compare
Choose a tag to compare

Fixed

  • elm-test init now prints a working link to the elm-explorations/test package. Thanks to Max Strübing!
  • If you ever saw RuntimeError: unreachable when trying to use elm-test, that should not be possible to happen anymore. elm-test now depends on the latest version of elm-solve-deps-wasm which solved that problem. (Previously, you had to make sure you had that version installed yourself).

0.19.1-revision10

11 Oct 20:46
dc3ac90
Compare
Choose a tag to compare

⚠️ Updating to this version also requires upgrading to the just released elm-explorations/test 2.0.0!

Breaking

  • This version of elm-test only works with elm-explorations/test 2.x (2.0.0 <= v < 3.0.0), which was just released. The versions table should make it clear which versions work together.

  • Removed elm-test install-unstable-test-master and elm-test uninstall-unstable-test-master. They are no longer needed since elm-explorations/test 2.0.0 has been released.

Added

  • Fuzzer distribution statistics report. Fuzzer distribution is new in elm-explorations/test 2.0.0, and it required a change in how things are reported from Elm to the test runner, which is why elm-test 0.19.1-revision10 is not compatible with older elm-explorations/test versions.

  • The --no-clear-console flag. By default, elm-test --watch clears the screen on every re-run, so you only see up-to-date output. With --no-clear-console, the console is not cleared and a separator is instead printed between the old and new output instead (similar to how elm-test-rs works). This is useful if you are running several commands in the same terminal and don’t want elm-test --watch to clear away output from other commands.

0.19.1-revision9

03 Jul 19:27
026581e
Compare
Choose a tag to compare

Fixed

  • elm-test install-unstable-test-master (added in the previous version) now works with packages.

0.19.1-revision8

20 Jun 17:00
91b6f69
Compare
Choose a tag to compare

Breaking

  • Removed support for Node.js 10 (which reached end of life 2021-04-30). Node.js 12.20.0 is now the minimum supported Node.js version. (Node.js 12 actually reached end of life 2022-04-30, but we decided to keep support for it for a while longer since there was no need of dropping it right now.)

Added

  • elm-test install-unstable-test-master
  • elm-test uninstall-unstable-test-master
    • which undoes that

This let’s you test the upcoming major version of elm-explorations/test. Big thanks to Martin Janiczek!

Changed

  • elm-test no longer uses elm-json to calculate the set of dependencies needed to run your tests. Instead, we use elm-solve-deps-wasm which basically is a WebAssembly port of the dependency solver in elm-test-rs. Big thanks to Matthieu Pizenberg! Benefits of this change:

    • elm-test no longer needs to download the elm-json binary at install time or run time. elm-solve-deps-wasm is a regular, cross platform npm package.
    • Improves compatibility with Lamdera.
    • elm-solve-deps-wasm works offline to a greater extent than elm-json. Many times it doesn’t need to make any calls to package.elm-lang.org at all!
  • elm-test now shows suggestions on misspelled CLI flags.

0.19.1-revision7

14 May 20:33
11733ef
Compare
Choose a tag to compare

Fixed

  • elm-test now works if you have { "type": "module" } in your package.json.
  • --output=/dev/null is now ignored. This is needed by Emacs’ flycheck-elm package, which calls both elm make and elm-test make with --output=/dev/null. elm-test make does not produce any output files, so the flag doesn’t change anything. (Before 0.19.1-revision5, all unknown flags were silently ignored.)
  • The “no tests found” error message now works with --report=json and --report=junit again (regression in 0.19.1-revision5).
  • Better error message for --fuzz=0.

0.18.13

13 May 13:28
Compare
Choose a tag to compare

This is 0.18.13-beta4 with one change: it downloads elm-interface-to-json from the below release assets rather than from Bintray which was sunset 2021-05-01.

This allows people who still are on Elm 0.18 to run their tests (use npm install [email protected] to install Elm 0.18 itself – requires Node.js 10).