I started the development of the next incarnation of DataMapper ORM: version 2.
Most of it will be rewritten, while I try to keep the API unchanged as much as possible. But some things are going to change, will be removed, or will be introduced.
Some of the items already part of the design:
- full support for Core and Reactor 2.0+
- exceptions instead of show_errors()
- support for extending the DataMapper library
- support for model base classes ( a extends b extends c extends DataMapper )
- per model configuration caching and cache expiry
- entirely implemented as a third-party package
- different way of working with extensions
- non-core functionality is now an extension (p.e. validation, transactions)
- extensions are autoload on call
- new relationship type: belongs_to “I have the FK”, now has_one/has_many means “You have the FK”
- no more simple relationships, and restructured advanced relationships to make them easier to use
- support for multiple primary keys for a table
- no more fixed ‘id’ key column
- large reduction of the “Reserved Names” list
- all (public and protected) DataMapper methods and properties for internal use are now prefixed “dm_”
You, who uses DataMapper in you applications, can probably come up with a much longer list of issues, features or improvements.
If so, please let me know, here, or on DataMappers new place on the web: https://github.com/WanWizard/Datamapper2/issues
I love to hear from you.
