Releases: exercism/configlet
4.0.0
This release does nothing but change the version number from 4.0.0-beta.21
to 4.0.0
.
Configlet has been stable for years, but we wanted to make a particular breaking change before dropping the beta
. That change ended up taking longer than anticipated, but we made it last week with 4.0.0-beta.20
.
Thanks to all the contributors. And huge thanks to @ErikSchierboom for everything he's put into Exercism over the years.
— @ee7
Full changelog: 4.0.0-beta.21...4.0.0
4.0.0-beta.21
4.0.0-beta.20
configlet generate
- make interface consistent with other actions (#619)
Unlike other actions, configlet generate
was destructive by default (i.e. it immediately overwrote files).
This was not consistent with the other actions, which all required --update
(and possibly --yes
) to actually change things on the filesystem.
This is now fixed, so you'll need to pass --update
to allow configlet generate
to write the introduction files.
To check if there are introduction.md
files that need to be re-generated, run:
configlet generate
To re-generate introduction.md
files, run:
configlet generate --update --yes
Commit: 6e74347
configlet create
- create(completions): (#869)
Add author
and difficulty
shell completion support for the new create
action.
Commit: 1c6ce62
4.0.0-beta.19
configlet create
- create(exercise): allow specifying the author and/or difficulty (#864)
This release adds supports for specifying the author when creating an exercise:
configlet create --practice-exercise <slug> --author foo
For practice exercises, you can now also specify the difficulty:
configlet create --practice-exercise <slug> --difficulty 5
Support for specifying the author when creating an approach or article will be added later.
Commit: 68b92e8.
- create(completions): add new
create
options (#857)
Add shell completion support for the new create
options.
Commit: 0e3196a completions:
- create(docs): fix descriptions of new options (#858)
Commit : ec0dd1f
configlet lint
- lint(track_config): add support for the
paradigm/array
tag (#866)
Commit: 42e5b0a
Internal
Most notably:
4.0.0-beta.18
New features
In addition to creating articles and approaches, configlet now supports creating practice exercises and concept exercises (#845).
Here are some examples:
configlet create --concept-exercise foo
configlet create --practice-exercise foo
configlet create --practice-exercise foo --offline
As with configlet sync
, the --offline
flag can be used to skip updating the cached problem-specifications data.
Full Changelog: 4.0.0-beta.17...4.0.0-beta.18
4.0.0-beta.17
This is a small release to make configlet lint
support the typing/gradual
tag (see #842).
Full Changelog: 4.0.0-beta.16...4.0.0-beta.17
4.0.0-beta.16
configlet fmt
configlet fmt
now also operates on the track-level config.json
file.
It previously operated only on the config.json
file for exercises, approaches, and articles.
configlet fmt and configlet lint
Both configlet fmt
and configlet lint
now support the new tags
key/value pair for approaches and concepts.
For background, see the forum thread.
Full Changelog: 4.0.0-beta.14...4.0.0-beta.16
4.0.0-beta.15
This pre-release had a bug that blocked marking it as a full release: configlet lint
may exit non-zero after running configlet fmt
with a well-formed track-level config.json
file.
Sorry. Please continue to use 4.0.0-beta.14 for now. fetch-configlet
will download that version until 4.0.0-beta.16 is released.
4.0.0-beta.14
Releases
Previous configlet releases provided pre-built configlet executables only for these targets:
- x86_64 Linux
- x86_64 macOS
- x86_64 Windows
This release adds these new targets:
- arm64 Linux
- arm64 macOS
- arm64 Windows
- riscv64 Linux
But note that we have not yet updated the fetch-configlet
scripts Exercism-wide to support these new targets.
User-facing commits:
- 0e8d665 .github, config: use Zig to cross-compile arm64 Linux asset (#460)
- f280445 .github: cross-compile arm64 macOS asset (#796)
- a962b18 .github: cross-compile riscv64 Linux asset (#798)
- 3824299 .github, cli, completion: cross-compile arm64 Windows asset (#797)
Full Changelog: 4.0.0-beta.13...4.0.0-beta.14
4.0.0-beta.13
configlet create
This release adds a new command: configlet create
. Currently this can only create an approach or article, with the usage:
configlet create --exercise <slug> --approach <slug>
configlet create --exercise <slug> --article <slug>
But in a future version, it will probably gain the ability to create other things (such as an exercise).
configlet lint
The online_editor.highlightjs_language
key/value pair in the track config.json
file is now optional (075ecd8).
Releases
We now sign configlet release archives. For more details, see the new Verifying section of the repo README.md
, and 009dc9d.
Internal
Most notably:
- fa7d0bb .github, config, json, nimble: bump Nim from 1.6.12 to 2.0.0 (#723)
- 7471af3 nimble, patches, cli: vendor
parseopt3
dependency (#780) - 53a75a2 nimble, uuid: generate UUIDs via
std/sysrand
, notpragmagic/uuids
(#777)
Full Changelog: 4.0.0-beta.12...4.0.0-beta.13