Skip to content

Releases: stjude-rust-labs/wdl

wdl-ast-v0.4.0

28 Jun 18:56
Compare
Choose a tag to compare

Added

  • Added a method to ImportStatement for deriving the namespace from the
    import URI (#91).
  • Added validation of unique names, such as task, struct, and declarations
    (#91).

Fixed

  • Fixed the validation diagnostics to be ordered by the start of the primary
    label (#85).

Changed

  • Refactored the Visitor trait and validation visitors so that they are not
    in a v1 module (#95).

wdl 0.4.0

14 Jun 05:17
97e15e2
Compare
Choose a tag to compare

Changed

  • Updated to the new parser implementation and added a wdl binary (#79).

Component Crate Updates

wdl-grammar 0.4.0

Changed
  • Removed the old parser implementation in favor of the new parser
    implementation; this also removes the experimental feature from the crate (#79).
  • Removed dependency on miette and thiserror in the experimental parser,
    introduced the Diagnostic type as a replacement, and switched the existing
    parser errors over to use Diagnostic (#68).

wdl-ast 0.3.0

Fixed
  • Fixed the experimental parser validation to check negative numbers in
    metadata sections (#66).
Added
  • Added parent method to section representations in the experimental AST
    (#70).
  • Added validation rules for the experimental AST (#65).
  • Added a new experimental AST for the experimental parser; this implementation
    is currently feature-gated behind the experimental feature (#64).
Changed
  • Removed the old AST implementation in favor of new new parser; this also
    removes the experimental feature from the crate (#79).
  • Removed dependency on miette and thiserror in the experimental parser,
    re-exported key items from wdl-grammar's experimental parser implementation,
    and changed errors to use Diagnostic (#68).

wdl-lint 0.2.0

Added
  • Ported the CommandSectionMixedIndentation rule to wdl-lint (#75)
  • Ported the Whitespace rule to wdl-lint (#74)
  • Ported the MatchingParameterMeta rule to wdl-lint (#73)
  • Ported the PreambleWhitespace and PreambleComments rules to wdl-lint
    (#72)
  • Ported the SnakeCase rule to wdl-lint (#71).
  • Ported the NoCurlyCommands rule to wdl-lint (#69).
  • Added the wdl-lint as the crate implementing linting rules for the future
    (#68).

wdl-gauntlet 0.3.0

Changed
  • Migrated wdl-gauntlet to use the new parser implementation (#76)

wdl-v0.3.0

31 May 20:32
Compare
Choose a tag to compare

Component Crate Updates

  • wdl-core: bumped from v0.1.0 to v0.2.0 (release)
  • wdl-grammar: bumped from v0.2.0 to v0.3.0 (release)
  • wdl-ast: bumped from v0.1.0 to v0.2.0 (release)
  • wdl-gauntlet: bumped from v0.1.0 to v0.2.0 (release)

wdl-grammar-v0.3.0

31 May 20:17
Compare
Choose a tag to compare

Fixed

  • Fixed the experimental parser to correctly lookahead to disambiguate struct
    literals (#TBD).
  • Fixed the experimental parser to skip parsing if it cannot find a supported
    version statement (#59)
  • Fixed handling of None literal values in expressions in the experimental
    parser (#58).
  • Fixed the experimental parser to accept multiple placeholder options
    (#57).
  • Fixed recovery in the experimental parser to move past interpolations in
    strings and commands (#56).
  • Fixed parsing of reserved identifiers and recovery in metadata sections
    in the experimental parser (#52).
  • Fixed parsing of empty inputs to a task call statement in the
    experimental parser (#54).
  • Fixed parsing of postfix + qualifier on array types in the experimental
    parser (#53).
  • Fixed parsing of placeholder options in the experimental parser such
    that it can disambiguate between the sep option and a sep function
    call (#44).

Added

  • Adds support for workflow statements in the experimental parser
    (#49).
  • Adds support for runtime sections in the experimental parser
    (#48).
  • Adds support for command sections in the experimental parser
    (#47).
  • Adds support for input and output sections in the experimental
    parser (#46).
  • Adds support for import statements to the experimental parser (#43).
  • Adds support for bound declarations and expressions in the experimental
    parser (#42).
  • Adds support for parsing meta and parameter_meta sections in tasks
    and workflows in the experimental parser (#39).
  • Adds support for parsing struct definitions to the experimental parser;
    requires the experimental feature to be activated (#38).
  • Adds a new experimental SyntaxTree representation; requires the
    experimental feature to be activated (#36).
  • Adds an experimental module containing the start of a new
    infallible WDL parser implementation based on logos and rowan (#30).
  • Adds the missing_runtime_block rule for tasks (#10, contributed by
    @markjschreiber).
  • Adds the snake_case rule that ensures all tasks, workflows, and variables
    are snakecase (#13, contributed by @simojoe).
  • Adds the newline_eof rule for tasks (#18, contributed by @simojoe).
  • Adds the document_preamble rule for documents (#25, contributed by @adthrasher)
  • Adds the preamble_comment rule for preamble comments formatting (#32,
    contributed by @simojoe).
  • Adds the one_empty_line rule that ensures no excess of empty lines
    (#33, contributed by @simojoe).
  • Adds the double_quotes rule for quote styling in string declarations
    (contributed by @simojoe).

Changed

  • Conform to definition of body as outlined in #12 (#62, contributed by @a-frantz)
  • Changes the preamble_comment rule so that continuous blocks of comments are reported.
    Also permits triple+ pound sign comments outside of the preamble. (#55, contributed by @a-frantz)
  • Changes the snake_case rule so that lowercase letters can be adjacent to digits without triggering
    a warning (#55, contributed by @a-frantz)
  • Changes the singular Group feature of lint warnings to one or more Tags (#37, contributed by @a-frantz)
  • Changes the tags and levels of various rules to better align with #12 (#37, contributed by @a-frantz)

wdl-gauntlet-v0.2.0

31 May 20:19
Compare
Choose a tag to compare

Changed

  • Core goal of crate is split in two:
    • The goal of (base) wdl-gauntlet is to ensure the parsing of syntactically valid WDLs never regresses.
    • The goal of wdl-gauntlet --arena is to test lint rules against WDL "in the wild".
  • LintWarnings are ignored (when there is no --arena flag)
  • uses libgit2 (via the git2 crate) instead of the GitHub REST API (via octocrab and reqwest crates)
  • no more persistent cache (Now uses temp-dir)

Added

  • The --arena flag and Arena.toml for lint rule testing
  • more test repos!
  • test repos are tracked at specific commits

wdl-core-v0.2.0

31 May 20:16
Compare
Choose a tag to compare

Added

  • Adds Clarity and Portability tags (#37, contributed by @a-frantz)

Changed

  • Conform to definition of body as outlined in #12 (#62, contributed by @a-frantz)
  • Changes the singular Group feature of lint warnings to one or more Tags (#37, contributed by @a-frantz)

wdl-ast-v0.2.0

31 May 20:18
Compare
Choose a tag to compare

Fixed

  • Fix ignoring comments in expressions (#23).

Changed

  • Conform to definition of body as outlined in #12 (#62, contributed by @a-frantz)
  • Changes the singular Group feature of lint warnings to one or more Tags (#37, contributed by @a-frantz)

wdl-v0.2.0

17 Dec 23:05
Compare
Choose a tag to compare

Crate Updates

  • wdl-ast: introduced at v0.1.0 (release)
  • wdl-core: introduced at v0.1.0 (release)
  • wdl-gauntlet: introduced at v0.1.0 (release)
  • wdl-grammar: bumped from v0.1.0 to v0.2.0 (release)
  • wdl-macros: introduced at v0.1.0 (release)

wdl-macros-v0.1.0

17 Dec 22:16
Compare
Choose a tag to compare

0.1.0 — 12-17-2023

Added

  • Adds the initial version of the crate.

wdl-grammar-v0.2.0

17 Dec 22:39
Compare
Choose a tag to compare

0.2.0 - 12-17-2023

Added

  • Adds lint to suggest replacing curly command blocks (4ee030f).
  • Adds the Pedantic lint group (bc17014).

Revisions

  • Multiple revisions to the inner data model to support the introduction of the
    wdl-ast crate (e2436ce).
  • Clarifies that whitespace is undesired and not invalid (457c383).
  • Increases visibility of lint and validation modules (59543c3).
  • Adds a location, a body, and a fix suggestion to warnings (335afaf).
  • Applies s/message/subject/g for lint rules (6dce4a2).

Chores

  • Normalizes crate description (f19ce7e).
  • Updates formatting to version = "Two" (f63c188).
  • Moves tokio to the workspace dependencies (66da811).
  • Specifies the dep: prefix for the binary feature dependencies (e0b2cb5).
  • Improves the binary crate documentation (a995a89).