Releases: stjude-rust-labs/wdl
Releases · stjude-rust-labs/wdl
wdl-ast-v0.4.0
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 av1
module (#95).
wdl 0.4.0
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 theexperimental
feature from the crate (#79). - Removed dependency on
miette
andthiserror
in the experimental parser,
introduced theDiagnostic
type as a replacement, and switched the existing
parser errors over to useDiagnostic
(#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 theexperimental
feature (#64).
Changed
- Removed the old AST implementation in favor of new new parser; this also
removes theexperimental
feature from the crate (#79). - Removed dependency on
miette
andthiserror
in the experimental parser,
re-exported key items fromwdl-grammar
's experimental parser implementation,
and changed errors to useDiagnostic
(#68).
wdl-lint
0.2.0
Added
- Ported the
CommandSectionMixedIndentation
rule towdl-lint
(#75) - Ported the
Whitespace
rule towdl-lint
(#74) - Ported the
MatchingParameterMeta
rule towdl-lint
(#73) - Ported the
PreambleWhitespace
andPreambleComments
rules towdl-lint
(#72) - Ported the
SnakeCase
rule towdl-lint
(#71). - Ported the
NoCurlyCommands
rule towdl-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
wdl-grammar-v0.3.0
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 thesep
option and asep
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
andparameter_meta
sections in tasks
and workflows in the experimental parser (#39). - Adds support for parsing struct definitions to the experimental parser;
requires theexperimental
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 onlogos
androwan
(#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 moreTags
(#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
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".
- The goal of (base)
LintWarnings
are ignored (when there is no--arena
flag)- uses
libgit2
(via thegit2
crate) instead of the GitHub REST API (viaoctocrab
andreqwest
crates) - no more persistent cache (Now uses
temp-dir
)
Added
- The
--arena
flag andArena.toml
for lint rule testing - more test repos!
- test repos are tracked at specific commits
wdl-core-v0.2.0
wdl-ast-v0.2.0
wdl-v0.2.0
wdl-macros-v0.1.0
0.1.0 — 12-17-2023
Added
- Adds the initial version of the crate.
wdl-grammar-v0.2.0
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
andvalidation
modules (59543c3). - Adds a location, a body, and a fix suggestion to warnings (335afaf).
- Applies
s/message/subject/g
for lint rules (6dce4a2).