- deps: bump rekapager to 0.19
- feat: php 8.4 compatibility
- deps: bump rekapager
- deps: bump rekapager to 0.17
- fix:
PrecountingStrategy
now accepts null as the underlying data
- docs: update readme
- feat: offset pagination support
- fix(orm):
getQueryBuilder()
now clones the query builder - feat(orm): add
withQueryBuilder()
- build: add rector
- chore: add
Override
where applicable - build: update release target
- deps: update rekapager to 0.14
- fix: static analysis problem with assignment of empty
ArrayCollection
to typed properties - feat(orm): make
getQueryBuilder()
public - feat(orm): add
updateQueryBuilder()
- feat: add
ArrayCollection
that doesmatching()
calls against the private properties, not indirectly through the getters. - refactor: move count strategy resolver to
CountStrategyUtil
- refactor: use standard constructor for repositories, scrap the configuration
- refactor: consolidate util classes
- feat: default indexBy
- feat: repositories now automatically detect indexBy
- refactor:
CriteriaPageable
,CriteriaRecollection
,MinimalCriteriaRecollection
now respect default order by - refactor: consistent argument ordering
- feat: repository now accept
ManagerRegistry
instead ofEntityManagerInterface
- feat: default items per page
- feat: different default count strategies for full & minimal classes
- chore: cleanup typehints
- refactor: change
KeyTransformer
to instance object, not static class
- feat:
$key
parameter type widening, to accommodate object primary keys, like UUIDs. - chore: rename
FindFetchTrait
toFetchTrait
- chore: add
Override
attribute where applicable - chore: cleanup unused code
- refactor: rename
QueryCollection
toQueryRecollection
- feat: default count limits
- refactor: remove
Countable
from minimal classes - refactor: rename
RestrictedCountStrategy
toDisabledCountStrategy
- feat:
$offset
parameter type widening forArrayAccess
methods - fix(
DefaultKeyTransformer
): only convertStringable
to string for now. - feat: add
UuidKeyTransformer
- refactor(
Repository
): rename DX methods
- refactor: remove
RefreshableCount
interface - refactor:
MinimalReadableRecollection
now extendsCountable
- refactor: cleanup count traits
- refactor: refactor counting, change default strategy to
ConditionalDelegatedCountStrategy
- refactor: add
PageableRecollection
- fix: add
instanceId
tocreateCriteriaPageable
- feat: add
createCriteria()
convenience method
- feat: add
find()
andfetch()
methods, removegetOrFail()
- fix: fix various problems with criteria recollections
- feat: add several DX methods
- feat: add
createCriteriaPageable
DX method
- refactor: refactor counting strategy
- fix: use closure for counting, defer counting until it is asked
- refactor: refresh count
- refactor: reorganize exceptions
- feat: add
fetch()
- feat: add
QueryPageable
- feat: repository interfaces
- refactor: rename
createFrom()
towith()
- refactor: rename the term 'safe' to 'large'
- refactor(
RecollectionDecorator
): renamewithCriteria
toapplyCriteria
- refactor: rename the term 'large' to 'basic'
- cleanup: Basic classes do not require soft and hard limits
- cleanup: orderBy should be non-empty-array
- feat: initial version of basic repository
- refactor: consolidate repeated orderBy logic to
OrderByUtil
- refactor: use
configure()
method for subclasses to configure the repository - test: rearrange test directories
- feat: add 404 status code to
NotFoundException
- test: add skeleton tests using Symfony framework
- fix(
BasicRepository
):remove()
should beremoveElement()
- feat(
BasicRepository
): addremove()
method - test: add basic repository test
- refactor(
AbstractBasicRepository
): change configuration method - test: add phpunit and PSR support in static analyses
- deps: update rekapager to 0.12.0
- deps: add debug bundle
- refactor: move
refreshCount
to its own interface - refactor: rename
getReference
toreference
- refactor: rename the term 'basic' to 'minimal'
- test: refactor tests
- fix: make sure all objects support indexBy
- feat: instance caching for collection decorators
- fix: should be static instead of self for instantiation in decorators
- feat: instance caching for criteria recollections
- test: criteria recollection
- refactor: rename basic repository to minimal repository
- fix: repository slice now use QueryBuilder setMaxResults and setFirstResult
- test: reorganize
- feat: add
SafePageableCollection
andSafeReadablePageableCollection
- refactor: rename interface & classes
- fix: add covariance to applicable interfaces
- feat: detect extra lazy collections
- deps: update rekapager to 0.11.2
- build: fix CI on lowest deps
- fix: disable extra lazy detection for now
- chore: remove strict in favor of safe classes