Skip to content

Commit bcddecc

Browse files
authored
Merge pull request #145 from objectbox/async-and-isolates
Async callbacks & multi-isolate store access
2 parents 7babaca + 035441a commit bcddecc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+1745
-419
lines changed

.github/workflows/dart.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,8 @@ jobs:
2626
- macos-10.15
2727
- ubuntu-20.04
2828
dart:
29-
- 2.10.5
30-
# - 2.9.3 - generator stuck. I remember there was an issue in some dependency but don't remember which one.
31-
- 2.8.4
32-
- 2.7.2
29+
- latest
30+
- 2.10.0 # currently the lowest fully supported version (i.e. generator + lib)
3331
runs-on: ${{ matrix.os }}
3432
steps:
3533
# Note: dart-sdk from flutter doesn't work on linux, see https://github.com/flutter/flutter/issues/74599

benchmark/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: objectbox_benchmark
22
description: Simple ObjectBox-Dart performance benchmark
33

44
environment:
5-
sdk: ">=2.6.0 <3.0.0"
5+
sdk: ">=2.10.0 <3.0.0"
66

77
dependencies:
88
objectbox: any

flutter_libs/android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@ android {
1212

1313
dependencies {
1414
// https://bintray.com/objectbox/objectbox/io.objectbox%3Aobjectbox-android
15-
implementation "io.objectbox:objectbox-android:2.8.0"
15+
implementation "io.objectbox:objectbox-android:2.9.0"
1616
}

flutter_libs/ios/download-framework.sh

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@ set -euo pipefail
44
# NOTE: run this script before publishing
55

66
# https://github.com/objectbox/objectbox-swift/releases/
7-
obxSwiftVersion="1.4.1"
7+
obxSwiftVersion="1.5.0-beta1"
88

99
dir=$(dirname "$0")
1010

11-
url="https://github.com/objectbox/objectbox-swift/releases/download/v${obxSwiftVersion}/ObjectBox-framework-${obxSwiftVersion}.zip"
11+
url="https://github.com/objectbox/objectbox-swift-spec-staging/releases/download/v1.x/ObjectBox-xcframework-${obxSwiftVersion}.zip"
1212
zip="${dir}/fw.zip"
1313

1414
curl --location --fail --output "${zip}" "${url}"
1515

16+
frameworkPath=Carthage/Build/ObjectBox.xcframework/ios-arm64/ObjectBox.framework
17+
1618
rm -rf "${dir}/Carthage"
1719
unzip "${zip}" -d "${dir}" \
18-
"Carthage/Build/iOS/ObjectBox.framework/Headers/*" \
19-
"Carthage/Build/iOS/ObjectBox.framework/ObjectBox" \
20-
"Carthage/Build/iOS/ObjectBox.framework/Info.plist"
20+
"${frameworkPath}/Headers/*" \
21+
"${frameworkPath}/ObjectBox" \
22+
"${frameworkPath}/Info.plist"
2123

2224
rm "${zip}"

flutter_libs/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ homepage: https://objectbox.io
55
description: ObjectBox is a super-fast NoSQL ACID compliant object database. This package contains flutter runtime libraries for ObjectBox.
66

77
environment:
8-
sdk: ">=2.6.0 <3.0.0"
9-
flutter: ">=1.12.0 <2.0.0"
8+
sdk: ">=2.9.0 <3.0.0"
9+
flutter: ">=1.20.0 <2.0.0"
1010

1111
dependencies:
1212
# This is here just to ensure compatibility between objectbox-dart code and the libraries used

generator/integration-tests/shared-pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name: objectbox_generator_test
22

33
environment:
4-
sdk: ">=2.5.0 <3.0.0"
4+
sdk: ">=2.10.0 <3.0.0"
55

66
dependencies:
77
objectbox: any

generator/pubspec.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ homepage: https://objectbox.io
55
description: ObjectBox binding code generator - finds annotated entities and adds them to the ObjectBox DB model.
66

77
environment:
8-
sdk: ">=2.5.0 <3.0.0"
8+
# min SDK v2.10.0 (or Flutter v1.22) - there were breaking changes in the analyzer/resolver
9+
sdk: ">=2.10.0 <3.0.0"
910

1011
dependencies:
1112
objectbox: 0.11.0

install.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ set -eu
88
# * update lib/src/bindings/objectbox.h
99
# * execute pub run ffigen
1010
# * have a look at the changed files to see if some call sites need to be updated
11-
cLibVersion=0.11.0
11+
cLibVersion=0.12.0
1212
os=$(uname)
1313

1414
# if there's no tty this is probably part of a docker build - therefore we install the c-api explicitly

objectbox/CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
## latest
2+
3+
* Add `Store.reference` getter and `Store.fromReference()` factory - enabling access to store from multiple isolates.
4+
* Add `Store.subscribe<EntityType>()` and `Store.subscribe<EntityType>()` data change event streams.
5+
* Add multiple `SyncClient` event streams.
6+
* Update to objectbox-c v0.12.0
7+
* Update to objectbox-android v2.9.0
8+
* Update to objectbox-swift v1.5.0
9+
* Increase minimum SDK versions: Flutter v1.20 & Dart v2.9. Code generator already required Flutter v1.22 & Dart v2.10.
10+
111
## 0.11.0 (2021-02-01)
212

313
* Add `ToOne<>` class to wrap related entities. See examples for details.

objectbox/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ test: ## Test all targets
2020

2121
valgrind-test: ## Test all targets with valgrind
2222
pub run build_runner build
23-
../tool/valgrind.sh
23+
tool/valgrind.sh
2424

2525
integration-test: ## Execute integration tests
2626
cd example/flutter/objectbox_demo/ ; \

0 commit comments

Comments
 (0)