Releases: iabudiab/ObjectiveRocks
Releases · iabudiab/ObjectiveRocks
ObjectiveRocks 0.11.0
Released on 2020.01.08
- Improve
ColumnFamilyOptions
by @jurmous in PR #19- Add
compactionStyle
setting - Change
maxBytesForLevelMultiplier
to a double to match internal type - Add missing
level0FileNumCompactionTrigger
implementation
- Add
- Expand
WriteOptions
withnoSlowdown
andlowPriority
options by @jurmous in PR #21 - Expand
RocksDBIterator
withseekForPrev
andstatus
methods by @jurmous in PR #22 - Expand
CompactRangeOptions
by @jurmous in PR #25allowWriteStall
,maxSubcompactions
,targetPathId
,exclusiveManualCompaction
- Removed redundant mem-copy in Iterator and improved release semantics in
enumerate
methods by @myeyesareblind in PRs #27 & #28 - Fix
bottommostLevelCompaction
switch statement by @jurmous in PR #20
ObjectiveRocks 0.10.0
Released on 2019.09.29
- Updated to RocksDB
6.2.4
: facebook/rocksdb@76a56d8
ObjectiveRocks 0.9.0
Released on 2017.05.25
- RocksDB Version:
5.13.1
: facebook/rocksdb@c60df9d
Added
-
CocoaPods integration
- Spec & Scripts by @rob-keepsafe in #9
-
RocksDB
isClosed
method to check if the database instance is still open.- Added by @rob-keepsafe in #11
Updated
- Project settings to Xcode9
- Tests to Swift4 syntax
ObjectiveRocks 0.8.0
Released on 2017.07.13
- RocksDB Version:
5.4.6
: facebook/rocksdb@6e05979
Updated
- Updated Column Family options:
uint32_t memtablePrefixBloomProbes
~>double memtablePrefixBloomSizeRatio
size_t memtablePrefixBloomHugePageTlbSize
~>size_t memtableHugePageTlbSize
- Updated Statistics tickers and histograms
ObjectiveRocks 0.7.0
Released on 2017.02.19
- RocksDB Version:
4.6.1
: facebook/rocksdb@8d7926a
Added
- Missing nullability annotations and light-weight generics throughout code base
- New playground content
Updated
- Project for Xcode 8
- Swift tests for Swift 3
- Playground contents and syntax for Swift 3
- Travis config for iOS 10.2, macOS 10.12
- Deployment targets to macOS 10.10, iOS 9.0
Removed
- Removed the deprecated
timeoutHint
option - Removed the deprecated
maxMemCompactionLevel
option
Breaking Changes
The built-in encoding/decoding of keys and values via the encoding options is completelty removed from this release. The API is completely NSData
-based now.
- Removed built-it Key/Value
Encoders
andDecoders
- The conversions of custom types to/from
NSData
is the responsibility of the caller
- The conversions of custom types to/from
- Removed
EncodingOptions
- Removed all methods depending on
EncodingOptions
and the built-in key/valueencoding
and all of the their variants:setObject:forKey:
deleteObjectForKey:
objectForKey:
mergeObject:forKey:
mergeOperation:forKey:
- Refactored all
Iterator
,Key Comparator
andMerge Operator
methods accordingly - Removed
NSNumber
Key-Comparators - Rename method for setting up default read & write options from
setDefaultReadOptions:andWriteOptions:
tosetDefaultReadOptions:writeOptions:
- The custom Swift equivalent is
setDefault(readOptions:writeOptions:)
- The custom Swift equivalent is
ObjectiveRocks 0.6.1
Released on 2016.06.12
- RocksDB Version:
4.6.1
: facebook/rocksdb@8d7926a
Removed
- CocoaPods badges from README for now
- Due to the way "pod lib lint" works locally, the pod cannot be validated and pushed to the trunk, although the Pod works just fine when referenced directly in the Podfile, e.g.:
pod "ObjectiveRocks", :git => "https://github.com/iabudiab/ObjectiveRocks.git", :tag => '0.6.0', :submodules => true
ObjectiveRocks 0.6.0
Released on 2016.06.12
- RocksDB Version:
4.6.1
: facebook/rocksdb@8d7926a
Added
- Support for opening the database in read-only mode
- Support for
Write Batch with Index
andWrite Batch Iterator
- Support for
Range Compaction
operations - Nullability annotations
- Better compatibility with Swift
- New statistics and counters
- Cocoapods Podspec
- Travis integration
Breaking Changes
- RocksDB initializers were changed to class instead of instance methods
- Removed RocksDB methods without error parameter
- Better compatibility with Swift's error-handling model
- Redundancy
- Refactored all RocksDB methods so that the error parameter is the last
- Better compatibility with Swift's error-handling model
- Removed
Column Family Metadata
from iOS target RocksDBIteratorKeyRange
is refactored toRocksDBKeyRange
- Key ranges are used not only for iterations but also for compaction jobs
- Empty-range constant is refactored to open-range, since it represents a range containing all the keys
- ObjectiveRocks builds frameworks now instead of static libraries
ObjectiveRocks 0.5.0
Released on 2016.07.30
- RocksDB Version:
3.11
: facebook/rocksdb@812c461
Added
- Source code documentation
Removed
- Removed
+ (instancetype)LRUCacheWithCapacity:numShardsBits:removeScanCountLimit:
RocksDB Cache initializer- No longer available since: facebook/rocksdb@c88ff4c
ObjectiveRocks 0.4.0
Released on 2015.01.17
- RocksDB Version:
3.9
: facebook/rocksdb@b89d58d
All headers are refactored in this release to provide a pure Objective-C interface for Swift compatibility.
Added
- Basic support for RocksDB
Env
for configuring priority thread pools - Support for querying the
Threads Status
- Options for
Background Compactions
andBackground Flushes
- Iterator methods for key-value iteration
- Support for Column Family Metadata
- Swift tests
Fixed
- Typo in method name in Filter Policy class
- Typo in method name to retrieve column families in RocksDB class
Changed
- Updated
Thread Status
API- Adapted according to the changes introduces in: facebook/rocksdb@bf287b7
ObjectiveRocks 0.3.0
Released on 2015.01.05
- RocksDB Version:
3.9
: facebook/rocksdb@a801c1f
This is the first public release of ObjectiveRocks.
Added
- Database backup and backup-info support
- Database
Checkpoints
- Support for collecting database statistics, histograms and properties
- Column Family options
- Support for Column Family
memtable rep
factories - Support for
Block-based
,Plain-Table
andCuckoo-Table
factories - Support for RocksDB
Cache
- Support for RocksDB
Filter Policy