Ruport 1.2 Released

Ruport version 1.2 has been released. This update contains significant enhancements to Ruport's functionality.

The full release notes can be found at http://rubyreports.org/release_notes-1.2.html , but a summary of the changes can be found below.

The features included in this release could not have come about without significant community involvement and we want to especially thank those listed below, as well as the rest of the community in general for their support.

== Acknowledgements

The following folks have contributed code, ideas, documentation, funded feature work, suggestions, or other good stuff to Ruport that made this release possible:

- Brad Ediger - Gregory Gibson - Imobach González Sosa - Stefan Mahlitz - Jeremy McAnally - Dave Nelson - Emmanuel Oga - Jason Roelofs - Greg Weber

The core Ruport team has also been working on a Ruport book, to be self-published by the end of the year. The content has been written against the 1.2 codebase, so it's a good way to get up to date on how to use the new features. The current content is freely available at http://ruportbook.com. Some of the sections are slightly behind the final set of features in 1.2, but they will be brought up to date in the next few days.

We'd welcome any and all feedback on the new features. Just stop by the mailing list at http://groups.google.com/group/ruby-reports.

- Mike

== Ruport 1.2 CHANGELOG

API Breakage

    * acts_as_reportable now uses real association names     * Data::Table constructors now yield Data::Feeder objects instead of       Data::Table     * append_hash, append_array, and append_record removed from Data::Table     * Renderer::Hooks changed signature for renderable_data() to       renderable_data(format)     * Formatter::PDF#draw_text no longer changes the position of the drawing       cursor     * Ruport 0.7 style stage building syntax removed

Enhancements to existing features

    * Table#sort_rows_by now allows nil objects and allows ascending/descending       order     * Table constructors now accept :filters and :transforms Procs     * AAR's report_table() and report_table_by_sql() now accept :filters and       :transforms Procs     * Grouping constructor accepts :order, and new Grouping#sort_grouping_by       method     * Formatter::PDF#draw_table now exposes column heading formatting options     * Renderers can now be passed :file => " somefile.txt" to save output

Brand New Features

    * Data::Feeder allows for custom transformations and filters on data     * Grouping#sigma added (Thanks Dave Nelson)     * Formatter::PDF#draw_text! will draw text at an absolute position,       ignoring margins     * Formatter::Template provides a simple templating system for renderer       options