Releases: exercism/configlet
4.0.0-alpha.21
This release changes the default behavior of the sync
command.
A plain configlet sync
now makes no changes to the track
directory, and instead behaves as configlet sync --check
did.
The old behavior of configlet sync
, which was interactively syncing
the tests, is now implemented as configlet sync --update
.
This is the first step towards overhauling the sync
design to also
handle syncing docs, metadata, and filepaths.
4.0.0-alpha.20
4.0.0-alpha.19
4.0.0-alpha.18
4.0.0-alpha.17
New features
This release adds the initial implementation of the configlet generate
command.
See here for more information.
4.0.0-alpha.16
New features
This release adds the below checks to configlet lint
.
For each Concept Exercise .meta/config.json
file:
- The files listed in
files.solution
must exist - The files listed in
files.test
must exist - The files listed in
files.exemplar
must exist
For each Practice Exercise .meta/config.json
file:
- The files listed in
files.solution
must exist - The files listed in
files.test
must exist - The files listed in
files.example
must exist
To view the configlet lint
output that this release adds, see #319
4.0.0-alpha.15
New features
- lint: check concept
.meta/config.json
files (#261)
4.0.0-alpha.14
This biggest change this release is for configlet sync
.
Specification update
The previous format for a tests.toml
file was like:
[canonical-tests]
# lowercase words
"79ae3889-a5c0-4b01-baf0-232d31180c08" = true
This release updates configlet sync
so that it reads and writes each
tests.toml
file using the new format:
[79ae3889-a5c0-4b01-baf0-232d31180c08]
description = "lowercase words"
Note that:
- A missing
include
property impliesinclude = true
. - We remove any explicit
include = true
in atests.toml
file when
that file is regenerated, which happens whenconfiglet
includes or
excludes a new test case. - We try to preserve custom properties (where the key is named something
other thaninclude
ordescription
), but we do not currently
preserve the existing whitespace.
New features
4.0.0-alpha.13
New features
With this release, configlet lint
now checks that the value of every uuid
key:
- matches the regular expression
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
- is unique within the track
It does not yet check that each value is unique across all Exercism tracks. But it will later.
A user can generate a suitable UUID by running configlet uuid
.
4.0.0-alpha.12
New features
- lint: add kebab-case checks (#274)