Skip to content

Releases: MalteJanz/ludtwig

Release 0.8.3

01 Mar 16:07
2cf0431
Compare
Choose a tag to compare

What's Changed: ludtwig@v0.8.3

  • The used ludtwig version is now printed out every time ludtwig is executed
  • #90 Print out the used config file or environment variable overrides
  • #90 Added --verbose CLI flag to print out all used config values
    and maybe more details in the future
  • #103 Fixed bugs where the twig-block-line-breaks rule was not
    suggesting line breaks on top level in the file or suggested breaks when a comment was present before it

What's Changed: ludtwig-parser@v0.5.3

  • #96 Fix parsing of twig component tags
  • #89 Allow parsing of less than sign in text

Full Changelog: v0.8.2...v0.8.3

Release 0.8.2

10 Feb 14:01
80be2ae
Compare
Choose a tag to compare

What's Changed: ludtwig@v0.8.2

  • updated dependencies to latest version + Cargo.lock file

What's Changed: ludtwig-parser@v0.5.2

  • updated dependencies to latest version + Cargo.lock file

New Contributors

  • @shyim made their first contribution in #87

Full Changelog: v0.8.1...v0.8.2

Release 0.8.1

02 Feb 12:41
2866752
Compare
Choose a tag to compare

What's Changed: ludtwig@v0.8.1

  • Fixed an issue where .ludtwig-ignore in the current working directory (where ludtwig is executed) was not respected if not included in searching paths. Workaround was using ludtwig ..
  • Updated CI pipelines to automaticly publish with semantic versioning to docker hub. Use the latest tag to always stay up to date or specify a specific minor / complete version
  • There is now a Nix package available, thanks to @shyim

What's Changed: ludtwig-parser@v0.5.1

  • #79 Fix two failing tests when running cargo test --release
  • #82 Fix parsing of unquoted twig hash syntax, when it only consists of a single underscore

Full change history: v0.8.0...v0.8.1

Release 0.8.0

13 Sep 14:21
Compare
Choose a tag to compare

What's Changed: ludtwig@v0.8.0

  • Added twig-use-is-not-same-as rule
  • Added twig-use-is-same-as rule
  • Added twig-prefer-shopware-extends rule
  • Added a working docker image maltejanz/ludtwig:0.8.0
  • Fixed twig-block-name-snake-case rule to handle digits correctly
  • Fixed twig-block-line-breaks rule to not suggest line breaks inside HTML attribute strings

What's Changed: ludtwig-parser@v0.5.0

  • Fix HTML Tag name parser token collisions, which caused tags like source to not parse correctly
  • Fix Twig accessor parser to allow array indexing by dot operator
  • Fix lexer and parsing of colon word syntax like :special-attribute as HTML attribute and now support array[:upper] as Twig slice

New Contributors

Full Changelog: v0.7.0...v0.8.0

Release v0.7.0

21 Jul 08:45
bc53bcd
Compare
Choose a tag to compare

This release is breaking and contains almost a complete rewrite of the codebase.
Ludtwig is now a full Linter / Formatter with a rule system, which can make suggestions that can be applied automatically (--fix)

Release v0.6.1

23 May 14:34
Compare
Choose a tag to compare

A small hotfix release that fixes a panic (which stops the execution of ludtwig abruptly in an unintended way).

Changelog:

  • Hotfix for the parser:
    fixed a panic (attempt to subtract with overflow) for the parsing error line and column numbers reconstruction.
    this panic most likely only occurred on empty .twig files.

Release v0.6.0

23 May 13:50
Compare
Choose a tag to compare

This release brings another big milestone to ludtwig: configuration 🎉.
It also simplified the code base by removing async rust code and using a simple thread pool instead (which also improves the performance slightly).

Another big new feature is the reordering / sorting of tag attributes (which can be configured in an easy way).

Changelog:

  • Feature #5:
    Implemented layered configuration via environment variables or .toml files.
    The default configuration file can be generated on the fly with the -C flag and
    contains documentation for each config key. There is also a -c option to specify the path
    to a configuration file that should be used / generated by ludtwig
    (that is only necessary if it isn't in the current working directory).
    The default values behave the same as before this update.
  • Removed #38:
    All async code has been removed which makes the code base easier to read and to maintain.
    Ludtwig will still utilize all the processor cores that are available with a thread pool.
    This change comes with a massive performance improvement (around 2x on my machine) and slightly
    decreases the size of the compiled release binary.
  • Feature #33:
    The first iteration of attribute reordering is implemented together with it's own configuration.
    The default ordering configuration is not final yet.
    Also, any tags which contain twig syntax skip reordering their attributes for now.
    This feature also discards part of the previously mentioned performance improvement.
    Documentation for this can be found in the default config.
    Feel free to play with this feature and provide feedback.
  • Parser Bugfix #2:
    Line and column numbers for the human-readable errors should now be correct regardless of the line ending.
    They now also work correctly with utf-8 files.

Known issues:

Release v0.5.1

18 Feb 18:25
Compare
Choose a tag to compare

Changelog:

  • Bugfix #29:
    Allow . or ./ (current working directory paths) as input.
  • Bugfix #30:
    Fix ludtwig formatted file line endings to use CRLF on windows and LF on linux and macOS.

Kown Issues with this version:

  • Parser Crate:
    The parser does not report the correct line number on windows (CRLF line endings) for parsing errors.

Release v0.5.0

11 Feb 09:53
Compare
Choose a tag to compare

This release contains only one formatting change because ludtwig was printing twig blocks without empty lines around them in some cases where there should be empty lines.

Changelog:

Release v0.4.0

06 Feb 17:26
Compare
Choose a tag to compare

A small update that mostly makes the code of ludtwig a little easier to maintain but was worth another release because of the improvements to the parser.

Changelog:

  • An Update of ludtwig-parser (see changelog)
    and the use of iterators for the analyzing has improved the performance of ludtwig itself by around 20%.
  • The analyzer for duplicate twig block names now also checks blocks that are inside html tag attributes.
  • Code cleanup and refactoring