forked from seattlerb/flog
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathHistory.txt
272 lines (172 loc) · 7.33 KB
/
History.txt
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
=== 3.2.1 / 2012-12-19
* 1 bug fix:
* Relaxed (and fixed) the ruby_parser dependency.
=== 3.2.0 / 2012-12-18
* 4 minor enhancements:
* Ensure rake/tasklib is loaded when defining FlogTask. (ferrous26)
* Fixed reporting / recording of methods in singleton class blocks. (mihu)
* Refactored error handling code to flog_ruby. Calls flog_ruby! for actual work
* Refactored ruby processing code to flog_ruby!
* 1 bug fix:
* Fixed flogging of || iters. (JacobNinja)
=== 3.1.0 / 2012-11-16
* 4 minor enhancements:
* --quiet option is now false by default, and changed to silence parse warnings.
* Added max_score and max_method. (aselder)
* FlogTask can now take a method to use to figure out score, allowing for total or max_score.
* Switched to capturing RubyParser::SyntaxError (RP 3.0 change).
* 2 bug fixes:
* Avoid redefined warning for File::RUBY19. (svendahlstrand)
* Fixed flog to default to RubyParser if not specified. Allows cleaner programmatic access.
=== 3.0.0 / 2012-11-02
* 1 minor enhancement:
* Added a timeout handler to skip when RubyParser times out on a large file
* 1 bug fix:
* Fixed handling of plain literals in masgn in args.
=== 3.0.0.b3 / 2012-10-22
* 4 minor enhancements:
* Added .rake as a supported extension.
* Create a new parser for every file, preventing state barkification
* Extended DSL support to include hash args (eg task :blah => :dep).
* Extended DSL support to report nested names (eg namespace(blah)::task#woot)
=== 3.0.0.b2 / 2012-08-07
* 1 bug fix:
* Fix for sexp structure changes (no arglists).
=== 3.0.0.b1 / 2012-07-26
* 4 minor enhancements:
* Added --18 and --19 flags to specify parser. Defaults to hybrid.
* Explicitly use Ruby18Parser to remove deprecation warnings.
* Modified processor to deal with cleaner sexps from RP 3.x.
* Use File.binread (File.read in 1.8) to bypass encoding errors
* 2 bug fixes:
* Cleaned up some 1.9 warnings.
* Fixed failing tests against ruby_parser 3
=== 2.5.3 / 2011-09-21
* 1 minor enhancement:
* class_stack now always pushes on symbols or strings for class names.
* 1 bug fix:
* Fixed klass_name returning an ugly mix of sexps and strings.
=== 2.5.2 / 2011-08-11
* 1 minor enhancement:
* Improved parse error output. (impurist)
=== 2.5.1 / 2011-02-18
* 3 minor enhancements:
* Added RegexpError to error handler.
* Improved error output and suggest --continue
* Record the flog score for the full class name, not just suffix. (dkubb)
* 1 bug fix:
* Fixed block_pass when passed a multi-level const (xavier)
=== 2.5.0 / 2010-09-01
* 1 major enhancement:
* Added plugin system. Define a module under Flog to extend it.
* 3 minor enhancements:
* Added special case penalty for wtf to_proc: blah(&b = proc {...}) (benjaminb)
* Improved tests and test coverage.
* Unfactored & refactored report code. Much cleaner and more maintainable now.
* 2 bug fixes:
* Fixed API change for FlogTask (andreacampi)
* Fixed bad edgecase handler for block_pass (benjaminb)
=== 2.4.0 / 2009-12-15
* 4 minor enhancements:
* Cleaned method_name to return "#method" or "::method".
* DSL reporting now handles regexp literals for 'method' names (Marty Andrews)
* Improved tests for process_iter's myriad complexities.
* More doco!
* 1 bug fix:
* Fixed DSL reporting excluding solo-blocks. (eg a single rake task)
=== 2.3.0 / 2009-12-09
* 1 major enhancement:
* Added file:line info to the flog report (Marty Andrews)
* 13 minor enhancements:
* Added .autotest.
* Deleted pre-gauntlet scripts.
* Flog#method_name now at least tries show when it is a class method.
* Flog.parse_options now takes args directly.
* Removed Flog#increment_total_score_by.
* Removed Flog#output_summary.
* Removed Flog#process_attrset.
* Removed Flog#record_method_score.
* Removed Flog#summarize_method.
* Removed Flog::default_options.
* Renamed Flog#analyze_list to process_until_empty.
* Renamed Flog#options to #option
* Rewrote entire test suite (3100 lines down!). Cleaner and less brittle.
=== 2.2.0 / 2009-08-14
* 1 minor enhancement:
* #mass pushed up to sexp_processor
* 5 bug fixes:
* --group didn't use canonical class name.
* Fixed bin/flog to use flog, not flog_files (removed in last rev)
* Fixed crasher when processing a block with empty goalposts.
* Switching to ruby_parser broke ERB syntax error handling. (imccoy)
* skip empty files instead of crashing. yay?
=== 2.1.2 / 2009-06-24
* 1 bug fix:
* Fixed dependency spec on ruby_parser. (jan)
=== 2.1.1 / 2009-06-23
* 2 minor enhancements:
* Added mass accessor for gauntlet and other automated processors
* Switched from ParseTree to ruby_parser. Only 3x slower\! :(
=== 2.1.0 / 2009-03-16
* 5 minor enhancements:
* Added --group to aggregate and sort by class scores.
* Added flog_task.rb
* Made -q default, removed -n.
* Made report output more readable and processable.
* Moved option processing from bin/flog to lib/flog.rb for better testing.
* 1 bug fix:
* removed extra attr_readers for total and average. doh
=== 2.0.0 / 2009-01-20
* 1 major enhancement:
* Pulled in and merged Rick Bradley's awesome flame project into flog.
* 1 minor enhancement:
* Added gauntlet plugin
* 1 bug fix:
* "hugh sasse".split(/\s/).map{|x|x.capitalize}.join(" ") # :-)
=== 1.2.0 / 2008-10-22
* 14 minor enhancements:
* Added -c flag to continue dispite errors.
* Added -m to only report code in methods (skips #none).
* Added -n flag to give NO method details (summary only)
* Added -n to skip method details... pussies should learn grep.
* Added -q to quiet method details (total per method only)
* Added avg & stddev to total.
* Added avg score per method to report.
* Added lots of doco from contributors. Thanks Hugh Sasse!
* Fixed class names when const2/3.
* Fixed unified ruby changes
* Refactored flog with help from flay.
* Refactored get_source_index
* Refactored into gem_updater.rb and cleaned up.
* Works with new incremental rubygems, albiet slower than before.
=== 1.1.0 / 2007-08-21
* 3 major enhancements:
* Added assignments and branches and a lot of other stuff. rad.
* Added process_iter section for DSL style blocks (rake tasks etc).
* Made Flog usable as a library.
* 12 minor enhancements:
* Added -a flag to turn off threshold culling for other tools.
* Added -s for summarizing the score.
* Added -v feedback to know what file you're flogging.
* Added branching penalty so tons of nested conditionals get beat down.
* Added send (3).
* Capture and ignore SyntaxErrors from template/generator code. Stupid DHH.
* Report can now take an IO object.
* block_args now penalizes all non-benign forms of block_pass.
* Added usage to bin/flog. Moved -I processing to bin/flog.
* Added unpack.rb and update_scores.rb at base level (not installed)
* Added scoring for block_pass.
* Converted totals to use distance formula on ABC's.
* 3 bug fixes:
* Ran flog on every latest gem available. Found a bunch of problems.
* Use a stack for both class/module and method accounting.
* block_args weren't processing the arg
=== 1.0.2 / 2007-08-01
* 1 bug fix:
* stupid rubygems bin wrapper... *sigh*
=== 1.0.1 / 2007-08-01
* 1 bug fix:
* New Rule: NEVER release new software when exhausted: Fixed dependency list.
=== 1.0.0 / 2007-08-01
* 1 major enhancement:
* Birthday!