-
Notifications
You must be signed in to change notification settings - Fork 8
/
releasenotes_old_1-0_5-9.html
3690 lines (2447 loc) · 112 KB
/
releasenotes_old_1-0_5-9.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html>
<!--
| Generated by Apache Maven Doxia Site Renderer 1.11.1 from src/xdocs/releasenotes_old_1-0_5-9.xml at 2024-12-12
| Rendered using Apache Maven Default Skin
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="generator" content="Apache Maven Doxia Site Renderer 1.11.1" />
<title>checkstyle – Old Release Notes 2</title>
<link rel="stylesheet" href="./css/maven-base.css" />
<link rel="stylesheet" href="./css/maven-theme.css" />
<link rel="stylesheet" href="./css/site.css" />
<link rel="stylesheet" href="./css/print.css" media="print" />
<script type="text/javascript" src="./js/checkstyle.js"></script>
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript" src="./js/anchors.js"></script>
<script type="text/javascript" src="./js/google-analytics.js"></script>
<link rel="icon" href="./images/favicon.png" type="image/x-icon" />
<link rel="shortcut icon" href="./images/favicon.ico" type="image/ico" />
</head>
<body class="composite">
<div id="banner">
<a href="./" id="bannerLeft" title="Checkstyle"><img src="images/header-checkstyle-logo.png" alt="Checkstyle"/></a><a href="./" id="bannerRight" title="Checkstyle"><img src="images/header-right-ruller.png" alt="Checkstyle"/></a> <div class="clear">
<hr/>
</div>
</div>
<div id="breadcrumbs">
<div class="xright"><a href="" title="toTop">toTop</a> | <span id="publishDate">Last Published: 2024-12-12</span>
| <span id="projectVersion">Version: 10.21.0</span>
</div>
<div class="clear">
<hr/>
</div>
</div>
<div id="leftColumn">
<div id="navcolumn">
<h5>About</h5>
<ul>
<li class="none"><a href="index.html" title="Checkstyle">Checkstyle</a></li>
<li class="none"><a href="releasenotes.html" title="Release Notes">Release Notes</a></li>
<li class="none"><a href="consulting.html" title="Consulting">Consulting</a></li>
<li class="none"><a href="sponsoring.html" title="Sponsoring">Sponsoring</a></li>
</ul>
<h5>Documentation</h5>
<ul>
<li class="expanded"><a href="config.html" title="Configuration">Configuration</a>
<ul>
<li class="none"><a href="property_types.html" title="Property Types">Property Types</a></li>
<li class="none"><a href="config_system_properties.html" title="System Properties">System Properties</a></li>
</ul></li>
<li class="expanded"><a href="running.html" title="Running">Running</a>
<ul>
<li class="none"><a href="anttask.html" title="Ant Task">Ant Task</a></li>
<li class="none"><a href="cmdline.html" title="Command Line">Command Line</a></li>
</ul></li>
<li class="expanded"><a href="checks.html" title="Checks">Checks</a>
<ul>
<li class="collapsed"><a href="checks/annotation/index.html" title="Annotations">Annotations</a></li>
<li class="collapsed"><a href="checks/blocks/index.html" title="Block Checks">Block Checks</a></li>
<li class="collapsed"><a href="checks/design/index.html" title="Class Design">Class Design</a></li>
<li class="collapsed"><a href="checks/coding/index.html" title="Coding">Coding</a></li>
<li class="collapsed"><a href="checks/header/index.html" title="Headers">Headers</a></li>
<li class="collapsed"><a href="checks/imports/index.html" title="Imports">Imports</a></li>
<li class="collapsed"><a href="checks/javadoc/index.html" title="Javadoc Comments">Javadoc Comments</a></li>
<li class="collapsed"><a href="checks/metrics/index.html" title="Metrics">Metrics</a></li>
<li class="collapsed"><a href="checks/misc/index.html" title="Miscellaneous">Miscellaneous</a></li>
<li class="collapsed"><a href="checks/modifier/index.html" title="Modifiers">Modifiers</a></li>
<li class="collapsed"><a href="checks/naming/index.html" title="Naming Conventions">Naming Conventions</a></li>
<li class="collapsed"><a href="checks/regexp/index.html" title="Regexp">Regexp</a></li>
<li class="collapsed"><a href="checks/sizes/index.html" title="Size Violations">Size Violations</a></li>
<li class="collapsed"><a href="checks/whitespace/index.html" title="Whitespace">Whitespace</a></li>
</ul></li>
<li class="collapsed"><a href="filters/index.html" title="Filters">Filters</a></li>
<li class="collapsed"><a href="filefilters/index.html" title="File Filters">File Filters</a></li>
<li class="expanded"><a href="style_configs.html" title="Style Configurations">Style Configurations</a>
<ul>
<li class="none"><a href="google_style.html" title="Google's Style">Google's Style</a></li>
<li class="none"><a href="sun_style.html" title="Sun's Style">Sun's Style</a></li>
</ul></li>
</ul>
<h5>Developers</h5>
<ul>
<li class="expanded"><a href="extending.html" title="Extending Checkstyle">Extending Checkstyle</a>
<ul>
<li class="none"><a href="writingchecks.html" title="Writing Checks">Writing Checks</a></li>
<li class="none"><a href="writingjavadocchecks.html" title="Writing Javadoc Checks">Writing Javadoc Checks</a></li>
<li class="none"><a href="writingfilters.html" title="Writing Filters">Writing Filters</a></li>
<li class="none"><a href="writingfilefilters.html" title="Writing File Filters">Writing File Filters</a></li>
<li class="none"><a href="writinglisteners.html" title="Writing Listeners">Writing Listeners</a></li>
</ul></li>
<li class="none"><a href="contributing.html" title="Contributing">Contributing</a></li>
<li class="expanded"><a href="beginning_development.html" title="Beginning Development">Beginning Development</a>
<ul>
<li class="none"><a href="eclipse.html" title="Eclipse IDE">Eclipse IDE</a></li>
<li class="none"><a href="netbeans.html" title="NetBeans IDE">NetBeans IDE</a></li>
<li class="none"><a href="idea.html" title="IntelliJ IDE">IntelliJ IDE</a></li>
</ul></li>
<li class="none"><a href="apidocs/index.html" title="Javadoc">Javadoc</a></li>
</ul>
<h5>Project Documentation</h5>
<ul>
<li class="collapsed"><a href="project-info.html" title="Project Information">Project Information</a></li>
<li class="collapsed"><a href="project-reports.html" title="Project Reports">Project Reports</a></li>
</ul>
<a href="https://github.com/checkstyle/checkstyle" title="GitHub" class="poweredBy">
<img class="poweredBy" alt="GitHub" src="images/github_logo_social_coding_outlined.png" />
</a>
<a href="https://twitter.com/checkstyle_java/" title="Twitter" class="poweredBy">
<img class="poweredBy" alt="Twitter" src="images/twitter_button.png" />
</a>
<a href="https://stackoverflow.com/questions/tagged/checkstyle" title="Stackoverflow" class="poweredBy">
<img class="poweredBy" alt="Stackoverflow" src="images/stackoverflow.jpeg" />
</a>
<a href="https://groups.google.com/forum/#!forum/checkstyle" title="GoogleGroups" class="poweredBy">
<img class="poweredBy" alt="GoogleGroups" src="images/groups.png" />
</a>
<a href="https://www.ej-technologies.com/products/jprofiler/overview.html" title="JProfiler" class="poweredBy">
<img class="poweredBy" alt="JProfiler" src="https://www.ej-technologies.com/images/product_banners/jprofiler_medium.png" />
</a>
</div>
</div>
<div id="bodyColumn">
<div id="contentBox">
<section>
<h2><a name="Release_5.9"></a>Release 5.9</h2>
<p>New features:</p>
<ul>
<li>
Support of Java8 syntax. Author: Ilja Dubinin. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/10">#10</a>
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Enormous update on Indentation Check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/294">#294</a>
</li>
<li>
Fixed IllegalInstantiationCheck, so it won't recognize a constructor reference (Java8)
as instantiation. Author: Ryszard Wisniewski.
</li>
<li>
Since Java 8 we can have methods body in interfaces. Author: Ilja Dubinin. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/282">#282</a>
</li>
<li>
Default modifier has been added to modifier list. Author: Ilja Dubinin. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/284">#284</a>
</li>
<li>
Fixed bug in DefaultComesLast check. Now it supports java 8 default methods. Author: Ilja Dubinin. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/297">#297</a>
</li>
<li>
Fixed IndexOutOfBoundsException in CustomImportOrderCheck. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/296">#296</a>
</li>
</ul>
<p>Notes:</p>
<ul>
<li>
Correct OverloadMethodsDeclarationOrder name in documentation. Author: Andrew Gaul.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.8"></a>Release 5.8</h2>
<p>New features:</p>
<ul>
<li>
Google Java Style <a href="google_style.html">xml configuration</a> was added. Author: Max Vetrenko.
</li>
<li>
New: AbbreviationAsWordInName check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/212">#212</a>
</li>
<li>
Added enum processing to TypeNameCheck. Author: Pavel Baranchikov
</li>
<li>
Added method to clear cache to LocalizedMessage. Author: Joni Salmi. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/156">#156</a>
</li>
<li>
New: AvoidEscapedUnicodeCharacters check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/194">#194</a>
</li>
<li>
New: CustomImportOrder check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/194">#194</a>
</li>
<li>
New: EmptyLineSeparator check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/186">#186</a>
</li>
<li> Enable array initialization indentation settings. Author: Vaclav Chalupa. </li>
<li> Enhance WhitespaceAroundCheck to ignore Annotation Array Initialization curlies as it
does for Array Initialization outside of annotations. Author: Jacob Tomaw </li>
<li>
ignore option to the JavadocVariable check. Author: Yuriy Chulovskyy. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/98">#98</a>
</li>
<li>
New: InterfaceTypeParameterName check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/202">#202</a>
</li>
<li>
New grammar rule was added only for catch types. IllegalCatchCheck has been
extended to use catch with few exception types..
Author: Ilja Dubinin <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/165">#165</a>
</li>
<li>
LocalVariableName. Allowed one char variables in initialization expressions in FOR loop. Author: Max Vetrenko <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/192">#192</a>
</li>
<li>
New: NoLineWrap check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/173">#173</a>
</li>
<li>
New: OneTopLevelClass check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/172">#173</a>
</li>
<li>
New: OverloadMethodsDeclarationOrder check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/32">#32</a>
</li>
<li>
New option to allow no empty line between fields at EmptyLineSeparatorCheck check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/227">#227</a>
</li>
<li>
New option to allow that force overload methods are grouped together at DeclarationOrder check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/163">#163</a>
</li>
<li>
New option to allow empty classes, enums and interfaces, empty loops are allowed at WhitespaceAround check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/163">#163</a>
</li>
<li>
New: VariableDeclarationUsageDistance check. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/223">#223</a>
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Update for EmptyBlock to allow empty loops. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/190">#190</a>
</li>
<li>
EmptyLineSeparatorCheck was updated to validate empty line after header. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/218">#218</a>
</li>
<li>
LeftCurly Check was updated to force line break. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/247">#247</a>
</li>
<li>
update for OuterTypeFilename Check to check top level type are the public type or the first type in file if public is missed. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/248">#248</a>
</li>
<li>
update for RightCurly Check, new option to check line break after the closing brace if that brace terminates a statement or the body of a method, constructor or named class. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/182">#182</a>
</li>
<li>
Added test and fix for the case if there is a semicolon between import statements.
Author: Ryszard Wisniewski
</li>
<li>
Adding ANNOTATION_DEF to the valid list of parentASTs for the SuppressWarningsHolder.
Without this, any @SuppressWarnings (checkstyle or not) present on an annotation
definition class will fail. Author: Dominic Jones
</li>
<li>
Adding u HTML tag to list of allowed tags in JavaDoc. Author: Ilja Gubins. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/58">#58</a>
</li>
<li>
update for WhitespaceAround. Allowed empty anonymous classes. Was updated allowEmptyTypes property. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/197">#197</a>
</li>
<li>
Fixed AbstractTypeAwareCheck for generics in interfaces. Author: Tobias Baum. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/177">#177</a>
</li>
<li>
Fixed RightCurlyCheck for empty methods. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/213">#213</a>
</li>
<li>
Fixed WhitespaceAroundCheck. fix for anonymous inner class. Author: Yuriy Chulovskyy. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/213">#105</a>
</li>
<li>
Fixed RedundantModifier. Abstract Interface Should not be Allowed.
. Author: Yuriy Chulovskyy. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/209">#209</a>
</li>
<li>
Fixed EmptyBlock. need to handle switch block.
. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/235">#235</a>
</li>
<li>
Fixed WhitespaceAround. Fix false positive with ANNOTATION_DEF.
. Author: Max Vetrenko. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/237">#237</a>
</li>
<li>
Fixed GenericWhitespace. Fix false positive with Array.
. Author: Inav Sopov. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/47">#47</a>
</li>
<li>
Fixed JavadocStyleCheck. HTML comments break the Javadoc style HTML check.
. Author: theqaguy. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/119">#119</a>
</li>
<li>
Fixed Java grammar. Now it can parse 'return (byte[].class);'
. Author: Ilja Dubinin. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/130">#130</a>
</li>
<li>
Exception thrown when parsing numeric constant "3.14_15F".
. Author: Yuriy Chulovskyy<a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/134">#134</a>
</li>
<li>
RequireThis triggers for static interface fields Fixed.
. Author: Sergiu Dumitriu <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/155">#155</a>
</li>
<li>
Javadoc in GenericWhitespaceCheck was updated.
. Author: Max Vetrenko <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/254">#254</a>
</li>
<li>
MemberNameCheck should not validate interface constants, that's ConstantNameCheck's role.
Author: Sergiu Dumitriu
</li>
<li>
RightCurly. Force line break before '}' in case SAME option.
. Author: Max Vetrenko <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/250">#250</a>
</li>
<li>
SeparatorWrapCheck. Covers separators like ',', '.' .
. Author: Max Vetrenko <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/179">#179</a>
</li>
<li>
Support annotations in TypeNameCheck. Author: Thomas Jensen
</li>
<li>
Update UnusedImportsCheck to correctly detect classes in parameters and
inline tags nested within block tags. fixing checkstyle issues Fixing even
more checkstyle issues. Author: James Gorman
</li>
<li>
Use a thread-safe map implementation to keep the compiled patterns.
Author: Christoph Kutzinski
</li>
<li>
WhitespaceAround with allowEmptyMethods complains on annotation's empty method
. Author: Max Vetrenko <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/21">#21</a>
</li>
</ul>
<p>Notes:</p>
<ul>
<li>
dsm-maven-plugin is used to show dsm/index.html dependency structure of project on site.
Author: Ilja Dubinin.
</li>
<li>
Added and updated documentation/messages for number of Checks. Authors: Max Vetrenko,
Thomas Jensen, Yuriy Chulovskyy, Jarmo Isotalo, Peter O, Ryszard Wisniewski, Ilja Gubins,
Baratali Izmailov, Jan Schafer, Niklas Walter, Andrew Gaul.
</li>
<li>
Moving to standard directory layout. Author: Ivan Sopov.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.7"></a>Release 5.7</h2>
<p>New features:</p>
<ul>
<li>
Support
<a href="filters/suppresswarningsfilter.html#SuppressWarningsFilter">SuppressWarningsFilter</a>
to use <code>@SuppressWarnings</code> annotations to suppress
violations. Thanks to Trevor Robinson for patch #156.
</li>
<li>
New: UniqueProperties check. Thanks to Pavel Baranchikov. <a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/19">#19</a>
</li>
<li>
Support for '&' in nested generics. Thanks to <a class="externalLink" href="https://github.com/dkomanov">dkomanov</a>.
</li>
<li>
Allow HeaderCheck definition to be specified as URL. Thanks to
tnarake.
</li>
<li>
Allow additional URL schemes for SuppressionFilter
configuration. Thanks to tnarake.
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
added support for a separate throws indentation configuration
</li>
<li>
SuppressionCommentFilter ignores messageFormat. Patch from Chris Brigham.
</li>
<li>
Exclude some java.util classes from Class Fan out. Thanks to Ivan Sopov and Vincent Massol.<a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/31">#31</a>
</li>
<li>
Allow to ignore java.lang and certain other classes. Thanks to Ivan Sopov and Vincent Massol.<a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/33">#33</a>
</li>
<li>
RequireThisCheck doesn't check methods. Thanks to krzyk.<a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/41">#41</a>
</li>
<li>
Document WhitespaceAround for-each property. Thanks to Andrew Gaul.<a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/15">#15</a>
</li>
<li>
Other corrections for typos. Thanks to Andrew Gaul.<a class="externalLink" href="https://github.com/checkstyle/checkstyle/pull/16">#16</a>
</li>
<li>
Remnants of DoubleCheckedLocking were removed. Thanks to Antonio Ospite.
</li>
</ul>
<p>Notes:</p>
<ul>
<li>
Improved the performance of FileText construction, which
increased file loading times by up to 30%.
</li>
<li>
Upgraded dependencies to guava-jdk5 14.0.1 and JUnit 4.11.
</li>
<li>
partial fix for "Sonarqube found problems in Checkstyle" <a class="externalLink" href="https://github.com/checkstyle/checkstyle/issues/46">#46</a>.
</li>
<li>
Remnants of DoubleCheckedLocking were removed. Thanks to
Antonio Ospite.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.6"></a>Release 5.6</h2>
<p>New features:</p>
<ul>
<li>
<a href="filters/suppressionfilter.html#SuppressionFilter">SuppressionFilter</a>
now supports loading a configuration from a URL
reference. Thanks to Stephen for patch #3485185.
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Fixed bug in the grammar for an edge case (bug
#1667137). Thanks to Lukas Platinsky for patch #3393810.
</li>
<li>
<a href="checks/coding/declarationorder.html#DeclarationOrder">DeclarationOrder</a>
handles ignoreModifiers correctly (all fields should be before
ctors and methods)(bug #3429775)
</li>
<li>
<a href="checks/coding/innerassignment.html#InnerAssignment">Inner assignment</a>
is now allowed in try-with-resources (bug #3441097)
</li>
<li>
Fixed bug in the grammar when builtin types are used in a
generic declaration (bug #3553541).
</li>
</ul>
<p>Notes:</p>
<ul>
<li>
Removed the <code>DoubleCheckedLocking</code> check, as in Java 5
(and beyond), using the <code>volatile</code> keyword addresses
the issue. See
<a class="externalLink" href="http://jeremymanson.blogspot.com/2008/05/double-checked-locking.html">here</a>
for more details.
</li>
<li>
Added Turkish message translations. Thanks to poyrazus
for patch #3460908.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.5"></a>Release 5.5</h2>
<p>New features:</p>
<ul>
<li>
Added Java 7 support to the grammar. Thanks to Dinesh
Bolkensteyn for patch #3403265.
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Fix parsing error <code>unexpected char: 0xFFFF</code> which was
triggered when a comment line is on a line without newline character.
Thanks to Evgeny Mandrikov for patch #3367782.
</li>
<li>
Fixed <a href="checks/imports/unusedimports.html#UnusedImports">UnusedImports</a>
to consider @linkplain, @throws and @exception tags when the option
<code>processJavadoc</code> is turned on.
</li>
<li>
<a href="checks/coding/requirethis.html#RequireThis">RequireThis</a> now
ignores static members (bug #1155921).
</li>
<li>
<a href="checks/coding/hiddenfield.html#HiddenField">HiddenField</a> now
treats setxYz() as a setter for xYz, and setXYz() as a setter for
XYz property to comply JavaBeans specification (bug #3370946).
</li>
<li>
Fixed parsing errors for Unicode escape sequences. Thanks to
Dinesh Bolkensteyn for patch #3412812.
</li>
<li>
ignoreEnhancedForColon property added to
<a href="checks/whitespace/whitespacearound.html#WhitespaceAround">WhitespaceAround</a>.
Thanks to Travis Schneeberger for patch #1921815 (bug #1649038).
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.4"></a>Release 5.4</h2>
<p>New features:</p>
<ul>
<li>
Enhanced <a href="checks/imports/unusedimports.html#UnusedImports">UnusedImports</a>
to have the option <code>processJavadoc</code> to detect whether
imports are used. Thanks to Lyle Hanson for patch #3267984.
</li>
<li>
Enhanced <a href="checks/coding/magicnumber.html#MagicNumber">MagicNumber</a>
to support ignoring numbers in annotation declarations. Thanks to
Julio Cesar Cabral for patch #3132984.
</li>
<li>
Enhanced
<a href="checks/coding/equalsavoidnull.html#EqualsAvoidNull">EqualsAvoidNull</a>
to process <code>String.equalsIgnoreCase()</code>
invocations (which can be suppressed).
</li>
<li>
Enhanced
<a href="checks/coding/illegalthrows.html#IllegalThrows">IllegalThrows</a>
to support ignoring methods with specified names. Thanks to
Amit Shah for patch #3115439.
</li>
<li>
Enhanced
<a href="checks/modifier/redundantmodifier.html#RedundantModifier">RedundantModifier</a>
to support detecting inner <code>interface</code> declarations that
are declared as <code>static</code>. Raised in bug #3222810.
</li>
<li>
Enhanced the <a href="anttask.html#Parameters">ANT task</a>,
<a href="cmdline.html#Command_line_usage">Command Line</a> and
<a href="filters/suppressionfilter.html#SuppressionFilter">Suppression Filter</a> to be
able to load their configuration file from either the filesystem or
the classpath as a resource. Thanks to Tracy Snell for patch #3307526.
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Fix
<a href="checks/coding/multiplevariabledeclarations.html#MultipleVariableDeclarations">MultipleVariableDeclarations</a>
to properly handle when multiple variable declarations are inside a
for loop initializer. Thanks to Amit Shah for patch #3121071.
</li>
<li>
Fix memory leak in FileContentsHolder. Thanks to Evgeny Mandrikov
for patch #3323517.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.3"></a>Release 5.3</h2>
<p>New features:</p>
<ul>
<li>
Added <a href="checks/misc/outertypefilename.html#OuterTypeFilename">OuterTypeFilename</a>
that checks that the outer type name and the file name match.
For example, the class <code>Foo</code> must be in a file named
<code>Foo.java</code>.
</li>
<li>
Enhanced
<a href="checks/coding/packagedeclaration.html#PackageDeclaration">PackageDeclaration</a>
to optionally check that the package name matches the name of the
directory containing the file.
</li>
<li>
Added <a href="checks/coding/nestedfordepth.html#NestedForDepth">NestedForDepth</a>
that restricts nested <code>for</code> blocks to a specified
depth (default = 1). Thanks to Alexander Jesse for patch
#1151673.
</li>
<li>
Added <a href="checks/sizes/methodcount.html#MethodCount">MethodCount</a>
that checks the number of methods declared in each type. This
includes the number of each scope (<code>private</code>,
<code>package</code>, <code>protected</code> and
<code>public</code>) as well as an overall total. Thanks to
Alexander Jesse for patch #1151669, which was the inspiration.
</li>
<li>
Added <a href="checks/coding/onestatementperline.html#OneStatementPerLine">OneStatementPerLine</a>
that checks there is only one statement per line. Thanks to
Alexander Jesse for patch #1144994, which was the inspiration.
</li>
<li>
Enhanced <a href="checks/coding/magicnumber.html#MagicNumber">MagicNumber</a>
to support the parameter <code>ignoreHashCodeMethod</code> to ignore
magic numbers in <code>hashCode()</code> methods. Thanks to
Daniel Solano Gómez for patch #3050788.
</li>
<li>
Enhanced
<a href="checks/naming/abstractclassname.html#AbstractClassName">AbstractClassName</a>
to support checking that matching classes have the
<code>abstract</code> modifier. Thanks to Danil Lopatin for
patch #3043752.
</li>
<li>
Enhanced the property types
<a href="property_types.html#String.5B.5D">String[]</a> and
<a href="property_types.html#int.5B.5D">int[]</a> to support being
supplied multiple times to construct the equivalent of a comma
separated list.
</li>
<li>
Enhanced
<a href="checks/imports/avoidstarimport.html#AvoidStarImport">AvoidStarImport</a>
to support the properties <code>allowClassImports</code> and
<code>allowStaticMemberImports</code> for finer control over
what is allowed. Thanks to Travis Schneeberger for patch
#1939775.
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Fix <a href="checks/javadoc/javadocmethod.html#JavadocMethod">JavadocMethod</a>
checking of <code>@throws</code> tags for methods that throw multiple
non-runtime exceptions. Thanks to Daan Kets for patch #3039869.
</li>
<li>
Fix
<a href="checks/design/hideutilityclassconstructor.html#HideUtilityClassConstructor">HideUtilityClassConstructor</a>
to handle empty and inner classes. Thanks to Roman Ivanov for
patch #3045720.
</li>
</ul>
<p>Notes:</p>
<ul>
<li>
Changed the default value of the property <code>logLoadErrors</code>
to be <code>true</code> for the checks
RedundantThrows and
<a href="checks/javadoc/javadocmethod.html#JavadocMethod">JavadocMethod</a> to
ensure consistent behaviour.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.2"></a>Release 5.2</h2>
<p>New features:</p>
<ul>
<li>
Enhanced <a href="checks/coding/declarationorder.html#DeclarationOrder">DeclarationOrder</a>
to support properties to ignore constructors, methods and modifiers.
Thanks to Steve McKay for patch #2953941.
</li>
<li>
Enhanced <a href="checks/javadoc/writetag.html#WriteTag">WriteTag</a>
to support empty tags, and constructor declarations.
Thanks to Rolf Wojtech for patch #2724894.
</li>
<li>
Added <a href="checks/design/innertypelast.html#InnerTypeLast">InnerTypeLast</a> to
check nested (internal) classes/interfaces are declared at the
bottom of the class after all method and field declarations.
Thanks to Ruslan Dyachenko for patch #3027391.
</li>
<li>
Enhanced <a href="checks/imports/importorder.html#ImportOrder">ImportOrder</a>
to support using regular expressions for defining groups.
Thanks to Martin von Gagern for patch #2782118.
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Fixed <a href="checks/imports/importorder.html#ImportOrder">ImportOrder</a>
to have the sort behaviour as in release 5.0. (bug #2952881).
Thanks to Steve McKay for patch #2953936.
</li>
<li>
Fixed <a href="checks/javadoc/javadocstyle.html#JavadocStyle">JavadocStyle</a>
not handling package declarations that have annotations.
(bug #2911363)
</li>
</ul>
<p>Notes:</p>
<ul>
<li>
Converted the build system to
<a class="externalLink" href="https://maven.apache.org/">Maven</a>. The directory structure
has been maintained for now, rather than adopting Maven's
<a class="externalLink" href="https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html">
standard directory layout
</a>. This will change once Maven has been <i>proven</i>.
</li>
<li>
The Maven <code><groupId></code> changed to be
<code>com.puppycrawl.tools</code> (from <code>checkstyle</code>).
</li>
<li>
Introduced
<a href="apidocs/com/puppycrawl/tools/checkstyle/api/FileText.html">
FileText
</a>
to provide more flexibility on how the contents of a file are
represented. This allows for Checkers that wish to operate on
a single character sequence instead of a list of lines.
Thanks to Martin von Gagern for patch #2783226.
</li>
<li>
Updated third party dependencies to the latest versions. See
<a href="dependencies.html">Project Dependencies</a> for details.
</li>
<li>
Made the method EmptyBlockCheck.hasText(DetailAST) as
<code>protected</code> so that it is accessible to subclasses.
Requested by Steve McKay.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.1"></a>Release 5.1</h2>
<p>New features:</p>
<ul>
<li>
Enhanced <a href="checks/imports/importorder.html#ImportOrder">ImportOrder</a>
check to support wildcard ('*') groups.
Thanks to Steve McKay for patch #2891032.
</li>
<li>
Enhanced the naming checks
<a href="checks/naming/index.html">ConstantName</a>,
<a href="checks/naming/index.html">MemberName</a>,
<a href="checks/naming/index.html">MethodName</a>
and <a href="checks/naming/index.html">StaticVariableName</a>
to utilise the access control tuning features
of AbstractAccessControlNameCheck. Thanks to Steve McKay for patch
#2893581.
</li>
<li>
Improve ConfigurationLoader to use a InputSource. Thanks to
Martin von Gagern for patch #2782627.
</li>
<li>
Enhanced the
<a href="checks/imports/importcontrol.html#ImportControl">ImportControl</a> check
to support regular expressions. Thanks to lbaeumer for patch
#2937442.
</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>
Corrected build errors on javadoc generation.
Thanks to Martin von Gagern for providing a patch (patch #2782630).
</li>
<li>
Corrected javadoc in TokenTypes class for UNARY_PLUS and UNARY_MINUS
members (bug #2745145).
</li>
<li>
Corrected broken link in WhiteSpaceAround documentation
(bug #2745287).
</li>
<li>
Corrected pad policy documentation for MethodParamPad (bug #2775402).
</li>
<li>
Added correct license information for referenced source files
(bug #2778850).
</li>
<li>
Updated documentation for writing checks (bug #2783451).
</li>
<li>
Report unused Javadoc tags with no trailing whitespace(bug #2506962).
Thanks to Ashlesha Patil for patch #2781021.
</li>
<li>
Enhanced <a href="checks/javadoc/javadoctype.html#JavadocType">JavadocType</a>
check to handle and report on unknown Javadoc tags.
The property allowUnknownTags can be set to ignore errors.
(bug #2882261)
</li>
</ul>
<p>Notes:</p>
<ul>
<li>
<i>Updated dependencies</i>: Updated Google collections to version
1.0.
</li>
<li>
<i>Updated documentation</i>: Added links for 3rd party tools.
</li>
</ul>
</section>
<section>
<h2><a name="Release_5.0"></a>Release 5.0</h2>
<p>
Release 5.0 is not 100% backwardly compatible with release
4.4. Most likely you will need to update your configuration
file.