Releases: pinterest/PINCache
Releases · pinterest/PINCache
3.0.4
3.0.4 (2024-05-13)
- Add ability to configure maxConcurrentOperations #329 (andyfinnell)
- Add Least Frequently Used eviction strategy #328 (andyfinnell)
- Update project and installation methods (CocoaPods and Swift Package Manager) for Xcode 15 #327 (tstump-phunware)
3.0.3
Changelog
3.0.3 (2020-10-22)
- Update PINOperation to fix imports #293 (garrettmoon)
- Add support for automated releases #292 (garrettmoon)
- Fix up imports #290 (garrettmoon)
- Fix build issues by removing nested PINOperation.xcodeproj #282 (elliottwilliams)
Swift Package Manager Support
3.0.2 (2020-10-06)
Merged pull requests:
- Update checkout action #287 (garrettmoon)
- Use make commands on the CI so it actually fails #286 (garrettmoon)
- Added SPM support #283 (3a4oT)
- Fix PINCaching compiling in Xcode 12.0b6 (#275) #281 (sagesse-cn)
3.0! (technically 3.0.1)
This release contains breaking changes!
3.0 (actually 3.0.1) contains numerous enhancements and changes, most prominent:
- Fixes building with Xcode 12.
- Adds support for TTL (time to live caches).
- Numerous performance enhancements.
- Custom object serializer/deserializer.
- PINCaching protocol.
- Did we mention performance enhancements?
3.0.1 (2020-08-20)
Implemented enhancements:
Merged pull requests:
- Update PINOperation #277 (garrettmoon)
- Fix PINCacheTests compiling in Xcode 12.0b4 #276 (arangato)
- Remove BUCK files #274 (adlerj)
- Fix compiling in Xcode 12.0b4 #273 (zacwest)
- Fix the grammar in an assertion failure message #270 (jparise)
- Add Carthage for watchOS, fix macOS min deployment target version #269 (dreampiggy)
- Remove the unused CI directory #265 (jparise)
- Fix up analyze for github CI #264 (garrettmoon)
- Use correct class name in NSAssert() messages #263 (jparise)
- Check fileURL outside of the locked scope #262 (jparise)
- Remove Danger from the project #261 (jparise)
- Switch to GitHub Actions for CI #259 (jparise)
- Test that the "remove object" blocks are called #258 (jparise)
- Discrepancy between Header Comment and Implementation #trivial #257 (jlaws)
- Optimization
PINMemoryCache
trim to date #252 (kinarobin) - Optimize
PINMemoryCache
remove objects when receive memory warning notification #251 (kinarobin)
3.0.1 -- Beta 8
- [fix] Initing PINCache with TTL enabled should enable TTL on PINMemoryCache. #246
- [performance] Return TTL cache objects without waiting for all metadata to be read. #228
- [performance] Memory cache now performs some tasks such as trimming and removing experied objects with low priority. #234
3.0.1 -- Beta 7
- [fix] Fix up warnings and upgrade to PINOperation 1.1.1: #213
- [performance] Reduce locking churn in cleanup methods. #212
- [fix] Don't set file protection unless requested. #220
- [new] Add ability to set an object level TTL: #209
- [performance] Improve performance of age limit trimming: #224
3.0.1 -- Beta 6
- [fix] Add some sane limits to the disk cache: [#201]#201
- [new] Update enumeration methods to allow a stop flag to be flipped by caller: #204
- [performance] Improves cache miss performance by ~2 orders of magnitude on device: #202
- [performance] Significantly improve startup performance: #203
3.0.1 -- Beta 5
- [fix] Respect small byteLimit settings by checking object size in setObject: #198
- [new] Added an ability to set custom encoder/decoder for file names: #192
3.0.1-beta.4 (2017-02-16)
Merged pull requests:
- Sigh #174 (garrettmoon)
- Hopefully fixes building Carthage with --no-skip-binaries in PINRemot… #171 (garrettmoon)
- Add an analyze option in the makefile #170 (garrettmoon)
3.0.1-beta.3 (2017-02-10)
Merged pull requests:
- In which I painstakingly apply a patch Adlai created. #169 (garrettmoon)
- This is a temporary fix. Currently Carthage is required to build PINC… #168 (garrettmoon)
- Introduce PINCaching protocol #167 (maicki)
- Fix warnings due to changes of the designated initalizer #166 (maicki)
- Expose cache URL class method and allow specification of name prefix #163 (garrettmoon)
- Migrate to External PINOperation #160 (Adlai-Holler)
- Change the badge to build kite #159 (garrettmoon)
- Upgrade to 10.2 #158 (garrettmoon)
- Add support for buildkite. #157 (garrettmoon)
- Buck improvements #156 (nguyenhuy)
- Add a build script #154 (garrettmoon)
- Add the ability to set the maximum number of operations. #153 (garrettmoon)
- Support Buck build #152 (nguyenhuy)
- Support PINMemoryCache cost methods in PINCache #149 (msqr)
- Test that blocks are not retained after run on operation queue #147 (nguyenhuy)
- Address comments and improve PINCacheTests #146 (nguyenhuy)
- Support operation coallescing #141 (nguyenhuy)
3.0.1-beta.2 (2016-11-07)
Merged pull requests:
- Increase max operation count to 10 #140 (garrettmoon)
- Have sharedOperationQueue have at least 2 max operations. #139 (garrettmoon)
- Revert "Revert beta 2 in podspec until we're ready to publish." #138 (garrettmoon)
- Don't call the block if it's nil, duh. #132 (garrettmoon)
- Disable TTL commits until race conditions can be addressed. #131 (garrettmoon)
- Have Travis cache bundler and cocoapods deps #129 (jparise)
- Subspecs need to be valid on their own :/ #128 (garrettmoon)
- Adopt pin operation queue #127 (garrettmoon)
- Adds operation groups #125 (garrettmoon)
- Thread safety in tests #124 (garrettmoon)
- Add cancelAllOperations to PINOperationQueue #122 (maicki)
- Add...
Modernization
Per object TTL and performance fixes
3.0.1-beta.6
This release contains big performance gains to the disk cache!
3.0.1 Beta 5
Note this beta makes a slight API change, dropping support for a file extension in favor of a custom encoder / decoder for file names.
- [new] Added an ability to set custom encoder/decoder for file names: #192
3.0.1 Beta 4
- This beta includes a complete refactor of the project and the way the framework is built with Carthage.
3.0.1 Beta 3
This is beta 3 of 3.0.1 (a major release despite the minor version number)
- Includes a bunch of bug fixes!
- Improved Swift support
- Includes a rethinking of the API to explicitly call out asynchronous methods.
Full list of changes since last beta: 3.0.1-beta.2...3.0.1-beta.3