Releases: woohoolabs/worm
Releases · woohoolabs/worm
0.7.4
0.7.3
ADDED:
RelationshipBuilderInterface::toRelationship()
method in order to build relationships type safely
FIXED:
AbstractModel::getRelationships()
return typeAbstractModel::belongsTo*()
and AbstractModel::has*() return types
0.7.2
FIXED:
- AbstractModel::getRelationships() return type
- AbstractModel::belongsTo*() and AbstractModel::has*() return types
0.7.1
CHANGED:
- Improved PSR-12 conformance
- Added more type hints
0.7.0
CHANGED:
- Increased minimum PHP version requirement to 7.4 as property type declarations were added
- Updated Larva to 0.7
- Updated dev dependencies
- Improved static analysis
0.6.0
ADDED:
- Support for building relationships
CHANGED:
- Updated Larva to 0.6
- Require PHPUnit 7.0 minimally to run tests
- Apply the Woohoo Labs. Coding Standard
FIXED:
- Cloning query builders
0.5.0
ADDED:
- Support for composite primary keys
Worm::queryTruncate()
CHANGED:
- Increased minimum PHP version requirement to 7.1
- Updated minimum Larva version requirement to 0.5
ModelInterface::getPrimaryKey(): string
was changed toModelInterface::getPrimaryKeys(): array
- Optimized retrieval of "belongs-to" relationships
FIXED:
- Identities are added to the Identity Map in the correct order when fetching relationships of multiple levels
- Handle null foreign keys properly
0.4.1
FIXED:
InsertQueryBuilder::multipleFields()
caused exception
0.4.0
ADDED:
- Ability to persist entities via
Worm::save()
andWorm::delete()
- Ability to persist related entities via
Worm::saveRelatedEntity()
andWorm::saveRelatedEntities()
- Ability to define if a relationship has
ON DELETE CASCADE
constraint IdentityMap::createObjectFromId()
methodWorm::transaction()
methodWorm::queryInsert()
,Worm::queryUpdate()
andWorm::queryDelete()
methodsSelectQueryBuilder::fetchColumn()
andSelectQueryBuilder::fetchCount()
methodsSelectQueryBuilder::withAllTransitiveRelationships()
methodgetSql()
andgetParams()
methods to query builders
CHANGED:
- Renamed
Worm::queryModel()
toWorm::query()
- A newly added
ConditionBuilder
class is used by query builders instead of its Larva counterpart - Updated minimum Larva version requirement to 0.4
- Adapted interfaces to changes in Larva 0.4
FIXED:
WHERE
conditions won't be erased when usingSelectQueryBuilder::fetchById()
- Fetching relationships of an empty list of entities won't raise syntax error
- Retrieval of belongs-to relationships
0.2.0
ADDED:
- Identity Map
- Support for retrieving multiple levels of relationships in the same query
- Various methods to
SelectQueryBuilder
to reflect changes in Larva v0.3
CHANGED:
- Updated minimum Larva version requirement to v0.3.0
- Optimized retrieval of relationships
REMOVED:
ModelInterface::isAutoIncremented()
method
FIXED:
- Removed unnecessary joins when loading relationships
- Many-to-Many relationships can reference fields other than primary keys