Updates dependencies to silence warnings
This commit is contained in:
parent
eebb593aa2
commit
25eb70c5a6
@ -1 +1 @@
|
|||||||
Subproject commit 2328016bfb8bd7cb0088582f41ea3e669a8cf2fc
|
Subproject commit 10b4b05c8a4cc71f332235424e0c2a065916e90c
|
||||||
@ -931,7 +931,6 @@
|
|||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = C786AF1D2DDB6223BE2063CC /* Pods-Delta.debug.xcconfig */;
|
baseConfigurationReference = C786AF1D2DDB6223BE2063CC /* Pods-Delta.debug.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_ENTITLEMENTS = "Delta/Supporting Files/Delta.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Delta/Supporting Files/Delta.entitlements";
|
||||||
@ -948,7 +947,6 @@
|
|||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
baseConfigurationReference = A19FF50F55441BC2B2248241 /* Pods-Delta.release.xcconfig */;
|
baseConfigurationReference = A19FF50F55441BC2B2248241 /* Pods-Delta.release.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_ENTITLEMENTS = "Delta/Supporting Files/Delta.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Delta/Supporting Files/Delta.entitlements";
|
||||||
|
|||||||
2
Delta.xcworkspace/contents.xcworkspacedata
generated
2
Delta.xcworkspace/contents.xcworkspacedata
generated
@ -2,7 +2,7 @@
|
|||||||
<Workspace
|
<Workspace
|
||||||
version = "1.0">
|
version = "1.0">
|
||||||
<FileRef
|
<FileRef
|
||||||
location = "container:Delta.xcodeproj">
|
location = "group:Delta.xcodeproj">
|
||||||
</FileRef>
|
</FileRef>
|
||||||
<FileRef
|
<FileRef
|
||||||
location = "group:Cores/DeltaCore/DeltaCore.xcodeproj">
|
location = "group:Cores/DeltaCore/DeltaCore.xcodeproj">
|
||||||
|
|||||||
2
Podfile
2
Podfile
@ -1,5 +1,7 @@
|
|||||||
platform :ios, '10.0'
|
platform :ios, '10.0'
|
||||||
|
|
||||||
use_frameworks!
|
use_frameworks!
|
||||||
|
inhibit_all_warnings!
|
||||||
|
|
||||||
target 'Delta' do
|
target 'Delta' do
|
||||||
pod 'FileMD5Hash', '~> 2.0.0'
|
pod 'FileMD5Hash', '~> 2.0.0'
|
||||||
|
|||||||
14
Podfile.lock
14
Podfile.lock
@ -3,9 +3,9 @@ PODS:
|
|||||||
- SDWebImage (3.8.2):
|
- SDWebImage (3.8.2):
|
||||||
- SDWebImage/Core (= 3.8.2)
|
- SDWebImage/Core (= 3.8.2)
|
||||||
- SDWebImage/Core (3.8.2)
|
- SDWebImage/Core (3.8.2)
|
||||||
- SQLite.swift (0.11.0):
|
- SQLite.swift (0.11.3):
|
||||||
- SQLite.swift/standard (= 0.11.0)
|
- SQLite.swift/standard (= 0.11.3)
|
||||||
- SQLite.swift/standard (0.11.0)
|
- SQLite.swift/standard (0.11.3)
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
- FileMD5Hash (~> 2.0.0)
|
- FileMD5Hash (~> 2.0.0)
|
||||||
@ -14,9 +14,9 @@ DEPENDENCIES:
|
|||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
FileMD5Hash: 3ed69cc19a21ff4d30ae8833fc104275ad2c7de0
|
FileMD5Hash: 3ed69cc19a21ff4d30ae8833fc104275ad2c7de0
|
||||||
SDWebImage: 098e97e6176540799c27e804c96653ee0833d13c
|
SDWebImage: '098e97e6176540799c27e804c96653ee0833d13c'
|
||||||
SQLite.swift: 9a26273607d3077a2e5a8d33486e9989f8404c7d
|
SQLite.swift: 99b36c22084427f0abbeb957556ce1528cf10bb3
|
||||||
|
|
||||||
PODFILE CHECKSUM: 4d0cd307e08d6d4673b7cc8e54e1a5106772bfe0
|
PODFILE CHECKSUM: e583277236d810a5e080371e73349e52a4aaa25e
|
||||||
|
|
||||||
COCOAPODS: 1.1.1
|
COCOAPODS: 1.2.0
|
||||||
|
|||||||
14
Pods/Manifest.lock
generated
14
Pods/Manifest.lock
generated
@ -3,9 +3,9 @@ PODS:
|
|||||||
- SDWebImage (3.8.2):
|
- SDWebImage (3.8.2):
|
||||||
- SDWebImage/Core (= 3.8.2)
|
- SDWebImage/Core (= 3.8.2)
|
||||||
- SDWebImage/Core (3.8.2)
|
- SDWebImage/Core (3.8.2)
|
||||||
- SQLite.swift (0.11.0):
|
- SQLite.swift (0.11.3):
|
||||||
- SQLite.swift/standard (= 0.11.0)
|
- SQLite.swift/standard (= 0.11.3)
|
||||||
- SQLite.swift/standard (0.11.0)
|
- SQLite.swift/standard (0.11.3)
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
- FileMD5Hash (~> 2.0.0)
|
- FileMD5Hash (~> 2.0.0)
|
||||||
@ -14,9 +14,9 @@ DEPENDENCIES:
|
|||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
FileMD5Hash: 3ed69cc19a21ff4d30ae8833fc104275ad2c7de0
|
FileMD5Hash: 3ed69cc19a21ff4d30ae8833fc104275ad2c7de0
|
||||||
SDWebImage: 098e97e6176540799c27e804c96653ee0833d13c
|
SDWebImage: '098e97e6176540799c27e804c96653ee0833d13c'
|
||||||
SQLite.swift: 9a26273607d3077a2e5a8d33486e9989f8404c7d
|
SQLite.swift: 99b36c22084427f0abbeb957556ce1528cf10bb3
|
||||||
|
|
||||||
PODFILE CHECKSUM: 4d0cd307e08d6d4673b7cc8e54e1a5106772bfe0
|
PODFILE CHECKSUM: e583277236d810a5e080371e73349e52a4aaa25e
|
||||||
|
|
||||||
COCOAPODS: 1.1.1
|
COCOAPODS: 1.2.0
|
||||||
|
|||||||
818
Pods/Pods.xcodeproj/project.pbxproj
generated
818
Pods/Pods.xcodeproj/project.pbxproj
generated
File diff suppressed because it is too large
Load Diff
57
Pods/SQLite.swift/README.md
generated
57
Pods/SQLite.swift/README.md
generated
@ -25,7 +25,7 @@ syntax _and_ intent.
|
|||||||
- [Full-text search][] support
|
- [Full-text search][] support
|
||||||
- [Well-documented][See Documentation]
|
- [Well-documented][See Documentation]
|
||||||
- Extensively tested
|
- Extensively tested
|
||||||
- Companion project has [SQLCipher support](https://github.com/stephencelis/SQLiteCipher.swift)
|
- SQLCipher support via CocoaPods
|
||||||
- Active support at [StackOverflow](http://stackoverflow.com/questions/tagged/sqlite.swift), and [Gitter Chat Room](https://gitter.im/stephencelis/SQLite.swift) (_experimental_)
|
- Active support at [StackOverflow](http://stackoverflow.com/questions/tagged/sqlite.swift), and [Gitter Chat Room](https://gitter.im/stephencelis/SQLite.swift) (_experimental_)
|
||||||
|
|
||||||
[Full-text search]: Documentation/Index.md#full-text-search
|
[Full-text search]: Documentation/Index.md#full-text-search
|
||||||
@ -112,12 +112,6 @@ For a more comprehensive example, see [this article](http://masteringswift.blogs
|
|||||||
> _Note:_ SQLite.swift requires Swift 3 (and [Xcode][] 8) or greater. If you absolutely
|
> _Note:_ SQLite.swift requires Swift 3 (and [Xcode][] 8) or greater. If you absolutely
|
||||||
> need compatibility with Swift 2.3 you can use the [swift-2.3][] branch or older
|
> need compatibility with Swift 2.3 you can use the [swift-2.3][] branch or older
|
||||||
> released versions. New development will happen exclusively on the master/Swift 3 branch.
|
> released versions. New development will happen exclusively on the master/Swift 3 branch.
|
||||||
>
|
|
||||||
> The following instructions apply to targets that support embedded
|
|
||||||
> Swift frameworks. To use SQLite.swift in iOS 7 or an OS X command line
|
|
||||||
> tool, please read the [Frameworkless Targets][] section of the
|
|
||||||
> documentation.
|
|
||||||
|
|
||||||
|
|
||||||
### Carthage
|
### Carthage
|
||||||
|
|
||||||
@ -129,7 +123,7 @@ install SQLite.swift with Carthage:
|
|||||||
2. Update your Cartfile to include the following:
|
2. Update your Cartfile to include the following:
|
||||||
|
|
||||||
```
|
```
|
||||||
github "stephencelis/SQLite.swift" ~> 0.11.0
|
github "stephencelis/SQLite.swift" ~> 0.11.3
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Run `carthage update` and [add the appropriate framework][Carthage Usage].
|
3. Run `carthage update` and [add the appropriate framework][Carthage Usage].
|
||||||
@ -145,8 +139,13 @@ install SQLite.swift with Carthage:
|
|||||||
[CocoaPods][] is a dependency manager for Cocoa projects. To install
|
[CocoaPods][] is a dependency manager for Cocoa projects. To install
|
||||||
SQLite.swift with CocoaPods:
|
SQLite.swift with CocoaPods:
|
||||||
|
|
||||||
1. Make sure the latest CocoaPods beta is [installed][CocoaPods
|
1. Verify that your copy of Xcode is installed and active in the default location (`/Applications/Xcode.app`).
|
||||||
Installation]. (SQLite.swift requires version 1.0.0.beta.6 or greater.)
|
|
||||||
|
```sh
|
||||||
|
sudo xcode-select --switch /Applications/Xcode.app
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Make sure CocoaPods is [installed][CocoaPods Installation]. (SQLite.swift requires version 1.0.0 or greater.)
|
||||||
|
|
||||||
``` sh
|
``` sh
|
||||||
# Using the default Ruby install will require you to use sudo when
|
# Using the default Ruby install will require you to use sudo when
|
||||||
@ -154,19 +153,40 @@ SQLite.swift with CocoaPods:
|
|||||||
[sudo] gem install cocoapods
|
[sudo] gem install cocoapods
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Update your Podfile to include the following:
|
3. Update your Podfile to include the following:
|
||||||
|
|
||||||
``` ruby
|
``` ruby
|
||||||
use_frameworks!
|
use_frameworks!
|
||||||
|
|
||||||
pod 'SQLite.swift', '~> 0.11.0'
|
target 'YourAppTargetName' do
|
||||||
|
pod 'SQLite.swift', '~> 0.11.3'
|
||||||
|
end
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Run `pod install`.
|
4. Run `pod install --repo-update`.
|
||||||
|
|
||||||
[CocoaPods]: https://cocoapods.org
|
[CocoaPods]: https://cocoapods.org
|
||||||
[CocoaPods Installation]: https://guides.cocoapods.org/using/getting-started.html#getting-started
|
[CocoaPods Installation]: https://guides.cocoapods.org/using/getting-started.html#getting-started
|
||||||
|
|
||||||
|
### Swift Package Manager
|
||||||
|
|
||||||
|
The [Swift Package Manager][] is a tool for managing the distribution of Swift code.
|
||||||
|
|
||||||
|
1. Add the following to your `Package.swift` file:
|
||||||
|
|
||||||
|
```swift
|
||||||
|
dependencies: [
|
||||||
|
.Package(url: "https://github.com/stephencelis/SQLite.swift.git", majorVersion: 0, minor: 11)
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Build your project:
|
||||||
|
|
||||||
|
``` sh
|
||||||
|
$ swift build -Xlinker -lsqlite3
|
||||||
|
```
|
||||||
|
|
||||||
|
[Swift Package Manager]: https://swift.org/package-manager
|
||||||
|
|
||||||
### Manual
|
### Manual
|
||||||
|
|
||||||
@ -184,7 +204,15 @@ To install SQLite.swift as an Xcode sub-project:
|
|||||||
|
|
||||||
4. **Add**.
|
4. **Add**.
|
||||||
|
|
||||||
[Frameworkless Targets]: Documentation/Index.md#frameworkless-targets
|
Some additional steps are required to install the application on an actual device:
|
||||||
|
|
||||||
|
5. In the **General** tab, click the **+** button under **Embedded Binaries**.
|
||||||
|
|
||||||
|
6. Select the appropriate **SQLite.framework** for your platform.
|
||||||
|
|
||||||
|
7. **Add**.
|
||||||
|
|
||||||
|
|
||||||
[Xcode]: https://developer.apple.com/xcode/downloads/
|
[Xcode]: https://developer.apple.com/xcode/downloads/
|
||||||
[Submodule]: http://git-scm.com/book/en/Git-Tools-Submodules
|
[Submodule]: http://git-scm.com/book/en/Git-Tools-Submodules
|
||||||
[download]: https://github.com/stephencelis/SQLite.swift/archive/master.zip
|
[download]: https://github.com/stephencelis/SQLite.swift/archive/master.zip
|
||||||
@ -223,7 +251,6 @@ file](./LICENSE.txt) for more information.
|
|||||||
|
|
||||||
These projects enhance or use SQLite.swift:
|
These projects enhance or use SQLite.swift:
|
||||||
|
|
||||||
- [SQLiteCipher.swift](https://github.com/stephencelis/SQLiteCipher.swift)
|
|
||||||
- [SQLiteMigrationManager.swift](https://github.com/garriguv/SQLiteMigrationManager.swift) (inspired by [FMDBMigrationManager](https://github.com/layerhq/FMDBMigrationManager))
|
- [SQLiteMigrationManager.swift](https://github.com/garriguv/SQLiteMigrationManager.swift) (inspired by [FMDBMigrationManager](https://github.com/layerhq/FMDBMigrationManager))
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -26,7 +26,9 @@ import Foundation.NSUUID
|
|||||||
import Dispatch
|
import Dispatch
|
||||||
#if SQLITE_SWIFT_STANDALONE
|
#if SQLITE_SWIFT_STANDALONE
|
||||||
import sqlite3
|
import sqlite3
|
||||||
#elseif COCOAPODS
|
#elseif SQLITE_SWIFT_SQLCIPHER
|
||||||
|
import SQLCipher
|
||||||
|
#elseif SWIFT_PACKAGE || COCOAPODS
|
||||||
import CSQLite
|
import CSQLite
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -132,9 +134,8 @@ public final class Connection {
|
|||||||
public var readonly: Bool { return sqlite3_db_readonly(handle, nil) == 1 }
|
public var readonly: Bool { return sqlite3_db_readonly(handle, nil) == 1 }
|
||||||
|
|
||||||
/// The last rowid inserted into the database via this connection.
|
/// The last rowid inserted into the database via this connection.
|
||||||
public var lastInsertRowid: Int64? {
|
public var lastInsertRowid: Int64 {
|
||||||
let rowid = sqlite3_last_insert_rowid(handle)
|
return sqlite3_last_insert_rowid(handle)
|
||||||
return rowid != 0 ? rowid : nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// The last number of changes (inserts, updates, or deletes) made to the
|
/// The last number of changes (inserts, updates, or deletes) made to the
|
||||||
@ -412,11 +413,15 @@ public final class Connection {
|
|||||||
///
|
///
|
||||||
/// db.trace { SQL in print(SQL) }
|
/// db.trace { SQL in print(SQL) }
|
||||||
public func trace(_ callback: ((String) -> Void)?) {
|
public func trace(_ callback: ((String) -> Void)?) {
|
||||||
|
#if SQLITE_SWIFT_SQLCIPHER
|
||||||
|
trace_v1(callback)
|
||||||
|
#else
|
||||||
if #available(iOS 10.0, OSX 10.12, tvOS 10.0, watchOS 3.0, *) {
|
if #available(iOS 10.0, OSX 10.12, tvOS 10.0, watchOS 3.0, *) {
|
||||||
trace_v2(callback)
|
trace_v2(callback)
|
||||||
} else {
|
} else {
|
||||||
trace_v1(callback)
|
trace_v1(callback)
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
fileprivate func trace_v1(_ callback: ((String) -> Void)?) {
|
fileprivate func trace_v1(_ callback: ((String) -> Void)?) {
|
||||||
@ -440,37 +445,8 @@ public final class Connection {
|
|||||||
trace = box
|
trace = box
|
||||||
}
|
}
|
||||||
|
|
||||||
@available(iOS 10.0, OSX 10.12, tvOS 10.0, watchOS 3.0, *)
|
|
||||||
fileprivate func trace_v2(_ callback: ((String) -> Void)?) {
|
|
||||||
guard let callback = callback else {
|
|
||||||
// If the X callback is NULL or if the M mask is zero, then tracing is disabled.
|
|
||||||
sqlite3_trace_v2(handle, 0 /* mask */, nil /* xCallback */, nil /* pCtx */)
|
|
||||||
trace = nil
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
let box: Trace = { (pointer: UnsafeRawPointer) in
|
|
||||||
callback(String(cString: pointer.assumingMemoryBound(to: UInt8.self)))
|
|
||||||
}
|
|
||||||
sqlite3_trace_v2(handle,
|
|
||||||
UInt32(SQLITE_TRACE_STMT) /* mask */,
|
|
||||||
{
|
|
||||||
// A trace callback is invoked with four arguments: callback(T,C,P,X).
|
|
||||||
// The T argument is one of the SQLITE_TRACE constants to indicate why the
|
|
||||||
// callback was invoked. The C argument is a copy of the context pointer.
|
|
||||||
// The P and X arguments are pointers whose meanings depend on T.
|
|
||||||
(T: UInt32, C: UnsafeMutableRawPointer?, P: UnsafeMutableRawPointer?, X: UnsafeMutableRawPointer?) in
|
|
||||||
if let P = P,
|
|
||||||
let expandedSQL = sqlite3_expanded_sql(OpaquePointer(P)) {
|
|
||||||
unsafeBitCast(C, to: Trace.self)(expandedSQL)
|
|
||||||
sqlite3_free(expandedSQL)
|
|
||||||
}
|
|
||||||
return Int32(0) // currently ignored
|
|
||||||
},
|
|
||||||
unsafeBitCast(box, to: UnsafeMutableRawPointer.self) /* pCtx */
|
|
||||||
)
|
|
||||||
trace = box
|
|
||||||
}
|
|
||||||
|
|
||||||
fileprivate typealias Trace = @convention(block) (UnsafeRawPointer) -> Void
|
fileprivate typealias Trace = @convention(block) (UnsafeRawPointer) -> Void
|
||||||
fileprivate var trace: Trace?
|
fileprivate var trace: Trace?
|
||||||
@ -603,7 +579,7 @@ public final class Connection {
|
|||||||
} else if result == nil {
|
} else if result == nil {
|
||||||
sqlite3_result_null(context)
|
sqlite3_result_null(context)
|
||||||
} else {
|
} else {
|
||||||
fatalError("unsupported result type: \(result)")
|
fatalError("unsupported result type: \(String(describing: result))")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var flags = SQLITE_UTF8
|
var flags = SQLITE_UTF8
|
||||||
@ -733,11 +709,48 @@ extension Result : CustomStringConvertible {
|
|||||||
|
|
||||||
public var description: String {
|
public var description: String {
|
||||||
switch self {
|
switch self {
|
||||||
case let .error(message, _, statement):
|
case let .error(message, errorCode, statement):
|
||||||
guard let statement = statement else { return message }
|
if let statement = statement {
|
||||||
|
return "\(message) (\(statement)) (code: \(errorCode))"
|
||||||
return "\(message) (\(statement))"
|
} else {
|
||||||
|
return "\(message) (code: \(errorCode))"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !SQLITE_SWIFT_SQLCIPHER
|
||||||
|
@available(iOS 10.0, OSX 10.12, tvOS 10.0, watchOS 3.0, *)
|
||||||
|
extension Connection {
|
||||||
|
fileprivate func trace_v2(_ callback: ((String) -> Void)?) {
|
||||||
|
guard let callback = callback else {
|
||||||
|
// If the X callback is NULL or if the M mask is zero, then tracing is disabled.
|
||||||
|
sqlite3_trace_v2(handle, 0 /* mask */, nil /* xCallback */, nil /* pCtx */)
|
||||||
|
trace = nil
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
let box: Trace = { (pointer: UnsafeRawPointer) in
|
||||||
|
callback(String(cString: pointer.assumingMemoryBound(to: UInt8.self)))
|
||||||
|
}
|
||||||
|
sqlite3_trace_v2(handle,
|
||||||
|
UInt32(SQLITE_TRACE_STMT) /* mask */,
|
||||||
|
{
|
||||||
|
// A trace callback is invoked with four arguments: callback(T,C,P,X).
|
||||||
|
// The T argument is one of the SQLITE_TRACE constants to indicate why the
|
||||||
|
// callback was invoked. The C argument is a copy of the context pointer.
|
||||||
|
// The P and X arguments are pointers whose meanings depend on T.
|
||||||
|
(T: UInt32, C: UnsafeMutableRawPointer?, P: UnsafeMutableRawPointer?, X: UnsafeMutableRawPointer?) in
|
||||||
|
if let P = P,
|
||||||
|
let expandedSQL = sqlite3_expanded_sql(OpaquePointer(P)) {
|
||||||
|
unsafeBitCast(C, to: Trace.self)(expandedSQL)
|
||||||
|
sqlite3_free(expandedSQL)
|
||||||
|
}
|
||||||
|
return Int32(0) // currently ignored
|
||||||
|
},
|
||||||
|
unsafeBitCast(box, to: UnsafeMutableRawPointer.self) /* pCtx */
|
||||||
|
)
|
||||||
|
trace = box
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
@ -24,7 +24,9 @@
|
|||||||
|
|
||||||
#if SQLITE_SWIFT_STANDALONE
|
#if SQLITE_SWIFT_STANDALONE
|
||||||
import sqlite3
|
import sqlite3
|
||||||
#elseif COCOAPODS
|
#elseif SQLITE_SWIFT_SQLCIPHER
|
||||||
|
import SQLCipher
|
||||||
|
#elseif SWIFT_PACKAGE || COCOAPODS
|
||||||
import CSQLite
|
import CSQLite
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -242,7 +244,9 @@ public struct Cursor {
|
|||||||
let length = Int(sqlite3_column_bytes(handle, Int32(idx)))
|
let length = Int(sqlite3_column_bytes(handle, Int32(idx)))
|
||||||
return Blob(bytes: pointer, length: length)
|
return Blob(bytes: pointer, length: length)
|
||||||
} else {
|
} else {
|
||||||
fatalError("sqlite3_column_blob returned NULL")
|
// The return value from sqlite3_column_blob() for a zero-length BLOB is a NULL pointer.
|
||||||
|
// https://www.sqlite.org/c3ref/column_blob.html
|
||||||
|
return Blob(bytes: [])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -22,6 +22,10 @@
|
|||||||
// THE SOFTWARE.
|
// THE SOFTWARE.
|
||||||
//
|
//
|
||||||
|
|
||||||
|
#if SWIFT_PACKAGE
|
||||||
|
import SQLiteObjc
|
||||||
|
#endif
|
||||||
|
|
||||||
extension Module {
|
extension Module {
|
||||||
|
|
||||||
public static func FTS4(_ column: Expressible, _ more: Expressible...) -> Module {
|
public static func FTS4(_ column: Expressible, _ more: Expressible...) -> Module {
|
||||||
@ -141,13 +145,14 @@ extension Tokenizer : CustomStringConvertible {
|
|||||||
extension Connection {
|
extension Connection {
|
||||||
|
|
||||||
public func registerTokenizer(_ submoduleName: String, next: @escaping (String) -> (String, Range<String.Index>)?) throws {
|
public func registerTokenizer(_ submoduleName: String, next: @escaping (String) -> (String, Range<String.Index>)?) throws {
|
||||||
try check(_SQLiteRegisterTokenizer(handle, Tokenizer.moduleName, submoduleName) { input, offset, length in
|
try check(_SQLiteRegisterTokenizer(handle, Tokenizer.moduleName, submoduleName) { (
|
||||||
|
input: UnsafePointer<Int8>, offset: UnsafeMutablePointer<Int32>, length: UnsafeMutablePointer<Int32>) in
|
||||||
let string = String(cString: input)
|
let string = String(cString: input)
|
||||||
|
|
||||||
guard let (token, range) = next(string) else { return nil }
|
guard let (token, range) = next(string) else { return nil }
|
||||||
|
|
||||||
let view = string.utf8
|
let view = string.utf8
|
||||||
offset.pointee += string.substring(to: range.lowerBound).utf8.count
|
offset.pointee += Int32(string.substring(to: range.lowerBound).utf8.count)
|
||||||
length.pointee = Int32(view.distance(from: range.lowerBound.samePosition(in: view), to: range.upperBound.samePosition(in: view)))
|
length.pointee = Int32(view.distance(from: range.lowerBound.samePosition(in: view), to: range.upperBound.samePosition(in: view)))
|
||||||
return token
|
return token
|
||||||
})
|
})
|
||||||
@ -24,7 +24,9 @@
|
|||||||
|
|
||||||
#if SQLITE_SWIFT_STANDALONE
|
#if SQLITE_SWIFT_STANDALONE
|
||||||
import sqlite3
|
import sqlite3
|
||||||
#elseif COCOAPODS
|
#elseif SQLITE_SWIFT_SQLCIPHER
|
||||||
|
import SQLCipher
|
||||||
|
#elseif SWIFT_PACKAGE || COCOAPODS
|
||||||
import CSQLite
|
import CSQLite
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -56,17 +56,17 @@ public extension Connection {
|
|||||||
return { arg in fn([arg]) }
|
return { arg in fn([arg]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value>(function: String, deterministic: Bool = false, _ block: @escaping (A?) -> Z) throws -> ((Expression<A?>) -> Expression<Z>) {
|
public func createFunction<Z : Value, A : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?) -> Z) throws -> ((Expression<A?>) -> Expression<Z>) {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value)) }
|
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value)) }
|
||||||
return { arg in fn([arg]) }
|
return { arg in fn([arg]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value>(function: String, deterministic: Bool = false, _ block: @escaping (A) -> Z?) throws -> ((Expression<A>) -> Expression<Z?>) {
|
public func createFunction<Z : Value, A : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A) -> Z?) throws -> ((Expression<A>) -> Expression<Z?>) {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(value(args[0])) }
|
let fn = try createFunction(function, 1, deterministic) { args in block(value(args[0])) }
|
||||||
return { arg in fn([arg]) }
|
return { arg in fn([arg]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value>(function: String, deterministic: Bool = false, _ block: @escaping (A?) -> Z?) throws -> ((Expression<A?>) -> Expression<Z?>) {
|
public func createFunction<Z : Value, A : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?) -> Z?) throws -> ((Expression<A?>) -> Expression<Z?>) {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value)) }
|
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value)) }
|
||||||
return { arg in fn([arg]) }
|
return { arg in fn([arg]) }
|
||||||
}
|
}
|
||||||
@ -74,42 +74,42 @@ public extension Connection {
|
|||||||
// MARK: -
|
// MARK: -
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B) -> Z) throws -> (Expression<A>, Expression<B>) -> Expression<Z> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B) -> Z) throws -> (Expression<A>, Expression<B>) -> Expression<Z> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(value(args[0]), value(args[1])) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(value(args[0]), value(args[1])) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B) -> Z) throws -> (Expression<A?>, Expression<B>) -> Expression<Z> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B) -> Z) throws -> (Expression<A?>, Expression<B>) -> Expression<Z> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value), value(args[1])) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(args[0].map(value), value(args[1])) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B?) -> Z) throws -> (Expression<A>, Expression<B?>) -> Expression<Z> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B?) -> Z) throws -> (Expression<A>, Expression<B?>) -> Expression<Z> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(value(args[0]), args[1].map(value)) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(value(args[0]), args[1].map(value)) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B) -> Z?) throws -> (Expression<A>, Expression<B>) -> Expression<Z?> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B) -> Z?) throws -> (Expression<A>, Expression<B>) -> Expression<Z?> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(value(args[0]), value(args[1])) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(value(args[0]), value(args[1])) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B?) -> Z) throws -> (Expression<A?>, Expression<B?>) -> Expression<Z> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B?) -> Z) throws -> (Expression<A?>, Expression<B?>) -> Expression<Z> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value), args[1].map(value)) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(args[0].map(value), args[1].map(value)) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B) -> Z?) throws -> (Expression<A?>, Expression<B>) -> Expression<Z?> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B) -> Z?) throws -> (Expression<A?>, Expression<B>) -> Expression<Z?> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value), value(args[1])) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(args[0].map(value), value(args[1])) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B?) -> Z?) throws -> (Expression<A>, Expression<B?>) -> Expression<Z?> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A, B?) -> Z?) throws -> (Expression<A>, Expression<B?>) -> Expression<Z?> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(value(args[0]), args[1].map(value)) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(value(args[0]), args[1].map(value)) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B?) -> Z?) throws -> (Expression<A?>, Expression<B?>) -> Expression<Z?> {
|
public func createFunction<Z : Value, A : Value, B : Value>(_ function: String, deterministic: Bool = false, _ block: @escaping (A?, B?) -> Z?) throws -> (Expression<A?>, Expression<B?>) -> Expression<Z?> {
|
||||||
let fn = try createFunction(function, 1, deterministic) { args in block(args[0].map(value), args[1].map(value)) }
|
let fn = try createFunction(function, 2, deterministic) { args in block(args[0].map(value), args[1].map(value)) }
|
||||||
return { a, b in fn([a, b]) }
|
return { a, b in fn([a, b]) }
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -474,10 +474,10 @@ public func <=<V : Value>(lhs: V, rhs: Expression<V?>) -> Expression<Bool?> wher
|
|||||||
return infix(lhs, rhs)
|
return infix(lhs, rhs)
|
||||||
}
|
}
|
||||||
|
|
||||||
public func ~=<V : Value>(lhs: CountableClosedRange<V>, rhs: Expression<V>) -> Expression<Bool> where V.Datatype : Binding & Comparable {
|
public func ~=<V : Value>(lhs: ClosedRange<V>, rhs: Expression<V>) -> Expression<Bool> where V.Datatype : Binding & Comparable {
|
||||||
return Expression("\(rhs.template) BETWEEN ? AND ?", rhs.bindings + [lhs.lowerBound as? Binding, lhs.upperBound as? Binding])
|
return Expression("\(rhs.template) BETWEEN ? AND ?", rhs.bindings + [lhs.lowerBound as? Binding, lhs.upperBound as? Binding])
|
||||||
}
|
}
|
||||||
public func ~=<V : Value>(lhs: CountableClosedRange<V>, rhs: Expression<V?>) -> Expression<Bool?> where V.Datatype : Binding & Comparable {
|
public func ~=<V : Value>(lhs: ClosedRange<V>, rhs: Expression<V?>) -> Expression<Bool?> where V.Datatype : Binding & Comparable {
|
||||||
return Expression("\(rhs.template) BETWEEN ? AND ?", rhs.bindings + [lhs.lowerBound as? Binding, lhs.upperBound as? Binding])
|
return Expression("\(rhs.template) BETWEEN ? AND ?", rhs.bindings + [lhs.lowerBound as? Binding, lhs.upperBound as? Binding])
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -306,6 +306,18 @@ extension QueryType {
|
|||||||
return query
|
return query
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Adds a condition to the query’s `WHERE` clause.
|
||||||
|
/// This is an alias for `filter(predicate)`
|
||||||
|
public func `where`(_ predicate: Expression<Bool>) -> Self {
|
||||||
|
return `where`(Expression<Bool?>(predicate))
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Adds a condition to the query’s `WHERE` clause.
|
||||||
|
/// This is an alias for `filter(predicate)`
|
||||||
|
public func `where`(_ predicate: Expression<Bool?>) -> Self {
|
||||||
|
return filter(predicate)
|
||||||
|
}
|
||||||
|
|
||||||
// MARK: GROUP BY
|
// MARK: GROUP BY
|
||||||
|
|
||||||
/// Sets a `GROUP BY` clause on the query.
|
/// Sets a `GROUP BY` clause on the query.
|
||||||
@ -968,11 +980,11 @@ extension Connection {
|
|||||||
/// - Parameter query: An insert query.
|
/// - Parameter query: An insert query.
|
||||||
///
|
///
|
||||||
/// - Returns: The insert’s rowid.
|
/// - Returns: The insert’s rowid.
|
||||||
public func run(_ query: Insert) throws -> Int64 {
|
@discardableResult public func run(_ query: Insert) throws -> Int64 {
|
||||||
let expression = query.expression
|
let expression = query.expression
|
||||||
return try sync {
|
return try sync {
|
||||||
try self.run(expression.template, expression.bindings)
|
try self.run(expression.template, expression.bindings)
|
||||||
return self.lastInsertRowid!
|
return self.lastInsertRowid
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -984,7 +996,7 @@ extension Connection {
|
|||||||
/// - Parameter query: An update query.
|
/// - Parameter query: An update query.
|
||||||
///
|
///
|
||||||
/// - Returns: The number of updated rows.
|
/// - Returns: The number of updated rows.
|
||||||
public func run(_ query: Update) throws -> Int {
|
@discardableResult public func run(_ query: Update) throws -> Int {
|
||||||
let expression = query.expression
|
let expression = query.expression
|
||||||
return try sync {
|
return try sync {
|
||||||
try self.run(expression.template, expression.bindings)
|
try self.run(expression.template, expression.bindings)
|
||||||
@ -999,7 +1011,7 @@ extension Connection {
|
|||||||
/// - Parameter query: A delete query.
|
/// - Parameter query: A delete query.
|
||||||
///
|
///
|
||||||
/// - Returns: The number of deleted rows.
|
/// - Returns: The number of deleted rows.
|
||||||
public func run(_ query: Delete) throws -> Int {
|
@discardableResult public func run(_ query: Delete) throws -> Int {
|
||||||
let expression = query.expression
|
let expression = query.expression
|
||||||
return try sync {
|
return try sync {
|
||||||
try self.run(expression.template, expression.bindings)
|
try self.run(expression.template, expression.bindings)
|
||||||
@ -36,14 +36,15 @@ extension Table {
|
|||||||
|
|
||||||
// MARK: - CREATE TABLE
|
// MARK: - CREATE TABLE
|
||||||
|
|
||||||
public func create(temporary: Bool = false, ifNotExists: Bool = false, block: (TableBuilder) -> Void) -> String {
|
public func create(temporary: Bool = false, ifNotExists: Bool = false, withoutRowid: Bool = false, block: (TableBuilder) -> Void) -> String {
|
||||||
let builder = TableBuilder()
|
let builder = TableBuilder()
|
||||||
|
|
||||||
block(builder)
|
block(builder)
|
||||||
|
|
||||||
let clauses: [Expressible?] = [
|
let clauses: [Expressible?] = [
|
||||||
create(Table.identifier, tableName(), temporary ? .Temporary : nil, ifNotExists),
|
create(Table.identifier, tableName(), temporary ? .Temporary : nil, ifNotExists),
|
||||||
"".wrap(builder.definitions) as Expression<Void>
|
"".wrap(builder.definitions) as Expression<Void>,
|
||||||
|
withoutRowid ? Expression<Void>(literal: "WITHOUT ROWID") : nil
|
||||||
]
|
]
|
||||||
|
|
||||||
return " ".join(clauses.flatMap { $0 }).asSQL()
|
return " ".join(clauses.flatMap { $0 }).asSQL()
|
||||||
@ -23,7 +23,6 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "SQLite-Bridging.h"
|
#import "SQLite-Bridging.h"
|
||||||
#import "sqlite3.h"
|
|
||||||
#import "fts3_tokenizer.h"
|
#import "fts3_tokenizer.h"
|
||||||
|
|
||||||
#pragma mark - FTS
|
#pragma mark - FTS
|
||||||
@ -1,4 +1,12 @@
|
|||||||
#ifdef __OBJC__
|
#ifdef __OBJC__
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,13 @@
|
|||||||
#ifdef __OBJC__
|
#ifdef __OBJC__
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#import "FileHash.h"
|
#import "FileHash.h"
|
||||||
|
|||||||
@ -4,5 +4,6 @@ HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Publi
|
|||||||
PODS_BUILD_DIR = $BUILD_DIR
|
PODS_BUILD_DIR = $BUILD_DIR
|
||||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||||
PODS_ROOT = ${SRCROOT}
|
PODS_ROOT = ${SRCROOT}
|
||||||
|
PODS_TARGET_SRCROOT = ${PODS_ROOT}/FileMD5Hash
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
||||||
SKIP_INSTALL = YES
|
SKIP_INSTALL = YES
|
||||||
|
|||||||
@ -59,8 +59,13 @@ code_sign_if_enabled() {
|
|||||||
if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
|
if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
|
||||||
# Use the current code_sign_identitiy
|
# Use the current code_sign_identitiy
|
||||||
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
|
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
|
||||||
echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements \"$1\""
|
local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'"
|
||||||
/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements "$1"
|
|
||||||
|
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||||
|
code_sign_cmd="$code_sign_cmd &"
|
||||||
|
fi
|
||||||
|
echo "$code_sign_cmd"
|
||||||
|
eval "$code_sign_cmd"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,3 +98,6 @@ if [[ "$CONFIGURATION" == "Release" ]]; then
|
|||||||
install_framework "$BUILT_PRODUCTS_DIR/SDWebImage/SDWebImage.framework"
|
install_framework "$BUILT_PRODUCTS_DIR/SDWebImage/SDWebImage.framework"
|
||||||
install_framework "$BUILT_PRODUCTS_DIR/SQLite.swift/SQLite.framework"
|
install_framework "$BUILT_PRODUCTS_DIR/SQLite.swift/SQLite.framework"
|
||||||
fi
|
fi
|
||||||
|
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||||
|
wait
|
||||||
|
fi
|
||||||
|
|||||||
@ -18,6 +18,9 @@ case "${TARGETED_DEVICE_FAMILY}" in
|
|||||||
2)
|
2)
|
||||||
TARGET_DEVICE_ARGS="--target-device ipad"
|
TARGET_DEVICE_ARGS="--target-device ipad"
|
||||||
;;
|
;;
|
||||||
|
3)
|
||||||
|
TARGET_DEVICE_ARGS="--target-device tv"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
TARGET_DEVICE_ARGS="--target-device mac"
|
TARGET_DEVICE_ARGS="--target-device mac"
|
||||||
;;
|
;;
|
||||||
|
|||||||
@ -1,5 +1,13 @@
|
|||||||
#ifdef __OBJC__
|
#ifdef __OBJC__
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||||
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES
|
|
||||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileMD5Hash" "$PODS_CONFIGURATION_BUILD_DIR/SDWebImage" "$PODS_CONFIGURATION_BUILD_DIR/SQLite.swift"
|
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileMD5Hash" "$PODS_CONFIGURATION_BUILD_DIR/SDWebImage" "$PODS_CONFIGURATION_BUILD_DIR/SQLite.swift"
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||||
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES
|
|
||||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileMD5Hash" "$PODS_CONFIGURATION_BUILD_DIR/SDWebImage" "$PODS_CONFIGURATION_BUILD_DIR/SQLite.swift"
|
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/FileMD5Hash" "$PODS_CONFIGURATION_BUILD_DIR/SDWebImage" "$PODS_CONFIGURATION_BUILD_DIR/SQLite.swift"
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||||
|
|||||||
@ -1,4 +1,12 @@
|
|||||||
#ifdef __OBJC__
|
#ifdef __OBJC__
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,13 @@
|
|||||||
#ifdef __OBJC__
|
#ifdef __OBJC__
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#import "NSData+ImageContentType.h"
|
#import "NSData+ImageContentType.h"
|
||||||
|
|||||||
@ -5,5 +5,6 @@ OTHER_LDFLAGS = -framework "ImageIO"
|
|||||||
PODS_BUILD_DIR = $BUILD_DIR
|
PODS_BUILD_DIR = $BUILD_DIR
|
||||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||||
PODS_ROOT = ${SRCROOT}
|
PODS_ROOT = ${SRCROOT}
|
||||||
|
PODS_TARGET_SRCROOT = ${PODS_ROOT}/SDWebImage
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
||||||
SKIP_INSTALL = YES
|
SKIP_INSTALL = YES
|
||||||
|
|||||||
@ -15,7 +15,7 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>FMWK</string>
|
<string>FMWK</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>0.11.0</string>
|
<string>0.11.3</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
|
|||||||
@ -1,4 +1,12 @@
|
|||||||
#ifdef __OBJC__
|
#ifdef __OBJC__
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,17 @@
|
|||||||
#ifdef __OBJC__
|
#ifdef __OBJC__
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#import "SQLite-Bridging.h"
|
|
||||||
#import "SQLite.h"
|
#import "SQLite.h"
|
||||||
|
#import "SQLite-Bridging.h"
|
||||||
|
|
||||||
FOUNDATION_EXPORT double SQLiteVersionNumber;
|
FOUNDATION_EXPORT double SQLiteVersionNumber;
|
||||||
FOUNDATION_EXPORT const unsigned char SQLiteVersionString[];
|
FOUNDATION_EXPORT const unsigned char SQLiteVersionString[];
|
||||||
|
|||||||
@ -2,10 +2,11 @@ CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/SQLite.swift
|
|||||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||||
HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public"
|
HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public"
|
||||||
OTHER_LDFLAGS = -l"sqlite3"
|
OTHER_LDFLAGS = -l"sqlite3"
|
||||||
OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
|
OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" "-suppress-warnings"
|
||||||
PODS_BUILD_DIR = $BUILD_DIR
|
PODS_BUILD_DIR = $BUILD_DIR
|
||||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||||
PODS_ROOT = ${SRCROOT}
|
PODS_ROOT = ${SRCROOT}
|
||||||
|
PODS_TARGET_SRCROOT = ${PODS_ROOT}/SQLite.swift
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
||||||
SKIP_INSTALL = YES
|
SKIP_INSTALL = YES
|
||||||
SWIFT_INCLUDE_PATHS[sdk=appletvos*] = $(SRCROOT)/SQLite.swift/CocoaPods/appletvos
|
SWIFT_INCLUDE_PATHS[sdk=appletvos*] = $(SRCROOT)/SQLite.swift/CocoaPods/appletvos
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user