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