DataMapper 1.1 Released

99 views
Skip to first unread message

Dan Kubb (dkubb)

unread,
Mar 17, 2011, 1:46:15 AM3/17/11
to DataMapper
I'm pleased to announce that we have released DataMapper 1.1.

This has been one of the most enjoyable releases in recent memory. The
community rallied together and compared to the previous release we had
at least 3-4x more people submitting patches and working together to
get this release ready.

DataMapper 1.1 brings several minor API changes, warranting the minor
version bump, and closes 52 tickets in Lighthouse. There have been
many performance improvements, some closing bottlenecks that result in
as much as a 20x speedup from the 1.0.2 behaviour.

As part of the bug fixing process we've refactored some of the objects
we use internally to group relationships and dependencies and removed
methods and classes that were deprecated in 1.0.

Installation
------------

DataMapper can be installed with a one-line command:

$ gem install datamapper dm-sqlite-adapter --no-ri --no-rdoc

The above command assumes you are using SQLite, but if you plan to use
MySQL, PostgreSQL or something else replace dm-sqlite-adapter with
your preferred adapter gem.

Changes
-------

Here's a list of the tickets we've resolved for 1.1:

http://datamapper.lighthouseapp.com/projects/20609/milestones/83769

Highlights:

* ActiveSupport / Extlib dependency is removed. If your code relies on
one of these libs then just add a dependency on your own.

* DataMapper::Type is gone now in favour of DataMapper::Property. The
Type API was deprecated in 1.0 but if you still have some Types
floating around read how to upgrade them here:
http://groups.google.com/group/datamapper/browse_thread/thread/5d3d212c3614db36/ae7be012e06488f6

* RelationshipSet and PropertySet are now subclasses of a new
SubjectSet class - more info:
https://github.com/datamapper/dm-core/commit/e97e9af2021660dc422a035468456ddeadd499fc
Please be aware that previously RelationshipSet and PropertySet
inherited from Hash and Array, respectively.

* Property class finder is now improved and it's possible to declare
properties that aren't defined in DataMapper::Property namespace
without providing the full const path. For instance you can have
YourApp::Properties::FooBar and you can declare it as
"property :foo_bar, FooBar". There's a convention that if your
property class has the same name as one of the other properties from
DataMapper::Property namespace then you have to provide the full const
path, otherwise your property won't be found.

* Removed deprecated methods:

DataMapper::Collection#add (replaced by #<<)
DataMapper::Collection#build (replaced by #new)
DataMapper::IdentityMap#get (replaced by #[])
DataMapper::IdentityMap#set (replaced by #[]=)
DataMapper::PropertySet#has_property? (replaced by #named?)
DataMapper::PropertySet#slice (replaced by #values_at)
DataMapper::PropertySet#add (replaced by #<<)
DataMapper::Query::Conditions::Comparison#property (replaced by
#subject)
DataMapper::Query::Direction#property (replaced by #subject)
DataMapper::Query::Direction#direction (replaced by #operator)
DataMapper::Property#unique (replaced by #unique?)
DataMapper::Property#nullable? (replaced by #allow_nil?)
DataMapper::Property#value (replaced by #dump)
DataMapper::Resource#new_record? (replaced by #new?)

How to report issues
--------------------

Please report any issues you find in IRC, on the mailing list, or in
the bug tracker:

IRC: #datamapper
Mailing List: http://groups.google.com/group/datamapper
Bug Tracker: http://datamapper.lighthouseapp.com/projects/20609

Avdi Grimm

unread,
Mar 17, 2011, 1:55:56 AM3/17/11
to datam...@googlegroups.com
On Thu, Mar 17, 2011 at 1:46 AM, Dan Kubb (dkubb) <dan....@gmail.com> wrote:
> I'm pleased to announce that we have released DataMapper 1.1.

Nice!

--
Avdi Grimm
http://avdi.org

Daniel Ribeiro

unread,
Mar 17, 2011, 8:59:09 AM3/17/11
to datam...@googlegroups.com
Really nice.

Marcin Kulik

unread,
Mar 17, 2011, 8:59:28 AM3/17/11
to DataMapper
Awesome!

On Mar 17, 6:55 am, Avdi Grimm <gro...@inbox.avdi.org> wrote:

Martin Gamsjaeger

unread,
Mar 17, 2011, 10:04:26 AM3/17/11
to datam...@googlegroups.com
Totally awesome! Congratz everyone!

> --
> You received this message because you are subscribed to the Google Groups "DataMapper" group.
> To post to this group, send email to datam...@googlegroups.com.
> To unsubscribe from this group, send email to datamapper+...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/datamapper?hl=en.
>
>

Piotr Solnica

unread,
Mar 17, 2011, 5:58:08 PM3/17/11
to DataMapper
YES! Good job!

It's also worth mentioning that we have a CI server setup which runs
entire DataMapper spec suite of ~ 30 gems on 5 adapters and 4 ruby
vms. It means from now on it will be much easier to do quick bug fix
releases and in general it should speed up the development.

Check it out here: http://ci.datamapper.org

Cheers!

# solnic
> floating around read how to upgrade them here:http://groups.google.com/group/datamapper/browse_thread/thread/5d3d21...
>
> * RelationshipSet and PropertySet are now subclasses of a new
> SubjectSet class - more info:https://github.com/datamapper/dm-core/commit/e97e9af2021660dc422a0354...

Michishige Kaito

unread,
May 21, 2011, 12:20:16 PM5/21/11
to datam...@googlegroups.com
Does any documentation on the following deprecation message exist?

DataObjects::URI.new with arguments is deprecated, use a Hash of URI components

Piotr Solnica

unread,
May 21, 2011, 12:45:28 PM5/21/11
to datam...@googlegroups.com

This warning is already gone in DM 1.1.1 which will be released once the
blocker issue in DO is fixed.

Cheers

# solnic

Xavier (DBIYF)

unread,
May 21, 2011, 11:30:07 PM5/21/11
to datam...@googlegroups.com
To fix it now, use a git version of dm-do-adapter just before 1.1.1 was
gemspecced.

# We can technically use the 1.1 gem, but it throws up deprecation warnings.
# This ref is the commit the warnings were silenced, but is before the DM
# dependencies were bumped to 1.1.1 (which hasn't been released yet)
gem 'dm-do-adapter',
git: 'git://github.com/datamapper/dm-do-adapter',
ref: '7f0b53d1ada8735910e0'

Xavier

mltsy

unread,
Jun 29, 2011, 4:01:09 PM6/29/11
to DataMapper
I think it's worth mentioning that the Mash class and the to_mash
method are part of extlib. I found those quite useful, and wondered
where they had gone after I updated to DataMapper 1.1.0
Reply all
Reply to author
Forward
0 new messages