diff --git a/flutter/CHANGELOG.md b/flutter/CHANGELOG.md index a26dcaff..ffc61260 100644 --- a/flutter/CHANGELOG.md +++ b/flutter/CHANGELOG.md @@ -1,4 +1,25 @@ # MMKV for Flutter Change Log +## v1.3.2 / 2023-11-20 +Among most of the features added in this version, the credit goes to @kaitian521. + +* Add the feature of customizing the **initial file size** of an MMKV instance. +* **Optimize write speed** when there's only one key inside MMKV, the new key is the same as the old one, and MMKV is in `SINGLE_PROCESS_MODE`. +* **Optimize write speed** by overriding from the beginning of the file instead of append in the back, when there's zero key inside MMKV, and MMKV is in `SINGLE_PROCESS_MODE`. +* Add the feature of `clearAll()` with keeping file disk space unchanged, **reducing the need to expand file size** on later insert & update operations. This feature is off by default, you will have to call it with relative params or newly added methods. +* Add the feature of **comparing values before setting/encoding** on the same key. +* Fix a potential bug that the MMKV file will be invalid state after a successful expansion but a failure `zeroFill()`, will lead to a crash. +* Fix a potential crash due to other module/static lib turn-off **RTTI**, which will cause MMKV to fail to catch `std::exception`. +* Fix several potential crash due to the MMKV file not being valid. +* Android: Use the `-O2` optimization level by default, which will **reduce native lib size** and improve read/write speed a little bit. +* Android: Experimantal use `@fastNative` annotation on `enableCompareBeforeCompare()` to speed up JNI call. +* Turn-off mlock() protection in background on iOS 13+. We have **verified it on WeChat** that the protection is no longer needed from at least iOS 13. Maybe iOS 12 or older is also not needed, but we don't have the chance to verify that because WeChat no longer supports iOS 12. + +#### Known Issue +* On Xcode 15 build, App will crash on iOS 14 and below. The bug is introduced by Apple's new linker. The official solutions provided by Apple are either: + * Drop the support of iOS 14. + * Add `-Wl,-weak_reference_mismatches,weak` or `-Wl,-ld_classic` options to the `OTHER_LDFLAGS` build setting of Xcode 15. Note that these options are **not recognized** by older versions of Xcode. + * Use older versions of Xcode, or **wait for Xcode 15.2**. + ## v1.3.1 / 2023-8-11 This is a hotfix version. It's **highly recommended** that v1.2.16 & v1.3.0 users upgrade as soon as possible. * Fix a critical bug that might cause multi-process MMKV corrupt. This bug was introduced in v1.2.16. diff --git a/flutter/example/ios/Podfile.lock b/flutter/example/ios/Podfile.lock index 4f141515..e69d8b81 100644 --- a/flutter/example/ios/Podfile.lock +++ b/flutter/example/ios/Podfile.lock @@ -1,11 +1,11 @@ PODS: - Flutter (1.0.0) - - MMKV (1.3.1): - - MMKVCore (~> 1.3.1) - - MMKVCore (1.3.1) - - mmkvflutter (1.3.1): + - MMKV (1.3.2): + - MMKVCore (~> 1.3.2) + - MMKVCore (1.3.2) + - mmkvflutter (1.3.2): - Flutter - - MMKV (>= 1.3.1) + - MMKV (>= 1.3.2) - path_provider_foundation (0.0.1): - Flutter - FlutterMacOS @@ -30,9 +30,9 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 - MMKV: 5a07930c70c70b86cd87761a42c8f3836fb681d7 - MMKVCore: e50135dbd33235b6ab390635991bab437ab873c0 - mmkvflutter: a321a78260e9c370a4c79b02c35bfb58c0e18592 + MMKV: f21593c0af4b3f2a0ceb8f820f28bb639ea22bb7 + MMKVCore: 31b4cb83f8266467eef20a35b6d78e409a11060d + mmkvflutter: 7261b5107a5d2c0ecfcefb6e80f3ac5d56372a3a path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 PODFILE CHECKSUM: 751e522a1d35e86af4f588d982f4a515941611c5 diff --git a/flutter/example/pubspec.lock b/flutter/example/pubspec.lock index 5db3ba3e..3e83c379 100644 --- a/flutter/example/pubspec.lock +++ b/flutter/example/pubspec.lock @@ -105,7 +105,7 @@ packages: path: ".." relative: true source: path - version: "1.3.1" + version: "1.3.2" path: dependency: transitive description: