From: Sharon Rosner Date: 2008-01-03T02:59:32+09:00 Subject: ANN: Sequel 1.0 Released! I'm pleased to announce that Sequel version 1.0 has just been released. Sequel is a lightweight database access and ORM library for Ruby. Sequel provides thread safety, connection pooling and a simple and expressive API for constructing database queries and table schemas. This milestone release separates Sequel into two separate libraries: sequel_core and sequel_model. Also new in this release are refactored model hooks (callbacks), a few minor bug fixes, and 100% code coverage! To update your sequel gem execute the following command: sudo gem update sequel Following is a discussion of the main changes: === New code organization Sequel is now divided into two parts: sequel_core and sequel_model. These two parts are distributed as two separate gems. The sequel gem bundles sequel_core and sequel_model together. If you don't use Sequel::Model in your code, you can just install and use sequel_core. === New model hooks implementation The hooks implementation have been rewritten from scratch, is much more robust and offers a few new features: * More ways to define hooks: hooks can now be defined by supplying a block or a method name, or by overriding the hook instance method. * Inheritable hooks: Hooks can now be inherited, which means that you can define general hooks in a model superclass, and use them in subclasses. You can also define global hooks on Sequel::Model that will be invoked for all model classes. * Hook chains can be broken by returning false from within the hook. * New after_initialize hook, invoked after instance initialization. * The hook invocation order can no longer be changed. Hooks are invoked in order of definition, from the top of the class hierarchy (that is, from Sequel::Model) down to the specific class. === Miscellanea * Removed deprecated adapter stubs, and all other deprecations in both sequel_core and sequel_model. * Fixed String#to_time to raise error correctly for invalid time stamps. * Fixed error behavior when parse_tree or ruby2ruby are not available. === More info on Sequel Sequel project page: Sequel documentation: Join the Sequel-talk group: Join Sequel discussion on IRC at #sequel. Install the gem: sudo gem install sequel Or check out the source and install manually: svn co http://ruby-sequel.googlecode.com/svn/trunk sequel cd sequel rake install