@@ -10,6 +10,74 @@ The format is based on [Keep a Changelog][], and this project adheres to [Semant
1010[ Keep a Changelog ] : https://keepachangelog.com/en/1.1.0/
1111[ Semantic Versioning ] : https://semver.org/spec/v2.0.0.html
1212
13+ ## [ v0.99.51] - 2024-09-17
14+
15+ ### Added
16+
17+ #### ` Curler `
18+
19+ - Add ` Curler ` method ` alwaysPaginates() `
20+
21+ #### ` PHPStan `
22+
23+ - Add ` TypesAssignedByHasMutatorRule ` to check property changes made by ` HasMutator ` (previously ` HasImmutableProperties ` )
24+
25+ #### ` Sync `
26+
27+ - Add ` HttpSyncProvider::getAlwaysPaginate() ` method
28+ - Add ` $alwaysPaginate ` parameter to ` HttpSyncProvider::getCurler() `
29+ - Add ` HttpSyncDefinition::$AlwaysPaginate ` property
30+ - Add ` $alwaysPaginate ` parameter to ` HttpSyncDefinition::withPager() ` for consistency with the equivalent ` Curler ` method
31+
32+ ### Changed
33+
34+ #### ` Console `
35+
36+ - In ` ConsoleTagFormats ` :
37+ - Implement ` Immutable `
38+ - Rename ` set() ` to ` withFormat() ` and return a copy
39+ - Rename ` get() ` to ` getFormat() `
40+ - Extend ` Immutable ` from ` ConsoleFormatterInterface `
41+
42+ #### ` Core `
43+
44+ - In ` HasImmutableProperties ` , require implementation of ` Immutable `
45+ - Rename ` HasImmutableProperties ` to ` HasMutator `
46+ - Rename ` HasMutator::withPropertyValue() ` to ` with() `
47+ - Rename ` HasMutator::withoutProperty() ` to ` without() `
48+ - Make ` HasMutator ` methods private for better safety by default
49+
50+ #### ` Curler `
51+
52+ - Accept and return request objects in ` Curler ` method ` replaceQuery() `
53+ - Don't extend ` CurlerPageRequestInterface ` from ` CurlerPageInterface `
54+ - Reinstate ` CurlerPageInterface ` methods ` hasNextRequest() ` and ` getNextRequest() `
55+ - Allow ` CurlerPageInterface::getNextRequest() ` to return ` CurlerPageRequestInterface ` for consistency with ` CurlerPagerInterface::getFirstRequest() `
56+ - Add ` TPage ` template to ` CurlerPagerInterface::getPage() `
57+ - Rename ` CurlerPageRequestInterface::getNextRequest() ` to ` getRequest() `
58+ - Rename ` CurlerPageRequestInterface::getNextQuery() ` to ` getQuery() `
59+ - Extend ` Immutable ` from ` CurlerInterface `
60+
61+ #### ` Http `
62+
63+ - Accept and return request objects in ` Http::mergeQuery() ` and ` Http::replaceQuery() `
64+
65+ ### Removed
66+
67+ #### ` Core `
68+
69+ - Remove ` HasMutator::clone() ` (previously ` HasImmutableProperties::clone() ` )
70+
71+ #### ` Curler `
72+
73+ - Remove ` CurlerPageRequestInterface::hasNextRequest() `
74+
75+ ### Fixed
76+
77+ #### ` Sync `
78+
79+ - Fix incorrect documentation that indicates ` HttpSyncProvider::getCurler() ` arguments take precedence over ` HttpSyncProvider::filterCurler() `
80+
1381## [ v0.99.50] - 2024-09-11
1482
1583### Changed
@@ -3506,6 +3574,7 @@ This is the final release of `lkrms/util`. It is moving to [Salient](https://git
35063574
35073575- Allow `CliOption` value names to contain arbitrary characters
35083576
3577+ [v0.99.51]: https://github.com/salient-labs/toolkit/compare/v0.99.50...v0.99.51
35093578[v0.99.50]: https://github.com/salient-labs/toolkit/compare/v0.99.49...v0.99.50
35103579[v0.99.49]: https://github.com/salient-labs/toolkit/compare/v0.99.48...v0.99.49
35113580[v0.99.48]: https://github.com/salient-labs/toolkit/compare/v0.99.47...v0.99.48
0 commit comments