Skip to content

Latest commit

 

History

History
583 lines (399 loc) · 14.8 KB

Changelog.org

File metadata and controls

583 lines (399 loc) · 14.8 KB

Changelog

[2022-06-21] v0.17.1

Bugfixes

  • Unit test (b7a2b5d)

[2022-06-21] v0.17.0

New features

  • Improved Emacs integration (f3a5018)

Bugfixes

  • template() can accept multiple arguments (56c2f03)
  • Removed extra space in argument formatter (8a2f479)

[2022-06-17] v0.16.5

Bugfixes

  • Unit tests (d9320b3)

Other changes

  • Do not track Cargo.lock (9dc54fa)

[2022-06-08] v0.16.4

Bugfixes

  • Version of dependency (e11b97d)
  • Double check lambda body (00e5814)

Other changes

  • Do not align arrows (6a91250)
  • Cleanup code (0b4a993)

[2022-04-25] v0.16.3

Bugfixes

  • Float/int parser precedence, floats required to contain a dot (1f94226)
  • Leakage of dollar sign in double quotes (6a5c383)

Other changes

  • Updated version (ee07378)

[2022-04-20] v0.16.2

Bugfixes

  • Resource attributes names are just literals (a2ab2a7)

Other changes

  • Updated Guix manifest (276a824)

[2022-04-12] v0.16.1

Bugfixes

  • Cargo README path (99d7f12)

Other changes

  • Locked dependencies versions (523cf27)
  • Update version (3bfdbbc)
  • Added package.include for cargo publishing (9b2275d)
  • Fixes for cargo publish (60f99b7)
  • Added README in markdown format for cargo publishing (fe85d46)
  • Run clippy only on *.rs changes (b7c12cd)

[2022-04-12] v0.16.0

New features

  • Added lint support for hiera YAML files (717757e)
  • Improved printing rules (30f7635)
  • Improved printing rules (bbfdc37)

Bugfixes

  • Issue reported by linter (f2de2b1)
  • Added missing file (cef90b7)
  • Single-quoted keywords cannot be serialized as barewords (f818686)

Other changes

  • Reindented (a7190f9)

[2022-03-29] v0.15.0

New features

  • Added manifest for Guix (3fd15b8)

Bugfixes

  • Bumped version in Guix manifest (4f75f11)
  • Added versions for local deps (8d67974)

Other changes

  • Glued subprojects into one (d2849f3)

[2022-03-29] v0.14.0

New features

  • Customizable pp lints (4b321de)
  • ErbReferencesToUnknownVariable warns if unable to open ERB (70d0157)

Bugfixes

  • Added versions for local deps (ea9dce3)
  • Subcommand was renamed earlier (b684126)
  • Do not panic if class was not found in pp file (c6f46d5)
  • Added missing comment to pretty printer of relations (a7e7299)

Other changes

  • Improved README (fcb81c5)
  • Added code examples for lints (033d994)
  • Added lints description (0332864)
  • Unified lints names (fcf0d34)

[2022-03-27] v0.13.0

New features

  • Added experimental lint unused_variables (75c5a72)
  • Added lint erb_references_to_unknown_variable (ceeb774)
  • Added lint invalid_resource_collection_invocation (97b5c9d)
  • Added lint reference_to_undefined_value (a027c64)

Other changes

  • Reduced memory pressure (a2c5ca8)

[2022-03-23] v0.12.0

New features

  • Linter for resource/builtin invocation (fc3c329)
  • Improved error message (47a0f8f)
  • Initial linter context support (cfa646b)
  • [WIP] Experimental VIM support (ba77277)
  • Better assignments linter (f895881)
  • Better indentation of Struct values (f31dc05)
  • Linter digs deeper into AST (d5194b2)
  • Added variable flag is_local_scope (adb8a9e)
  • Added lint expression_in_single_quotes (1bab824)
  • Added error_subtype to resulting JSON (a7cb230)
  • Added complex lint exec_attributes (b99d9c5)
  • Added lint constant_expression_in_condition (5962ecf)
  • Added support of ‘return()’ builtin function (0ed0dda)
  • Added lint unconditional_exec (dbffaf0)
  • one-line resource printer (d3ab0f5)

Bugfixes

  • Issues reported by linter (265a0a5)
  • Accurate error location, dig deeper into modules (fd3f9ed)
  • Issues reported by linter (01abe40)
  • Issues reported by linter (02054e3)
  • Print correct position of duplicate key in yaml files (68e0e49)
  • Improved pretty printer of Structs (9c7bb74)
  • Error message (5345a59)
  • Dollar escapes are now allowed in single-quoted strings (4141691)
  • Lint invalid_string_escape (f8306da)
  • Nested return() value (d72a87f)
  • Changed unittest to match BUG of official Puppet parser (925dee8)
  • Bareword pretty printer (d6976ea)
  • Strings are first-priority key types in resources (31ff689)
  • Bareword parser (8508f2a)
  • Split C-style comments by newline (2d2c7b5)

Other changes

  • puppet_ast_tool renamed into puppet_tool (cd47e37)
  • Cleanup (1962950)
  • Fixed description (a0b1563)

[2022-03-17] v0.11.0

New features

  • Added unit tests for wide lines (6f94b61)
  • Added unit tests for builtin (07cb599)
  • Improved manifests parser (86f8270)
  • Improved error reporting for brackets and parens (de5cdae)
  • Added pretty printer integration with Emacs (eca027d)

Bugfixes

  • Comma is prohibited here (9430032)
  • Unit test (16a1483)
  • Added implicit space before args list (ba5c78d)
  • Allow type specification with empty arguments list in brackets (c5a74c6)
  • Protect infix operators (ba3dd59)
  • Improved formatter for delimited lists (30ac8c2)
  • Always parse file till EOF (350a74a)

Other changes

  • Cleanup (522b391)
  • Updated deps (e923c29)

[2022-03-16] v0.10.2

Other changes

  • Removed vendored sources (21e944f)

[2022-03-16] v0.10.1

Other changes

  • Project is renamed once again (c137e48)
  • Use local Rust mirror (bdf350e)

[2022-03-16] v0.10.0

New features

  • Improved multiline pretty printer for maps (808a05e)
  • Better arrows indentation (16ee759)
  • Added unit tests (8494f2a)
  • Pretty printer (cbe3973)
  • [WIP] Pretty printer (e3fa8cc)
  • [WIP] pretty printer (160fd8f)
  • [WIP] pretty printer (ac3084c)
  • Comments are now included into AST (40d1dfa)
  • Added AST dumper (c80e8b1)

Bugfixes

  • Issue reported by linter (a26f5d4)
  • Updated unit tests (8fbfea9)
  • Underscore char is valid in barewords (b07915d)
  • Ugly arrows indentation (d41a982)
  • Added subcommand for pretty-printing (0781f70)
  • Minor printing fixes (dfb7f84)
  • Printer for maps (21a3821)
  • Tool adopted to updated AST (9dd0fd0)
  • Lambda printer for builtin functions (6fd3752)
  • Added hardline before non-empty attributes list (5d819ee)
  • Minor AST improvements (136d6fa)
  • Issues reported by linter (be8129c)
  • Minor AST and parser improvements (36bc6a4)
  • Minor parser issues (39a9bf9)
  • builtin functions parsing rules (2944d15)
  • Interpolated expressions parser (439d6fd)
  • Comment is owned by inner expression (cd071a7)

Other changes

  • Accessor is now universal property of expression (36cecc2)
  • Toplevel is now a struct (7082a0d)
  • Generate DEB package using alien (358f3a7)
  • Removed dependency on EPEL (6dcad34)

[2022-03-13] v0.9.0

New features

  • Added resourceset defaults parser and linter (9380ae6)
  • Endpos support for Flycheck in Emacs (867d9c9)
  • Linter is based on Ranges now (80e2b13)
  • [WIP] extra Location => extra Range (9cb2bd4)
  • Init module for Emacs’ Flycheck (1e69f0d)
  • Better useless parens detection (3e331d2)
  • Added lints DoubleNegation and NegationOfEquation (7fa00fb)
  • Deeper lint traversing (c6daea8)
  • Deeper lint traversing (b6112a9)
  • Added lint AssignmentToInvalidExpression (9d371b2)
  • Strings interpolation parser (ebf9bf5)
  • Deeper lint traversing (73b95ce)
  • Added lint InvalidStringEscape (b76601a)
  • Added parser for function definitions (ca44f93)
  • Added support for type definitions (3368ee0)
  • Added lint RelationToTheLeft (c8c6069)
  • Better detection of useless parens, improved AST traverse (4398f65)
  • Save MacOS build as Generic artifact (e767f3d)
  • Added lint StatementWithNoSideEffects, major refactoring (0d9cbdc)
  • Added summary for human-style outputs (2e2ab60)
  • Manifest parser errors with optional URL (9f6dc68)

Bugfixes

  • Improved error messages (569dd8a)
  • Parser improvements (3ec46f1)
  • Interpolations parser (1c95940)
  • Toplevel parser (bd14df3)
  • Issues reported by linter (a642550)
  • Improved toplevel parser (f400c7d)
  • Updated Rust source (5895e30)
  • [WIP] Reimplemented builtin functions parser (f098480)
  • Parser issues (51bb7e3)
  • Split by character (06e8e6e)
  • Cleanup (2fec08f)
  • Issues reported by linter (1b9e53c)
  • Unit tests (2f5595d)
  • [WIP] Unit tests Location ==> Range (17be534)
  • Expressions priorities (76fcf56)
  • StatementWithNoEffect will never alert on last statement of the set (bb8fa9e)
  • Improved parser (f14f325)
  • Removed debug (700b9b4)
  • Implemented missing match case (bc898bd)
  • Tests (14628a4)
  • Improved parser (c89ba78)
  • Test (c066097)
  • Improved parser (4fbaff1)
  • Tests (1bb1e88)
  • Optional comma (4589a5e)
  • Typo (e0cd875)
  • Improved error reporting (7bb2044)
  • Added space to message (a927a21)

Other changes

  • Length-dependent types parser (e1183ff)
  • Vendored deps (018f75d)
  • Removed parser.rs (8fa0276)
  • Lint renamed (8fba5b2)
  • Split module (886ee9c)
  • AST for strings internals (d8be671)
  • Reordered expression variants in priority order (c133128)

[2022-02-17] v0.8.0

New features

  • Unified error API (843a4a5)
  • Protect match operator (939b0d2)
  • Added lint SelectorInAttributeValue (00abfd9)

Bugfixes

  • Issue reported by linter (231c134)
  • Statement set is actual toplevel (53cbace)
  • Extended double quoted string escape sequences (0dfa726)
  • Single quoted string has limited escape sequences (edb4106)

Other changes

  • Updated licence and authors list (2bd45cf)
  • Added parse_statement_list() (52080bf)
  • Added README.md (b8dd5a5)
  • Project is renamed (4286af4)
  • Moved YAML parser into separate project (d8e1476)
  • Moved linters into separate subproject ‘puppet_pp_lint’ (e45d1d5)
  • ‘default’ case now parsed into separate variant (d2c0123)
  • Error message (3e0caca)

[2022-02-16] v0.7.0

New features

  • Added lint NoDefaultCase (b35d7b9)
  • Added lint SensitiveArgumentWithDefault (964b3c8)
  • Added lints for lowercase naming (0af0115)
  • Added lint MultipleResourcesWithoutDefault (35c3085)
  • Added lint for file mode (c169d14)
  • Added new lints (51f4b13)
  • Added lint UselessDoubleQuotes (af6d49a)
  • Added new lints (a9fe3c5)
  • Improved linters infrastructure (976e84e)
  • New linters (4a1fd47)
  • Added linter DoNotUseUnless (a503d48)
  • Better error reporting (23b87ee)
  • C-style comments (48f2315)
  • Nested toplevels (0181ba5)
  • Resource attribute groups are supported (5aa9da3)
  • Added term variant Regexp (11bf1d0)
  • Added chain operator parser (65d1dda)
  • Added parser for create_resources() (a4ce9b8)
  • Added support for ‘unless’ statement (1e97ecb)
  • Added parser for selectors (ba2a47b)
  • Added parser for resource collectors (a793726)
  • Added parser for ‘case’ statement (0047e6c)
  • New statement parsers (f9b6b83)
  • Added new statement parsers (96b7845)
  • Added resource relation statement (916220d)
  • Improved test for multi-statement bodies (c3b76fa)
  • Initial support for parsing statements (88d588a)
  • Added test for parens in expression (317dfde)
  • Implemented all kinds of expressions (2501e23)
  • Implemented modulo operator (7a709c2)
  • Added test for comma separated list in brackets (646667e)
  • Added lint readable_argument_name (0cdeb61)
  • Improved error message (b7c601f)
  • Added more unit tests (62c3860)
  • linter check unique_arguments_names (ddbaae6)
  • linter check argument_typed (170fb72)
  • Linters: argument_looks_sensitive, optional_arguments_goes_first (31bdb37)
  • [WIP] pp linters infrastructure (61e32b2)

Bugfixes

  • Logic error in OptionalArgumentsGoesFirst (ea07161)
  • Isuues reported by linter (d272dbc)
  • Issue reported by linter (b7b713d)
  • Test (f752e6f)
  • Issue reported by linter (b61a1f3)
  • Accessor can be constructed from multiple indexes (d5c8abc)
  • Parsing order (c8ac65c)
  • Empty shell-style comments (392d680)
  • Optional terminating semicolon in resource set (6d2c053)
  • Improved error messages (c78d85a)
  • Parser improvements (a32c27e)
  • Veriable/argument name can start with underscore (3326391)
  • Fixed chain call parser (105f8ad)
  • Use correct parser for lambda args (68c50da)
  • Multiple parsing fixes (52ab7fe)
  • Fixed parsing order of comparsion operators (a72db24)
  • “Not” expression contains sub-expression (87bf19b)
  • Identifiers can start with underscore (a9ad143)
  • Ignore spaces (8767ded)
  • Issue reported by linter (5b3722d)
  • Issue reported by linter (db59885)
  • Second element of min_max pair is optional (8ad4841)
  • Support for external types with arguments (c0ee675)
  • Issues reported by linter (2fb2840)

Other changes

  • LintError now contains lint itself with optional URL (e811d0d)
  • Extended linters infrastructure (ed3fd19)
  • Added check_toplevel_variant() (7822815)
  • Renamed field (952463c)
  • Import frequently used terms (4997057)
  • New implementation for relation chains (37e99de)
  • ResourceRelation -> ResourceTypeRelation (b4bffb0)
  • Major refactoring (7e06cb1)
  • [WIP] Major refactoring (c17e664)
  • [WIP] Major project refactoring (576a5dd)

[2021-11-29] v0.6.1

Bugfixes

  • RPM spec example config installation (8c57d3f)

[2021-11-29] v0.6.0

New features

  • Added configuration file (a3681bb)
  • Improved error reporting (76a1d36)
  • *.pp AST cache (add99ce)
  • AST with location markers (ef613b5)
  • Check if class has arguments specified in hiera files (c8ad50f)
  • Initial *.pp parser (0abcde0, b381c05)

Other changes

  • Got rid of AST with borrowed values (a660687)

[2021-11-23] v0.5.0

New features

  • Added hiera check: key {…} contains single semicolon (5cd8fe9)
  • Detect invalid characters in puppet module names (4455914)
  • Initial merge keys support (416f1dc)
  • Added unit tests for yaml duplicate keys (75c130b)
  • Check if yaml is not executable (32f0c68)
  • Count errors, exit with code 1 on error (6c0c572)

Bugfixes

  • Do not throw DuplicateKey error for merge operation (973e03f)
  • Fixed error message (03d4595)

Other changes

  • Added documentation for TODO (a3afc5b)
  • Early return (2f7e08c)
  • Fixed typo in docstrings (3dc0add)

[2021-11-23] v0.4.0

New features

  • Added yaml/hiera checkers (7570d96)

Bugfixes

  • Resolved issues reported by linter (0272fd0)

Other changes

  • Added build notifications to CI (9a0b51f)
  • Added lint checks to CI (a0b61a0)

[2021-09-07] v0.3.2

Other changes

  • Added MacOS builds to CI (d2958a8)

[2021-09-07] v0.3.1

Bugfixes

  • Added linker options for MacOS (8c85bed)

[2021-09-05] v0.3.0

New features

  • Added value lookup path (e36d3a6)

Bugfixes

  • Added support of hiera.yaml from dev branch of mapuppet (be44b22)

[2021-09-04] v0.2.2

Bugfixes

  • marked-json is broken unless custom serializer is implemented for hash keys (8c5f8e2)
  • Issues reported by linter (904fa5c)

Other changes

  • Description in CI (f8d81b5)

[2021-09-04] v0.2.1

Bugfixes

  • Path to Cargo.toml and macro in spec file (6fc4cae)

[2021-09-04] v0.2.0

New features

  • Added rpm spec, Gitlab CI (b23a9db)

[2021-09-04] v0.1.0

New features

  • Dynamic recursive substitutions (14bf7b8)
  • Call git blame on whole key-value (b0a15de)
  • Initial commit (736bad1)