Test running overhaul, switch to Prettier & reformat everything #1407
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
This PR overhauls the test setup as well as the pipeline
Fixes #1378
Node 20 is now the default minimum engine
This doesn't mean stuff will break if people are using older versions of Node, but they will get a warning during
npm install. Vitest should be fine with Node >= 14.18, actually. Nevertheless, it's a reasonable thing to assume everyone has at least the current "active LTS" version of Node available.Replacing Jest + Babel with Vitest
We already switched to ESM a while ago. There is no need to pump everything through Babel into Jest. Vitest is a blazing-fast drop-in replacement that is mostly Jest-compatible (and definitely better compatible with Jest than Bun is...). This change allows us to drop a ton of npm dependencies.
Remove standard in favor of prettier
There was a .prettierrc file in the repo already, but for some reason we were stuck with standard. I took the liberty to clean up here, as well. It's now prettier only all the way. This means I had to automatically reformat the code once.
Update pipeline
First of all: The long-running test we observed in #1193 is now working just fine when it's running in Vitest on Node 20 🤷
This allows us to run all tests in the pipeline again (and we definitely should). We should also aim for