Skip to content

v1.1.0

Latest

Choose a tag to compare

@NejcS NejcS released this 02 Nov 14:32
· 3 commits to main since this release

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 convention tests/<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 new add-test-scenarios skill writes conformance scenarios together with the spec, and acceptance scenarios when you ask for them. add-acceptance-test is 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-healthcheck reports such a file as a warning and keeps PASS. (#37)
  • tests-folder in config.yaml. The parser and the renderer read test plain files only from the folders this key names; there is no default. The skills write tests-folder: tests whenever conformance tests are enabled, and plain-healthcheck fails a config that has conformance-tests-script without it. (#38)
  • plain-parser 0.2.0. npx plain-forge install and npx plain-forge update upgrade an older plain-parser, and the skills name 0.2.0 as the release they need. (#43)
  • Rules load on demand. load-plain-reference reads the ***plain rules when a skill needs them, not at launch. (#33)
  • render-spec from 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