l3pp4rd/DoctrineExtensions — pull request #764 by l3pp4rd (2013-07-01 12:02:09+00:00)
Title: [WIP] v2.4.0

# Refactoring for v2.4.0

General backward incompatible changes for **v2.4.0**

- [ ] for extension metadata, support relative class names based on current file namespace like ORM does.
- [ ] refactor tests to support testing multiple database types, make general cleanup
- [ ] update documentation

## Softdeleteable

closes #739
closes #554
closes #754

Handles softdeleted slug uniqueness checks implicitly. Here is some minnor BC break if `addManagedFilter($name)` was used explicitly for sluggable.

- [x] make filter ignorance available at base listener class, to share common behavior between listeners
- [x] implicitly manage softdeleteable filter for sluggable listener without any user intervention.
- [x] update tree **lft** **rgt** values, when nodes were softdeleted
- [x] handle translations related to an entity, do not remove them
- [ ] update documentation

## Translatable

closes #267
closes #282
closes #284
closes #371
closes #379
closes #404
closes #417
closes #509
closes #763

Generally drop support for non ORM standard way to manage translations. This change will have more features and performance related improvements.

- [x] have translation entities related for each entity as currently personal translations do
- [x] translations should contain all translatable fields
- [ ] other extensions should be able to apply directly on translation (sluggable as an example)
- [x] query hint for translation should do only one join (inner or left), should not require cast for columns
- [x] no more default locale, all locales are persisted as translations, translatable entity fields serve only as proxy and representation
- [x] support multiple locale fallbacks, for onload and translation query through hint
- [x] require hints for translatable queries, there were issues when values from listener were used, query cache was not working.
- [ ] adapt ODM MongoDB for same updated behavior
- [ ] create a command to update, generate translations
- [ ] consider adding some migration commands, to
- [ ] maybe put Translator inside Translatable if it was used or may be useful
- [ ] update documentation

Ongoing work examples can be found in [tests](https://github.com/l3pp4rd/DoctrineExtensions/tree/wip-v2.4.0/tests/Translatable)