2.5.0 (2021-07-23)
Implemented enhancements:
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)
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)
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)
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)
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)
Fixed bugs:
- v2.3.4 breakage - 'wrong number of arguments' when using Rake task #812
Merged pull requests:
2.3.4 (2018-03-26)
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)
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)
Closed issues:
- rake task now failing #754
Merged pull requests:
2.3.1 (2017-09-27)
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)
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)
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)
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)
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)
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)
Implemented enhancements:
- Option to choose version of the puppet style guide #190
Merged pull requests:
2.0.1 (2016-08-18)
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:
- (GH462) Multi-line comments can now be fixed. #525 (rnelson0)
- New additions of protected variables #524 (rnelson0)
- (GH366) Arrow Alignment fix crashes with tabs #515 (rnelson0)
- Make params disabled #511 (binford2k)
- Removing params class check #510 (cvquesty)
- Tweak travis a bit for better patterns. #505 (rnelson0)
- Bugfix: properly handling $gronk-$grouik with --fix (fix #442) #500 (Lucas-C)
- Improve look of rspec #496 (rnelson0)
- This adds a disabled-by-default 80chars check #495 (binford2k)
- Add better description of the problem in arrow_alignment check #492 (rnelson0)
- (GH410) Limit ensure_first_param check to certain resources #490 (rnelson0)
- Regression from 418: duplicate constant #483 (rnelson0)
- Add fully-detailed CHANGELOG #481 (petems)
- Add a CHANGELOG #480 (rnelson0)
- Add file mode checks for concat module #473 (danieljamesscott)
- Fix handling of empty code #469 (hanazuki)
- Allow regex params for puppet data types #468 (thejandroman)
- Support automatic fixing in Rake task as described in README #465 (hanazuki)
- Fix double arrow issue when adding target to ensure symlink #454 (mterzo)
- Add future parser's Puppet Types token type #435 (mcanevet)
- Parameters ordering was only checked on defined types #429 (ctoa)
- Check that variables are lowercase #418 (rothsa)
2.0.0 (2016-06-22)
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)
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)
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)
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)
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)
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)
Closed issues:
- class_inherits_from_params_class throws exception in 0.3.0 #150
Merged pull requests:
0.3.0 (2012-09-25)
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)
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)
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)
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)
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)
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)
0.1.10 (2012-01-11)
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)
Merged pull requests:
0.1.8 (2011-12-27)
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)
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)
Closed issues:
0.1.3 (2011-09-09)
0.1.2 (2011-09-09)
Closed issues:
0.1.1 (2011-09-07)
Closed issues:
0.1.0 (2011-08-23)
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)
0.0.6 (2011-08-19)
Implemented enhancements:
- Please add logic to the >80 chars check #12
0.0.5 (2011-08-19)
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)
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)
Closed issues:
0.0.2 (2011-08-17)
Merged pull requests:
- Here, have some Rake support #1 (builddoctor)
0.0.1 (2011-08-15)
* This Changelog was automatically generated by github_changelog_generator