Skip to content

Latest commit

 

History

History
1130 lines (867 loc) · 93.7 KB

HISTORY.md

File metadata and controls

1130 lines (867 loc) · 93.7 KB

Changelog

2.5.0 (2021-07-23)

Full Changelog

Implemented enhancements:

  • Include check name in log output by default #883 (usev6)

Fixed bugs:

  • Array operations on parameters confuse puppet-lint #930
  • Wrong warrning: "variable contains an uppercase" #929
  • Erroneous "WARNING: indentation of => is not properly aligned" since 2.4.0 #912
  • NoMethodError: undefined method `next_token_of' for nil:NilClass #906
  • Lint failure on reduce function #869
  • lint failure on 'ensure' word in dsc_lite module #866
  • Content of heredocs should not be checked #851
  • Whoops! It looks like puppet-lint has encountered an error that it doesn't #839

Closed issues:

  • heredoc prematurely terminated #940
  • Heredoc syntax error #935
  • Lint for ' #927
  • puppet-lint-class_parameter-check fails on voxpupuli/collectd #926
  • puppet-lint error #917
  • Improper "unquoted node name found" #904
  • 2.4.x regression with puppet-lint-legacy_facts-check #902
  • puppet-lint a puppet type in voxpupuli-corosync #857
  • Create and publish a docker image for puppet-lint #794

Merged pull requests:

  • Select parameter tokens based on preceeding code token #934 (rodjek)
  • Move most CI to GH actions #933 (rodjek)
  • Correctly lex non-keyword type tokens in interpolation #932 (rodjek)
  • Disallow empty lines between docs and class/define #931 (ekohl)
  • Improve Rake task #919 (raphink)
  • (#912) Count consumed chars not bytes when slurping strings #915 (rodjek)
  • Do not rely on tokens array positioning when fixing ensure_first_param problems #914 (rodjek)
  • Only run test coverage once #913 (rodjek)
  • add MIT license to gemspec #910 (bastelfreak)
  • Improve spelling for some tests #909 (usev6)
  • (#851) Ensure heredoc ending tag is on its own line #903 (rodjek)
  • (#794) Dockerfile for puppet-lint #901 (rodjek)

2.4.2 (2019-10-31)

Full Changelog

Fixed bugs:

  • ERROR: Syntax error (unterminated string) with 2.4.1 #899
  • Double quoted string containing variable named "node" mis-tokenized #897
  • 2.4.1 says Syntax error, but code runs fine #891
  • Error with regex variable with multiple |s. #859

Closed issues:

  • WARNING: double quoted string containing no variables #895

Merged pull requests:

  • Fix regression in tokenization in double-quoted strings #898 (seanmil)
  • Speed up calculation of resource indexes #893 (usev6)
  • Search end of string before assuming escaped quote #892 (usev6)
  • Allow parsing of regexes as rvalues #882 (usev6)

2.4.1 (2019-10-09)

Full Changelog

Fixed bugs:

  • Puppet-lint 2.4.0 throws misleading warning on double-quoted strings with escaped variables #886
  • Puppet-lint 2.4.0 - ERROR: Syntax error on line x #887
  • Breaks after 2.4.0 upgrade #885

Merged pull requests:

  • Fix escaped ${} enclosure handling when slurping double quoted strings #889 (rodjek)
  • Fix non-indented heredoc parsing #888 (rodjek)

2.4.0 (2019-10-08)

Full Changelog

Fixed bugs:

  • Syntax error on Pattern data type #833
  • Command line options do not override options from config files #879
  • Fix for variables_not_enclosed incorrectly handles variables followed by a dash #836
  • Error with puppet-lint --fix: NoMethodError: undefined method `next_token' for nil:NilClass #831
  • TypeError: no implicit conversion of nil into String #830
  • Selector with 'default' case disables check for missing default in outer case statement #829
  • undefined method `next_token' for nil:NilClass #824
  • NoMethodError: undefined method `next_token' for nil:NilClass #790
  • Puppet-lint --fix silently removes necessary $ inside double quoted strings #773
  • It looks like puppet-lint has encountered an error that it doesn't know how to handle #768
  • puppet-lint lexer string interpolation needs to be updated to match PUP-5887 changes #747
  • Syntax error causes 'Whoops!' #740
  • "quoted boolean value found" in hash value should not raise a warning. #474

Closed issues:

  • Error when running puppet-lint #862
  • puppet-lint crashes with mispelled namespace seperators #853
  • NoMethodError: undefined method `prev_token' for nil:NilClass #845
  • Lint incorrectly errors on quoted bool #844
  • Type[]] raises NoMethodError #843
  • Whoops! It looks like puppet-lint has encountered an error that it doesn't know how to handle. #842
  • Whoops! It looks like puppet-lint has encountered an error that it doesn't #838
  • Incorrectly wrapped hash variable inside double quotes #826
  • Test puppet-lint against Ruby 2.5.x #818
  • nested ensure misdetected as not coming first. #410

Merged pull requests:

  • README - Add GitHub Actions action #868 (ScottBrenner)
  • Update TravisCI config to use trusty image #867 (rodjek)
  • Use the default travis rubygems & bundler #860 (rodjek)
  • Add Sensitive to the list of KNOWN_TOKEN TYPES #858 (alexjfisher)
  • Avoid internal error for typoed namespace #855 (usev6)
  • Use lookahead assertion for matching function name #854 (usev6)
  • Resource: fix nested ensure error. #848 (keur)
  • Rewrite double quoted string handling for nested interpolation #846 (rodjek)
  • Allow for spaces in the heredoc tag #841 (jarretlavallee)
  • Recognizes multiline regexes #835 (jcbollinger)
  • Handle unenclosed variables followed by dashes when fixing #881 (rodjek)
  • Let command line args override config from files #880 (usev6)
  • Ignore hash keys when checking resource parameter order #877 (rodjek)
  • Only look for 'default' at first level of 'case' statement #876 (usev6)
  • Report syntax error on unbalanced braces #875 (rodjek)
  • Include hash/array references when enclosing variables #874 (rodjek)
  • Disable quoted_booleans check by default #873 (rodjek)
  • Test against Ruby 2.5 & 2.6 #872 (rodjek)

2.3.6 (2018-07-09)

Full Changelog

Fixed bugs:

  • --fix does not work with require arrows in certain situations #799
  • Error with --fix when no whitespace before hashrocket in resource attribute list #798
  • puppet-lint --fix strips comments when fixing arrow_on_right_operand_line #792
  • Crash report, reason unclear #781
  • crash in fix mode with multiple trailing arrows #776
  • Error negative argument if opening brace on the same line and following element longer #771
  • ArgumentError: negative argument #723

Merged pull requests:

  • (#771) Handle arrow alignment when arrow column < opening brace column... #819 (rodjek)
  • Less aggressive fix method for arrow_on_right_operand_line #817 (rodjek)
  • Check if token still exists before fixing trailing_whitespace #816 (rodjek)
  • Run all the checks before fixing problems #815 (rodjek)

2.3.5 (2018-03-27)

Full Changelog

Fixed bugs:

  • v2.3.4 breakage - 'wrong number of arguments' when using Rake task #812

Merged pull requests:

  • Make PuppetLint::OptParser.build argument optional #813 (rodjek)

2.3.4 (2018-03-26)

Full Changelog

Implemented enhancements:

  • Allow ignoring default configurations files on the command line #787
  • Implement --list-checks feature, to list the names of all available checks from the cli. #804 (xraystyle)
  • Option to disable loading default configurations files #789 (dioni21)
  • Allow passing ignore_paths from cli #783 (keymone)

Fixed bugs:

  • Bad value for range #801
  • puppet-lint doesn't handle CRLFs very well #778
  • Configuration's ignore_paths is not respected #774
  • Error when including class and missing a colon #507

Merged pull requests:

  • Handle single colon in resource name syntax error #809 (rodjek)
  • (#778) Don't include line ending in single line comment token values #782 (rodjek)
  • Fix setting ignore_paths in Rake task #777 (alzabo)
  • Add support for passing backslash separated paths to puppet-lint #769 (rodjek)

2.3.3 (2017-09-28)

Full Changelog

Closed issues:

  • 2.3.2 - Rakefile's ignore_paths not respected #760
  • 2.3.1 - Puppet lint fails with 1.8.7-p371 and Puppet 3.8.0 #759

Merged pull requests:

  • Add some basic acceptance tests #764 (rodjek)
  • Change acceptance tests to work with Ruby 1.8.7 #767 (rodjek)
  • Restore Ruby 1.8.7 support #763 (rodjek)
  • Don't override ignore_paths set in rake task with default value #762 (rodjek)
  • Add spec for issue raised in #754 #756 #761 (rodjek)
  • Fix setup of default log_format in PuppetLink.configuration when it is empty. #757 (zekefast)

2.3.2 (2017-09-27)

Full Changelog

Closed issues:

  • rake task now failing #754

Merged pull requests:

2.3.1 (2017-09-27)

Full Changelog

Fixed bugs:

  • incompatible encoding regexp match for non-printing characters in place of space #693
  • Unhandled error case #691
  • NoMethodError: undefined method `type' for nil:NilClass #732
  • NoMethodError: undefined method `end_with?' for nil:NilClass #727
  • puppet-lint not applying some lint:ignore statements when there are more then 2 on the same line #726
  • optional paramter warning false positve when inheriting params #716
  • invalid byte sequence in UTF-8 in selmodule-example.pp #714
  • puppet-lint --fix encountered an error that it doesn't know how to handle #706
  • Mangled file after running puppet-lint due to chained function call #703

Closed issues:

  • puppet-lint has encountered an error that it doesn't know how to handle #750
  • Puppet lint syntax error - puppet parser validate no issues #746
  • Whoops, not sure why. ArgumentError: bad value for range #742
  • ArgumentError: bad value for range #741
  • Whoops! It looks like puppet-lint has encountered an error #729
  • puppet lint config log_format not working #725
  • Chaining arrow syntax fix introduces trailing whitespaces #695
  • Refactor check_comments.rb #587
  • Puppethack 12/2016 Issues #583
  • Allow multiple block-level ignore comments #498
  • puppet-lint crashes with "invalid byte sequence in UTF-8 (ArgumentError)" #458
  • Variable use like "a+1 = ${$a + 1}" isn't reported but silently changed by --fix to "a+1 = ${a} + 1" #749
  • using --fix changes line endings #748
  • Error not handled #745
  • Line numbers off after multi-line strings with variables #736
  • Quoted booleans in Puppet5 for Enum type declarations. #720
  • Plugins reorganization: One file per check #657

Merged pull requests:

  • Remove monkeypatches to implement String#% #744 (rodjek)
  • Add unit tests for PuppetLint::Checks #743 (rodjek)
  • Update CI configuration #739 (rodjek)
  • Rubocop compliance #738 (rodjek)
  • Fix line numbers being off with multi-line strings containing variables #737 (cbowman0)
  • Split control comments into words before parsing #735 (rodjek)
  • Handle unicode spaces in the tokeniser #734 (rodjek)
  • Handle SE Linux policy package files #733 (rodjek)
  • Chaining arrow syntax fix introduces trailing whitespaces #708 (rnelson0)
  • Plugins: Improve code readability #658 (Darhazer)
  • Render the ${} enclosures as part of the string tokens #752 (rodjek)
  • Open manifest as binary when writing fixed manifest #751 (rodjek)
  • Take into account Optional data type when checking parameter order #731 (rodjek)
  • Read the manifest files as UTF-8 #730 (rodjek)
  • Improve handling of unterminated double quoted strings #728 (rodjek)
  • Add helper methods to add and remove tokens while maintaining the token links #694 (Darhazer)
  • Check that arrow is on the line of right operand #672 (Darhazer)
  • One file per plugin. Fixes #657 #671 (Darhazer)
  • Code style improvements #661 (Darhazer)

2.3.0 (2017-07-12)

Full Changelog

Closed issues:

  • Inappropriate => Indentation Warning in Hash #698
  • Regression: arrow_alignment check broken between 2.1.1 and 2.2.x releases when left side contains text after variable interpolation #697
  • Check arrow_on_right_operand_line is undocumented. #688

Merged pull requests:

  • (maint) Fixes puppet-lint json formatting to output valid json to stdout #719 (bmjen)
  • Permit puppet-lint to load "prerelease" gems #718 (kpaulisse)
  • Document the configuration file better #713 (binford2k)
  • Readme formatting fixes #709 (dbeckham)
  • Readme edit #707 (jbondpdx)
  • Take into account length of DQPOST token when updating column number #701 (dbeckham)
  • Add pattern support to rake task #700 (dbeckham)
  • Note arrow_on_right_operand_line in the README #690 (rodjek)

2.2.1 (2017-03-29)

Full Changelog

Closed issues:

  • Error on whitespace with 2.2.0 #683
  • "undefined method `map' for nil:NilClass" when running check_whitespace #681
  • "undefined method `next_token='" when fixing with check_whitespace #680
  • Release 2.2.0 planning and discussion #668

Merged pull requests:

  • restore the links between tokens after arrow_on_right_operand_line#fix #684 (rodjek)
  • level_tokens[0] can be nil if there is no params in the top level block #682 (rodjek)

2.2.0 (2017-03-29)

Full Changelog

Closed issues:

  • 2.1.1 git tag #652
  • Quoted boolean triggers on the command 'true' #646
  • Namevars detected as optional parameters #633
  • 'Duplicate Parameter' warning on dynamic class parameter #627
  • arrow_alignment should only check the alignment of the first arrow on each line #609
  • Top-scope variable warning on inline lambda #549
  • Puppet-lint crash with new puppet 4 syntax #516
  • Top-scope warning when looping though an array of hashes #464
  • Array of hashes one-liner throws a "Indentation of => is not properly aligned" #446
  • Missed bad file modes in file with multiple resource bodies #663
  • Provide helper methods to search for specific tokens #660
  • ensure_first_param fix can create invalid syntax #659
  • puppet-lint dies with inline_template syntax #656
  • Variable use like "${$a}" isn't reported as an error and is changed with no message when run with --fix #655
  • Linter gets confused with arrays of hashes #654
  • heredoc throws unhandled exception #649
  • Match function breaks puppet-lint #645
  • top-scope variable being used without an explicit namespace in a string with a lookup #635
  • unquoted file mode & mode should be represented as a 4 digit when file mode is done by a lookup #634
  • double_quoted_strings-check issue with escaped character in the string #625
  • unable to disable 140chars check with control comments "block" #622
  • unquoted_node_name crash when curly braces missing #582
  • Heredoc triggers exception in arrow_alignment check #578
  • Each + With = Fake positive top-scope variable detection #576
  • Top-scope variable warning on nested each loops #548
  • arrow_alignment --fix doesn't indent keys when introducing line breaks; erroneously reports success #506
  • heredoc escape gives syntax error #430
  • NoMethodError when multiple heredocs are used #395

Merged pull requests:

  • Support double quoted strings inside interpolated values in double quoted strings #676 (rodjek)
  • Deal with ruby 1.8.7 gem issues #630 (mterzo)
  • Ignore selectors when finding resource type #678 (rodjek)
  • Fix for arrow_alignment bugs in #506 #677 (rodjek)
  • Don't silently remove unnecessary $ from enclosed variables #674 (rodjek)
  • Fix ensure_first_param fix method to retrieve the full value of the ensure parameter #673 (rodjek)
  • Restrict appveyor testing to Ruby versions that appveyor supports #670 (james-stocks)
  • Clear expected parameter column after processing each block when checking arrow alignment #669 (rodjek)
  • Allow regexps to used as function arguments #665 (rodjek)
  • Catch unhandled exception and provide debug info for issue #664 (rodjek)
  • Fix showing of a failure #662 (Darhazer)
  • (SDK-115) Enable appveyor testing #653 (james-stocks)
  • Heredoc support #650 (rodjek)
  • Warn when control comment blocks are not properly terminated #648 (rodjek)
  • Prevent incomplete node blocks from crashing puppet-lint #642 (rodjek)
  • Update the tokeniser to differentiate between unquoted strings and function names #640 (rodjek)
  • Check for escaped backslashes too #639 (binford2k)
  • Correctly handle function calls inside string interpolation #638 (hanazuki)
  • Correctly handle nested lambdas #637 (hanazuki)
  • Support for nested multiple-variable assignments #636 (hanazuki)
  • Add LoadError to fix broken tests #631 (davidmogar)

2.1.1 (2017-02-15)

Full Changelog

Closed issues:

  • False positive detection in double quoted string containing no variables #618
  • Warning and error classification #614
  • Top-scope with multiple assignment using split #550
  • Strange error about indent with comments #475
  • Hash of hashes with long keys causes irrational warnings and crashes --fix #424
  • Wrong arrow alignment when key has interpolated variable #416
  • indentation of => is not properly aligned in hash within array #333

Merged pull requests:

  • Correctly handle strings-with-variables as hash keys in arrow_alignment check #621 (rodjek)
  • Support array of variables on left side of an assign operation #617 (rodjek)
  • Test against Ruby 2.4.0 #616 (rodjek)
  • Calculate arrow column from first parameter position, not the start of the line #615 (rodjek)
  • Do not test against Ruby 2.2 #613 (ghoneycutt)

2.1.0 (2016-12-30)

Full Changelog

Closed issues:

  • Excessive number of warnings from code_on_top_scope #579
  • Syntax error for references starting with Regexp #566
  • Module names must only contain lowercase letters #554
  • Remove formatting with linenumber #539
  • names_containing_dash is broken and unignorable #534
  • Puppet-lint 2.0 fails on unquoted string starting with underscore. #531
  • puppet-lint reports incorrect line numbers #403
  • Release version 2.1.0 #610
  • incorrect error on inline template #545
  • parameter_order check does not work default hash is added in parameter #544
  • Incorrect warning of required parameter when using array that includes variable. #537
  • syntax error on valid file when: if /regex/ in array #517
  • crashes if there is a # line:endignore with no begining. #509
  • Wrong behaviour of variable_contains_dash #504
  • Start a CHANGELOG, make updates part of the build workflow #479
  • Nested future scope blocks lose local variables from parent scopes. #456
  • block-local variables (|$x|) don't properly get recognized when used as arrays or hashes #450

Merged pull requests:

  • Ignore *.pp files at the top level #597 (rnelson0)
  • Show logs in rspec tests #596 (ghoneycutt)
  • Count lines in comments and double quoted strings #577 (paran1)
  • Handle mismatched control comments gracefully #573 (rodjek)
  • Reimplementation of --fix support for unenclosed variables delimited by dashes #572 (rodjek)
  • Anchor the end of the :TYPE token regexp #571 (rodjek)
  • Multi line strings #570 (jiuka)
  • @node_indexes should be reset too. #569 (jiuka)
  • True up reserved keywords #564 (rnelson0)
  • Implement a linter for uppercase class names #558 (arrdem)
  • Include --fix usage instructions #557 (QuinnyPig)
  • Updates PR for #223 #552 (binford2k)
  • Remove formatting with linenumber #540 (rski)
  • Potential README changes #420 (rothsa)
  • Add fix to "ensure found on line but it's not the first attribute" #375 (sathieu)
  • Checks for code outside class/define block #223 (dLobatog)
  • (#369) Document existence of control comments #600 (rnelson0)
  • (#517) Update the allowed tokens prior to a regex #594 (rnelson0)
  • (#531) Treat barewords beginning with an underscore as :NAME tokens #593 (rnelson0)
  • (#544, #537) Skip hash contents when checking optional parameters #592 (rnelson0)
  • (#545) Exempt inline_epp and inline_template from single quoted strin… #591 (rnelson0)
  • Disable code_on_top_scope by default until the noise can be reduced (… #590 (rnelson0)
  • Changelog generator task #589 (rnelson0)
  • Adding support for logging to STDOUT as JSON #487 (binford2k)

2.0.2 (2016-08-19)

Full Changelog

Implemented enhancements:

  • Option to choose version of the puppet style guide #190

Merged pull requests:

  • Revert "Bugfix: properly handling $gronk-$grouik with --fix (fix #442)" #535 (rnelson0)

2.0.1 (2016-08-18)

Full Changelog

Implemented enhancements:

  • Allow specifying the default enable status of a check #484

Closed issues:

  • Changelog on Github pages is out of date #520
  • 80char --> 140char transition incomplete #514
  • ensure_first_param-check should not consider hashes #512
  • RFE: Provide a way to selectively disable checks in puppet source #508
  • question: 1.1.0 --> 2.0.0 new checks #499
  • [#puppethack] disable_char_check doesn't work #493
  • Error fixing indent in possion 0 #489
  • Empty lines with trailing whitespace triggers redundant soft tabs error. #478
  • Little problem with => when variables are used as key #472
  • Question: using config file, with custom path #466
  • Error: "Variable in single quoted string" or "Double quoted string without variable" - syntax? #463
  • Critical error on Atom initialization #460
  • print warning for code that will result in logging or backups of secrets #455
  • Linter gets upset with Regexp in type #452
  • Single whitespace in file replaced with [] #444
  • Time for a new release! #443
  • Bug with --fix and warning "variable not enclosed in {}" #442
  • Linter should not warn about inheriting from params class #441
  • Variable not enclosed in {} AND single quoted string containing a variable #434
  • Quoted string issue due to structured data #433
  • allow for arrow alignment with more than one space before #432
  • 3 digit modes are incorrectly flagged #431
  • url_without_modules adding paths? #428
  • Check for unbalanced parenthesis #427
  • puppet-lint crash #422
  • PuppetLint.configuration.ignore_paths ignored by puppet-lint #417
  • Quoted boolean check should only check values #415
  • tabs before code issue #402
  • Disabled checks aren't actually disabled, output is merely ignored. #400
  • file modes doesn't have to be 4 digit octal #394
  • Option to disable top-scope variable warning for $facts and $trusted hashes #382
  • top-scope variable check incorrectly warning on second parameter in block #380
  • Looking for a tool that shows the output of puppet-lint and rspec-puppet on a screen like jenkins #374
  • Puppet lint should warn on semi colon usage when used without compression #367
  • "indentation of => is not properly aligned" and "ensure found on line but it's not the first attribute" weirdness #365
  • Run via jenkins complains about autoload module layout #361
  • Installing gems / puppet-lint may break puppet-enterprise #358
  • Double arrow after "symlink target specified in ensure attr" fix #341
  • "puppet:// URL without modules/" - in the style guide? Custom mount points? #307
  • Autoloader layout test fails inside a (custom named) module directory #265
  • Check for trailing comma in last line of a attribute/value list #237
  • Catch code outside of class or define block. #220
  • Catch global code outside of node blocks #160
  • Add a warning for resources outside of a class #69
  • Release a new build, 2.0.1 #519
  • Puppet-Lint 1.1.0 unhandled issue causing exit during -f #366

Merged pull requests:

2.0.0 (2016-06-22)

Full Changelog

Closed issues:

  • Current package #471
  • Arrow alignment check not working with semicolons in a (potential) multiple resources declaration #470
  • puppet-lint --fix ".../puppet-lint/plugins/check_comments.rb:55:in block in fix': undefined method value' for nil:NilClass (NoMethodError)" #461
  • WARNING: indentation of => is not properly aligned #447
  • Inheritance check #436
  • puppet-lint still checks for lines with more than 80 character #425
  • puppet-lint --help does not work #423
  • Test that "ensure" non-filename attributes are barewords #412
  • crashing puppet-lint 1.1.0 #409
  • Small Documentation Typo #408
  • Create v1.1.1 #401
  • TypeError running on seemingly-sane puppet file #399
  • Warning for line-length should be at 140 chars #396
  • Add fix for puppet_url_without_modules check #390
  • How to disable some fix ? #383
  • indentation of => is not properly aligned #381
  • parser error on modulo operator #379
  • Trailing blank lines discarded in PuppetLinter::Data.manifest_lines #378
  • nasty bug leading to --no-star_comments-check to not being honored with --fix #373
  • Puppet-lint for EPEL7 #372
  • puppet-lint failure for resource declarations with colons followed by non-whitespaces #370
  • Issue with puppet-lint 1.1.0 binary on lucid #364
  • Immediate action required: custom Pages domain pointed to a legacy IP address #363
  • 1.1.0 ignores trailing white spaces on lines without text #359
  • alignment warning on commented code #357
  • gem missing when installing with Puppet #356
  • --fix ignores control comment(s) and fixes anyway #347
  • colon after closing of class causing puppet-lint to crash. #344
  • New problem in unqouted_node_name check in 1.1.0 #343
  • whitespace check bug #339
  • 57fd065d0c2c116471cb16afec99631803496659 breaks indentation of => check #338
  • Error in Jenkins #337
  • Line numbers in developer tutorial documentation. #336
  • '--relative' option doesn't work with new RakeTask format introduced in 1.1.0 #335
  • Configuring RakeTask does not work anymore #331
  • "indentation of => is not properly aligned" for hash inside resource definition #327
  • --fix doesn't change "$var" to single-quotes #313

Merged pull requests:

  • (GH443) Release 2.0.0 PR #477 (rnelson0)
  • Fix arrow aligment check in multiple resources declaration #476 (wybczu)
  • Fix issue #450: block-local variables aren't recognized with subscripts #453 (jearls)
  • Changed character width to 140. #419 (potto007)
  • Fix arrow_alignment check to not raise exception when line isn't indented #413 (rodjek)
  • Fix puppet:// url check to catch double quoted strings #407 (paulgeringer)
  • Load puppet-lint plugins from Puppet modules #404 (raphink)
  • Get ignore_paths from the configuration #397 (lazyfrosch)
  • Skip checks on empty files #393 (vStone)
  • Add the fix functionality to puppet_url_without_modules #391 (someword)
  • Add various helper functions #389 (raphink)
  • Support older 1.8.7 patch numbers Kernel#caller output #387 (rodjek)
  • Detect trailing whitespace on lines with no code #386 (rodjek)
  • Save the raw value of MLCOMMENT tokens to use when rendering back to a manifest #385 (rodjek)
  • Don't suppress nil values in manifest_lines #384 (rodjek)
  • Only clear task if it's already defined #376 (domcleal)
  • Nested cases #368 (jonnangle)
  • rpearce: Allow the use of facts[] and trusted[] as per Puppet 3.5+ #362 (rjpearce)
  • Add node_indexes method #351 (mcanevet)
  • Don't attempt to fix ignored problems #349 (rodjek)
  • Handle case where a colon is the last token in a file #346 (rodjek)
  • Fix bug in unquoted_node_name to support multiple node blocks #345 (rodjek)
  • Catch Errno::EACCES when reading a puppet-lint.rc out of HOME #342 (rodjek)
  • Add support for '--relative' option in new Rake::Task format. #334 (fatmcgav)
  • fix #331 - clear any pre-(auto-)existing tasks #332 (duritong)
  • Don't warn for arrow alignment for single-element hashes #330 (domcleal)
  • Alternative to #289: :error on either class names and defines #290 (ppp0)

1.1.0 (2014-09-23)

Full Changelog

Closed issues:

  • Allow overriding filename for autoloader_layout #316
  • Alignment warning when => are all aligned. #309
  • Run with future parser? #306
  • Pull in variables defined from inherited classes for top_scope_variables check #304
  • puppet-lint unqouted_node_name only checks (and fixes) first entry #323
  • Class param_tokens on unparameterised class returns function arguments #319
  • Performance on largeish files for 1.0.0 and 1.0.1 is much slower #315
  • Multiple ignores on one line #314
  • --fix doesn't handle multiple "=>" on the same line properly #312
  • --fix converts "param=>" to "=>" #311
  • Make top scope variable check respect metaparameters for defined types #310
  • Installation instructions on front page should include how to install it with puppet #308
  • Make rake task accept optional list of files to check #305

Merged pull requests:

  • Extend the rake task to support setting configuration options in the block #326 (rodjek)
  • Support multiple commands in a single control comment #325 (rodjek)
  • Support for multiple node names in unquoted_node_name #324 (rodjek)
  • Handle multiple parameters on a line when fixing arrow_alignment problems #322 (rodjek)
  • Support of metaparameter variables in variable_scope check #321 (rodjek)
  • Don't parse class body when searching for parameter tokens #320 (domcleal)
  • Insert :WHITESPACE token between :NAME and :FARROW if needed #318 (rodjek)
  • Cache parsing state in Lexer rather than recalculating #317 (rodjek)

1.0.1 (2014-08-20)

Full Changelog

Closed issues:

  • Cut a new release. #259
  • Exception with PE 3.0 #231
  • Puppet-lint should warn on files that do not end with a trailing newline #188
  • Breaks if ressource collector is present #301
  • puppet-lint issues scope warnings for array/hash access #291

Merged pull requests:

  • Handle empty blocks in arrow_alignment #302 (rodjek)
  • [Fixes #291] Ignore index braces for scope variables #303 (dcarley)

1.0.0 (2014-08-18)

Full Changelog

Implemented enhancements:

  • Need a way to ignore a lint check for a particular line #247
  • Trailing line comment to disable check #214
  • disable tests on arbitrary lines or over blocks of code #68

Closed issues:

  • Stop complaining about things unsupported versions of Puppet won't support. #281
  • some ERROR checks shouldn't fire inside comments #272
  • quoted boolean should not trigger off of a variable value in a conditional #268
  • Fails when parsing a Puppet file with Windows line endings on Linux. #262
  • Whitelist variables #260
  • Syntax error not detected #257
  • "$ escape sequence" throws out puppet lint error #256
  • Incorrect ensure not first attribute warning #254
  • lint task breaks, command line works #253
  • Boolean quotation #251
  • Closing bracket from classes not "linting" #250
  • Node variables being detected as a top-scope variable #246
  • autoloader_layout test overly dependant on the name of the current directory #245
  • Bamboo plugin published #242
  • puppet-lint says syntax error, puppet parser says ok #230
  • warn when variable or parameter is not used #225
  • Parser fails on arithmetic expressions #222
  • Linting errors should be sent to stderr #218
  • 2 space softabs does not always make sense when aligning array endings #213
  • Ignore cron commands over 80 characters long #198
  • facter fact selinux; WARNING: quoted boolean value found on line #197
  • Recursive check #196
  • emits ERROR when garbage outside the class definition. #193
  • variables_not_enclosed sometimes fires where it shouldn't. #191
  • Doesn't detect syntax error #187
  • Puppet-lint doesn't fail on unbalanced curly braces #185
  • Optionally fixing simple stuff instead of complaining #162
  • Feature: Print the name of the file being linted #283
  • Allow specifying a configuration file on the command line #267
  • Future parser loop should allow for inline variable declaration without scoping #264
  • Double Quoted Strings - should allow for strings containing single quotes #263
  • puppet-lint should not warn "string containing only a variable" when it's used to create a hash #261
  • ERROR: Syntax error (try running puppet parser validate <file>) on line 15 #258
  • Variables in each incorrectly idenentified as top scope. #249
  • puppet-lint -f makes a mess of double-quoted strings that contain single quotes #248
  • Puppetlint should ignore template lines > 80 characters #233
  • Syntax error when parser future features used #232
  • Issue with puppet-lint -f and trailing whitespace #224
  • escape a variable interpolation to skip checking #219
  • wrong title for >80char per line check site #209
  • rake lint should respect .puppet-lint.rc in root of module #202
  • lint analyzes inlined ruby code #201
  • --with-context causes error #200
  • Different results on Windows and Mac #195
  • Fixing of double quoted strings doesn't escape single quote inside #182
  • Fixing of string with array addressing wrong #181
  • Puppet lint seems to ignore --no-class_parameter_defaults-check when inheriting the params class #173
  • Quoting top level variable in class parameter cause false warning #170
  • exec and Bash vars, false-postive "single quoted string containing a variable found on line" #113

Merged pull requests:

  • explains in README that puppet-lint is not for checking syntax #186 (ghoneycutt)
  • Use the current workdir as reference to calculate the expanded_path of a filename #175 (vStone)
  • Update code documentation #298 (rodjek)
  • Add option to load config from specified file #297 (rodjek)
  • Ensure check methods can't modify tokens array #296 (rodjek)
  • Allow single quoted strings in double quoted strings #295 (rodjek)
  • Move dependency info into gemspec #294 (rodjek)
  • Support future parser loop local scope variables #293 (rodjek)
  • Fix problems after all checks have finished #292 (rodjek)
  • Enable --with-filename by default if checking multiple files #287 (rodjek)
  • Automatically convert multiline comments into many single line comments #286 (rodjek)
  • Move to rspec3 #285 (rodjek)
  • Automatically fix ensure_not_symlink_target problems #284 (rodjek)
  • Allow strings containing only a variable if they're used as hash keys #280 (rodjek)
  • Compressed arrow_alignment #279 (rodjek)
  • Array ref variables #278 (rodjek)
  • Add docs badge to README #277 (rrrene)
  • Make array refs part of the variable name #276 (rodjek)
  • Don't automatically pad comment content with whitespace #275 (rodjek)
  • Use #write instead of #puts when writing fixed manifest #274 (rodjek)
  • Add --fix back to optionparser #273 (rodjek)
  • Initial spike of control comment logic #266 (rodjek)
  • Abort rake on lint error #255 (rodjek)
  • Add --relative command line argument for autoload structure testing #252 (ryanuber)
  • DRY up the checks #244 (rodjek)
  • Refactor out linenumber in problems #243 (rodjek)
  • Ignore 80chars on lines that have long template() paths #241 (rodjek)
  • Have the rake task read options from .puppet-lint.rc #240 (rodjek)
  • Support pipe char (used in the "future" parser) #239 (rodjek)
  • Rejig tests #238 (rodjek)
  • Allow double quotes for puppet supported escape sequences #234 (xarses)
  • Allow specifying a list of checks that should run #228 (rodjek)
  • Split checking and reporting logic #227 (rodjek)
  • Refactor check plugins to have slightly less awful magic #226 (rodjek)
  • Add %{column} to help text of --log-format #221 (bdd)
  • Bad hash indenting with --fix where members declared on a single line #217 (aelse)
  • Handle variables with array & hash references #212 (rodjek)
  • Add Modulo token #207 (dalen)
  • incorrect top-scope variable warning for define #205 (blalor)
  • --fix doesn't modify my file #203 (BillWeiss)
  • Don't warn about 'mode' format when it's an 'audit' value #199 (bitfield)
  • Doesn't recognize paramater containing default value if value is double quoted. #194 (jcray)
  • Running with --fix deletes all code for files containing invalid syntax #184 (devicenull)
  • Puppet-lint fails to handle mac line endings #183 (devicenull)
  • Lone dollar sign should not be removed #180 (Seldaek)
  • Warn about unquoted node names #177 (bitfield)
  • Fix the check_classes check for certain cases. #176 (vStone)
  • Invalid warning about mandatory class parameters without defaults #167 (svend)
  • Add check for puppet:/// URIs without modules/ #166 (rodjek)

0.4.0.pre1 (2013-01-28)

Full Changelog

Closed issues:

  • error installing puppet-lint #172
  • puppet-lint seems to miss obvious syntax error #171
  • ERROR with file containing DOS EOL character #165
  • ssh key parameter will always be longer than 80 chars #70

Merged pull requests:

0.3.2 (2012-10-19)

Full Changelog

Closed issues:

  • Check "string containing only a variable" performs invalid suggestion. #164
  • puppet-lint/lexer.rb:184:in `tokenise': ' } (PuppetLint::LexerError) on Ruby 1.8.7 #161
  • Warning for 'more than 80 characters on line' is not catching all instances #159
  • captilised variables error on puppet not with lint #158
  • warning for 'class param without default' is not catching all instances in a file #157
  • puppet-lint crashes if HOME environment is not set #156
  • String monkeypatch breaks Facter under Ruby 1.8 #154
  • Crash on string with \ and variable #152

Merged pull requests:

  • (#152) Fix crash on string with \ and variable #163 (dalen)
  • fixes #154 string monkeypatch failure #155 (vStone)

0.3.1 (2012-09-26)

Full Changelog

Closed issues:

  • class_inherits_from_params_class throws exception in 0.3.0 #150

Merged pull requests:

  • Fixes #150 class inherits from params class exception #151 (vStone)

0.3.0 (2012-09-25)

Full Changelog

Implemented enhancements:

  • Provide context for the problems #130

Closed issues:

  • False positive unquoted resource title for colons in resource parameters #146
  • should exit with non 0 exit code on error #140
  • using fully qualified class names in inheritance is wrongly reported as inheritance across namespaces #148
  • False positive on duplicate parameter checks #145
  • Crash on \ at end of single quoted string #144
  • Strings ending in backslash cause exceptions #142
  • --no-class_parameter_defaults-check #139

Merged pull requests:

  • Fixes #145: False positive on duplicate parameter. #147 (vStone)
  • Pass exit value to the shell #141 (vStone)
  • (#148) Allow class inheritance within the same module #149 (dcarley)
  • use .puppet-lint.rc, as .puppet-lintrc is deprecated #143 (ghoneycutt)

0.2.1 (2012-08-27)

Full Changelog

Closed issues:

  • Rake task breaks in 0.2.0 #138
  • False warning : parameterised class parameter without a default value #137

0.2.0 (2012-08-23)

Full Changelog

Implemented enhancements:

  • Variables standing by themselves should not be quoted #20
  • write class_parameter_defaults check #134
  • duplicate parameter detection #122

Closed issues:

  • `require': iconv will be deprecated in the future, use String#encode instead. #133
  • False positive in "optional parameter listed before required parameter"? #126
  • There's a puppet-lint 0.13.1 gem on rubygems.org but no 0.13.1 tag here #99
  • Introduce a way to tweak warning/error level for checks #91
  • Didn't pick up $ipaddress_bond0 as a fact #61
  • False positive when using function call for parameter default #132
  • Fix up the website #131
  • Linked list style functionality for tokens #129
  • False positive unquoted resource title in case statements #128
  • Crash on arrow alignment check #127
  • Does not work on ruby 1.9.3 #120
  • Bad class format causes exception #118
  • case statement in inline_template false warning #117
  • False warning with puppet-lint-0.2 #116
  • :lint rake tasks should not print "Evaluating" lines #114
  • when content is specified directly, double quotes are needed to get newlines #109
  • Incorrect variable count in string parsing #104
  • misparses empty hash in defined resource prototype #101
  • Allow file modes to be 'undef' #100
  • Arrow alignment check shouldn't span over several resources #78
  • Ignore commented lines for arrow alignment #77
  • /etc/puppet-lint.rc please! #71
  • checking of correct docs format #59
  • Multiline string should not be checked for double quotes #51

0.2.0.pre1 (2012-07-11)

Full Changelog

Closed issues:

  • Getting double quote warning with Augeas #111
  • NoMethodError with Ruby 1.9.2 #103
  • new to the lint #97
  • inline_templates only evaluate in double quotes, yet lint warns of no vars. #94
  • Stop duplicate output #93
  • add noop to variables_in_scope list #92
  • Can't handle single quotes? (slurpstring) #90
  • Detect missing commas #89
  • Weird (probably UTF-8) problem gives false positives on 80char limit. #84
  • Autoload module check and JenkinsCI #83
  • "Should align arrows within blocks of attributes" check doesn't seem to work #75
  • puppet-lintrc is ignored when running "rake lint" #74
  • docs mention --disable-XXX, should be --no-XXX #73
  • Added support for detecting bad string interpolation #40

Merged pull requests:

  • Make rake task respect PuppetLint.configuration.fail_on_warnings #115 (wfarr)
  • fixes spelling and typo errors in README #112 (ghoneycutt)
  • This fixes the build on Travis CI for ruby1.9 #110 (vStone)
  • Fix utf8 char issues: see bug #84 #108 (vStone)
  • Add support for ignoring certain globs in the rake task #106 (wfarr)
  • Fix bug introduced in #81 #98 (deizel)
  • Fixup the variable not enclosed in {} test #66 (richardc)

0.1.13 (2012-03-26)

Full Changelog

Closed issues:

  • Getting warning: class variable access from toplevel with bundler #85
  • Suppress "string containing only a variable" warnings on defines? #79
  • puppet-lint equivalent to rakefile's require 'puppet-lint/tasks/puppet-lint' #72
  • Support symbolic file modes for >= 2.7.10 #60

Merged pull requests:

  • Update readme to reflect the current names of the flags for disabling checks #88 (garethr)
  • Add additional puppet variables. #82 (nanliu)
  • Add support run puppet-lint on directory. #81 (nanliu)
  • Update travis support for multiple puppet version. #80 (nanliu)
  • Find booleans in double quoted strings #67 (richardc)
  • Feature/symbolic filemodes (cfr ticket #60) #62 (vStone)

0.1.12 (2012-01-27)

Full Changelog

Closed issues:

  • ssh_key can't be broken up by \ #58
  • Autoload module check doesn't seem to work #57
  • included parameterized classes check does not work #56
  • invalid quoted string warning on resource titles #44
  • turn off particular tests? .puppet-lintrc? #34

0.1.11 (2012-01-11)

Full Changelog

0.1.10 (2012-01-11)

Full Changelog

Closed issues:

  • Alert when more than one class/define is present in a .pp file #54
  • Invalid top-scope variable warning in definitions. #50
  • Regex capture variables #49

Merged pull requests:

0.1.9 (2011-12-27)

Full Changelog

Merged pull requests:

0.1.8 (2011-12-27)

Full Changelog

Closed issues:

  • Add option to control which error level is returned #45
  • "false" != false (ditto for true) #43
  • Facter variables are seen as unnamespaced top-level variables #42
  • WARNING: => on line 13 isn't aligned with the previous line #37
  • single quotes in a manifest causes an exception #36
  • Invalid "optional parameter listed before required parameter" warning. #35
  • Resource types containing only a variable #30

Merged pull requests:

  • [#9] add stack to allow nested hashes #47 (zsprackett)
  • Fixed #45 - Added selective error level reporting #46 (jamtur01)
  • Added check for dashes in variables #41 (jamtur01)
  • Add filename as first test() argument so plugins can use that too #39 (vStone)

0.1.7 (2011-10-18)

Full Changelog

Closed issues:

  • missing dependency on "puppet" gem #33
  • "class defined inside a class" even when class is a resource (parameterized Class) #32
  • Classes inside classes should be allowed when order matters #31
  • doesn't work...at all #29
  • "mode should be represented as a 4 digit octal value" when variable #28

0.1.4 (2011-09-09)

Full Changelog

Closed issues:

  • String containing escape char (and no var) incorrectly flagged #26
  • False alignment positives #21

0.1.3 (2011-09-09)

Full Changelog

0.1.2 (2011-09-09)

Full Changelog

Closed issues:

  • double quote within single quote #24
  • False positive in commented line #22

0.1.1 (2011-09-07)

Full Changelog

Closed issues:

  • $name is detected as a top-scope variable #23
  • Not detecting comma and semicolon being mixed up #13

0.1.0 (2011-08-23)

Full Changelog

Implemented enhancements:

  • display order of class/define parameters #19
  • class inheritance #18
  • classes and defined types within classes #17
  • relationship declarations #16
  • defaults for case statements and selectors #15
  • namespacing variables #14

Closed issues:

  • => alignment warnings in selectors is broken #11

0.0.7 (2011-08-21)

Full Changelog

0.0.6 (2011-08-19)

Full Changelog

Implemented enhancements:

  • Please add logic to the >80 chars check #12

0.0.5 (2011-08-19)

Full Changelog

Closed issues:

  • When ensure is the only attribute it is the first one too. #10
  • Shell commands with curly brackets (e.g. awk) #9
  • "single quoted string containing a variable" should check for nested quotes #7

0.0.4 (2011-08-18)

Full Changelog

Closed issues:

  • "ensure is not the first attribute" does not check for aggregated resources #8
  • Square brackets trigger "WARNING: unquoted resource title" #5
  • Nasty stacktrace when trying to run lint against a non existance file #4

0.0.3 (2011-08-17)

Full Changelog

Closed issues:

  • Invalid "ensure is not the first attribute" #3
  • Empty variables break check_strings plugin #2

0.0.2 (2011-08-17)

Full Changelog

Merged pull requests:

0.0.1 (2011-08-15)

Full Changelog

* This Changelog was automatically generated by github_changelog_generator