foodcritic 2.1.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.md +691 -0
- data/LICENSE +21 -0
- data/README.md +28 -0
- data/chef_dsl_metadata/chef_0.10.10.json +22 -0
- data/chef_dsl_metadata/chef_10.12.0.json +22 -0
- data/chef_dsl_metadata/chef_10.14.0.json +22 -0
- data/chef_dsl_metadata/chef_10.14.2.json +22 -0
- data/chef_dsl_metadata/chef_10.14.4.json +22 -0
- data/chef_dsl_metadata/chef_10.16.0.json +22 -0
- data/chef_dsl_metadata/chef_10.16.2.json +22 -0
- data/chef_dsl_metadata/chef_10.16.4.json +22 -0
- data/chef_dsl_metadata/chef_10.16.6.json +22 -0
- data/chef_dsl_metadata/chef_10.18.0.json +22 -0
- data/chef_dsl_metadata/chef_10.18.2.json +22 -0
- data/chef_dsl_metadata/chef_10.20.0.json +22 -0
- data/chef_dsl_metadata/chef_10.22.0.json +22 -0
- data/chef_dsl_metadata/chef_10.24.0.json +22 -0
- data/chef_dsl_metadata/chef_10.24.4.json +8460 -0
- data/chef_dsl_metadata/chef_10.26.0.json +8460 -0
- data/chef_dsl_metadata/chef_11.0.0.json +22 -0
- data/chef_dsl_metadata/chef_11.2.0.json +22 -0
- data/chef_dsl_metadata/chef_11.4.0.json +22 -0
- data/chef_dsl_metadata/chef_11.4.2.json +8794 -0
- data/chef_dsl_metadata/chef_11.4.4.json +8794 -0
- data/features/002_check_string_interpolation.feature +45 -0
- data/features/003_check_for_chef_server.feature +56 -0
- data/features/004_check_service_resource_used.feature +53 -0
- data/features/005_check_for_resource_repetition.feature +64 -0
- data/features/006_check_file_mode.feature +35 -0
- data/features/007_check_for_undeclared_recipe_dependencies.feature +71 -0
- data/features/008_check_for_boilerplate_metadata.feature +25 -0
- data/features/009_check_for_unrecognised_resource_attributes.feature +77 -0
- data/features/010_check_search_syntax.feature +20 -0
- data/features/011_check_for_markdown_readme.feature +20 -0
- data/features/012_check_for_deprecated_readme_format.feature +20 -0
- data/features/013_check_for_hardcoded_tmpdir.feature +25 -0
- data/features/014_check_for_long_ruby_blocks.feature +30 -0
- data/features/015_check_for_definitions.feature +21 -0
- data/features/016_check_for_no_lwrp_default_action.feature +20 -0
- data/features/017_check_for_no_lwrp_notifications.feature +25 -0
- data/features/018_check_for_old_lwrp_notification_syntax.feature +25 -0
- data/features/019_check_for_consistent_node_access.feature +107 -0
- data/features/021_check_for_dodgy_lwrp_conditions.feature +28 -0
- data/features/022_check_for_dodgy_conditions_within_loop.feature +28 -0
- data/features/023_check_for_condition_around_resource.feature +52 -0
- data/features/024_check_for_missing_platforms.feature +43 -0
- data/features/025_check_for_deprecated_gem_install.feature +30 -0
- data/features/026_check_for_conditional_block_string.feature +20 -0
- data/features/027_check_for_internal_attribute_use.feature +22 -0
- data/features/028_check_for_incorrect_platform_method.feature +20 -0
- data/features/029_check_for_no_leading_cookbook_name.feature +18 -0
- data/features/030_check_for_debugger_breakpoints.feature +25 -0
- data/features/031_check_for_metadata_existence.feature +15 -0
- data/features/032_check_for_invalid_notification_timing.feature +22 -0
- data/features/033_check_for_missing_template.feature +75 -0
- data/features/034_check_for_unused_template_variables.feature +37 -0
- data/features/037_check_for_invalid_notification_action.feature +34 -0
- data/features/038_check_for_invalid_action.feature +51 -0
- data/features/039_check_for_key_access_to_node_methods.feature +33 -0
- data/features/040_check_raw_git_usage.feature +37 -0
- data/features/041_check_raw_download.feature +26 -0
- data/features/042_check_for_deprecated_require_recipe.feature +15 -0
- data/features/043_check_for_old_notification_style.feature +35 -0
- data/features/044_check_for_bare_attribute_keys.feature +43 -0
- data/features/045_check_for_cookbook_name_in_metadata.feature +20 -0
- data/features/046_check_for_assign_unless_nil_attributes.feature +21 -0
- data/features/build_framework_support.feature +99 -0
- data/features/checking_all_types_of_file.feature +40 -0
- data/features/choose_rules_to_apply.feature +49 -0
- data/features/command_line_help.feature +43 -0
- data/features/continuous_integration_support.feature +35 -0
- data/features/ignore_via_line_comments.feature +51 -0
- data/features/include_custom_rules.feature +29 -0
- data/features/individual_file.feature +12 -0
- data/features/limit_rules_to_specific_versions.feature +65 -0
- data/features/multiple_paths.feature +11 -0
- data/features/show_lines_matched.feature +20 -0
- data/features/sort_warnings.feature +10 -0
- data/features/specify_search_grammar.feature +25 -0
- data/features/step_definitions/cookbook_steps.rb +1791 -0
- data/features/support/command_helpers.rb +312 -0
- data/features/support/cookbook_helpers.rb +495 -0
- data/features/support/env.rb +11 -0
- data/lib/foodcritic.rb +0 -1
- data/lib/foodcritic/api.rb +3 -2
- data/lib/foodcritic/command_line.rb +4 -0
- data/lib/foodcritic/linter.rb +29 -6
- data/lib/foodcritic/output.rb +74 -26
- data/lib/foodcritic/rules.rb +6 -5
- data/lib/foodcritic/version.rb +1 -1
- data/man/foodcritic.1 +58 -0
- data/man/foodcritic.1.ronn +57 -0
- data/spec/foodcritic/api_spec.rb +1615 -0
- data/spec/foodcritic/chef_spec.rb +66 -0
- data/spec/foodcritic/command_line_spec.rb +51 -0
- data/spec/foodcritic/domain_spec.rb +24 -0
- data/spec/foodcritic/linter_spec.rb +91 -0
- data/spec/foodcritic/template_spec.rb +49 -0
- data/spec/regression/cookbooks.txt +135 -0
- data/spec/regression/expected-output.txt +443 -0
- data/spec/regression/regression_spec.rb +17 -0
- data/spec/regression_helpers.rb +37 -0
- data/spec/spec_helper.rb +10 -0
- metadata +87 -24
data/CHANGELOG.md
ADDED
|
@@ -0,0 +1,691 @@
|
|
|
1
|
+
## 2.2.0 (10th July, 2013)
|
|
2
|
+
|
|
3
|
+
Features:
|
|
4
|
+
|
|
5
|
+
- Additional rules may now be shipped as gems. Files matching the path
|
|
6
|
+
`foodcritic/rules/**/*.rb` will be loaded if the `--search-gems` option is
|
|
7
|
+
specified
|
|
8
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/143)). Thanks
|
|
9
|
+
to @rteabeault for implementing this feature.
|
|
10
|
+
- You can now control the rules applied to individual cookbooks by including
|
|
11
|
+
a `.foodcritic` file at the root of your cookbook with the tags you want
|
|
12
|
+
checked
|
|
13
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/141)). Thanks
|
|
14
|
+
to @sabat for implementing this feature.
|
|
15
|
+
- The [project license](https://github.com/acrmp/foodcritic/blob/master/LICENSE)
|
|
16
|
+
is now included in the built gem
|
|
17
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/145)).
|
|
18
|
+
Thanks @stefanor.
|
|
19
|
+
- Foodcritic no longer uses the `rak` gem to generate output with context
|
|
20
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/146)).
|
|
21
|
+
Thanks to @stefanor for re-implementing context output to remove this
|
|
22
|
+
dependency.
|
|
23
|
+
- A man page is now included with foodcritic in
|
|
24
|
+
[ronn-format](http://rtomayko.github.io/ronn/).
|
|
25
|
+
Thanks @stefanor.
|
|
26
|
+
|
|
27
|
+
Bugfixes:
|
|
28
|
+
|
|
29
|
+
- Definitions are now included in the files that are linted
|
|
30
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/142)). Thanks
|
|
31
|
+
@bpaquet.
|
|
32
|
+
- [FC009: Resource attribute not recognised](http://acrmp.github.com/foodcritic/#FC009)
|
|
33
|
+
would warn against Windows-specific resource attributes
|
|
34
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/135)). Thanks
|
|
35
|
+
@stormtrooperguy.
|
|
36
|
+
- [FC011: Missing README in markdown format](http://acrmp.github.com/foodcritic/#FC011)
|
|
37
|
+
was not shown when outputting with context enabled
|
|
38
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/146)). Thanks
|
|
39
|
+
@stefanor.
|
|
40
|
+
- [FC014: Consider extracting long ruby_block to library](http://acrmp.github.com/foodcritic/#FC014)
|
|
41
|
+
previously used the number of AST nodes to determine block length. This
|
|
42
|
+
was a poor proxy for length and this rule has been updated to warn if the
|
|
43
|
+
number of lines > 15
|
|
44
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/130)). Thanks
|
|
45
|
+
@adamjk-dev.
|
|
46
|
+
- [FC014: Consider extracting long ruby_block to library](http://acrmp.github.com/foodcritic/#FC014)
|
|
47
|
+
would warn against other blocks incorrectly
|
|
48
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/130)). Thanks
|
|
49
|
+
@adamjk-dev.
|
|
50
|
+
- [FC014: Consider extracting long ruby_block to library](http://acrmp.github.com/foodcritic/#FC014)
|
|
51
|
+
would raise an error if the ruby_block did not contain a nested `block`
|
|
52
|
+
attribute
|
|
53
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/139)). Thanks
|
|
54
|
+
@stevendanna.
|
|
55
|
+
- [FC033: Missing template](http://acrmp.github.com/foodcritic/#FC033)
|
|
56
|
+
would warn when the template file did not have an erb extension
|
|
57
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/131)). Thanks
|
|
58
|
+
@nvwls.
|
|
59
|
+
- [FC034: Unused template variables](http://acrmp.github.com/foodcritic/#FC034)
|
|
60
|
+
would warn when the template file did not have an erb extension
|
|
61
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/131)). Thanks
|
|
62
|
+
@nvwls.
|
|
63
|
+
|
|
64
|
+
## 2.1.0 (17th April, 2013)
|
|
65
|
+
|
|
66
|
+
Features:
|
|
67
|
+
|
|
68
|
+
- DSL metadata will now reflect the version of Chef selected with
|
|
69
|
+
`--chef-version`. For example this means that
|
|
70
|
+
[FC009: Resource attribute not recognised](http://acrmp.github.com/foodcritic/#FC009)
|
|
71
|
+
will warn about attributes not present in the specified version of Chef.
|
|
72
|
+
|
|
73
|
+
Bugfixes:
|
|
74
|
+
|
|
75
|
+
- [FC045: Consider setting cookbook name in metadata](http://acrmp.github.com/foodcritic/#FC045)
|
|
76
|
+
would warn incorrectly and other rules would fail to work when activesupport
|
|
77
|
+
had been loaded
|
|
78
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/118)). This
|
|
79
|
+
affected Berkshelf users. Thanks @scalp42 and @c-nolic.
|
|
80
|
+
- Upgrade the version of Gherkin dependency to avoid deprecation warnings
|
|
81
|
+
([related issue](https://github.com/acrmp/foodcritic/pull/122)).
|
|
82
|
+
Thanks @tmatilai.
|
|
83
|
+
|
|
84
|
+
Other:
|
|
85
|
+
|
|
86
|
+
- Known to run on MRI 2.0.0 - added to Travis CI matrix.
|
|
87
|
+
|
|
88
|
+
## 2.0.1 (31st March, 2013)
|
|
89
|
+
|
|
90
|
+
Bugfixes:
|
|
91
|
+
|
|
92
|
+
- Matches that should be ignored were not if the rule implementation used the
|
|
93
|
+
`cookbook` block
|
|
94
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/119)).
|
|
95
|
+
- [FC033: Missing Template](http://acrmp.github.com/foodcritic/#FC033)
|
|
96
|
+
would warn incorrectly when the template resource was nested within another
|
|
97
|
+
resource
|
|
98
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/96)).
|
|
99
|
+
Thanks @justinforce.
|
|
100
|
+
- The `#resource_attributes` API method now copes with nested resources.
|
|
101
|
+
|
|
102
|
+
## 2.0.0 (24th March, 2013)
|
|
103
|
+
|
|
104
|
+
Features
|
|
105
|
+
|
|
106
|
+
- Support added for ignoring individual matches. To ignore a match add a
|
|
107
|
+
comment to the affected line in your cookbook of the format `# ~FC006`
|
|
108
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/119)).
|
|
109
|
+
Big thanks to @grosser.
|
|
110
|
+
- Command line help now specifies the tag to use to fail the build on any
|
|
111
|
+
rule match
|
|
112
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/108)).
|
|
113
|
+
Thanks @grosser.
|
|
114
|
+
- FC046: Attribute assignment uses assign unless nil
|
|
115
|
+
rule added
|
|
116
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/52)).
|
|
117
|
+
Thanks @jaymzh.
|
|
118
|
+
|
|
119
|
+
Bugfixes:
|
|
120
|
+
|
|
121
|
+
- [FC003: Check whether you are running with chef server before using server-specific features](http://acrmp.github.com/foodcritic/#FC003)
|
|
122
|
+
updated to recognise checks that use return
|
|
123
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/92)).
|
|
124
|
+
Thanks @sethvargo, @miketheman.
|
|
125
|
+
- [FC003: Check whether you are running with chef server before using server-specific features](http://acrmp.github.com/foodcritic/#FC003)
|
|
126
|
+
updated to recognise checks that test for Chef Solo with alternation
|
|
127
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/103)).
|
|
128
|
+
Thanks @promisedlandt.
|
|
129
|
+
- [FC017: LWRP does not notify when updated](http://acrmp.github.com/foodcritic/#FC017)
|
|
130
|
+
modified to no longer warn when a notification is made without parentheses
|
|
131
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/121)).
|
|
132
|
+
Thanks @justinforce.
|
|
133
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
134
|
+
would previously only show warnings for the first matching file.
|
|
135
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
136
|
+
updated to avoid showing a false positive where a search is passed an
|
|
137
|
+
argument based on a node attribute accessed with a string.
|
|
138
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
139
|
+
updated to exclude specs, removing a source of false positives.
|
|
140
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
141
|
+
fixed regression in var_ref handling.
|
|
142
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
143
|
+
updated to not trigger on quoted symbols
|
|
144
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/88)).
|
|
145
|
+
Thanks @spheromak.
|
|
146
|
+
- [FC024: Consider adding platform equivalents](http://acrmp.github.com/foodcritic/#FC024)
|
|
147
|
+
updated to only warn about platform equivalents that are listed in the
|
|
148
|
+
cookbook metadata
|
|
149
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/59)).
|
|
150
|
+
Thanks @tknerr.
|
|
151
|
+
- [FC037: Invalid notification action](http://acrmp.github.com/foodcritic/#FC037)
|
|
152
|
+
would cause foodcritic to halt with an error when a notification action was
|
|
153
|
+
specified as an expression
|
|
154
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/104)).
|
|
155
|
+
Thanks @jaymzh.
|
|
156
|
+
- [FC040: Execute resource used to run git commands](http://acrmp.github.com/foodcritic/#FC040)
|
|
157
|
+
updated to not match if the git command cannot be expressed as a `git`
|
|
158
|
+
resource.
|
|
159
|
+
([related issue](https://github.com/acrmp/foodcritic/pull/98)).
|
|
160
|
+
Thanks @trobrock for raising this issue and implementing the fix.
|
|
161
|
+
- [FC043: Prefer new notification syntax](http://acrmp.github.com/foodcritic/#FC043)
|
|
162
|
+
updated to apply only to Chef versions >= 0.9.10
|
|
163
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/114)).
|
|
164
|
+
Thanks @iainbeeston.
|
|
165
|
+
- [FC044: Avoid bare attribute keys](http://acrmp.github.com/foodcritic/#FC044)
|
|
166
|
+
changed to not raise false positives against block variables
|
|
167
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/105)).
|
|
168
|
+
Thanks @jaymzh.
|
|
169
|
+
|
|
170
|
+
Other:
|
|
171
|
+
|
|
172
|
+
- The `--repl` command line flag has been removed. This feature little used
|
|
173
|
+
and was problematic for users attempting to use newer versions of pry or
|
|
174
|
+
guard
|
|
175
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/50)).
|
|
176
|
+
Thanks @jperry, @miketheman, @jtimberman.
|
|
177
|
+
- The `os_command?` api method has been removed.
|
|
178
|
+
- The deprecated `cookbook_path` and `valid_path?` methods have been removed.
|
|
179
|
+
This may cause breakage if you are using foodcritic programatically from
|
|
180
|
+
Ruby. Please update your code to use the `cookbook_paths` and `valid_paths?`
|
|
181
|
+
methods instead.
|
|
182
|
+
- Added regression test for expected output against opscode-cookbooks. Run
|
|
183
|
+
`bundle exec rake regressions` to perform this test.
|
|
184
|
+
|
|
185
|
+
## 1.7.0 (27th December, 2012)
|
|
186
|
+
|
|
187
|
+
Features
|
|
188
|
+
|
|
189
|
+
- [FC038: Invalid resource action](http://acrmp.github.com/foodcritic/#FC038)
|
|
190
|
+
rule added
|
|
191
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/61)).
|
|
192
|
+
Thanks @jaymzh.
|
|
193
|
+
- [FC039: Node method cannot be accessed with key](http://acrmp.github.com/foodcritic/#FC039)
|
|
194
|
+
rule added.
|
|
195
|
+
- [FC040: Execute resource used to run git commands](http://acrmp.github.com/foodcritic/#FC040)
|
|
196
|
+
rule stolen from Etsy rules (ETSY003)
|
|
197
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/72)).
|
|
198
|
+
Thanks @jonlives.
|
|
199
|
+
- [FC041: Execute resource used to run curl or wget commands](http://acrmp.github.com/foodcritic/#FC041)
|
|
200
|
+
rule stolen from Etsy rules (ETSY002)
|
|
201
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/73)).
|
|
202
|
+
Thanks @jonlives.
|
|
203
|
+
- [FC042: Prefer include_recipe](http://acrmp.github.com/foodcritic/#FC042)
|
|
204
|
+
rule added
|
|
205
|
+
([related issue](https://github.com/acrmp/foodcritic/pull/77)).
|
|
206
|
+
Thanks @pwelch.
|
|
207
|
+
- [FC043: Prefer new notification syntax](http://acrmp.github.com/foodcritic/#FC043)
|
|
208
|
+
rule added
|
|
209
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/80)).
|
|
210
|
+
Thanks @jtimberman.
|
|
211
|
+
- [FC044: Avoid bare attribute keys](http://acrmp.github.com/foodcritic/#FC044)
|
|
212
|
+
rule added
|
|
213
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/75)).
|
|
214
|
+
Thanks @jtimberman.
|
|
215
|
+
- [FC045: Consider setting cookbook name in metadata](http://acrmp.github.com/foodcritic/#FC045)
|
|
216
|
+
rule added
|
|
217
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/64)).
|
|
218
|
+
Thanks @miketheman.
|
|
219
|
+
- Linter `#check` method no longer requires options to be explicitly passed if
|
|
220
|
+
you are using the defaults
|
|
221
|
+
([related issue](https://github.com/acrmp/foodcritic/pull/71)).
|
|
222
|
+
Thanks @kreynolds.
|
|
223
|
+
|
|
224
|
+
Bugfixes:
|
|
225
|
+
|
|
226
|
+
- Bump version of Nokogiri to
|
|
227
|
+
[fix installation failure on Ubuntu 12.10](https://github.com/sparklemotion/nokogiri/issues/680)
|
|
228
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/83)).
|
|
229
|
+
Thanks @dracoater.
|
|
230
|
+
- Support added for quoted symbols as notification actions
|
|
231
|
+
([related issue](https://github.com/acrmp/foodcritic/pull/94)).
|
|
232
|
+
Thanks @ohm.
|
|
233
|
+
- Add `spec/**/*` and `features/**/*` to default rake task `:exclude_paths`
|
|
234
|
+
([related issue](https://github.com/acrmp/foodcritic/pull/84)).
|
|
235
|
+
Thanks @fnichol.
|
|
236
|
+
- Remove unnecessary whitespace from rake task output
|
|
237
|
+
([related issue](https://github.com/acrmp/foodcritic/pull/78)).
|
|
238
|
+
Thanks @ketan.
|
|
239
|
+
- Removed [FC001: Use strings in preference to symbols to access node attributes](http://acrmp.github.com/foodcritic/#FC001)
|
|
240
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/86)).
|
|
241
|
+
Thanks @jtimberman.
|
|
242
|
+
- [FC003: Check whether you are running with chef server before using server-specific features](http://acrmp.github.com/foodcritic/#FC003)
|
|
243
|
+
updated to also match `unless`
|
|
244
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/58)).
|
|
245
|
+
Thanks @cap10morgan.
|
|
246
|
+
- Decode numeric attributes.
|
|
247
|
+
This could cause [FC005: Avoid repetition of resource declarations](http://acrmp.github.com/foodcritic/#FC005)
|
|
248
|
+
to warn incorrectly
|
|
249
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/79)).
|
|
250
|
+
Thanks @masterkorp.
|
|
251
|
+
- Recognise attributes correctly within a block.
|
|
252
|
+
This could cause [FC005: Avoid repetition of resource declarations](http://acrmp.github.com/foodcritic/#FC005)
|
|
253
|
+
to warn incorrectly
|
|
254
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/76)).
|
|
255
|
+
Thanks @masterkorp.
|
|
256
|
+
- [FC009: Resource attribute not recognised](http://acrmp.github.com/foodcritic/#FC009)
|
|
257
|
+
would warn incorrectly on methods used within a resource block
|
|
258
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/85)).
|
|
259
|
+
Thanks @arangamani.
|
|
260
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
261
|
+
would warn incorrectly when referencing node attributes from a user-created
|
|
262
|
+
hash.
|
|
263
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/54)).
|
|
264
|
+
Thanks @schubert.
|
|
265
|
+
- [FC033: Missing Template](http://acrmp.github.com/foodcritic/#FC033)
|
|
266
|
+
would warn incorrectly when using templates from another cookbook
|
|
267
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/74)).
|
|
268
|
+
Thanks @woohgit.
|
|
269
|
+
|
|
270
|
+
## 1.6.1 (31st August, 2012)
|
|
271
|
+
|
|
272
|
+
Bugfixes:
|
|
273
|
+
|
|
274
|
+
- [FC030: Cookbook contains debugger breakpoints](http://acrmp.github.com/foodcritic/#FC030)
|
|
275
|
+
could prevent other rules from processing depending on the tags passed.
|
|
276
|
+
- [FC037: Invalid notification action](http://acrmp.github.com/foodcritic/#FC037)
|
|
277
|
+
would incorrectly warn against `subscribes` notifications
|
|
278
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/65)).
|
|
279
|
+
Thanks @jtimberman.
|
|
280
|
+
|
|
281
|
+
## 1.6.0 (28th August, 2012)
|
|
282
|
+
|
|
283
|
+
Bugfixes:
|
|
284
|
+
|
|
285
|
+
- Removed FC035: Template uses node attribute directly. For a discussion of
|
|
286
|
+
the reasons for removal see the
|
|
287
|
+
[related issue](https://github.com/acrmp/foodcritic/issues/60).
|
|
288
|
+
|
|
289
|
+
## 1.5.1 (21st August, 2012)
|
|
290
|
+
|
|
291
|
+
Bugfixes:
|
|
292
|
+
|
|
293
|
+
- Remove pry-doc dependency to resolve pry version conflict.
|
|
294
|
+
|
|
295
|
+
## 1.5.0 (21st August, 2012)
|
|
296
|
+
|
|
297
|
+
Features:
|
|
298
|
+
|
|
299
|
+
- [FC033: Missing template](http://acrmp.github.com/foodcritic/#FC033) rule
|
|
300
|
+
added.
|
|
301
|
+
- [FC034: Unused template variables](http://acrmp.github.com/foodcritic/#FC034)
|
|
302
|
+
rule added
|
|
303
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/36)).
|
|
304
|
+
- [FC035: Template uses node attribute directly](http://acrmp.github.com/foodcritic/#FC035)
|
|
305
|
+
rule added. This is a style rule that may prove controversial.
|
|
306
|
+
- [FC037: Invalid notification action](http://acrmp.github.com/foodcritic/#FC037)
|
|
307
|
+
rule added.
|
|
308
|
+
- The `#read_ast` API method now supports Erb templates.
|
|
309
|
+
- API method `#resource_action?` added.
|
|
310
|
+
- DSL extended to include `library`, `metadata` and `template`.
|
|
311
|
+
|
|
312
|
+
Bugfixes:
|
|
313
|
+
|
|
314
|
+
- [FC020: Conditional execution string attribute looks like Ruby](http://acrmp.github.com/foodcritic/#FC033)
|
|
315
|
+
rule has been removed as unreliable.
|
|
316
|
+
- The `#attribute_access` API method now correctly allows a type of `:any`.
|
|
317
|
+
- The `#notifications` API method now supports notifications enclosed in braces
|
|
318
|
+
([related issue](https://github.com/etsy/foodcritic-rules/issues/3)).
|
|
319
|
+
- Ensure command-line help is shown when an invalid option is passed. Thanks
|
|
320
|
+
to @juanje for finding and fixing this issue.
|
|
321
|
+
|
|
322
|
+
## 1.4.0 (15th June, 2012)
|
|
323
|
+
|
|
324
|
+
Features:
|
|
325
|
+
|
|
326
|
+
- [FC027: Resource sets internal attribute](http://acrmp.github.com/foodcritic/#FC027)
|
|
327
|
+
rule added.
|
|
328
|
+
Thanks @macros.
|
|
329
|
+
- [FC028: Incorrect #platform? usage](http://acrmp.github.com/foodcritic/#FC028)
|
|
330
|
+
rule added.
|
|
331
|
+
- [FC029: No leading cookbook name in recipe metadata](http://acrmp.github.com/foodcritic/#FC029)
|
|
332
|
+
rule added.
|
|
333
|
+
- [FC030: Cookbook contains debugger breakpoints](http://acrmp.github.com/foodcritic/#FC030)
|
|
334
|
+
rule added
|
|
335
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/36)).
|
|
336
|
+
Thanks @bryanwb.
|
|
337
|
+
- [FC031: Cookbook without metadata file](http://acrmp.github.com/foodcritic/#FC031)
|
|
338
|
+
rule added
|
|
339
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/43)).
|
|
340
|
+
Thanks to @juanje for proposing and implementing this rule.
|
|
341
|
+
- [FC032: Invalid notification timing](http://acrmp.github.com/foodcritic/#FC032)
|
|
342
|
+
rule added.
|
|
343
|
+
- Added the [notifications](http://acrmp.github.com/foodcritic/#notifications)
|
|
344
|
+
API method to provide more convenient access to resource notifications
|
|
345
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/31)).
|
|
346
|
+
|
|
347
|
+
Bugfixes:
|
|
348
|
+
|
|
349
|
+
- [FC003: Check whether you are running with chef server before using server-specific features](http://acrmp.github.com/foodcritic/#FC003)
|
|
350
|
+
would warn if solo was checked for with `Chef::Config.solo`
|
|
351
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/26)).
|
|
352
|
+
Thanks to @miketheman for identifying and fixing this issue.
|
|
353
|
+
- [FC007: Ensure recipe dependencies are reflected in cookbook metadata](http://acrmp.github.com/foodcritic/#FC007)
|
|
354
|
+
would incorrectly warn if the cookbook name specified for `include_recipe`
|
|
355
|
+
was dynamic
|
|
356
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/44)).
|
|
357
|
+
Thanks @markjreed.
|
|
358
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
359
|
+
has been modified to no longer warn if the method called on node is called
|
|
360
|
+
explicitly with brackets
|
|
361
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/22)).
|
|
362
|
+
Thanks @jaymzh.
|
|
363
|
+
- The [resource_attributes](http://acrmp.github.com/foodcritic/#resource_attributes)
|
|
364
|
+
API method has been updated to return boolean values correctly.
|
|
365
|
+
|
|
366
|
+
## 1.3.1 (9th June, 2012)
|
|
367
|
+
|
|
368
|
+
Bugfixes:
|
|
369
|
+
|
|
370
|
+
- Changes made to support multiple cookbook paths in 1.3.0 broke
|
|
371
|
+
compatibility with earlier versions of the linting API. This release
|
|
372
|
+
restores compatibility with third party code that uses the linter
|
|
373
|
+
`#cookbook_path` or `#valid_path?` methods.
|
|
374
|
+
- The Nokogiri dependency constraint has been locked to 1.5.0 again as
|
|
375
|
+
Nokogiri 1.5.3 also appears to segfault in certain circumstances.
|
|
376
|
+
|
|
377
|
+
## 1.3.0 (21st May, 2012)
|
|
378
|
+
|
|
379
|
+
Features:
|
|
380
|
+
|
|
381
|
+
- [FC026: Conditional execution block attribute contains only string](http://acrmp.github.com/foodcritic/#FC026)
|
|
382
|
+
rule added
|
|
383
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/30)).
|
|
384
|
+
Thanks to @mkocher for proposing this rule.
|
|
385
|
+
- Foodcritic now accepts multiple cookbook paths as arguments and supports
|
|
386
|
+
linting of individual files only. Big thanks to @cgriego for these changes.
|
|
387
|
+
These lay the groundwork for his new
|
|
388
|
+
[guard-foodcritic](https://github.com/cgriego/guard-foodcritic) project.
|
|
389
|
+
|
|
390
|
+
Bugfixes:
|
|
391
|
+
|
|
392
|
+
- [FC003: Check whether you are running with chef server before using server-specific features](http://acrmp.github.com/foodcritic/#FC003)
|
|
393
|
+
would still warn if solo was checked for as a string
|
|
394
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/26)).
|
|
395
|
+
Thanks to @miketheman for identifying and fixing this issue.
|
|
396
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019)
|
|
397
|
+
would warn when the node object had been re-opened for extension
|
|
398
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/22)).
|
|
399
|
+
Thanks @jaymzh.
|
|
400
|
+
- [FC020: Conditional execution string attribute looks like Ruby](http://acrmp.github.com/foodcritic/#FC020)
|
|
401
|
+
updated to not warn against strings that appear to contain file paths or Windows `net use`
|
|
402
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/30)).
|
|
403
|
+
Thanks @eherot and @mconigliaro.
|
|
404
|
+
- [FC022: Resource condition within loop may not behave as expected](http://acrmp.github.com/foodcritic/#FC022)
|
|
405
|
+
would warn incorrectly if the resource name was set directly to the block
|
|
406
|
+
variable rather than being a string expression
|
|
407
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/29)).
|
|
408
|
+
Thanks @eherot.
|
|
409
|
+
- The [resource_attributes](http://acrmp.github.com/foodcritic/#resource_attributes)
|
|
410
|
+
API method has been updated to return the AST for resource notifications
|
|
411
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/31)).
|
|
412
|
+
Thanks @jonlives.
|
|
413
|
+
|
|
414
|
+
Other:
|
|
415
|
+
|
|
416
|
+
- [Etsy have open-sourced their Foodcritic rules](https://github.com/etsy/foodcritic-rules).
|
|
417
|
+
You should definitely check these out.
|
|
418
|
+
- The effective Chef version for determining the rules to apply has been
|
|
419
|
+
bumped to 0.10.10.
|
|
420
|
+
|
|
421
|
+
## 1.2.0 (21st April, 2012)
|
|
422
|
+
|
|
423
|
+
Features:
|
|
424
|
+
|
|
425
|
+
- [FC025: Prefer chef_gem to compile-time gem install](http://acrmp.github.com/foodcritic/#FC025)
|
|
426
|
+
rule added.
|
|
427
|
+
- Rules can now declare which versions of Chef they `apply_to`. The new
|
|
428
|
+
command line argument `-c` (`--chef-version`) should be used to specify the
|
|
429
|
+
effective Chef version.
|
|
430
|
+
|
|
431
|
+
Bugfixes:
|
|
432
|
+
|
|
433
|
+
- [FC001: Use strings in preference to symbols to access node attributes](http://acrmp.github.com/foodcritic/#FC001)
|
|
434
|
+
could show false positives when using Chef search.
|
|
435
|
+
- [FC001: Use strings in preference to symbols to access node attributes](http://acrmp.github.com/foodcritic/#FC001)
|
|
436
|
+
would overlook the use of symbols to access node attributes when passing
|
|
437
|
+
template variables.
|
|
438
|
+
- [FC002: Avoid string interpolation where not required](http://acrmp.github.com/foodcritic/#FC002)
|
|
439
|
+
fixed to no longer ignore the first keypair in a Hash
|
|
440
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/24)).
|
|
441
|
+
Thanks @Ips1975.
|
|
442
|
+
- [FC004: Use a service resource to start and stop services](http://acrmp.github.com/foodcritic/#FC004)
|
|
443
|
+
modified not to warn if the action is not supported by the `service`
|
|
444
|
+
resource.
|
|
445
|
+
- [FC005: Avoid repetition of resource declarations](http://acrmp.github.com/foodcritic/#FC005)
|
|
446
|
+
modified not to warn when resources are branched within conditionals or
|
|
447
|
+
provider actions.
|
|
448
|
+
- [FC007: Ensure recipe dependencies are reflected in cookbook metadata](http://acrmp.github.com/foodcritic/#FC007)
|
|
449
|
+
modified to ignore the use of `include_recipe` with embedded expressions.
|
|
450
|
+
- [FC023: Prefer conditional attributes](http://acrmp.github.com/foodcritic/#FC023)
|
|
451
|
+
modified not to warn if the conditional expression has an `else`.
|
|
452
|
+
- The `resource_attributes` API method has been updated to return block
|
|
453
|
+
attributes which were previously ignored
|
|
454
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/23)).
|
|
455
|
+
Thanks @jonlives.
|
|
456
|
+
|
|
457
|
+
## 1.1.0 (25th March, 2012)
|
|
458
|
+
|
|
459
|
+
Features:
|
|
460
|
+
|
|
461
|
+
- [FC024: Consider adding platform equivalents](http://acrmp.github.com/foodcritic/#FC024) rule added.
|
|
462
|
+
- When writing new rules it is no longer necessary to explicitly map
|
|
463
|
+
matching AST nodes to matches. You can now just return the AST nodes.
|
|
464
|
+
|
|
465
|
+
Bugfixes:
|
|
466
|
+
|
|
467
|
+
- The `cookbook_name` method now reflects the cookbook name if specified in
|
|
468
|
+
metadata. This prevents a warning from being shown by
|
|
469
|
+
[FC007: Ensure recipe dependencies are reflected in cookbook metadata](http://acrmp.github.com/foodcritic/#FC007)
|
|
470
|
+
if the cookbook is in a differently named directory.
|
|
471
|
+
- The `declared_dependencies` method previously would intermix version strings
|
|
472
|
+
in the list of cookbook names.
|
|
473
|
+
|
|
474
|
+
Other:
|
|
475
|
+
|
|
476
|
+
- Chef 0.10.10 will include a new DSL method for defining a `default_action`
|
|
477
|
+
for resources. Rule
|
|
478
|
+
[FC016: LWRP does not declare a default action](http://acrmp.github.com/foodcritic/#FC016)
|
|
479
|
+
has been updated to recognise the DSL change.
|
|
480
|
+
- Nokogiri dependency constraint changed to no longer lock to 1.5.0 as their
|
|
481
|
+
next release should include the fix for custom XPath functions.
|
|
482
|
+
|
|
483
|
+
## 1.0.1 (15th March, 2012)
|
|
484
|
+
|
|
485
|
+
Bugfixes:
|
|
486
|
+
|
|
487
|
+
- Nokogiri 1.5.1 and 1.5.2 cause a segfault so prevent their use until a fix
|
|
488
|
+
is released
|
|
489
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/18)).
|
|
490
|
+
Thanks @miah.
|
|
491
|
+
|
|
492
|
+
## 1.0.0 (4th March, 2012)
|
|
493
|
+
|
|
494
|
+
Features:
|
|
495
|
+
|
|
496
|
+
- New `-I` option added to specify the path to your own custom rules
|
|
497
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/8)).
|
|
498
|
+
- The
|
|
499
|
+
[Rule API](https://github.com/acrmp/foodcritic/blob/v1.0.0/lib/foodcritic/api.rb)
|
|
500
|
+
was previously not supported and subject to change without warning. From
|
|
501
|
+
this release it will now follow the
|
|
502
|
+
[same versioning policy](http://docs.rubygems.org/read/chapter/7) as the
|
|
503
|
+
command line interface.
|
|
504
|
+
- A version flag (--version or -V) has been added ([related issue](https://github.com/acrmp/foodcritic/issues/16)).
|
|
505
|
+
|
|
506
|
+
Bugfixes:
|
|
507
|
+
|
|
508
|
+
- The evaluation of rule tags has been updated to be consistent with Cucumber.
|
|
509
|
+
The major version number of foodcritic has been bumped to indicate that this
|
|
510
|
+
is a breaking change. If you make use of tags (for example in a CI build)
|
|
511
|
+
you may need to update your syntax. See the
|
|
512
|
+
[related issue](https://github.com/acrmp/foodcritic/issues/11) for more
|
|
513
|
+
information. Thanks @jaymzh.
|
|
514
|
+
- [FC003: Check whether you are running with chef server before using
|
|
515
|
+
server-specific features](http://acrmp.github.com/foodcritic/#FC003) has
|
|
516
|
+
been updated to correctly identify the new version of chef-solo-search
|
|
517
|
+
([related issue](https://github.com/acrmp/foodcritic/issues/17)).
|
|
518
|
+
|
|
519
|
+
## 0.11.1 (29th February, 2012)
|
|
520
|
+
|
|
521
|
+
Bugfixes:
|
|
522
|
+
|
|
523
|
+
- Foodcritic could fail to activate yajl-json in some circumstances, failing
|
|
524
|
+
with a runtime error. Whether this occurred was dependent on the version of
|
|
525
|
+
yajl-ruby activated by Chef, which would vary dependent on the other gems
|
|
526
|
+
installed on the system. See the
|
|
527
|
+
[related issue](https://github.com/acrmp/foodcritic/issues/14) for more
|
|
528
|
+
information. Thanks @jaymzh for identifying the issue and striving to get
|
|
529
|
+
Foodcritic playing well with Omnibus.
|
|
530
|
+
|
|
531
|
+
## 0.11.0 (22nd February, 2012)
|
|
532
|
+
|
|
533
|
+
Bugfixes:
|
|
534
|
+
|
|
535
|
+
- Major bugfix to [FC006: Mode should be quoted or fully specified when setting file permissions](http://acrmp.github.com/foodcritic/#FC006). In earlier versions a four-digit literal file mode that set the first octet would not have been picked up by this rule ([related issue](https://github.com/acrmp/foodcritic/pull/9)). Thanks @aia for finding and fixing this bug. Check your cookbooks against FC006 after upgrading to see if you are affected.
|
|
536
|
+
|
|
537
|
+
## 0.10.0 (20th February, 2012)
|
|
538
|
+
|
|
539
|
+
Features:
|
|
540
|
+
|
|
541
|
+
- Performance improvements.
|
|
542
|
+
- [FC023: Prefer conditional attributes](http://acrmp.github.com/foodcritic/#FC023) rule added. Stolen from @ampledata with thanks.
|
|
543
|
+
- New `-S` option added to allow an alternate search grammar to be specified.
|
|
544
|
+
|
|
545
|
+
Other:
|
|
546
|
+
|
|
547
|
+
- Chef is no longer loaded at startup for performance reasons. Foodcritic now ships with Chef DSL metadata.
|
|
548
|
+
|
|
549
|
+
## 0.9.0 (26th January, 2012)
|
|
550
|
+
|
|
551
|
+
Features:
|
|
552
|
+
|
|
553
|
+
- New experimental `-C` option added to output context for rule matches.
|
|
554
|
+
- [FC021: Resource condition in provider may not behave as expected](http://acrmp.github.com/foodcritic/#FC021) rule
|
|
555
|
+
added.
|
|
556
|
+
- [FC022: Resource condition within loop may not behave as expected](http://acrmp.github.com/foodcritic/#FC022) rule
|
|
557
|
+
added.
|
|
558
|
+
|
|
559
|
+
Bugfixes:
|
|
560
|
+
|
|
561
|
+
- [FC005: Avoid repetition of resource declarations](http://acrmp.github.com/foodcritic/#FC005) rule modified to only
|
|
562
|
+
warn when there are at least three *consecutive* resources of the same type that could be 'rolled up' into a loop.
|
|
563
|
+
- [FC016: LWRP does not declare a default action](http://acrmp.github.com/foodcritic/#FC016) rule restored. Thanks @stevendanna
|
|
564
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019) rule modified to no
|
|
565
|
+
longer treat DSL mixin methods as auto-vivified attributes. Identification of least used access method should now be
|
|
566
|
+
accurate.
|
|
567
|
+
|
|
568
|
+
Other:
|
|
569
|
+
|
|
570
|
+
- [FC020: Conditional execution string attribute looks like Ruby](http://acrmp.github.com/foodcritic/#FC020) rule now
|
|
571
|
+
grabs conditions from within single quotes.
|
|
572
|
+
|
|
573
|
+
## 0.8.1 (20th January, 2012)
|
|
574
|
+
|
|
575
|
+
Bugfixes:
|
|
576
|
+
|
|
577
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019) modified
|
|
578
|
+
to avoid false positives on methods invoked on values in a Mash.
|
|
579
|
+
|
|
580
|
+
## 0.8.0 (19th January, 2012)
|
|
581
|
+
|
|
582
|
+
Features:
|
|
583
|
+
|
|
584
|
+
- [FC019: Access node attributes in a consistent manner](http://acrmp.github.com/foodcritic/#FC019) rule added.
|
|
585
|
+
- [FC020: Conditional execution string attribute looks like Ruby](http://acrmp.github.com/foodcritic/#FC020) rule added.
|
|
586
|
+
|
|
587
|
+
Other:
|
|
588
|
+
|
|
589
|
+
- Rule 'FC016: LWRP does not declare a default action' was incorrectly checking the provider for a default action
|
|
590
|
+
rather than the resource. Removed this rule temporarily to avoid showing false positives. A user has patched this
|
|
591
|
+
and will be submitting a pull request shortly.
|
|
592
|
+
|
|
593
|
+
## 0.7.0 (31st December, 2011)
|
|
594
|
+
|
|
595
|
+
Features:
|
|
596
|
+
|
|
597
|
+
- New `-f` option added to allow you to specify which warnings should result in the build being failed. See the new
|
|
598
|
+
documentation on [using Foodcritic in Continuous Integration](http://acrmp.github.com/foodcritic/#ci) for more
|
|
599
|
+
information.
|
|
600
|
+
- New `-r` option added to drop you into the Pry REPL to interactively develop rules. See the updated documentation on
|
|
601
|
+
[Writing a new rule](http://acrmp.github.com/foodcritic/#writing-a-new-rule) for more information.
|
|
602
|
+
|
|
603
|
+
Bugfixes:
|
|
604
|
+
|
|
605
|
+
- [FC003: Check whether you are running with chef server before using server-specific features](http://acrmp.github.com/foodcritic/#FC003) rule
|
|
606
|
+
modified to not warn if the [edelight chef-solo-search library](https://github.com/edelight/chef-solo-search) has been installed. Thanks @tobami.
|
|
607
|
+
- [FC007: Ensure recipe dependencies are reflected in cookbook metadata](http://acrmp.github.com/foodcritic/#FC007) rule
|
|
608
|
+
modified to flag undeclared dependencies against the offending file rather than metadata.rb.
|
|
609
|
+
- Removed the unused description field from the rule dsl.
|
|
610
|
+
|
|
611
|
+
Other:
|
|
612
|
+
|
|
613
|
+
- Project features now run much faster, running in-process by default. You can set an environment variable
|
|
614
|
+
(`FC_FORK_PROCESS`) to specify that Cucumber runs should match the earlier behaviour and spawn a separate process
|
|
615
|
+
using Aruba.
|
|
616
|
+
|
|
617
|
+
## 0.6.0 (18th December, 2011)
|
|
618
|
+
|
|
619
|
+
Features:
|
|
620
|
+
|
|
621
|
+
- [FC001: Use strings in preference to symbols to access node attributes](http://acrmp.github.com/foodcritic/#FC001)
|
|
622
|
+
rule added.
|
|
623
|
+
- [FC004: Use a service resource to start and stop services](http://acrmp.github.com/foodcritic/#FC004) rule extended
|
|
624
|
+
to recognise upstart and invoke-rc.d.
|
|
625
|
+
- [FC011: Missing README in markdown format](http://acrmp.github.com/foodcritic/#FC011) rule added.
|
|
626
|
+
- [FC012: Use Markdown for README rather than RDoc](http://acrmp.github.com/foodcritic/#FC012) rule added.
|
|
627
|
+
- [FC013: Use file_cache_path rather than hard-coding tmp paths ](http://acrmp.github.com/foodcritic/#FC013) rule added.
|
|
628
|
+
- [FC014: Consider extracting long ruby_block to library](http://acrmp.github.com/foodcritic/#FC014) rule added.
|
|
629
|
+
- [FC015: Consider converting definition to a LWRP](http://acrmp.github.com/foodcritic/#FC015) rule added.
|
|
630
|
+
- [FC016: LWRP does not declare a default action](http://acrmp.github.com/foodcritic/#FC016) rule added.
|
|
631
|
+
- [FC017: LWRP does not notify when updated](http://acrmp.github.com/foodcritic/#FC017) rule added.
|
|
632
|
+
- [FC018: LWRP uses deprecated notification syntax](http://acrmp.github.com/foodcritic/#FC018) rule added.
|
|
633
|
+
|
|
634
|
+
Bugfixes:
|
|
635
|
+
|
|
636
|
+
- Ensure warnings are line sorted numerically. Commit eb1762fd0fbf99fa513783d7838ceac0147c37bc
|
|
637
|
+
- [FC005: Avoid repetition of resource declarations](http://acrmp.github.com/foodcritic/#FC005) rule made less aggressive.
|
|
638
|
+
|
|
639
|
+
## 0.5.2 (15th December, 2011)
|
|
640
|
+
|
|
641
|
+
Bugfixes:
|
|
642
|
+
|
|
643
|
+
- Fix JSON version range for compatibility with Bundler / Chef 0.10.6. ([related issue](https://github.com/acrmp/foodcritic/issues/6)). Thanks @dysinger.
|
|
644
|
+
|
|
645
|
+
## 0.5.1 (14th December, 2011)
|
|
646
|
+
|
|
647
|
+
Features:
|
|
648
|
+
|
|
649
|
+
- Relaxed Ruby version constraint so we can run on 1.9.2 ([related issue](https://github.com/acrmp/foodcritic/issues/5)). Yay. Thanks @someara.
|
|
650
|
+
|
|
651
|
+
## 0.5.0 (13th December, 2011)
|
|
652
|
+
|
|
653
|
+
Features:
|
|
654
|
+
|
|
655
|
+
- Added the ability to choose rules to apply via tags ([related issue](https://github.com/acrmp/foodcritic/issues/4)).
|
|
656
|
+
This uses the same syntax as [Cucumber tag expressions](https://github.com/cucumber/cucumber/wiki/tags).
|
|
657
|
+
- [FC010: Invalid search syntax](http://acrmp.github.com/foodcritic/#FC010) rule added.
|
|
658
|
+
|
|
659
|
+
## 0.4.0 (10th December, 2011)
|
|
660
|
+
|
|
661
|
+
Features:
|
|
662
|
+
|
|
663
|
+
- [Spiffy new home page and documentation](http://acrmp.github.com/foodcritic/)
|
|
664
|
+
- [FC008: Generated cookbook metadata needs updating](http://acrmp.github.com/foodcritic/#FC008) rule added.
|
|
665
|
+
- [FC009: Resource attribute not recognised rule added](http://acrmp.github.com/foodcritic/#FC009).
|
|
666
|
+
This adds a dependency on the Chef gem.
|
|
667
|
+
- Performance improvement.
|
|
668
|
+
|
|
669
|
+
Bugfixes:
|
|
670
|
+
|
|
671
|
+
- Fixed typo in FC004 feature description ([related issue](https://github.com/acrmp/foodcritic/issues/2)). Thanks @smith.
|
|
672
|
+
- Prevented statements within nested resource blocks from being interpreted as resource attributes.
|
|
673
|
+
|
|
674
|
+
## 0.3.0 (4th December, 2011)
|
|
675
|
+
|
|
676
|
+
Features:
|
|
677
|
+
|
|
678
|
+
- Significantly slower! But now you can write rules using [xpath or css selectors](http://nokogiri.org/).
|
|
679
|
+
- FC006: File mode rule added.
|
|
680
|
+
- FC007: Undeclared recipe dependencies rule added.
|
|
681
|
+
|
|
682
|
+
## 0.2.0 (1st December, 2011)
|
|
683
|
+
|
|
684
|
+
Bugfixes:
|
|
685
|
+
|
|
686
|
+
- Removed 'FC001: Use symbols in preference to strings to access node attributes' until a policy mechanism is
|
|
687
|
+
introduced ([related issue](https://github.com/acrmp/foodcritic/issues/1)). Thanks @jtimberman
|
|
688
|
+
|
|
689
|
+
## 0.1.0 (30th November, 2011)
|
|
690
|
+
|
|
691
|
+
Initial version.
|