Comments (24)
Confirmed that pod spec lint
passes if both the standalone
and standalone-fts
subspecs are commented out.
Looking a bit closer at these subspecs, both use the sqlite3
pod as a dependency
, vs. the other subspecs which use the system-provided sqlite3
as a library
.
And the sqlite3
pod seems to have an old deployment target set, which causes the problems with libarclite
e.g.
- NOTE | [iOS] [FMDB/standalone] xcodebuild: clang: error: SDK does not contain 'libarclite' at the path '/Applications/Xcode-15.2.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a'; try increasing the minimum deployment target
- NOTE | [iOS] [FMDB/standalone] xcodebuild: Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'sqlite3' from project 'Pods')
So the next step would be to try building against a local checkout of the upstream sqlite3 pod with these settings adjusted. If that works, maybe we can convince upstream to bump up the deployment target.
from fmdb.
Per discussion with @ccgus we're going to go with 2.7.9 and beyond on CocoaPods. He made the tag and I'm going to push. Currently I'm getting linter errors despite the Pod working in Mac/iOS sample projects, so I'll keep at that.
linter output
$ pod trunk push --allow-warnings
[!] Found podspec `FMDB.podspec`
Updating spec repo `trunk`
Validating podspec
-> FMDB (2.7.9)
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: note: Using codesigning identity override: -
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: note: Building targets in dependency order
- NOTE | [FMDB/standalone, FMDB/standalone-fts, FMDB/SQLCipher, and more...] xcodebuild: note: Target dependency graph (4 targets)
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/SQLCipher, and more...] xcodebuild: note: Signing static framework with --generate-pre-encrypt-hashes (in target 'Pods-App' from project 'Pods')
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: /var/folders/4_/5s0y5tg88xj76q001s7946d00000gn/T/CocoaPods-Lint-20240208-5713-8oilen-FMDB/App.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 11.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'App' from project 'App')
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 11.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'Pods-App' from project 'Pods')
- NOTE | [iOS] xcodebuild: Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 11.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'FMDB-FMDB' from project 'Pods')
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 11.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'FMDB' from project 'Pods')
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: note: Using codesigning identity override:
- ERROR | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: Returned an unsuccessful exit code. You can use `--verbose` for more information.
- NOTE | [FMDB/standard, FMDB/FTS, FMDB/standalone, and more...] xcodebuild: xcodebuild: error: Found no destinations for the scheme 'App' and action clean.
- NOTE | [FMDB/standard,FMDB/FTS] xcodebuild: note: Target dependency graph (3 targets)
- NOTE | [FMDB/standalone,FMDB/standalone-fts] xcodebuild: clang: error: SDK does not contain 'libarclite' at the path '/Applications/Xcode-15.2.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a'; try increasing the minimum deployment target
- NOTE | [FMDB/standalone,FMDB/standalone-fts] xcodebuild: Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'sqlite3' from project 'Pods')
- NOTE | [FMDB/standalone,FMDB/standalone-fts] xcodebuild: clang: error: SDK does not contain 'libarclite' at the path '/Applications/Xcode-15.2.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_macosx.a'; try increasing the minimum deployment target
- NOTE | [FMDB/standalone,FMDB/standalone-fts] xcodebuild: Pods.xcodeproj: warning: The macOS deployment target 'MACOSX_DEPLOYMENT_TARGET' is set to 10.6, but the range of supported deployment target versions is 10.13 to 14.2.99. (in target 'sqlite3' from project 'Pods')
- NOTE | [iOS] [FMDB/SQLCipher] xcodebuild: Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 11.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'SQLCipher' from project 'Pods')
[!] The spec did not pass validation, due to 1 error.
from fmdb.
My hunch here is that there are problems in the project that linting exposes. At first I thought maybe they were only x86_64
, but there are also arm64
issues.
Full verbose linter log (~12k lines):
https://gist.github.com/incanus/9c957f803931534d6207499de1635f45
Pulling out the relevant lines, the problems seem to be related to compiling the sqlite3
binary.
e.g.
Ld /Users/incanus/Library/Developer/Xcode/DerivedData/App-ayhqlhdpentoorfyiubetjbkpbaq/Build/Intermediates.noindex/Pods.build/Release-iphonesimulator/sqlite3.build/Objects-normal/arm64/Binary/sqlite3 normal arm64 (in target 'sqlite3' from project 'Pods')
and
Ld /Users/incanus/Library/Developer/Xcode/DerivedData/App-ayhqlhdpentoorfyiubetjbkpbaq/Build/Intermediates.noindex/Pods.build/Release/sqlite3.build/Objects-normal/x86_64/Binary/sqlite3 normal x86_64 (in target 'sqlite3' from project 'Pods')
both fail.
from fmdb.
I've at least now figured out that only the standalone
and standalone-fts
subspecs are failing. The other three succeed.
from fmdb.
It looks like we are blocked on pushing a release to CocoaPods until the upstream clemensg/sqlite3pod#22 is solved, potentially with the pull request clemensg/sqlite3pod#23. This will fix the deployment targets issue for the sqlite3
pod that we are using in those subspecs, allowing our Podspec to lint, which is required for pod trunk push
to work.
I looked into testing this theory by cloning the upstream sqlite3
repo and pointing to it locally, but that's not allowed in library Podspecs, only in project Podfiles which use the library.
- https://stackoverflow.com/questions/46052798/is-it-possible-to-add-a-local-dependency-to-podspec-file
- CocoaPods/CocoaPods#3276
So I can't actually successfully lint the FMDB Podspec if it includes the standalone
or standalone-fts
subspecs as a result, blocking publish (AFAICT).
from fmdb.
I should add that with this as with any use of FMDB via CocoaPods, you could always clone this repo locally and point to it with:
pod 'FMDB', :path => '/path/to/fmdb'
Of course, the standalone
and standalone-fts
subspecs won't work this way either.
@ccgus Should we consider removing those subspecs for now so that we can publish until the upstream issue is solved?
from fmdb.
Related Issues (20)
- Flutter support
- When will the new version be released? HOT 2
- I crashed while using FMDB/SQLCipher. HOT 2
- Crash -[FMDatabase executeQuery:withArgumentsInArray:orDictionary:orVAList:] EXC_BAD_ACCESS (KERN_INVALID_ADDRESS) HOT 2
- FMDB accidental crash [FMStatement close] Xcode14.2 FMDB 2.5 HOT 7
- Error with Xcode 14.3 because of deployment_target (9.0) HOT 4
- Client XPC connection invalidated HOT 1
- Unknown error tcp_output/flags HOT 3
- Can the current version be used stably? HOT 3
- closing FMDB database HOT 11
- Support for visionOS HOT 6
- Apple Privacy Manifest HOT 10
- FMDB 2.7.8 is not published on cocoapods HOT 3
- I encountered an issue where using UPDATE fails to update, but using INSERT OR REPLACE doesn't. HOT 1
- 无法通过git clone下载到本地 HOT 2
- PrivacyInfo.xcprivacy file did not be exposed HOT 6
- FMDB 2.7.8 is not available on cocoapods HOT 2
- xcodebuild: xcodebuild: error: Found no destinations for the scheme 'FMDB' and action clean
- backfill CocoaPods versions HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fmdb.