exercism:main ← exercism:align-parser-combinators-version
opened 05:06PM - 27 Aug 26 UTC
Follow-up to exercism/scala-test-runner#63, which fixed #863 by adding `scala-pa…rser-combinators` to the test runner's assembly jar.
That fix went in at `2.4.0`, while the five exercises that declare the dependency still pin `2.1.0`:
- `alphametics`
- `forth`
- `matching-brackets`
- `sgf-parsing`
- `wordy`
So a solution resolved 2.1.0 when run locally with `sbt` and 2.4.0 when submitted to the website. For the `RegexParsers` API these exercises use that difference is harmless — but there is no reason for the two environments to disagree, and 2.4.0 is what this repo's own root `build.sbt` already uses for `testgen`.
This is a version-only change; no exercise source is touched.
## Verification
`bin/test` can't run on macOS (it uses `mktemp --suffix` and `sed -i -e`, both GNU-only — see #842), so I ran the equivalent on a copy of each exercise: install `.meta/Example.scala` over the stub per `.meta/config.json`, strip `pending`, then `sbt test`.
Run at **both** versions, the results are identical:
| exercise | tests | 2.1.0 | 2.4.0 | warnings |
|---|---|---|---|---|
| alphametics | 10 | pass | pass | 2, unchanged |
| forth | 46 | pass | pass | 1, unchanged |
| matching-brackets | 15 | pass | pass | 1, unchanged |
| sgf-parsing | 12 | pass | pass | 2, unchanged |
| wordy | 16 | pass | pass | 1, unchanged |
The warnings are pre-existing (pattern-match exhaustivity on `parseAll` results, plus an implicit-conversion feature warning in `alphametics` and `sgf-parsing`); the bump neither adds nor removes any.
`bin/configlet lint` passes.