From 32fb64f94fc6cbd328c54ca734457d0cdff9958f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kasper=20Overg=C3=A5rd=20Nielsen?= Date: Sat, 17 Dec 2022 15:13:50 +0100 Subject: [PATCH 1/5] Rip-out vcpkg (use openssl + zlib prebuilds instead) --- .github/workflows/build-native.yml | 20 -------------- CMakePresets.json | 43 +++++++++++------------------- lib/src/native/realm_bindings.dart | 17 ++++++++++++ src/realm-core | 2 +- 4 files changed, 33 insertions(+), 49 deletions(-) diff --git a/.github/workflows/build-native.yml b/.github/workflows/build-native.yml index 6ebe49268..aa1a2c089 100644 --- a/.github/workflows/build-native.yml +++ b/.github/workflows/build-native.yml @@ -43,26 +43,6 @@ jobs: if: contains(github.head_ref, 'release/') || steps.check-cache.outputs.cache-hit != 'true' uses: seanmiddleditch/gha-setup-ninja@1815f2d05c2cd60c2d900f89843139b8dde09f4c - - name: Get vcpkg submodule commit sha - id: vcpkg_cache_key - if: contains(github.head_ref, 'release/') || steps.check-cache.outputs.cache-hit != 'true' - working-directory: src/realm-core/tools/vcpkg/ports - shell: bash - run: echo "commit=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT - - - name: Setup Vcpkg - if: contains(github.head_ref, 'release/') || steps.check-cache.outputs.cache-hit != 'true' - continue-on-error: true - uses: friendlyanon/setup-vcpkg@v1 - with: - path: src/realm-core/tools/vcpkg/ports - cache-key: vcpkg-${{ matrix.build }}-${{ steps.vcpkg_cache_key.outputs.commit }}-${{ hashFiles('./src/realm-core/tools/vcpkg/vcpkg.json') }} - cache-restore-keys: vcpkg-${{ matrix.build }}-${{ steps.vcpkg_cache_key.outputs.commit }}- - - - name: Refetch Vcpkg - run: git fetch --unshallow - working-directory: ./src/realm-core/tools/vcpkg/ports - - name: Setup Android NDK if: startsWith(matrix.build, 'android-') run: echo "ANDROID_NDK=$ANDROID_NDK_LATEST_HOME" >> $GITHUB_ENV diff --git a/CMakePresets.json b/CMakePresets.json index 1b1ee55e8..854c08cfc 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -1,18 +1,16 @@ { - "version": 3, - "cmakeMinimumRequired": { - "major": 3, - "minor": 21, - "patch": 0 - }, + "version": 3, + "cmakeMinimumRequired": { + "major": 3, + "minor": 21, + "patch": 0 + }, "configurePresets": [ { "name": "default", "binaryDir": "${sourceDir}/build-native/${presetName}", "generator": "Ninja Multi-Config", "cacheVariables": { - "VCPKG_OVERLAY_TRIPLETS": "${sourceDir}/src/realm-core/tools/vcpkg/triplets", - "VCPKG_MANIFEST_DIR": "${sourceDir}/src/realm-core/tools/vcpkg", "CMAKE_CONFIGURATION_TYPES": "Debug;Release;RelWithDebInfo;MinSizeRel" } }, @@ -30,10 +28,6 @@ "name": "windows", "inherits": "default", "generator": "Visual Studio 17 2022", - "toolchainFile": "${sourceDir}/src/realm-core/tools/vcpkg/ports/scripts/buildsystems/vcpkg.cmake", - "cacheVariables": { - "VCPKG_TARGET_TRIPLET": "x64-windows-static" - }, "condition": { "lhs": "${hostSystemName}", "type": "equals", @@ -86,8 +80,7 @@ }, "cacheVariables": { "CMAKE_SYSTEM_NAME": "Android", - "CMAKE_ANDROID_NDK": "$env{ANDROID_NDK}", - "VCPKG_TARGET_TRIPLET": "$env{vcpkg_arch}-android" + "CMAKE_ANDROID_NDK": "$env{ANDROID_NDK}" }, "environment": { "ANDROID_NDK_HOME": "$env{ANDROID_NDK}" @@ -99,9 +92,6 @@ "inherits": "android", "cacheVariables": { "CMAKE_ANDROID_ARCH_ABI": "x86" - }, - "environment": { - "vcpkg_arch": "x86" } }, { @@ -110,9 +100,6 @@ "inherits": "android", "cacheVariables": { "CMAKE_ANDROID_ARCH_ABI": "x86_64" - }, - "environment": { - "vcpkg_arch": "x64" } }, { @@ -121,9 +108,6 @@ "inherits": "android", "cacheVariables": { "CMAKE_ANDROID_ARCH_ABI": "armeabi-v7a" - }, - "environment": { - "vcpkg_arch": "arm" } }, { @@ -132,9 +116,6 @@ "inherits": "android", "cacheVariables": { "CMAKE_ANDROID_ARCH_ABI": "arm64-v8a" - }, - "environment": { - "vcpkg_arch": "arm64" } } ], @@ -184,7 +165,10 @@ "name": "macos", "displayName": "macOS", "configurePreset": "macos", - "nativeToolOptions": [ "-destination", "platform=macOS" ], + "nativeToolOptions": [ + "-destination", + "platform=macOS" + ], "configuration": "Debug" }, { @@ -192,7 +176,10 @@ "hidden": true, "inherits": "default", "configurePreset": "ios", - "nativeToolOptions": [ "-destination", "$env{xcode_destination}" ] + "nativeToolOptions": [ + "-destination", + "$env{xcode_destination}" + ] }, { "name": "ios-device", diff --git a/lib/src/native/realm_bindings.dart b/lib/src/native/realm_bindings.dart index 411a5990b..392ec537b 100644 --- a/lib/src/native/realm_bindings.dart +++ b/lib/src/native/realm_bindings.dart @@ -11095,6 +11095,12 @@ class realm_sync_error extends ffi.Struct { @ffi.Size() external int user_info_length; + + external ffi.Pointer + compensating_writes; + + @ffi.Size() + external int compensating_writes_length; } abstract class realm_sync_error_action { @@ -11132,6 +11138,17 @@ class realm_sync_error_code extends ffi.Struct { } typedef realm_sync_error_code_t = realm_sync_error_code; + +class realm_sync_error_compensating_write_info extends ffi.Struct { + external ffi.Pointer reason; + + external ffi.Pointer object_name; + + external realm_value_t primary_key; +} + +typedef realm_sync_error_compensating_write_info_t + = realm_sync_error_compensating_write_info; typedef realm_sync_error_handler_func_t = ffi.Pointer< ffi.NativeFunction< ffi.Void Function(ffi.Pointer, diff --git a/src/realm-core b/src/realm-core index ce2fc5eac..b4d45f32c 160000 --- a/src/realm-core +++ b/src/realm-core @@ -1 +1 @@ -Subproject commit ce2fc5eac8ae4c65fb0a8c067f1704fab5f286ef +Subproject commit b4d45f32c3ec9728548d843311bebd8562ca44d7 From c4b1ca03b7205c0fb19f40262ad5bea6dbe755a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kasper=20Overg=C3=A5rd=20Nielsen?= Date: Mon, 19 Dec 2022 09:40:44 +0100 Subject: [PATCH 2/5] Fix windows build --- CMakePresets.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CMakePresets.json b/CMakePresets.json index 854c08cfc..fe2eed132 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -32,6 +32,9 @@ "lhs": "${hostSystemName}", "type": "equals", "rhs": "Windows" + }, + "cacheVariables": { + "CMAKE_GENERATOR_PLATFORM": "Win32" } }, { From 5da3ff4ab3cbea1111e96106f8afa0c7744f8865 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kasper=20Overg=C3=A5rd=20Nielsen?= Date: Mon, 19 Dec 2022 09:40:56 +0100 Subject: [PATCH 3/5] Update CHANGELOG --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4c800e581..85be355fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,7 @@ ### Internal * Using Core 13.1.2. +* No longer use vcpkg ([]()) ## 0.8.0+rc (2022-11-14) From 65780f55a9cf76b6a1612b7e6d9ccfc53b601b49 Mon Sep 17 00:00:00 2001 From: Yavor Georgiev Date: Mon, 19 Dec 2022 18:38:25 +0100 Subject: [PATCH 4/5] Update CMakePresets.json --- CMakePresets.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/CMakePresets.json b/CMakePresets.json index fe2eed132..72414c218 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -28,13 +28,11 @@ "name": "windows", "inherits": "default", "generator": "Visual Studio 17 2022", + "architecture": "x64", "condition": { "lhs": "${hostSystemName}", "type": "equals", "rhs": "Windows" - }, - "cacheVariables": { - "CMAKE_GENERATOR_PLATFORM": "Win32" } }, { From 6173cd780161f3cb3feeed1a85197a5e9fc4c77e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kasper=20Overg=C3=A5rd=20Nielsen?= Date: Mon, 19 Dec 2022 19:48:07 +0100 Subject: [PATCH 5/5] Update CHANGELOG --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 85be355fe..d6ca8a8b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,7 +35,7 @@ ### Internal * Using Core 13.1.2. -* No longer use vcpkg ([]()) +* No longer use vcpkg ([#1069](https://github.com/realm/realm-dart/pull/1069)) ## 0.8.0+rc (2022-11-14)