Skip to content

Commit 5ccddfc

Browse files
authored
[shared_preferences_foundation] Adds Swift Package Manager compatibility (flutter#6640)
Makes `shared_preferences_foundation` available as a Swift Package to Flutter. Also, remains compatible with CocoaPods. Fixes flutter/flutter#146918.
1 parent 45a4573 commit 5ccddfc

File tree

14 files changed

+41
-11
lines changed

14 files changed

+41
-11
lines changed

packages/shared_preferences/shared_preferences_foundation/CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
## NEXT
1+
## 2.4.0
22

3+
* Adds Swift Package Manager compatibility.
34
* Updates minimum iOS version to 12.0 and minimum Flutter version to 3.16.6.
45

56
## 2.3.5

packages/shared_preferences/shared_preferences_foundation/darwin/shared_preferences_foundation.podspec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Wraps NSUserDefaults, providing a persistent store for simple key-value pairs.
1212
s.license = { :type => 'BSD', :file => '../LICENSE' }
1313
s.author = { 'Flutter Team' => '[email protected]' }
1414
s.source = { :http => 'https://github.com/flutter/packages/tree/main/packages/shared_preferences/shared_preferences_foundation' }
15-
s.source_files = 'Classes/**/*'
15+
s.source_files = 'shared_preferences_foundation/Sources/shared_preferences_foundation/**/*.swift'
1616
s.ios.dependency 'Flutter'
1717
s.osx.dependency 'FlutterMacOS'
1818
s.ios.deployment_target = '12.0'
@@ -23,6 +23,6 @@ Wraps NSUserDefaults, providing a persistent store for simple key-value pairs.
2323
'LD_RUNPATH_SEARCH_PATHS' => '/usr/lib/swift',
2424
}
2525
s.swift_version = '5.0'
26-
s.resource_bundles = {'shared_preferences_foundation_privacy' => ['Resources/PrivacyInfo.xcprivacy']}
26+
s.resource_bundles = {'shared_preferences_foundation_privacy' => ['shared_preferences_foundation/Sources/shared_preferences_foundation/Resources/PrivacyInfo.xcprivacy']}
2727

2828
end
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// swift-tools-version: 5.9
2+
3+
// Copyright 2013 The Flutter Authors. All rights reserved.
4+
// Use of this source code is governed by a BSD-style license that can be
5+
// found in the LICENSE file.
6+
7+
import PackageDescription
8+
9+
let package = Package(
10+
name: "shared_preferences_foundation",
11+
platforms: [
12+
.iOS("12.0"),
13+
.macOS("10.14"),
14+
],
15+
products: [
16+
.library(name: "shared-preferences-foundation", targets: ["shared_preferences_foundation"])
17+
],
18+
dependencies: [],
19+
targets: [
20+
.target(
21+
name: "shared_preferences_foundation",
22+
dependencies: [],
23+
resources: [
24+
.process("Resources")
25+
]
26+
)
27+
]
28+
)

packages/shared_preferences/shared_preferences_foundation/example/ios/Runner.xcodeproj/project.pbxproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,7 @@
215215
97C146E61CF9000F007C117D /* Project object */ = {
216216
isa = PBXProject;
217217
attributes = {
218-
LastUpgradeCheck = 1430;
218+
LastUpgradeCheck = 1510;
219219
ORGANIZATIONNAME = "";
220220
TargetAttributes = {
221221
331C8080294A63A400263BE5 = {

packages/shared_preferences/shared_preferences_foundation/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1430"
3+
LastUpgradeVersion = "1510"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

packages/shared_preferences/shared_preferences_foundation/example/ios/Runner/AppDelegate.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import Flutter
66
import UIKit
77

8-
@UIApplicationMain
8+
@main
99
@objc class AppDelegate: FlutterAppDelegate {
1010
override func application(
1111
_ application: UIApplication,

packages/shared_preferences/shared_preferences_foundation/example/macos/Runner.xcodeproj/project.pbxproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,7 @@
260260
isa = PBXProject;
261261
attributes = {
262262
LastSwiftUpdateCheck = 1250;
263-
LastUpgradeCheck = 1300;
263+
LastUpgradeCheck = 1510;
264264
ORGANIZATIONNAME = "The Flutter Authors";
265265
TargetAttributes = {
266266
33CC10EC2044A3C60003C045 = {

packages/shared_preferences/shared_preferences_foundation/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1300"
3+
LastUpgradeVersion = "1510"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

packages/shared_preferences/shared_preferences_foundation/example/macos/Runner/AppDelegate.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import Cocoa
66
import FlutterMacOS
77

8-
@NSApplicationMain
8+
@main
99
class AppDelegate: FlutterAppDelegate {
1010
override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
1111
return true

packages/shared_preferences/shared_preferences_foundation/pigeons/messages.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ import 'package:pigeon/pigeon.dart';
77
@ConfigurePigeon(PigeonOptions(
88
dartOut: 'lib/messages.g.dart',
99
dartTestOut: 'test/test_api.g.dart',
10-
swiftOut: 'darwin/Classes/messages.g.swift',
10+
swiftOut:
11+
'darwin/shared_preferences_foundation/Sources/shared_preferences_foundation/messages.g.swift',
1112
copyrightHeader: 'pigeons/copyright_header.txt',
1213
))
1314
@HostApi(dartHostTestHandler: 'TestUserDefaultsApi')

packages/shared_preferences/shared_preferences_foundation/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: shared_preferences_foundation
22
description: iOS and macOS implementation of the shared_preferences plugin.
33
repository: https://github.com/flutter/packages/tree/main/packages/shared_preferences/shared_preferences_foundation
44
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+shared_preferences%22
5-
version: 2.3.5
5+
version: 2.4.0
66

77
environment:
88
sdk: ^3.2.3

0 commit comments

Comments
 (0)