Login
Importing Perl-Critic-0.13.
[gknop/Perl-Critic.git] / Changes
CommitLineData
59b05e08
JRT
1[0.13] Released on 051031
2
3 Production release of 0.12_03. No code major changes.
4
5[0.12_03] Not released
6
7 Renamed -Policy option to -include. Added -exclude to give the
8 opposite effect.
9
10 Refactored constructor of Perl::Critic. Now, most of the work
11 is delegated to Perl::Critic::Config. I'm not sure I like how
12 this turned out, but we'll see how it goes.
13
14 Renamed some Policy modules to be a bit more comprehensible. Note
15 that you may need to change your .perlcriticrc file accordingly.
16 I also suggest removing your current Perl::Critic installation
17 before installing this one.
18
19 Name Changes:
20 * ProhibitUnpackagedCode => RequireExplicitPackage
21 * RequireQuotedWords => ProhibitQuotedWordLists
22
23 Improved error message when Perl::Critic dies because PPI can't
24 parsee the input code.
25
26 Changed output of -help to be more terse.
27
28 Edited POD.
29
30[0.12_02] Not released
31
32 Added -Policy option to perlcritic. The idea is to provide a
33 compact interface for selecting Policy modules at the command-line.
34 This feature is experimental and subject to change.
35
36 Added a warning message if -verbose value looks strange. In most
37 applications, the -verbose option does not require a value, so people
38 might be puzzled when they write 'perlcritic -verbose my_file.pm' and
39 nothing seems to happen.
40
41 Command-line options to perlcritic are now case-sensitive. This
42 makes it easier to abbreviate options that start with the same letters
43 (e.g. 'Version' and 'verbose')
44
45 Fixed the new Policy modules that were misnamed and misplaced in the
46 previous distribution.
47
48[0.12_01] Not released
49
50 Rewrote some of the ControlStructures and BuiltinFunction
51 policies to be simpler (and probably a little faster).
52
53 Edited POD. Fixed some typos. Added PREREQUISITES section
54 to Perl::Critic documentation.
55
56 Fixed the -verbose FORMAT option so that you can put metachars
57 in the FORMAT specification. If using perlcritic, be careful to
58 protect them from getting munged by the shell first.
59
60 Replaced ProhibitRequireStatements with RequireBarewordIncludes
61 module. Courtesy of Chris Dolan <cdolan@cpan.org>
62
63 Added configuration to ProhibitInterpolationOfLiterals so that
64 certain flavors of quotes can be exempt. This is for folks who
65 have configured their editor to use special syntax highlighting
66 for certain kinds of strings (SQL, for example).
67
68 perlcritic now accepts multiple file arguments, so now you can
69 critique your entire distribution in one shot. As a result, the
70 output-formats have changed slightly.
71
72 New Policy modules:
73 * BuiltinFunctions::ProhibitLvalueSubstr
74 * BuiltinFunctions::ProhibitSleepViaSelect
75 * ClassHierarchies::ProhibitOneArgBless
76 * CodeLayout::RequireTrailingCommas
77 * CodeLayout::RequireQuotedWordLists
78 * InputOutput::ProhibitTwoArgOpen
79 * InputOutput::ProhibitOneArgSelect
80 * InputOutput::ProhibitBarewordFileHandles
81 * Miscellanea::RequireRcsKeywords
82 * Modules::RequireVersionVar
83 * RegularExpressions::RequireExtendedFormatting
84 * RegularExpressions::RequireLineBoundaryMatching
85
86
87 Bug fixes:
88 14923: 'require' is now permitted. See RequireBarewordIncludes.
89 15022: Fixed false-positives when keywords are used as hash keys.
90 15023: Fixed spurious Violations by removing magic shebang.
91 15031: Fixed spelling mistakes (and probably added some new ones).
92 15233: Postfix 'if' is now allowed with 'die', 'croak', etc.
93
94[0.12] Released 051010
95
96 Redesigned the 'verbose' feature. Now the output format
97 can be user-defined using a sprintf-like specification.
98 perlciritc also has a predefined output format that is
99 compatible with grep mode in editors like vim and emacs.
100
101 'return' is now exempt from ProhibitParensWithBuiltins. I may
102 extend this exemption to all unary functions.
103
104 Edited POD. Added a super brief description of each policy
105 in the main Perl::Critic documentation. Added details about
106 editor integration.
107
108 Additional Prerequisites:
109 * String::Format
110
111[0.11] Not released
112
113 The internal dynamics and API of Perl::Critic have changed
114 considerably. The result is a 300% increase in performance.
115 See the POD in Perl::Critic::Policy for details.
116
117 New Features:
118 * Added -verbose option to put more stuff in the output. In the
119 extreme, you can get the POD from Policy attached to each
120 and every violation.
121
122 Additional Prerequisites:
123 * IO::String
124 * Pod::PlainText
125
126[0.10] Released 051005
127
128 Fixed stupid bug in newest Policy modules. They were returning
129 PPI objects instead of Perl::Critic::Violation objects. Doh!
130
131 Fixed test scripts to prevent failures if the user already has a
132 .perlcriticrc file.
133
134 'ProhibitHardTabs' now allows leading tabs by default.
135
136 Put the Changes file in reverse-chronological order, so the most
137 recent stuff is easy to find at the top of the file
138
139[0.09] Released 051004
140
141 Fixed several bugs:
142 * 14810: Now you are allowed to create your own 'import' function,
143 since this is frequently done with fancy modules.
144 * 14817: Parens, brackets, and braces are now excluded from
145 'ProhibitNoisyQuotes' since they look better in quotes anyway.
146 * 14787: $1..$9 and '_' are exempt from ProhibitPunctuationVars
147 * 14899: Object methods with the same name as a built-in can
148 be called with parens (ProhibitParensWithBuiltins).
149 * 14901: Normalized the exit status of perlcritic to 0, 1, or 2.
150 See documentation for explanation.
151 * 14855: Partially fixed home directory discovery. Still not
152 completely portable, but at least doesn't create warnings.
153
154 New features:
155 * 14734: Limit for number separators is now configurable
156
157 New Policy modules:
158 * CodeLayout::ProhibitHardTabs
159 * ControlStructures::ProhibitUnlessBlocks
160 * ControlStructures::ProhibitUntilBlocks
161 * ControlStructures::ProhibitCStyleForLoops
162
163 Changed the syntax for the magic comments. Adam had the
164 idea of using a pragma-like notation. I liked it.
165
166[0.08_2] Released 050927
167
168 Fixed problems with Perl::Critic::Config that caused File::Spec
169 to emit 'uninitialized value' warnings during the build.
170
171 Added 1 Policy module contributed by Graham TerMarsch
172
173 Switched from File::Spec::Functions to plain File::Spec because
174 I think its usage is more common.
175
176 Removed 'FindBin' from the test files so I can be sure that the
177 right libraries are getting loaded. This means I'll have to
178 use the -l option with C<prove>.
179
180 Edited more POD.
181
182[0.08_01] Not released
183
184 Fixed "ProhibitParensWithBuiltins" to allow parens to be used with
185 object method calls that have the same name as a builtin functions.
186
187 Introduced magical comments that allow developers to configure
188 Perl::Critic on-the-fly from within their code.
189
190 Added META.yml files and POD tests to the build. I did this
191 mostly just to boost the Kwalitee score on CPANTS.
192
193 Switched from "Config::Std" to "Config::Tiny" because it doesn't
194 require those fancy Damian modules that don't seem to work on
195 some older versions of Perl.
196
197[0.07] Released on 050921
198
199 Fixed bugs in the ProhibitCascadingIfElse policy.
200
201 Added ProhibitExplicitReturnUndef policy
202
203 Made ProhibitUnpackagedCode configurable so you can exempt scripts,
204 which typically don't have an explicit 'package' statement.
205
206 ProhibitPackageVars policy now exempts vars in ALL_CAPS. This
207 is to permit common package variables like @EXPORT and $VERSION.
208
209 Renamed "ProhibitStringyGrep and "ProhibitStringyMap" because
210 the so-called string form doesn't really exist. Now called
211 "RequireBlockGrep" and "RequireBlockMap"
212
213 Corrected documentation on defining Policy names within the
214 configuration file. This still isn't very clear and needs
215 to be rewritten.
216
217 Perl::Critic now requires PPI version 1.003, which has a few bug
218 fixes of its own.
219
220 Rewrite some code just to make Perl::Critic more self-compliant.
221
222 Added test cases to verify the configuration functionality. These
223 are not completely thorough and need more work.
224
225[0.06] Released on 050917
226
227 Now called 'Perl::Critic'.
228
229 Added 4 new policy modules.
230
231 Fixed bugs in build process.
232
233 Added support for Module::Build.
234
235[0.05] Released on 050917
236
237 End of 'Perl::Review' releases. I have changed the name to
238 'Perl::Critic' to avoid possible confusion with "The Perl Review"
239 magazine.
240
241[0.04] Released on 050914
242
243 Version 0.03 was a bust because I uploaded the wrong tarball to PAUSE.
244
245[0.03] Released on 050913.
246
247 Fixed some POD links.
248
249 Removed test cases for missing policy module.
250
251[0.02] Released on 050913.
252
253 Major overhaul based on feedback from Perl community.
254
255 Factored coding standards into separate modules (known as
256 Policies). The idea here is to allow other developers to easily
257 contribute additional coding standards.
258
259 Reworked Perl::Review into a simple engine for loading and running
260 Policy modules.
261
262 Gave perlreview a command-line interface and configuration file
263 for selecting which Policy modules to use.
264
265[0.01] Released on 050816.
266
267 Initial version.
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287