Today we are pleased to announce the release of dm-adapter-simpledb 1.0.0.
The big new feature is compatibility with DataMapper 0.10.*. The DataMapper adapter API changed significantly in 0.10, necessitating a broad rewrite. This release breaks backwards compatibility with DataMapper 0.9.*.
In addition, the way nils are stored has changed, so datasets created with the 0.9.* adapter may need to be updated. Previously nils were stored in the form of a special nil value (by default, the string "nil"). Starting with version 1.0.0, any attributes set to nil will be removed from the SimpleDB record. This is more in line with the SimpleDB concept of NULL, and enables IS NOT NULL predicates to work as expected.
New and existing SimpleDB adapter features include:
- NEW: Supports all DataMapper query predicates.
- NEW: DataMapper identity map support for record caching
- NEW: Lazy-loaded attributes
- NEW: DataMapper Serial property support via UUIDs.
- Uses the RightAWS gem for efficient SimpleDB operations.
- Full set of CRUD operations
- Can translate many queries into efficient native SELECT operations.
- Migrations
- Array properties
- Basic aggregation support (Model.count("..."))
- String "chunking" permits attributes to exceed the 1024-byte limit
If you have Gemcutter in your Gem sources, you can install the gem immediately:
gem install dm-adapter-simpledb
Check out the code at http://github.com/devver/dm-adapter-simpledb. You can see metrics for the code here. Give it a try, and feel free to send us any feedback, patches, and suggestions. The project's issue tracker is on GitHub, or you can always email us.
