PersistentObject: ChangeLog
[ ]
[ ]
[ ]
[ ]
[ ]
- Implemented issue #13218: Add lazy initialization to PersistentObject
component.
- Implemented issue #13558: Small optimizations in the load handler.
- Refactored ezcPersistentSession.
- Implemented enhancement #10151: Improved Database and PersistentObject
datatype support (especially binary data). The object definitions allow to
specify the datatype of the database column assigned to a property.
- Implemented enhancement #10373: Several relations to the same table for
PersistentObject.
- Implemented enhancement #10727: Improved error messages for PersistentObject
with ManualGenerator.
- Fixed issue #10205: Binding variables with an undeclared var doesn't throw
an exception. If getState() on a persistent object does not return an array
an exception is thrown now.
- Fixed issue #12471: PersistentObject misses support for boolean datatype.
- Documentation updates and fixes.
- Fixed issue #11405: Ambiguous column names when using
ezcPersistentManyToManyRelation. Column names are now correctly prefixed
with their corresponding table names.
- Fixed issue #12082: Restoring a definition from var_export( $definition )
PHP code.
- Documentation updates and fixes.
- Documentation updates and fixes.
- Documentation updates and fixes.
- Fixed issue #10152: Persistent Object and manual generator: string primary
keys.
- Fixed issue #10552: ManyToMany relations with multiple columns. Mapping works
correctly now.
- Fixed issue #10331: PersistentObject: Exceptions should become more verbose.
ezcPersistentQueryException now contains the SQL query in its message, if
appropriate.
- Fixed issue #10725: PersistentObject saveOrUpdate() using manualgenerator
will trigger one extra query to check if an object is persistent (save() and
update() do this as well just moments later...).
- Fixed issue #10726: PersistentObject definition should contain type info on
the identifier.
- Fixed issue #10770: PersistentObject throws PDOException in some cases.
Throws correct ezcPersistentQueryException now.
- Fixed testcase for manual generator giving failure for postgresql on correct
behaviour (INSERT violating NULL contraint does give an error...).
- Fixed issue #9999: idProperty missing in definition file causes unclear
error messages.
- Fixed issue #10106: ezcPersistentManualGenerator does not quote ID
columnName.
- Fixed issue #10112: Lots of failures in PersistentObject tests with
PostgreSQL.
- Fixed issue #10153: Persistent Object and manual generator (negative and
0 primary keys).
- Fixed issue #10369: testAddRelatedBirthdayToPerson3UpdateSuccess fails for
no apparant reason.
- Implemented feature #8487: An interface for Persistent Objects.
- Implemented feature #10166: Cache PO-definitions.
- Implemented feature #9967: PersistentObject: getRelationQuery() method. This
method is now called createRelationFindQuery() and is public now.
- Implemented feature #9089: Make some methods public.
ezcPersistentSession->generateAliasMap() and ->getColumnsFromDefinition()
are public now.
- Fixed issue #9249: Save/update objects with 1:1 relations that share the
same ID does not work.
- Fixed issue #9489: Check whether the PersistentObject and
PersistentObjectDatabaseSchemaTiein tutorials are interlinked.
- Fixed issue #9493: Convert < and > in exception messages to ' and ' for
Cache, ConsoleTools, ImageAnalysis, ImageConversion, PersistentObject,
PersistentObjectDatabaseSchemaTiein.
- Fixed issue #9591: ezcPersistentSession attempts to throw non existing
exception (typo).
- Fixed issue #9819: Let all components deal with the ezcBaseAutoloadException
properly.
- Fixed issue #8962: "Sequence Generator" incorrect name for MySQL. MySQL
should use the new "ezcPersistentNativeGenerator" from now, with
auto_increment. "ezcPersistentSequenceGenerator" dispatches to this for BC
reasons.
- Fixed issue #9248: SQLite driver throws wierd exception.
- Fixed issue #9335: PersistentSession should use object->getState() in all
methods rather than accessing objects properties directly.
Fixed #7884: ezcPersistentSession sometimes triggers PDO "General error:
2014" exceptions.
Fixed #8042: PersistentObject requires use of database ID counter.
Note: The change involves a slight BC incompatible change.
ezcPersistentIdentifierGenerator is no longer an interface but an abstract
class. Implementors must change 'implements' to 'extends' to reflect this.
Added ezcPersistentManualGenerator which can be used to set the ID's of new
object manually.
- Fixed #7845: Find fetches all columns and not just the required columns.
- Added new methods to ezcPersistentSession:
- Added support for table and column aliases.
- Added sequence strategy system, which makes this component also work
with PostGreSQL.
- Changed exception behavior. All errors will now throw a different exception
class.
- Added interfaces and classes:
- ezcPersistentIdentifierGenerator that defines the interface between
ezcPersistentSession and the code creating unique ID's for new rows.
- ezcPersistentSequenceGenerator that implements the ID generation
using sequence functionality in the database handlers.
- ezcPersistentGeneratorDefinition to set up what generator to use in the
definition.
- Initial release of this package.
Last updated: Fri, 03 Oct 2008