Releases: locomotivemtl/charcoal-core
Releases · locomotivemtl/charcoal-core
charcoal-core 0.3.5
Highlights:
- Change metadata loading to merge content from all matching sources (instead of only the first match)
- Add object type normalization in
ModelLoader
- Fix cache key generation in
ModelLoader
- Fix object cache key prefix
- Fix codebase syntax
- Fix unit tests
- Cleanup codebase
charcoal-core 0.3.4
Highlights:
- Update CollectionLoader methods (to match changes from
AbstractSource
since 0.3.0) - Set
save()
,update()
,delete()
, andload()
as final (even if PHP doesnt enforce it for traits) - Cleanup codebase
charcoal-core 0.3.3
- AbstractModel::setDependencies() is now protected (was public before)
- ModelInterface now inherits EntityInterface, DescribableInterface and StorableInterface
- Minor fixes
charcoal-core 0.3.1
- Fix usage of a deprecated method in charcoal-config 0.8 (getter() -> camelize())
charcoal-core 0.3
Major rewrite of query expressions (Filter, Order, Pagination); minor improvements for datasource repositories and data models.
Highlights:
- Added
AbstractExpression
andExpressionInterface
as new foundation forFilter
,Order
, andPagination
- Added
Expression
to be a dedicated class for raw SQL expressions (extended byFilter
andOrder
) - Added Expression Field
trait
andinterface
to unify "table" and "property" options forFilter
andOrder
expressions - Added
DatabaseExpressionInterface
as foundation forDatabaseFilter
,DatabaseOrder
, andDatabasePagination
- Added Filter Collection
trait
andinterface
for groupingFilter
expressions (used byAbstractSource
andFilter
for nesting expressions) - Added Order Collection
trait
andinterface
for groupingOrder
expressions (used byAbstractSource
) - Improved decision tree when compiling SQL for
DatabaseFilter
andDatabaseOrder
- Added support for serializing expressions
- Added support for named expressions
- Added "direction" option to
Order
- Refactored unit tests and improved coverage for
Charcoal\Source
- Improved
AbstractModel
andStorableTrait
to be leaner, less overriding - Cleanup DocBlocks for various classes
Warnings:
Filter
- Deprecated
string
option in favour ofcondition
- Deprecated
table_name
option in favour oftable
- Deprecated
val
option in favour ofvalue
- Removed
DEFAULT_FUNC
class constant - Moved
DEFAULT_TABLE_NAME
class constant toDatabaseSource::DEFAULT_TABLE_ALIAS
- Deprecated
Order
- Deprecated
string
option in favour ofcondition
- Deprecated
table_name
option in favour oftable
- Deprecated
Pagination
- Renamed
DEFAULT_NUM_PER_PAGE
class constant withDEFAULT_COUNT
- Renamed
DatabaseSource
- Renamed
DEFAULT_DB_TYPE
class constant toMYSQL_DRIVER_NAME
- Renamed
charcoal-core 0.2.11
Highlights:
- Update phpunit/phpunit from 4.8 to 5.7
- Require locomotivemtl/charcoal-property ~0.5
- Internal improvements to
AbstractModel
andModelInterface
including documentation
charcoal-core 0.2.10
Highlights:
- Minor cleanup of
AbstractModel::mergeData()
andAbstractModel::setFlatData()
- Cleanup PHP classes (simplified namespace imports, added class comment blocks, modified exception classes)
charcoal-core 0.2.9
Protect AbstractModel::serializedValue()
instead of privatize.
Allows subclasses to customize how data can be serialized. Useful when resolving how a nested model should behave.
charcoal-core 0.2.8
Improved CollectionLoader
and AbstractSource
.
Highlight:
- Added
addFilters()
andaddOrders()
to aforementioned classes.
charcoal-core 0.2.7
Highlight:
- Fixed Save/Update of model properties in
AbstractModel
- Fixed
ContainerIntegrationTrait
to persist the service container instance across unit tests - Fixed existing unit tests for the
Model
class