From 912fe6abcd7505147070be22ac60c3fdd7bc26ae Mon Sep 17 00:00:00 2001 From: charafau Date: Sat, 10 Aug 2024 00:51:53 +0900 Subject: [PATCH 1/7] add support for swift package manager for device info plugin --- .../device_info_plus/.gitignore | 1 + .../ios/device_info_plus.podspec | 6 ++--- .../.build/workspace-state.json | 11 ++++++++ .../contents.xcworkspacedata | 7 +++++ .../ios/device_info_plus/Package.swift | 27 +++++++++++++++++++ .../FPPDeviceInfoPlusPlugin.m | 2 +- .../device_info_plus/PrivacyInfo.xcprivacy | 14 ++++++++++ .../include/device_info_plus}/.gitkeep | 0 .../FPPDeviceInfoPlusPlugin.h | 0 9 files changed, 64 insertions(+), 4 deletions(-) create mode 100644 packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json create mode 100644 packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata create mode 100644 packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift rename packages/device_info_plus/device_info_plus/ios/{Classes => device_info_plus/Sources/device_info_plus}/FPPDeviceInfoPlusPlugin.m (97%) create mode 100644 packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/PrivacyInfo.xcprivacy rename packages/device_info_plus/device_info_plus/ios/{Assets => device_info_plus/Sources/device_info_plus/include/device_info_plus}/.gitkeep (100%) rename packages/device_info_plus/device_info_plus/ios/{Classes => device_info_plus/Sources/device_info_plus/include/device_info_plus}/FPPDeviceInfoPlusPlugin.h (100%) diff --git a/packages/device_info_plus/device_info_plus/.gitignore b/packages/device_info_plus/device_info_plus/.gitignore index 88ce490e47..c7d7206c9a 100644 --- a/packages/device_info_plus/device_info_plus/.gitignore +++ b/packages/device_info_plus/device_info_plus/.gitignore @@ -45,3 +45,4 @@ build/ .project .classpath .settings +!.gitkeep diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec b/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec index 26c5a39fe7..e7c0b00840 100644 --- a/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec @@ -14,11 +14,11 @@ Downloaded by pub (not CocoaPods). s.author = { 'Flutter Community Team' => 'authors@fluttercommunity.dev' } s.source = { :http => 'https://github.com/fluttercommunity/plus_plugins/tree/main/packages/device_info_plus' } s.documentation_url = 'https://pub.dev/packages/device_info_plus' - s.source_files = 'Classes/**/*' - s.public_header_files = 'Classes/**/*.h' + s.source_files = 'device_info_plus/Sources/device_info_plus/**/*.{h,m}' + s.public_header_files = 'device_info_plus/Sources/device_info_plus/include/**/*.h' s.dependency 'Flutter' s.platform = :ios, '12.0' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } - s.resource_bundles = {'device_info_plus_privacy' => ['PrivacyInfo.xcprivacy']} + s.resource_bundles = {'device_info_plus_privacy' => ['device_info_plus/Sources/device_info_plus/PrivacyInfo.xcprivacy']} end diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json b/packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json new file mode 100644 index 0000000000..71deae90f0 --- /dev/null +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json @@ -0,0 +1,11 @@ +{ + "object" : { + "artifacts" : [ + + ], + "dependencies" : [ + + ] + }, + "version" : 6 +} \ No newline at end of file diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000000..919434a625 --- /dev/null +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift new file mode 100644 index 0000000000..1d5925ca2f --- /dev/null +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift @@ -0,0 +1,27 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "device_info_plus", + platforms: [ + .iOS("12.0"), + ], + products: [ + .library(name: "device-info-plus", targets: ["device_info_plus"]) + ], + dependencies: [], + targets: [ + .target( + name: "device_info_plus", + dependencies: [], + resources: [ + .process("PrivacyInfo.xcprivacy"), + ], + cSettings: [ + .headerSearchPath("include/device_info_plus") + ] + ) + ] +) \ No newline at end of file diff --git a/packages/device_info_plus/device_info_plus/ios/Classes/FPPDeviceInfoPlusPlugin.m b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/FPPDeviceInfoPlusPlugin.m similarity index 97% rename from packages/device_info_plus/device_info_plus/ios/Classes/FPPDeviceInfoPlusPlugin.m rename to packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/FPPDeviceInfoPlusPlugin.m index dd85a0c6fe..889f4d3afd 100644 --- a/packages/device_info_plus/device_info_plus/ios/Classes/FPPDeviceInfoPlusPlugin.m +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/FPPDeviceInfoPlusPlugin.m @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#import "FPPDeviceInfoPlusPlugin.h" +#import "./include/device_info_plus/FPPDeviceInfoPlusPlugin.h" #import @implementation FPPDeviceInfoPlusPlugin diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/PrivacyInfo.xcprivacy b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/PrivacyInfo.xcprivacy new file mode 100644 index 0000000000..a34b7e2e60 --- /dev/null +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/device_info_plus/device_info_plus/ios/Assets/.gitkeep b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/include/device_info_plus/.gitkeep similarity index 100% rename from packages/device_info_plus/device_info_plus/ios/Assets/.gitkeep rename to packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/include/device_info_plus/.gitkeep diff --git a/packages/device_info_plus/device_info_plus/ios/Classes/FPPDeviceInfoPlusPlugin.h b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/include/device_info_plus/FPPDeviceInfoPlusPlugin.h similarity index 100% rename from packages/device_info_plus/device_info_plus/ios/Classes/FPPDeviceInfoPlusPlugin.h rename to packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/include/device_info_plus/FPPDeviceInfoPlusPlugin.h From f86a7b7fe82a8d58e10d09c585eb28388e1e1c0d Mon Sep 17 00:00:00 2001 From: charafau Date: Sat, 10 Aug 2024 00:58:12 +0900 Subject: [PATCH 2/7] remove redundant file --- .../device_info_plus/ios/PrivacyInfo.xcprivacy | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 packages/device_info_plus/device_info_plus/ios/PrivacyInfo.xcprivacy diff --git a/packages/device_info_plus/device_info_plus/ios/PrivacyInfo.xcprivacy b/packages/device_info_plus/device_info_plus/ios/PrivacyInfo.xcprivacy deleted file mode 100644 index a34b7e2e60..0000000000 --- a/packages/device_info_plus/device_info_plus/ios/PrivacyInfo.xcprivacy +++ /dev/null @@ -1,14 +0,0 @@ - - - - - NSPrivacyTrackingDomains - - NSPrivacyAccessedAPITypes - - NSPrivacyCollectedDataTypes - - NSPrivacyTracking - - - From 29f925a44b46bcf682eb76560943185b4e62a077 Mon Sep 17 00:00:00 2001 From: charafau Date: Sun, 11 Aug 2024 00:50:09 +0900 Subject: [PATCH 3/7] remove .build and .swiftpm from repository, remove gitkeep, update gitignore --- packages/device_info_plus/device_info_plus/.gitignore | 4 +++- .../ios/device_info_plus/.build/workspace-state.json | 11 ----------- .../package.xcworkspace/contents.xcworkspacedata | 7 ------- .../include/device_info_plus/.gitkeep | 0 4 files changed, 3 insertions(+), 19 deletions(-) delete mode 100644 packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json delete mode 100644 packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata delete mode 100644 packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/include/device_info_plus/.gitkeep diff --git a/packages/device_info_plus/device_info_plus/.gitignore b/packages/device_info_plus/device_info_plus/.gitignore index c7d7206c9a..ece9169b44 100644 --- a/packages/device_info_plus/device_info_plus/.gitignore +++ b/packages/device_info_plus/device_info_plus/.gitignore @@ -11,9 +11,11 @@ flutter_export_environment.sh examples/all_plugins/pubspec.yaml +.build/ Podfile Podfile.lock Pods/ +.swiftpm/ .symlinks/ **/Flutter/App.framework/ **/Flutter/ephemeral/ @@ -45,4 +47,4 @@ build/ .project .classpath .settings -!.gitkeep + diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json b/packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json deleted file mode 100644 index 71deae90f0..0000000000 --- a/packages/device_info_plus/device_info_plus/ios/device_info_plus/.build/workspace-state.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "object" : { - "artifacts" : [ - - ], - "dependencies" : [ - - ] - }, - "version" : 6 -} \ No newline at end of file diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a625..0000000000 --- a/packages/device_info_plus/device_info_plus/ios/device_info_plus/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/include/device_info_plus/.gitkeep b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Sources/device_info_plus/include/device_info_plus/.gitkeep deleted file mode 100644 index e69de29bb2..0000000000 From 33c7946aeb5ad3a8b2971f5b559dbc707df28b76 Mon Sep 17 00:00:00 2001 From: charafau Date: Sun, 11 Aug 2024 01:02:52 +0900 Subject: [PATCH 4/7] add spm support for macos --- .../macos/device_info_plus.podspec | 4 ++-- .../macos/device_info_plus/Package.swift | 23 +++++++++++++++++++ .../Sources/device_info_plus}/CwlSysctl.swift | 0 .../DeviceInfoPlusMacosPlugin.swift | 0 .../device_info_plus}/SystemUUID.swift | 0 5 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 packages/device_info_plus/device_info_plus/macos/device_info_plus/Package.swift rename packages/device_info_plus/device_info_plus/macos/{Classes => device_info_plus/Sources/device_info_plus}/CwlSysctl.swift (100%) rename packages/device_info_plus/device_info_plus/macos/{Classes => device_info_plus/Sources/device_info_plus}/DeviceInfoPlusMacosPlugin.swift (100%) rename packages/device_info_plus/device_info_plus/macos/{Classes => device_info_plus/Sources/device_info_plus}/SystemUUID.swift (100%) diff --git a/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec b/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec index e64838ca23..3f49a03d31 100644 --- a/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec +++ b/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec @@ -13,8 +13,8 @@ https://github.com/flutter/flutter/issues/46618 s.license = { :file => '../LICENSE' } s.author = { 'Flutter Community' => 'authors@fluttercommunity.dev' } s.source = { :path => '.' } - s.source_files = 'Classes/**/*' - s.public_header_files = 'Classes/**/*.h' + s.source_files = 'device_info_plus/Sources/device_info_plus/**/*.swift' + s.public_header_files = 'device_info_plus/Sources/device_info_plus/**/*.swift' s.dependency 'FlutterMacOS' s.platform = :osx diff --git a/packages/device_info_plus/device_info_plus/macos/device_info_plus/Package.swift b/packages/device_info_plus/device_info_plus/macos/device_info_plus/Package.swift new file mode 100644 index 0000000000..c7de43378f --- /dev/null +++ b/packages/device_info_plus/device_info_plus/macos/device_info_plus/Package.swift @@ -0,0 +1,23 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "device_info_plus", + platforms: [ + .macOS("10.14") + ], + products: [ + .library(name: "device-info-plus", targets: ["device_info_plus"]) + ], + dependencies: [], + targets: [ + .target( + name: "device_info_plus", + dependencies: [], + resources: [ + ] + ) + ] +) diff --git a/packages/device_info_plus/device_info_plus/macos/Classes/CwlSysctl.swift b/packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/CwlSysctl.swift similarity index 100% rename from packages/device_info_plus/device_info_plus/macos/Classes/CwlSysctl.swift rename to packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/CwlSysctl.swift diff --git a/packages/device_info_plus/device_info_plus/macos/Classes/DeviceInfoPlusMacosPlugin.swift b/packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/DeviceInfoPlusMacosPlugin.swift similarity index 100% rename from packages/device_info_plus/device_info_plus/macos/Classes/DeviceInfoPlusMacosPlugin.swift rename to packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/DeviceInfoPlusMacosPlugin.swift diff --git a/packages/device_info_plus/device_info_plus/macos/Classes/SystemUUID.swift b/packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/SystemUUID.swift similarity index 100% rename from packages/device_info_plus/device_info_plus/macos/Classes/SystemUUID.swift rename to packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/SystemUUID.swift From e97205e256d4f1f0f9eed587cc5070f3fb9a7216 Mon Sep 17 00:00:00 2001 From: charafau Date: Tue, 13 Aug 2024 00:39:41 +0900 Subject: [PATCH 5/7] fix podspec file for macos --- .../device_info_plus/macos/device_info_plus.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec b/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec index 3f49a03d31..4b3fccd81e 100644 --- a/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec +++ b/packages/device_info_plus/device_info_plus/macos/device_info_plus.podspec @@ -14,7 +14,7 @@ https://github.com/flutter/flutter/issues/46618 s.author = { 'Flutter Community' => 'authors@fluttercommunity.dev' } s.source = { :path => '.' } s.source_files = 'device_info_plus/Sources/device_info_plus/**/*.swift' - s.public_header_files = 'device_info_plus/Sources/device_info_plus/**/*.swift' + s.public_header_files = 'device_info_plus/Sources/device_info_plus/**/*.h' s.dependency 'FlutterMacOS' s.platform = :osx From d5d4d34220df05bbaa22aacd581f2910bfc812f8 Mon Sep 17 00:00:00 2001 From: Rafal Wachol Date: Fri, 16 Aug 2024 10:06:42 +0900 Subject: [PATCH 6/7] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adjust whitespaces Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- .../device_info_plus/ios/device_info_plus.podspec | 2 +- .../device_info_plus/ios/device_info_plus/Package.swift | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec b/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec index e7c0b00840..6038dd2988 100644 --- a/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus.podspec @@ -15,7 +15,7 @@ Downloaded by pub (not CocoaPods). s.source = { :http => 'https://github.com/fluttercommunity/plus_plugins/tree/main/packages/device_info_plus' } s.documentation_url = 'https://pub.dev/packages/device_info_plus' s.source_files = 'device_info_plus/Sources/device_info_plus/**/*.{h,m}' - s.public_header_files = 'device_info_plus/Sources/device_info_plus/include/**/*.h' + s.public_header_files = 'device_info_plus/Sources/device_info_plus/include/**/*.h' s.dependency 'Flutter' s.platform = :ios, '12.0' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } diff --git a/packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift index 1d5925ca2f..a4defdd79c 100644 --- a/packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift +++ b/packages/device_info_plus/device_info_plus/ios/device_info_plus/Package.swift @@ -24,4 +24,4 @@ let package = Package( ] ) ] -) \ No newline at end of file +) From 524ae08928bd2e29c2a3da163641b7d1c098cd60 Mon Sep 17 00:00:00 2001 From: Volodymyr Date: Wed, 16 Oct 2024 23:11:48 +0300 Subject: [PATCH 7/7] fix(device_info_plus): Move MacOS privacy manifest into a correct place --- .../Sources/device_info_plus}/PrivacyInfo.xcprivacy | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename packages/device_info_plus/device_info_plus/macos/{ => device_info_plus/Sources/device_info_plus}/PrivacyInfo.xcprivacy (100%) diff --git a/packages/device_info_plus/device_info_plus/macos/PrivacyInfo.xcprivacy b/packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/PrivacyInfo.xcprivacy similarity index 100% rename from packages/device_info_plus/device_info_plus/macos/PrivacyInfo.xcprivacy rename to packages/device_info_plus/device_info_plus/macos/device_info_plus/Sources/device_info_plus/PrivacyInfo.xcprivacy