Skip to content

Commit

Permalink
feat(iOS): migrate to swift package manager
Browse files Browse the repository at this point in the history
Signed-off-by: Caijinglong <[email protected]>
  • Loading branch information
CaiJingLong committed Nov 25, 2024
1 parent 78f98ad commit 4c1d535
Show file tree
Hide file tree
Showing 63 changed files with 285 additions and 5 deletions.
2 changes: 2 additions & 0 deletions packages/flutter_image_compress/example/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -74,3 +74,5 @@ build/
!**/ios/**/default.perspectivev3
!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages
*.lock

!pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,6 @@
<key>CFBundleVersion</key>
<string>1.0</string>
<key>MinimumOSVersion</key>
<string>11.0</string>
<string>12.0</string>
</dict>
</plist>
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@
97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1300;
LastUpgradeCheck = 1510;
ORGANIZATIONNAME = "The Chromium Authors";
TargetAttributes = {
97C146ED1CF9000F007C117D = {
Expand Down Expand Up @@ -216,6 +216,7 @@
files = (
);
inputPaths = (
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
);
name = "Thin Binary";
outputPaths = (
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1300"
LastUpgradeVersion = "1510"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
224 changes: 224 additions & 0 deletions packages/flutter_image_compress/example/pubspec.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,224 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
characters:
dependency: transitive
description:
name: characters
sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.0"
collection:
dependency: transitive
description:
name: collection
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.18.0"
cross_file:
dependency: transitive
description:
name: cross_file
sha256: "7caf6a750a0c04effbb52a676dce9a4a592e10ad35c34d6d2d0e4811160d5670"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.3.4+2"
ffi:
dependency: transitive
description:
name: ffi
sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.3"
flutter:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
flutter_image_compress:
dependency: "direct main"
description:
path: ".."
relative: true
source: path
version: "2.3.0"
flutter_image_compress_common:
dependency: "direct overridden"
description:
path: "../../flutter_image_compress_common"
relative: true
source: path
version: "1.0.5"
flutter_image_compress_macos:
dependency: "direct overridden"
description:
path: "../../flutter_image_compress_macos"
relative: true
source: path
version: "1.0.2"
flutter_image_compress_ohos:
dependency: "direct overridden"
description:
path: "../../flutter_image_compress_ohos"
relative: true
source: path
version: "0.0.3"
flutter_image_compress_platform_interface:
dependency: "direct overridden"
description:
path: "../../flutter_image_compress_platform_interface"
relative: true
source: path
version: "1.0.5"
flutter_image_compress_web:
dependency: "direct overridden"
description:
path: "../../flutter_image_compress_web"
relative: true
source: path
version: "0.1.4+1"
flutter_web_plugins:
dependency: transitive
description: flutter
source: sdk
version: "0.0.0"
js:
dependency: transitive
description:
name: js
sha256: c1b2e9b5ea78c45e1a0788d29606ba27dc5f71f019f32ca5140f61ef071838cf
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.7.1"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.11.1"
meta:
dependency: transitive
description:
name: meta
sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.15.0"
path:
dependency: transitive
description:
name: path
sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.9.1"
path_provider:
dependency: "direct main"
description:
name: path_provider
sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.5"
path_provider_android:
dependency: transitive
description:
name: path_provider_android
sha256: c464428172cb986b758c6d1724c603097febb8fb855aa265aeecc9280c294d4a
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.12"
path_provider_foundation:
dependency: transitive
description:
name: path_provider_foundation
sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.4.0"
path_provider_linux:
dependency: transitive
description:
name: path_provider_linux
sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.1"
path_provider_ohos:
dependency: "direct main"
description:
path: "packages/path_provider/path_provider_ohos"
ref: HEAD
resolved-ref: a5fdce00b643910fa2dc844f812cf50aee8299db
url: "https://gitee.com/openharmony-sig/flutter_packages.git"
source: git
version: "2.2.1"
path_provider_platform_interface:
dependency: transitive
description:
name: path_provider_platform_interface
sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.2"
path_provider_windows:
dependency: transitive
description:
name: path_provider_windows
sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.0"
platform:
dependency: transitive
description:
name: platform
sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.1.6"
plugin_platform_interface:
dependency: transitive
description:
name: plugin_platform_interface
sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.8"
sky_engine:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
vector_math:
dependency: transitive
description:
name: vector_math
sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.4"
web:
dependency: transitive
description:
name: web
sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
xdg_directories:
dependency: transitive
description:
name: xdg_directories
sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
sdks:
dart: ">=3.5.0 <4.0.0"
flutter: ">=3.24.0"
2 changes: 2 additions & 0 deletions packages/flutter_image_compress_common/ios/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,5 @@ Icon?

/Flutter/Generated.xcconfig
/Flutter/flutter_export_environment.sh

!.gitkeep
51 changes: 51 additions & 0 deletions packages/flutter_image_compress_common/ios/Package.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// swift-tools-version: 5.9
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription

private let packageName = "flutter_image_compress_common"

let package = Package(
// TODO: Update your plugin name.
name: packageName,
platforms: [
// TODO: Update the platforms your plugin supports.
// If your plugin only supports iOS, remove `.macOS(...)`.
// If your plugin only supports macOS, remove `.iOS(...)`.
.iOS("12.0"),
// .macOS("10.14")
],
products: [
// TODO: Update your library and target names.
// If the plugin name contains "_", replace with "-" for the library name
.library(name: packageName, targets: [packageName])
],
dependencies: [],
targets: [
.target(
// TODO: Update your target name.
name: packageName,
dependencies: [
.package(url: "https://github.com/Mantle/Mantle.git", .upToNextMajor(from: "2.0.0"))
.package(url: "https://github.com/SDWebImage/SDWebImage.git", from: "5.1.0")
.package(url: "https://github.com/SDWebImage/SDWebImageWebPCoder.git", from: "0.3.0")
],
resources: [
// TODO: If your plugin requires a privacy manifest
// (e.g. if it uses any required reason APIs), update the PrivacyInfo.xcprivacy file
// to describe your plugin's privacy impact, and then uncomment this line.
// For more information, see:
// https://developer.apple.com/documentation/bundleresources/privacy_manifest_files
// .process("PrivacyInfo.xcprivacy"),

// TODO: If you have other resources that need to be bundled with your plugin, refer to
// the following instructions to add them:
// https://developer.apple.com/documentation/xcode/bundling-resources-with-a-swift-package
],
cSettings: [
// TODO: Update your plugin name.
.headerSearchPath("include/\(packageName)")
]
)
]
)
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ Compress image with native Objective-C with faster speed.
s.source = { :path => '.' }
s.ios.deployment_target = '9.0'

s.source_files = 'Classes/**/*'
s.public_header_files = 'Classes/**/*.h'
s.source_files = 'flutter_image_compress_common/Sources/**/*'
s.public_header_files = 'flutter_image_compress_common/Sources/**/*.h'

s.dependency 'Flutter'
s.dependency 'Mantle'
Expand Down

0 comments on commit 4c1d535

Please sign in to comment.