ruport 0.12.0 → 1.0.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.
Files changed (36) hide show
  1. data/Rakefile +1 -1
  2. data/examples/btree/commaleon/commaleon.rb +264 -0
  3. data/examples/btree/commaleon/sample_data/ticket_count.csv +124 -0
  4. data/examples/btree/commaleon/sample_data/ticket_count2.csv +119 -0
  5. data/examples/centered_pdf_text_box.rb +43 -16
  6. data/examples/data/tattle.dump +82 -0
  7. data/examples/line_plotter.rb +9 -14
  8. data/examples/pdf_report_with_common_base.rb +46 -43
  9. data/examples/{ruport_list/png_embed.rb → png_embed.rb} +3 -4
  10. data/examples/{ruport_list/roadmap.png → roadmap.png} +0 -0
  11. data/examples/simple_pdf_lines.rb +2 -0
  12. data/examples/tattle_ruby_version.rb +39 -0
  13. data/examples/tattle_rubygems_version.rb +39 -0
  14. data/examples/trac_ticket_status.rb +59 -0
  15. data/lib/ruport.rb +2 -2
  16. data/lib/ruport/data/grouping.rb +13 -8
  17. data/lib/ruport/formatter.rb +1 -1
  18. data/lib/ruport/formatter/html.rb +35 -2
  19. data/lib/ruport/formatter/pdf.rb +6 -4
  20. data/lib/ruport/formatter/text.rb +7 -7
  21. data/lib/ruport/renderer.rb +12 -8
  22. data/lib/ruport/renderer/grouping.rb +10 -0
  23. data/test/acts_as_reportable_test.rb +2 -2
  24. data/test/grouping_test.rb +18 -2
  25. data/test/html_formatter_test.rb +16 -0
  26. data/test/pdf_formatter_test.rb +16 -0
  27. data/test/renderer_test.rb +64 -9
  28. data/test/table_test.rb +2 -2
  29. data/util/bench/data/record/bench_as_vs_to.rb +4 -3
  30. metadata +15 -11
  31. data/examples/pdf_complex_report.rb +0 -39
  32. data/examples/pdf_styles.rb +0 -16
  33. data/examples/pdf_table_with_title.rb +0 -42
  34. data/test/database_test_.rb +0 -25
  35. data/test/samples/document.xml +0 -22
  36. data/test/samples/stonecodeblog.sql +0 -279
data/Rakefile CHANGED
@@ -3,7 +3,7 @@ require "rake/testtask"
3
3
  require "rake/gempackagetask"
4
4
 
5
5
 
6
- RUPORT_VERSION = "0.12.0"
6
+ RUPORT_VERSION = "1.0.0"
7
7
 
8
8
  begin
9
9
  require "rubygems"
@@ -0,0 +1,264 @@
1
+ # This example is a simplified version of a tool actually used at BTree.
2
+ # It does a very basic task:
3
+ #
4
+ # Given a master CSV file and a key column, it will compare the file
5
+ # to another CSV, and report back what is missing in the second CSV
6
+ # that was in the first, as well as what is changed in the second CSV
7
+ # based on the first.
8
+ #
9
+ # It is not bidirectional, and is mostly meant to compare snapshots
10
+ # of CSV dumps to see what has been removed or altered (we don't care
11
+ # about new records )
12
+ #
13
+ # It's a camping app, but the core of it is a renderer/formatter combo.
14
+ # (Marked by %%%%%%%%%%% below)
15
+ #
16
+ # You'll need the camping omnibus and the F() ruport plugin to run this app.
17
+ #
18
+ # gem install camping-omnibus --source http://code.whytheluckystiff.net -y
19
+ # gem install f --source http://gems.rubyreports.org
20
+ #
21
+ # Once you have them, just run camping commaleon.rb and browse to
22
+ # http://localhost:3301
23
+ #
24
+ # Use ticket_count.csv as your master file and ticket_count2.csv as your
25
+ # comparison file. Use title as your key.
26
+ #
27
+ # Try out the different outputs, and tweak the app if you'd like to play
28
+ # with it.
29
+ #
30
+ # If your company has a need for tiny hackish camping/ruport amalgams,
31
+ # you can always ask Gregory if he's looking for work:
32
+ # <gregory.t.brown at gmail.com>
33
+ #
34
+ require "rubygems"
35
+ require "camping"
36
+ require "camping/session"
37
+ gem "ruport", "=0.12.1"
38
+ require "ruport"
39
+ require "ruport/extensions"
40
+
41
+ Camping.goes :Commaleon
42
+
43
+ module Commaleon
44
+ include Camping::Session
45
+ end
46
+
47
+ def Commaleon.create
48
+ Camping::Models::Session.create_schema
49
+ end
50
+
51
+ module Commaleon::Helpers
52
+
53
+ # %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
54
+ # This is the bulk of the Ruport code in this app
55
+ # (CSVDiffRenderer and CSVDiffFormatter)
56
+ # The rest is just camping. The interesting thing here is that
57
+ # you could easily define these in another file and just require
58
+ # them here, and use them standalone outside of your web app.
59
+ # %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
60
+
61
+ class CSVDiffRenderer < Ruport::Renderer
62
+ stage :diff_report
63
+ option :key, :mcsv, :ccsv
64
+
65
+ # This setup() idiom has become the default way of doing some
66
+ # manipulations on the data and optionsbefore handing off the
67
+ # rendering task to the formatters.
68
+ #
69
+ # We're using grouping mainly for the renderer support,
70
+ # and rather than reducing a table, we're building up the
71
+ # group objects via the helper methods missing_from_compare
72
+ # and different_from_compare
73
+ def setup
74
+ @master_table = Table(:string => mcsv)
75
+ @compare_table = Table(:string => ccsv)
76
+ options.diff_report = Grouping(:by => "issue")
77
+ options.diff_report << missing_from_compare
78
+ options.diff_report << different_from_compare
79
+ end
80
+
81
+ # pulls the rows that are present in the master csv but not
82
+ # in the comparison csv and returns a group.
83
+ def missing_from_compare
84
+ missing_data = @master_table.rows_with(key) do |k|
85
+ missing_keys.include?(k)
86
+ end
87
+
88
+ Group("missing from main csv",
89
+ :data => missing_data,
90
+ :column_names => @master_table.column_names )
91
+ end
92
+
93
+ # pulls the rows that are present in the master csv but match
94
+ # a row with the same key in the compare csv that do not have
95
+ # identical attributes. Returns a group
96
+ def different_from_compare
97
+ shared = master_keys & compare_keys
98
+ m = @master_table.rows_with(key) do |k|
99
+ shared.include?(k)
100
+ end
101
+
102
+ diff = m.reject do |r|
103
+ @compare_table.any? { |s| s == r }
104
+ end
105
+
106
+ diff.each do |r|
107
+ comp = @compare_table.rows_with(key => r[key])[0]
108
+ r.to_hash.each do |k,v|
109
+ v << " ## " << comp[k] unless v == comp[k]
110
+ end
111
+ end
112
+
113
+ Group("different from main csv",
114
+ :data => diff, :column_names => @master_table.column_names)
115
+ end
116
+
117
+ def missing_keys
118
+ master_keys - compare_keys
119
+ end
120
+
121
+ def master_keys
122
+ @master_table.column(key)
123
+ end
124
+
125
+ def compare_keys
126
+ @compare_table.column(key)
127
+ end
128
+ end
129
+
130
+ # This is using the F plugin which saves us a line of code and just
131
+ # looks neat, IMO
132
+ #
133
+ # For more details:
134
+ #
135
+ # http://stonecode.svnrepository.com/ruport/trac.cgi/wiki/F
136
+ #
137
+ class CSVDiffFormatter < F([:html,:text,:csv,:pdf], :for => CSVDiffRenderer)
138
+ def build_diff_report
139
+ # this is using the selective blocks for formatters that implement
140
+ # more than one format. The block below will only be called when this
141
+ # formatter is rendering HTML
142
+ html { gussy_up_html }
143
+
144
+ render_grouping( options.diff_report,
145
+ :style => options.style || :inline )
146
+ end
147
+
148
+ # adds headers to group name to make the output a little prettier
149
+ def gussy_up_html
150
+ options.diff_report.each do |n,g|
151
+ g.send(:name=, "<h4>#{n}</h4>")
152
+ end
153
+ end
154
+ end
155
+
156
+ end
157
+
158
+ module Commaleon::Controllers
159
+
160
+ class Index < R "/"
161
+ def get
162
+ redirect R(CSVDifference)
163
+ end
164
+ end
165
+
166
+ class CSVDifference < R '/csv_diff'
167
+ def get
168
+ render :get_diff_files
169
+ end
170
+
171
+ def post
172
+ @state.mfile = @input.mfile.tempfile.read
173
+ @state.cfile = @input.cfile.tempfile.read
174
+ redirect R(GenerateDiffReport)
175
+ end
176
+ end
177
+
178
+ class GenerateDiffReport < R '/csv_diff/report'
179
+ def get
180
+ @id_fields = Table(:string=>@state.mfile).column_names &
181
+ Table(:string=>@state.cfile).column_names
182
+ render :csv_get_id
183
+ end
184
+
185
+ def post
186
+ @state.key = @input.csv_id
187
+ @table = CSVDiffRenderer.render_html(:key => @state.key,
188
+ :mcsv => @state.mfile,
189
+ :ccsv => @state.cfile )
190
+ render :html_diff
191
+ end
192
+ end
193
+
194
+ class CSVDiffReportFormatted < R '/csv_diff/report.(.*)'
195
+ def set_headers(format)
196
+ types = { "csv" => "application/vnd.ms-excel",
197
+ "pdf" => "application/pdf",
198
+ "txt" => "text/plain" }
199
+ @headers["Content-Type"] = types[format]
200
+ @headers["Content-Disposition"] = "attachment; filename=diff.#{format}"
201
+ end
202
+
203
+ def get(format)
204
+ options = { :key => @state.key,
205
+ :mcsv => @state.mfile,
206
+ :ccsv => @state.cfile }
207
+
208
+ set_headers(format)
209
+ case(format)
210
+ when "csv"
211
+ text CSVDiffRenderer.render_csv(options)
212
+ when "pdf"
213
+ text CSVDiffRenderer.render_pdf(options.merge(:style => :justified))
214
+ when "txt"
215
+ text CSVDiffRenderer.render_text(options)
216
+ else
217
+ text "no format!"
218
+ end
219
+ end
220
+ end
221
+
222
+ end
223
+
224
+ module Commaleon::Views
225
+ def get_diff_files
226
+ form :action => "?upload_id=#{Time.now.to_f}", :method => 'post',
227
+ :enctype => 'multipart/form-data' do
228
+ p do
229
+ label "Master File: ", :for => "mfile"
230
+ input({:name => "mfile", :type => 'file'})
231
+ end
232
+ p do
233
+ label "Comparison File: ", :for => "cfile"
234
+ input({:name => "cfile", :type => 'file'})
235
+ end
236
+ p do
237
+ input.newfile! :type => "submit", :value => "Upload"
238
+ end
239
+ end
240
+ end
241
+
242
+ def csv_get_id
243
+ form :method => "post" do
244
+ label "ID column: ", :for => "csv_id"
245
+ select(:name => "csv_id") do
246
+ @id_fields.each { |f| option(f) }
247
+ end
248
+ input :type => "submit", :value => "Set ID"
249
+ end
250
+ end
251
+
252
+ def html_diff
253
+ text @table
254
+ hr
255
+ ul do
256
+ li { a "New Diff", :href => R(CSVDifference) }
257
+ li { a "New Key for Diff", :href => R(GenerateDiffReport) }
258
+ li { a "CSV Download", :href => R(CSVDiffReportFormatted,"csv") }
259
+ li { a "Text Download", :href => R(CSVDiffReportFormatted,"txt") }
260
+ li { a "PDF Download", :href => R(CSVDiffReportFormatted,"pdf") }
261
+ end
262
+ end
263
+
264
+ end
@@ -0,0 +1,124 @@
1
+ title,date
2
+ Ticket #238 (enhancement closed): Table#sort_rows_by!,2007-04-17
3
+ Ticket #225 (task closed): corner bottlenecks with focused benchmarks,2007-04-17
4
+ Ticket #223 (task closed): Identify a small set of key benchmarks,2007-04-17
5
+ Ticket #209 (task closed): Refactor Formatters,2007-04-15
6
+ Ticket #236 (task closed): api.rubyreports.org/edge,2007-04-13
7
+ Ticket #212 (task closed): Users Field Guide,2007-04-13
8
+ Ticket #186 (enhancement closed): simple_html_table,2007-04-13
9
+ Ticket #235 (task closed): Get a big list of all the methods in Ruport. Stare at them. Identify their interface. Cry.,2007-04-13
10
+ Ticket #196 (defect closed): as() returns unintelligible error for non-registered formats,2007-04-13
11
+ Ticket #244 (defect closed): Allow proper copying of Grouping,2007-04-12
12
+ Ticket #249 (enhancement closed): Table#rename_columns should accept a block,2007-04-11
13
+ Ticket #249 (enhancement created): Table#rename_columns should accept a block,2007-04-11
14
+ Ticket #188 (defect closed): class_str broken in 0.9.2,2007-04-11
15
+ Ticket #224 (task closed): Build ruport_bench which will run benchmarks and generate reports,2007-04-11
16
+ Ticket #241 (task closed): rewrite Table/Group dup methods to use initialize_copy instead,2007-04-11
17
+ Ticket #220 (enhancement closed): rope rake tasks for ruport-util,2007-04-10
18
+ Ticket #219 (task closed): XML/FO Formatter,2007-04-07
19
+ Ticket #211 (task closed): Remove Multilevel Grouping Formatters,2007-04-06
20
+ Ticket #248 (task created): AAR Name,2007-04-05
21
+ Ticket #204 (task closed): Merge AAR to Trunk,2007-04-05
22
+ Ticket #203 (task closed): AAR Tests,2007-04-05
23
+ Ticket #226 (task closed): investigate Ara's xx for html helpers.,2007-04-04
24
+ "Ticket #247 (task created): Ruport Utils wiki page, and update of deprecated plugin pages",2007-04-04
25
+ Ticket #245 (task closed): Make initial RubyForge release,2007-04-04
26
+ Ticket #246 (enhancement created): Grouping#summary,2007-04-04
27
+ Ticket #245 (task created): Make initial RubyForge release,2007-04-04
28
+ Ticket #229 (enhancement closed): Add tests for invoice,2007-04-04
29
+ Ticket #231 (enhancement closed): ReportManager tests,2007-04-04
30
+ Ticket #221 (task closed): improve invoice interface,2007-04-04
31
+ Ticket #233 (task closed): ReportManager example,2007-04-04
32
+ Ticket #230 (enhancement closed): Add support for line labels in graph,2007-04-04
33
+ Ticket #242 (task closed): set mike up with stats access,2007-04-04
34
+ Ticket #202 (task closed): AAR Branch,2007-04-04
35
+ Ticket #234 (defect closed): options should not be used as an argument name anywhere in Renderers or Formatters,2007-04-04
36
+ Ticket #244 (defect created): Allow proper copying of Grouping,2007-04-04
37
+ Ticket #240 (task closed): use self.class.new where appropriate,2007-04-04
38
+ Ticket #243 (task closed): fix circular dependency issue in rope,2007-04-04
39
+ Ticket #243 (task created): fix circular dependency issue in rope,2007-04-04
40
+ Ticket #242 (task created): set mike up with stats access,2007-04-03
41
+ Ticket #241 (task created): rewrite Table/Group dup methods to use initialize_copy instead,2007-04-03
42
+ Ticket #237 (task closed): set mike up with all the necessary resource permissions for releases,2007-04-02
43
+ Ticket #227 (task closed): packaging rake task for Release,2007-04-02
44
+ Ticket #240 (task created): use self.class.new where appropriate,2007-04-02
45
+ Ticket #191 (enhancement closed): render_grouping,2007-04-01
46
+ Ticket #239 (enhancement created): Table#sort_rows_by should accept non-array single arg.,2007-04-01
47
+ Ticket #238 (enhancement created): Table#sort_rows_by!,2007-04-01
48
+ Ticket #237 (task created): set mike up with all the necessary resource permissions for releases,2007-04-01
49
+ Ticket #78 (enhancement closed): Do we need to bring back a SQL generator?,2007-03-31
50
+ Ticket #236 (task created): api.rubyreports.org/edge,2007-03-31
51
+ Ticket #235 (task created): Get a big list of all the methods in Ruport. Stare at them. Identify their interface. Cry.,2007-03-31
52
+ Ticket #228 (enhancement closed): Layout method,2007-03-31
53
+ Ticket #234 (defect created): options should not be used as an argument name anywhere in Renderers or Formatters,2007-03-31
54
+ Ticket #217 (task closed): Depluginize initial set of utils,2007-03-31
55
+ Ticket #232 (task closed): ReportManager example,2007-03-31
56
+ Ticket #233 (task created): ReportManager example,2007-03-31
57
+ Ticket #232 (task created): ReportManager example,2007-03-31
58
+ Ticket #231 (enhancement created): ReportManager tests,2007-03-31
59
+ Ticket #230 (enhancement created): Add support for line labels in graph,2007-03-31
60
+ Ticket #216 (task closed): Fix Graphing,2007-03-31
61
+ Ticket #229 (enhancement created): Add tests for invoice,2007-03-31
62
+ Ticket #228 (enhancement created): Layout method,2007-03-31
63
+ Ticket #222 (task closed): add ruport-util component in Trac,2007-03-31
64
+ Ticket #218 (task closed): move svn repository up one level,2007-03-31
65
+ Ticket #227 (task created): packaging rake task for Release,2007-03-31
66
+ Ticket #226 (task created): investigate Ara's xx for html helpers.,2007-03-30
67
+ Ticket #199 (task closed): Update License Information,2007-03-30
68
+ Ticket #178 (task closed): Grouping Renderer,2007-03-30
69
+ Ticket #225 (task created): corner bottlenecks with focused benchmarks,2007-03-30
70
+ Ticket #224 (task created): Build ruport_bench which will run benchmarks and generate reports,2007-03-30
71
+ Ticket #223 (task created): Identify a small set of key benchmarks,2007-03-30
72
+ Ticket #106 (task closed): standardize API documentation format and cleanup where needed,2007-03-30
73
+ Ticket #199 (task closed): Update License Information,2007-03-30
74
+ Ticket #184 (task closed): Consistent Errors,2007-03-30
75
+ Ticket #222 (task created): add ruport-util component in Trac,2007-03-30
76
+ Ticket #221 (task created): improve invoice interface,2007-03-30
77
+ Ticket #220 (enhancement created): rope rake tasks for ruport-util,2007-03-30
78
+ Ticket #219 (task created): XML/FO Formatter,2007-03-30
79
+ Ticket #218 (task created): move svn repository up one level,2007-03-30
80
+ Ticket #217 (task created): Depluginize initial set of utils,2007-03-30
81
+ Ticket #216 (task created): Fix Graphing,2007-03-30
82
+ Ticket #215 (task closed): apply for RubyForge project,2007-03-30
83
+ Ticket #215 (task created): apply for RubyForge project,2007-03-30
84
+ Ticket #214 (task created): Determine if cheatsheets can be released,2007-03-30
85
+ Ticket #213 (task created): Contributors Field Guide,2007-03-30
86
+ Ticket #212 (task created): Users Field Guide,2007-03-30
87
+ Ticket #211 (task created): Remove Multilevel Grouping Formatters,2007-03-30
88
+ Ticket #210 (task created): Formatting Helpers,2007-03-30
89
+ Ticket #209 (task created): Refactor Formatters,2007-03-30
90
+ Ticket #208 (task created): API Stability,2007-03-30
91
+ Ticket #207 (task created): Refactor Unit Tests,2007-03-30
92
+ Ticket #206 (task created): Testing Audit,2007-03-30
93
+ Ticket #205 (task created): Custom Exceptions,2007-03-30
94
+ Ticket #204 (task created): Merge AAR to Trunk,2007-03-30
95
+ Ticket #203 (task created): AAR Tests,2007-03-30
96
+ Ticket #202 (task created): AAR Branch,2007-03-30
97
+ Ticket #201 (task created): Standardize API Docs,2007-03-30
98
+ Ticket #200 (task created): Remove Deprecated Docs,2007-03-30
99
+ Ticket #199 (task created): Update License Information,2007-03-30
100
+ Ticket #198 (task created): rubyreports.org webpage,2007-03-30
101
+ Ticket #197 (task created): Proper Licensing Statements,2007-03-28
102
+ Ticket #196 (defect created): as() returns unintelligible error for non-registered formats,2007-03-28
103
+ Ticket #195 (enhancement closed): Formatter::PDF#draw_table,2007-03-27
104
+ "Ticket #194 (enhancement closed): renders_for should take multiple formats, renderers.",2007-03-26
105
+ Ticket #193 (task closed): Make Renderer.add_format private and remove add_core_format,2007-03-26
106
+ Ticket #195 (enhancement created): Formatter::PDF#draw_table,2007-03-26
107
+ "Ticket #194 (enhancement created): renders_for should take multiple formats, renderers.",2007-03-26
108
+ Ticket #193 (task created): Make Renderer.add_format private and remove add_core_format,2007-03-26
109
+ Ticket #183 (task closed): Remove Shortcuts from Core,2007-03-26
110
+ Ticket #192 (enhancement created): renders_with should take default options,2007-03-26
111
+ Ticket #191 (enhancement created): render_grouping,2007-03-25
112
+ Ticket #190 (enhancement created): Report shortcuts for rendering,2007-03-25
113
+ Ticket #189 (enhancement created): sub_table / reduce should take single arg range,2007-03-25
114
+ Ticket #187 (enhancement closed): Ruport::Format::Plugin becomes Ruport::Formatter,2007-03-24
115
+ Ticket #163 (task closed): Data::Group,2007-03-23
116
+ Ticket #144 (enhancement closed): SQL Formatter?,2007-03-23
117
+ Ticket #188 (defect created): class_str broken in 0.9.2,2007-03-23
118
+ Ticket #187 (enhancement created): Ruport::Format::Plugin becomes Ruport::Formatter,2007-03-23
119
+ Ticket #174 (enhancement closed): Grouping &amp; Group data structures,2007-03-23
120
+ Ticket #186 (enhancement created): simple_html_table,2007-03-23
121
+ Ticket #185 (task created): Sanitize,2007-03-22
122
+ Ticket #184 (task created): Consistent Errors,2007-03-22
123
+ Ticket #183 (task created): Remove Shortcuts from Core,2007-03-22
124
+ Ticket #182 (defect closed): rope does not regenerate deleted test_files when using 'rake build',2007-03-19
@@ -0,0 +1,119 @@
1
+ title,date
2
+ Ticket #238 (enhancement closed): Table#sort_rows_by!,2007-04-17
3
+ Ticket #225 (task closed): corner bottlenecks with focused benchmarks,2007-04-17
4
+ Ticket #223 (task closed): Identify a small set of key benchmarks,2007-04-17
5
+ Ticket #209 (task closed): Refactor Formatters,2007-04-15
6
+ Ticket #236 (task closed): api.rubyreports.org/edge,2007-04-13
7
+ Ticket #212 (task closed): Users Field Guide,2007-04-13
8
+ Ticket #186 (enhancement closed): simple_html_table,2007-04-13
9
+ Ticket #235 (task closed): Get a big list of all the methods in Ruport. Stare at them. Identify their interface. Cry.,2007-04-13
10
+ Ticket #249 (enhancement closed): Table#rename_columns should accept a block,2007-04-11
11
+ Ticket #249 (enhancement created): Table#rename_columns should accept a block,2007-04-11
12
+ Ticket #188 (defect closed): class_str broken in 0.9.2,2007-04-11
13
+ Ticket #224 (task closed): Build ruport_bench which will run benchmarks and generate reports,2007-04-11
14
+ Ticket #241 (task closed): rewrite Table/Group dup methods to use initialize_copy instead,2007-04-11
15
+ Ticket #220 (enhancement closed): rope rake tasks for ruport-util,2007-04-10
16
+ Ticket #219 (task closed): XML/FO Formatter,2007-04-07
17
+ Ticket #211 (task closed): Remove Multilevel Grouping Formatters,2007-04-06
18
+ Ticket #248 (task created): AAR Name,2007-04-05
19
+ Ticket #204 (task closed): Merge AAR to Trunk,2007-04-05
20
+ Ticket #203 (task closed): AAR Tests,2007-04-05
21
+ Ticket #226 (task closed): investigate Ara's xx for html helpers.,2007-04-04
22
+ "Ticket #247 (task created): Ruport Utils wiki page, and update of deprecated plugin pages",2007-04-04
23
+ Ticket #245 (task closed): Make initial RubyForge release,2007-04-09
24
+ Ticket #246 (enhancement created): Grouping#summary,2007-04-04
25
+ Ticket #245 (task created): Make initial RubyForge release,2007-04-04
26
+ Ticket #229 (enhancement closed): Add tests for invoice,2007-04-04
27
+ Ticket #231 (enhancement closed): ReportManager tests,2007-04-04
28
+ Ticket #221 (task closed): improve invoice interface,2007-04-04
29
+ Ticket #233 (task closed): ReportManager example,2007-04-04
30
+ Ticket #230 (enhancement closed): Add support for line labels in graph,2007-04-01
31
+ Ticket #242 (task closed): set mike up with stats access,2007-04-04
32
+ Ticket #202 (task closed): AAR Branch,2007-04-04
33
+ Ticket #234 (defect closed): options should not be used as an argument name anywhere in Renderers or Formatters,2007-04-04
34
+ Ticket #244 (defect created): Allow proper copying of Grouping,2007-04-04
35
+ Ticket #240 (task closed): use self.class.new where appropriate,2007-04-04
36
+ Ticket #243 (task closed): fix circular dependency issue in rope,2007-04-04
37
+ Ticket #243 (task created): fix circular dependency issue in rope,2007-04-03
38
+ Ticket #242 (task created): set mike up with stats access,2007-04-03
39
+ Ticket #241 (task created): rewrite Table/Group dup methods to use initialize_copy instead,2007-04-03
40
+ Ticket #237 (task closed): set mike up with all the necessary resource permissions for releases,2007-04-02
41
+ Ticket #227 (task closed): packaging rake task for Release,2007-04-02
42
+ Ticket #240 (task created): use self.class.new where appropriate,2007-04-02
43
+ Ticket #191 (enhancement closed): render_grouping,2007-04-01
44
+ Ticket #239 (enhancement created): Table#sort_rows_by should accept non-array single arg.,2007-04-01
45
+ Ticket #238 (enhancement created): Table#sort_rows_by!,2007-04-01
46
+ Ticket #237 (task created): set mike up with all the necessary resource permissions for releases,2007-04-01
47
+ Ticket #78 (enhancement closed): Do we need to bring back a SQL generator?,2007-03-30
48
+ Ticket #236 (task created): api.rubyreports.org/edge,2007-03-31
49
+ Ticket #235 (task created): Get a big list of all the methods in Ruport. Stare at them. Identify their interface. Cry.,2007-03-31
50
+ Ticket #228 (enhancement closed): Layout method,2007-03-31
51
+ Ticket #234 (defect created): options should not be used as an argument name anywhere in Renderers or Formatters,2007-03-31
52
+ Ticket #217 (task closed): Depluginize initial set of utils,2007-03-31
53
+ Ticket #231 (enhancement created): ReportManager tests,2007-03-31
54
+ Ticket #230 (enhancement created): Add support for line labels in graph,2007-03-31
55
+ Ticket #216 (task closed): Fix Graphing,2007-03-31
56
+ Ticket #229 (enhancement created): Add tests for invoice,2007-03-31
57
+ Ticket #228 (enhancement created): Layout method,2007-03-31
58
+ Ticket #222 (task closed): add ruport-util component in Trac,2007-03-31
59
+ Ticket #218 (task closed): move svn repository up one level,2007-03-31
60
+ Ticket #227 (task created): packaging rake task for Release,2007-03-31
61
+ Ticket #226 (task created): investigate Ara's xx for html helpers.,2007-03-30
62
+ Ticket #199 (task closed): Update License Information,2007-03-30
63
+ Ticket #178 (task closed): Grouping Renderer,2007-03-30
64
+ Ticket #225 (task created): corner bottlenecks with focused benchmarks,2007-03-30
65
+ Ticket #224 (task created): Build ruport_bench which will run benchmarks and generate reports,2007-03-30
66
+ Ticket #223 (task created): Identify a small set of key benchmarks,2007-03-30
67
+ Ticket #106 (task closed): standardize API documentation format and cleanup where needed,2007-03-30
68
+ Ticket #199 (task closed): Update License Information,2007-03-30
69
+ Ticket #184 (task closed): Consistent Errors,2007-03-30
70
+ Ticket #222 (task created): add ruport-util component in Trac,2007-03-30
71
+ Ticket #221 (task created): improve invoice interface,2007-03-30
72
+ Ticket #220 (enhancement created): rope rake tasks for ruport-util,2007-03-30
73
+ Ticket #219 (task created): XML/FO Formatter,2007-03-30
74
+ Ticket #218 (task created): move svn repository up one level,2007-03-30
75
+ Ticket #217 (task created): Depluginize initial set of utils,2007-03-30
76
+ Ticket #216 (task created): Fix Graphing,2007-03-30
77
+ Ticket #215 (task closed): apply for RubyForge project,2007-03-30
78
+ Ticket #215 (task created): apply for RubyForge project,2007-03-30
79
+ Ticket #214 (task created): Determine if cheatsheets can be released,2007-03-30
80
+ Ticket #213 (task created): Contributors Field Guide,2007-03-30
81
+ Ticket #212 (task created): Users Field Guide,2007-03-30
82
+ Ticket #211 (task created): Remove Multilevel Grouping Formatters,2007-03-30
83
+ Ticket #210 (task created): Formatting Helpers,2007-03-30
84
+ Ticket #209 (task created): Refactor Formatters,2007-03-30
85
+ Ticket #208 (task created): API Stability,2007-03-30
86
+ Ticket #207 (task created): Refactor Unit Tests,2007-03-30
87
+ Ticket #206 (task created): Testing Audit,2007-03-30
88
+ Ticket #205 (task created): Custom Exceptions,2007-03-30
89
+ Ticket #204 (task created): Merge AAR to Trunk,2007-03-30
90
+ Ticket #203 (task created): AAR Tests,2007-03-30
91
+ Ticket #202 (task created): AAR Branch,2007-03-30
92
+ Ticket #201 (task created): Standardize API Docs,2007-03-30
93
+ Ticket #200 (task created): Remove Deprecated Docs,2007-03-30
94
+ Ticket #199 (task created): Update License Information,2007-03-30
95
+ Ticket #198 (task created): rubyreports.org webpage,2007-03-30
96
+ Ticket #197 (task created): Proper Licensing Statements,2007-03-28
97
+ Ticket #196 (defect created): as() returns unintelligible error for non-registered formats,2007-03-28
98
+ Ticket #195 (enhancement closed): Formatter::PDF#draw_table,2007-03-27
99
+ "Ticket #194 (enhancement closed): renders_for should take multiple formats, renderers.",2007-03-26
100
+ Ticket #193 (task closed): Make Renderer.add_format private and remove add_core_format,2007-03-26
101
+ Ticket #195 (enhancement created): Formatter::PDF#draw_table,2007-03-26
102
+ "Ticket #194 (enhancement created): renders_for should take multiple formats, renderers.",2007-03-26
103
+ Ticket #193 (task created): Make Renderer.add_format private and remove add_core_format,2007-03-26
104
+ Ticket #183 (task closed): Remove Shortcuts from Core,2007-03-26
105
+ Ticket #192 (enhancement created): renders_with should take default options,2007-03-26
106
+ Ticket #191 (enhancement created): render_grouping,2007-03-25
107
+ Ticket #190 (enhancement created): Report shortcuts for rendering,2007-03-25
108
+ Ticket #189 (enhancement created): sub_table / reduce should take single arg range,2007-03-25
109
+ Ticket #187 (enhancement closed): Ruport::Format::Plugin becomes Ruport::Formatter,2007-03-24
110
+ Ticket #163 (task closed): Data::Group,2007-03-23
111
+ Ticket #144 (enhancement closed): SQL Formatter?,2007-03-23
112
+ Ticket #188 (defect created): class_str broken in 0.9.2,2007-03-23
113
+ Ticket #187 (enhancement created): Ruport::Format::Plugin becomes Ruport::Formatter,2007-03-23
114
+ Ticket #174 (enhancement closed): Grouping &amp; Group data structures,2007-03-23
115
+ Ticket #186 (enhancement created): simple_html_table,2007-03-23
116
+ Ticket #185 (task created): Sanitize,2007-03-22
117
+ Ticket #184 (task created): Consistent Errors,2007-03-22
118
+ Ticket #183 (task created): Remove Shortcuts from Core,2007-03-22
119
+ Ticket #182 (defect closed): rope does not regenerate deleted test_files when using 'rake build',2007-03-19