-
Notifications
You must be signed in to change notification settings - Fork 107
/
CHANGES
386 lines (309 loc) · 14.8 KB
/
CHANGES
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
2011-06-13: Version 0.4.13-stable
--------------------------------
* Fixing CrossReferenceMatrix to force object_list to be a list (in case of a generator)
2011-03-29: Version 0.4.12-stable
--------------------------------
* SystemField changed to use method "_text" instead of "text" to allow override
2011-02-16: Version 0.4.11-alpha
--------------------------------
* Refactored force_new_page and start_new_page to be the same.
* Fixed documentation about auto_expand_height
2010-09-23: Version 0.4.10-stable
--------------------------------
* Fixed ReportGroup.force_new_page when works with child bands (with secondary detail pages)
2010-09-23: Version 0.4.9-stable
--------------------------------
* Fixed a test related to ReportGroup.force_new_page
2010-07-05: Version 0.4.8-stable
--------------------------------
* Fixed problem on ReportGroup.force_new_page
2010-07-02: Version 0.4.7-stable
--------------------------------
* Fixed problem with blank page when available height was the same needed
2010-06-29: Version 0.4.7-alpha
--------------------------------
* Implemented new generator CSV
2010-06-25: Version 0.4.6-stable
--------------------------------
* Implemented new event on ObjectValue: on_expression_error
2010-06-17: Version 0.4.5-stable
--------------------------------
* Fixed expressions token replacing braces
2010-06-17: Version 0.4.4-stable
--------------------------------
* Fixed bug on complex expressions with braces
2010-05-06: Version 0.4.3-stable
--------------------------------
* Fixed cross reference matrix and expressions to avoid use existing object as dictionary
2010-04-29: Version 0.4.2-stable
--------------------------------
* Implemented support to merge default_style to inherite reports
* Fixed ReportGroup.force_new_page that wasn't rendering page footer on the first page
2010-04-27: Version 0.4.1-stable
--------------------------------
* Implementing ReportGroup to support 'force_new_page' to force a new page for each new
item on the groupper.
* Implementing new function for expression 'coalesce' to set a default value.
2010-04-18: Version 0.4-beta
--------------------------------
* Just releasing 0.4-beta
2010-04-18: Version 0.4-alpha-30
--------------------------------
* Fixed expression to support get_value and children methods (like attribute_name)
2010-04-16: Version 0.4-alpha-29
--------------------------------
* Fixed on_new_page to support real current page number, instead of internal number (thanks to Ari Caldeira)
* Created a new test with all kinds of page number variations are possible
* Additional fonts support to font families
2010-04-11: Version 0.4-alpha-28
--------------------------------
* Fixed ObjectValue when run a circular reference with expressions like 'name.upper'
* Implemented widget borders, useful for outside text borders (thanks to Ari Caldeira)
2010-04-11: Version 0.4-alpha-27
--------------------------------
* Fixed charts on summarize
* Improved expressions to support calculation as argument (i.e: sum(age*weight**2))
2010-04-08: Version 0.4-alpha-26
--------------------------------
* Fixed chart legends x chart widths (they were in conflicts)
* Fixed bar charts to show full size bars (instead lower value)
* Fixed bar charts to show right axis X and Y values
2010-04-07: Version 0.4-alpha-25
--------------------------------
* Implemented events 'before_print' and 'after_print' on ReportBand, and exception AbortEvent
to abort a rendering inside a "before_*" event
2010-04-07: Version 0.4-alpha-24
--------------------------------
* Implemented new attribute 'get_queryset' on SubRepor can be assigned to a lambda function to
replace queryset_string
2010-04-06: Version 0.4-alpha-23
--------------------------------
* Fixed calculation involving aggregation as float and simple value as decimal (and vice-versa)
2010-03-30: Version 0.4-alpha-22
--------------------------------
* Fixed charts about values_labels with font-size
* Started implementation of smart expressions in ObjectValue
2010-03-26: Version 0.4-alpha-21
--------------------------------
* Improved CrossReferenceMatrix class to support cols and rows values informed manually
* Fixed method ManyElements.get_elements to not use an internal cache (it was doing it
wrong with no need)
2010-03-23: Version 0.4-alpha-20
--------------------------------
* Fixed CrossReferenceMatrix class to sort rows and cols values
2010-03-22: Version 0.4-alpha-19
--------------------------------
* Some fixes in cross reference and chart functions
* New function on charts and cross reference: FIELD_ACTION_PERCENT
2010-03-19: Version 0.4-alpha-18
--------------------------------
* Charts support to round values
2010-03-18: Version 0.4-alpha-17
--------------------------------
* Chart colors now support hex strings
2010-03-10: Version 0.4-alpha-16
--------------------------------
* Label widget fixed to support get_value with 'self' and 'text' arguments
2010-03-09: Version 0.4-alpha-15
--------------------------------
* Added automatic report class registration, a variable to store them and a function
'geraldo.base.get_report_class_by_registered_id' to find it by registration ID
2010-03-06: Version 0.4-alpha-14
--------------------------------
* Generator's attribute 'first_page_number_by' changed to 'first_page_number_by'
* Widget SystemField now support new macros %(first_page_number)s and %(last_page_number)s
* New kind of macro 'var:something' to get variable values and attribute 'variables'
* New method on class BaseReport (Report and SubReport): get_variable_value
* New feature to support generators return rendered pages without generate them (attribute 'return_pages')
2010-02-26: Version 0.4-alpha-13
--------------------------------
* Fixed method GeraldoObject.get_object_value to raise correct exception when don't find an attribute
* Fixed ManyElements to calculate right incremental left and top
2010-02-22: Version 0.4-alpha-12
--------------------------------
* New option 'start_page_number_by' on generators to set what is the first page number
2010-01-23: Version 0.4-alpha-5
-------------------------------
* Implemented barcodes
2010-01-22: Version 0.4-alpha-4
-------------------------------
* Borders now support integer numbers in place of boolean, to set their stroke widths
* Implemented caching functions
2010-01-20: Version 0.4-alpha-3
-------------------------------
* New attribute 'additional_fonts' on Report, to be a dictionary with font names file paths
for additional fonts besides those from PDF defaults.
2010-01-15: Version 0.4-alpha-2
-------------------------------
* New 'lambda' attribute on ObjectValue 'get_text' to help 'get_value' to format the value
after it is getted (from Ari's patch)
* New attribute on ObjectValue 'stores_text_in_cache' to set _text property to store the
value in a memory variable and use it in the next times it be requested.
* Fixed a problem on groups aggregation values.
2010-01-13: Version 0.4-alpha
-----------------------------
* Changed website home page to list new discussion groups
* Fixed reporting to return right file names when downloading
* Fixed decorator memoize to support Python 2.4
* Changed 'Set' imports to be more elegant and compatible with new 'set' builtin type
* Added event system (from Ari's patch)
2009-12-20: Version 0.3.9-beta
---------------------------------
* Module 'utils.py' improved to have two main new functions: memoize and run_under_process
- 'memoize' is a decorator that stores function results in memory and use it when the
function is called again with the same arguments
- 'run_under_process' is a decorator that run a function under a multiprocessing.Process
instance, that means you use better the power of multi-core servers to generate reports
* To make the things easier to use decorator 'run_under_process', we created a new method
on geraldo.base.Report class: 'generate_under_process_by', that stores the generation
output in a temp file, using a process, and loads that file in the file-like object.
2009-11-05: Version 0.3.7-stable
---------------------------------
* Fixing problem with memory consuming when generating reports.
(thanks to Douglas Andrade and Leandro Lameiro)
2009-08-03: Version 0.3.6-stable
---------------------------------
* Fixing problem on paragraph style creation (on PDF generator)
(thanks to Marcelo)
2009-07-24: Version 0.3.5-stable
---------------------------------
* Fixing problem on latest commit and changing back to stable version
2009-07-24: Version 0.3.5-alpha-3
---------------------------------
* Implementing method 'get_object_value' on bands and parents to
override ObjectValue getting value behavior
* Fixing aggregation calculations on reports with multiple groups
2009-07-15: Version 0.3.5-alpha-2
---------------------------------
* Adding attributes 'canvas' and 'return_canvas' to PDF generator
and made attribute 'filename' to be not compulsory, to be
possible generate many reports to the same file
2009-07-14: Version 0.3.5-alpha
---------------------------------
* Fixed performance problems when cloning elements
2009-07-13: Version 0.3.4-stable
---------------------------------
* Fixed truncate_overflow behaviour
2009-07-12: Version 0.3.4-alpha
---------------------------------
* Full support to attribute 'visible', a boolean variable you can
set to widgets, graphics, bands and subreports to make them
visible or not. Default value is 'True'
2009-07-11: Version 0.3.3-alpha-4
---------------------------------
* Text generator fixed page header and page footer generation
2009-07-11: Version 0.3.3-alpha-3
---------------------------------
* Text generator fixed to support text alignment to center and
right
2009-07-09: Version 0.3.3-alpha-2
---------------------------------
* Moved common code between PDF and Text generators to Base class
* Fixed band margin_bottom and margin_top calculation when it is
a inline displayed detail band
2009-07-09: Version 0.3.3-alpha
---------------------------------
* Support to 'auto_expand_height' on bands
* Support to bands bottom margin
2009-07-06: Version 0.3.2-alpha-4
---------------------------------
* Adding attribute 'encode_to' on TextGenerator
* Tests refactored to generate output files to 'output' directory
* Tests 03 and 16 working with TextGenerator
2009-06-30: Version 0.3.2-alpha-3
---------------------------------
* TextGenerator almost done
* Little adjustments in PDFGenerator as a preview change before
move the common code (between PDF and Text) to BaseGenerator
class
2009-06-26: Version 0.3.2-alpha-2
---------------------------------
* Objects improved to support be named and found by their names
using the method 'find_by_name'
* Objects can also be removed from their parents with method
'remove_from_parent'
* Objects can remove heir childrens with method 'remove_child'
* And objects can returns their children at once, when calling
method 'get_children'
2009-06-25: Version 0.3.2-alpha
-------------------------------
* Working on TextGenerator (still testing and fixing bugs)
* Improved base element class to calculate a rect
* Replaced '@property' to python 2.4 standard (property())
2009-06-23: Version 0.3.1-alpha-2
---------------------------------
* New function 'utils.calculate_size'
* Added support to string sizes (i.e: margin_top = '1*cm')
2009-05-29: Version 0.3.1-alpha
-------------------------------
* Fixed error on date formatting. We made a mistake decoding with UTF-8 when
we just should make people learn to override the right method (unless we
find a better and agnosthic solution).
2009-05-28: Version 0.3.1-alpha
-------------------------------
* Fixed error on date formatting for Python in versions less than 2.6.x
(thanks to Paul Hide)
2009-05-26: Version 0.3.1-alpha
-------------------------------
* Fixed band_footer and band_header aggregation ObjectValue on SubReports
(thanks to Paul Hide)
* Fixed latin datetime decode when formatting date (ticket # 2796452, thanks
to Ari Caldeira)
* Implemented subject (description) and keywords attributes to Report class
(ticket # 2796457, thanks to Ari Caldeira)
2009-05-14: Version 0.3.0-final
-------------------------------
* Fixed ReportGroup.attribute_name to support methods and child attributes
* Created a new module 'utils.py' with once function to get attribute values
from objects support methods and expression paths. It is used by
ReportGroup.attribute_name and Widget.attribute_name
2009-04-30: Version 0.3.0-alpha-9
---------------------------------
* Fixed a bug on group band footer calculations when there was only one object
in the queryset
2009-04-28: Version 0.3.0-alpha-8
---------------------------------
* Fixed bug on ObjectValue widget and how it works with 'text' property
* Fixed bug on ObjectValue to avoid None values and to convert Decimal to float
2009-04-23: Version 0.3.0-alpha-7
---------------------------------
* Fixed a bug on basic classes creation (it was using objects on lists)
2009-04-16: Version 0.3.0-alpha-6
--------------------------------
* SubReport attribute 'detail_band' changed to 'band_detail' and the old name
made as deprecated
* SubReports now support header and footer bands
2009-04-16: Version 0.3.0-alpha-5
--------------------------------
* Changed method Report.generate_by to raise an exception EmptyQueryset if the
report has attribute 'print_if_empty' is False and 'queryset' is empty
2009-04-13: Version 0.3.0-alpha-4
--------------------------------
* Changed attribute 'attribute_name' on ObjectValue widget class, to support
callable values and object paths instead of attribute names.
2009-04-10: Version 0.3.0-alpha-3
--------------------------------
* New attribute on widgets: truncate_overflow, to truncate widget values when they
overflow
* Default widget height changed to zero ( 0 ).
2009-04-08: Version 0.3.0-alpha
--------------------------------
* Fixed a bug on queryset attribute in Report class
* Created a new class DetailBand, to support inline displayed detail bands
2009-02-01: Version 0.2.2-stable
--------------------------------
* Fixed setup.py to not require PIL and ReportLab from PyPI
* All band classes are transformed in objects on objects initializations. This
is important to work with inheritance, and it is important to make a future
important thing: events (specially BeforePrint and AfterPrint events)
* Fixed test of MatPlotLib support
2009-01-23: Version 0.2-alpha(4)
--------------------------------
* Removed all Django dependecy. Now when use '%(now:)s' macro in SystemField
instances you have to use Python date formatting standards.
* Fixed PDF generator to set some report reference instances to graphic
elements. This is important to make graphic elements in a detail band.
* graphics.Image with a new attribute 'get_image' to set manually functions
to return image instead of load from PIL object or image. This is important
to show images and charts depending on object values and logic.
* Added support to border in Report class to make borders around the margin.