From: Gregory Brown Date: 2006-04-29T09:00:39+09:00 Subject: [ANN] Ruby Reports 0.4.0 Released! = Ruby Reports 0.4.0: The "Less than 100% API change" Release == What is Ruby Reports (Ruport) ? Ruby Reports is a software library that aims to make the task of reporting less tedious and painful. It provides tools for data acquisition, database interaction, formatting, and parsing/munging. == What's new in this release ? I mentioned that I was going to focus at increasing test coverage, so you're looking at 27 additional tests with over 60 additional assertions. There have also been a lot of major bug fixes, and things are for the most part throwing appropriate (and rescuable) errors rather than just behaving wild and crazy. The last version of Ruport had some major issues with database interaction, pretty much always returning nil no matter what went wrong, that problem is gone. Ruport is still going through a lot of growing pains, but things seem to be getting better. The coolest new feature is probably Simon Claret's submission which handles PDF table generation. Try something like: File.open("foo.pdf","w") do |f| f.puts [[1,2],[3,4],[5,6]].to_ds(%w[a b]).as(:pdf_table) end It should give you some pretty PDF output. Of course, this still has a bunch of warts, but it's at least a nice example of whats to come. If you are lazy, you can see the result of this command here; http://stonecode.org/ruport/foo.pdf I've also added a bunch of helper methods for doing various tasks around Ruport, see the CHANGELOG for details. This is mostly a maintainence, cleanup, new-stuff-under-the-hood, and bug stomping release, but for the adventurous, new cool stuff is lurking. == Optional Dependencies The way ruport works now is if you have certain software installed, it will let you use it. If you do not, it simply will ignore those features, throwing a NotImplementedError if you try to use them. These features will spring into existence as you install the new libs, so you are free to add them in down the line if you'd like too. No ruport re-install needed The optional dependencies are: Ruby/DBI : Needed for Query and it's functionality to work FasterCSV : When installed, everything will work the same, just faster RedCloth : Needed for the red_cloth filter to work PDF::Writer: Needed if you'd like to attempt to use the experimental printable documents stuff and the pdf table stuff. All but Ruby/DBI can be installed via RubyGems. == Installation The preferred method of installing Ruport is by RubyGems The package from RubyForge will grab all the dependencies for you: sudo gem install ruport If you are interested in installing ruport manually, you can download the source and either use setup.rb or build the gem using the Rakefile provided[+] You might want to grab the code off of SVN: svn co svn://rubyforge.org/var/svn/ruport/tags/ruport-0.4.0 or you can grab it from http://rubyforge.org/frs/?group_id=856&release_id=5207 After you've got Ruport installed, run ruby -rubygems -e "require 'ruport'; puts Ruport::VERSION" to double check everything went well. == Resources Please join the mailing list! It's the best way to get answers and it helps lighten the burden on me to provide documentation (the archive serves as a nice first stop for info). Plus, I feel loved when I see the subscriber list climb! [We're up to 21 now!] http://lists.stonecode.org/listinfo.cgi/ruport-stonecode.org Feel free to browse the archive and ask any questions you might have or make suggestions. I am actively looking for contributors, testers, and other wandering vagabonds. Aside from that, I've upgraded the API documentation from abhorrent to 'for the most part, pretty okay, expect for places when it's not so good at all' Meaning you might find something useful at http://ruport.rubyforge.org And to stay on top of Ruport news, you can always skulk around my blog: http://stonecode.org/blog == Coming Soon! Features I need in order to keep the paychecks coming. :) Most of these are data manipulation type things, doing summary reports and combinations of data and stuff like that. Also, finer grain control over formatting. Ruport needs to be made a LOT more flexible in this area. == Acknowledgements: Thank you to Selby Gibson for your continued support. Also, thank you to new_haven.rb, NYC.rb, Francis Hwang and James Edward Gray II for code reviews, suggestions, putting up with me, etc. And of course, to Simon Claret for his PDF table submissions and his work on rails support... and the folks on the mailing list who give me feedback. Thanks, - Greg [+] ruport-lean officially went away, but you can still build a dependency free gem by editing the Rakefile and setting LEAN to true. This is for the adventurous and anti-dependency only.