Repository navigation
New release 🎉
Hello everyone! We are releasing a new version of plain-forge - 1.1.0!
Run npx plain-forge update in your terminal to upgrade. The update also upgrades plain-parser to 0.2.0, which this release needs.
New features & improvements
- Explicit test scenarios. A functionality is a
# <func-id>heading followed by free text. Its tests live in a test plain file, by conventiontests/<module>/<func-id>.plain, with a***conformance tests***section for the expected use and an***acceptance tests***section for the use that is not expected. The renderer generates one test per scenario and nothing else. The newadd-test-scenariosskill writes conformance scenarios together with the spec, and acceptance scenarios when you ask for them.add-acceptance-testis gone. (#32) - A test plain file may be empty. When conformance tests are enabled, every functionality needs a test plain file, but the file may hold no scenario yet. An empty conformance section carries the comment
> add conformance test scenarios here.plain-healthcheckreports such a file as a warning and keepsPASS. (#37) tests-folderinconfig.yaml. The parser and the renderer read test plain files only from the folders this key names; there is no default. The skills writetests-folder: testswhenever conformance tests are enabled, andplain-healthcheckfails a config that hasconformance-tests-scriptwithout it. (#38)- plain-parser 0.2.0.
npx plain-forge installandnpx plain-forge updateupgrade an older plain-parser, and the skills name 0.2.0 as the release they need. (#43) - Rules load on demand.
load-plain-referencereads the ***plain rules when a skill needs them, not at launch. (#33) render-specfrom pyro 0.5.0. The bundled renderer skill reads the test plain files, renders one test per scenario and invents none. (plainlang/pyro#47)
Breaking change. Specs in the previous syntax, with - bullets as functional specs and nested ***acceptance tests***, are no longer read. plain-parser 0.2.0 reports them as not supported, and there is no migration skill. Rewrite them with the new skills.
Internal improvements
- Dependabot keeps the npm dependencies current; TypeScript 7 and newer type definitions. (#31, #35, #36, #39, #40)
- CI and release notices go to Slack through the bot token. (#34)
Full Changelog: v1.0.23...v1.1.0