From 51da9b3b4744304fa5026b629444c4582caf50be Mon Sep 17 00:00:00 2001 From: rainy liu Date: Fri, 21 Jun 2024 10:51:46 +0800 Subject: [PATCH 1/3] fix setup --- bin/setup_commands.dart | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bin/setup_commands.dart b/bin/setup_commands.dart index c56fbfb5..c84b761e 100644 --- a/bin/setup_commands.dart +++ b/bin/setup_commands.dart @@ -9,6 +9,7 @@ import 'package:stack_trace/stack_trace.dart'; import 'package:yaml/yaml.dart'; const setupPkgName = "opencv_dart"; +const baseUrl = "https://github.com/rainyl/opencv_dart/releases/download"; abstract class BaseSetupCommand extends Command { @override @@ -38,7 +39,7 @@ abstract class BaseSetupCommand extends Command { extractPath ??= switch (os) { OS.windows => p.join(opencvRoot, "windows"), - OS.linux => p.join(opencvRoot, "windows"), + OS.linux => p.join(opencvRoot, "linux"), OS.android => p.join(opencvRoot, "android", "src", "main", "jniLibs", downArch), OS.macos => p.join(opencvRoot, "macos"), OS.ios => p.join(opencvRoot, "ios"), @@ -55,7 +56,7 @@ abstract class BaseSetupCommand extends Command { if (force || !saveFile.existsSync()) { if (!saveFile.parent.existsSync()) saveFile.parent.createSync(recursive: true); - final String url = "https://github.com/rainyl/opencv_dart/releases/download/v$version/$libTarName"; + final String url = "$baseUrl/v$version/$libTarName"; print(asInfo("Downloading $url")); try { final request = await HttpClient().getUrl(Uri.parse(url)); From bd01c30d8bfdd4a201a0843ef4ce3940899cdeb6 Mon Sep 17 00:00:00 2001 From: rainy liu Date: Fri, 21 Jun 2024 15:18:28 +0800 Subject: [PATCH 2/3] bump version to 1.0.10+1 --- CHANGELOG.md | 4 ++++ bin/setup_commands.dart | 5 +---- pubspec.yaml | 4 +--- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9aa6b167..84398fb9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.10+1 + +- Fix: setup commands error on linux + ## 1.0.10 - Fix: memory leak caused by cvstatus diff --git a/bin/setup_commands.dart b/bin/setup_commands.dart index c84b761e..d349cbb3 100644 --- a/bin/setup_commands.dart +++ b/bin/setup_commands.dart @@ -6,7 +6,6 @@ import 'package:archive/archive_io.dart'; import 'package:args/command_runner.dart'; import 'package:path/path.dart' as p; import 'package:stack_trace/stack_trace.dart'; -import 'package:yaml/yaml.dart'; const setupPkgName = "opencv_dart"; const baseUrl = "https://github.com/rainyl/opencv_dart/releases/download"; @@ -32,9 +31,7 @@ abstract class BaseSetupCommand extends Command { final opencvRoot = pkgRoot; print(asInfo('Using package:$setupPkgName from $opencvRoot')); - final doc = loadYaml(File(p.join(opencvRoot, "pubspec.yaml")).readAsStringSync()); - // ignore: avoid_dynamic_calls - final String version = doc["binary_version"] as String; + final String version = File(p.join(opencvRoot, "binary.version")).readAsStringSync(); final libTarName = "libopencv_dart-$os-$downArch.tar.gz"; extractPath ??= switch (os) { diff --git a/pubspec.yaml b/pubspec.yaml index b8c95e72..e50292e0 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,6 @@ name: opencv_dart description: "OpenCV4 bindings for Dart language and Flutter, using dart:ffi. The most complete OpenCV bindings for Dart!" -version: 1.0.10 -binary_version: 1.0.10 +version: 1.0.10+1 homepage: https://github.com/rainyl/opencv_dart environment: @@ -14,7 +13,6 @@ dependencies: plugin_platform_interface: ^2.1.8 ffi: ^2.1.0 equatable: ^2.0.5 - yaml: ^3.1.2 path: ^1.9.0 args: ^2.5.0 archive: ^3.5.1 From 74660ed67ab51248c8cc3cc7dbb3aaaac1ec1136 Mon Sep 17 00:00:00 2001 From: rainy liu Date: Fri, 21 Jun 2024 15:30:59 +0800 Subject: [PATCH 3/3] fix build --- conanfile.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/conanfile.py b/conanfile.py index b651109e..fe35a5a8 100644 --- a/conanfile.py +++ b/conanfile.py @@ -5,7 +5,6 @@ import conan.tools.files as cfiles import tarfile from pathlib import Path -import yaml OPENCV_VERSION = "4.10.0+2" OPENCV_FILES_URL = ( @@ -61,10 +60,10 @@ class OcvDartDesktop(ConanFile): def __init__(self, display_name=""): super().__init__(display_name) - pubspec = Path(str(self.options.get_safe("package_root", "."))) / "pubspec.yaml" - with open(pubspec, "r") as f: - doc = yaml.safe_load(f) - self.version = doc["binary_version"] + version_file = Path(str(self.options.get_safe("package_root", "."))) / "binary.version" + with open(version_file, "r") as f: + binary_version = f.read() + self.version = binary_version def requirements(self): out_dir = os.path.abspath(str(self.options.get_safe("output_dir")))