Skip to content

Version 10.0.0

Compare
Choose a tag to compare
@bakkot bakkot released this 23 Feb 22:25
· 198 commits to main since this release
5ce4e28

This is a major release containing several breaking changes.

Most notably, ecmarkup no longer ships with a (stale) built-in copy of the biblio for ecma262. Proposals which upgrade will therefore not automatically link against that specification. The plan is to start distributing the biblio for ecma262 as a seperate artifact (on npm), updated whenever the spec is updated. (Follow along at #251.) Until that's available proposals probably should not upgrade.

Other changes:

  • there is now a bare-bones typechecker (guarded behind --lint-spec) which enforces certain invariants around the use of completion records in AOs, as discussed in tc39/ecma262#2547
  • the CLI has been tweaked:
    • it will now error if passed an argument it does not recognize, instead of silently ignoring it
    • the --biblio flag has been replaced with the more explicit --write-biblio
    • a new --load-biblio flag has been added which allows you to specify a path or npm package from which to load a biblio
    • --lint-formatter has been renamed to the more accurate --error-formatter and --would-write to the more descriptive --expand-glob.
  • eslint is no longer included as a dependency, so if you were using the --lint-formatter CLI flag with a built-in formatter you may need to add eslint as a dependency (the default codeframe formatter is still included)
  • the format of the exported biblio has changed slightly

Nontrivial PRs:

  • ecmascript spelling #407
  • switch from nomnom to command-line-args #376
  • remove runtime dependency on eslint by depending on the codeframe formatter directly #377
  • Bump various dependencies #378
  • some tweaks to the biblio #405
  • rename some cli flags #406
  • completion-record local typechecking #408