ann-flavor-cocoapods 0.4.3 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +43 -0
- data/lib/ann_flavor_cocoapods/podfile_helper.rb +39 -9
- data/lib/ann_flavor_cocoapods/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 308ae984ebc6057da442a37d87cda0ccaa0f110b5044ac8a1a84233390398dfb
|
|
4
|
+
data.tar.gz: 36e009d9eab357e286766fec9bcd31edc383237c8c17e027843380792f52a0d9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8efac100a09e6c88be9c283379c2d17f8fac58c3f40281f4f3f87b35f687a89a024595c74839fa80f973236514d87608090498737ff1fb93f79a7d400f6c9dec
|
|
7
|
+
data.tar.gz: e46fe48609f35471fc48f101e95cc2804d82a7d2fa474cccdeb9f3438f3a06b8215837d7eeb19e844aee1a0604a0709aae0b0a0d56f3bd5e2115126f89a378e9
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,48 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.4.5
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
- **0.4.4 stopped the cycle for a *fresh* install, but any project already
|
|
7
|
+
on 0.4.1-0.4.3 kept hitting it after upgrading.** 0.4.4 stopped *setting*
|
|
8
|
+
`input_paths` on `[ann-flavor] Merge Entitlements`/`Merge Info.plist`, but
|
|
9
|
+
never explicitly *cleared* it. `existing = target.build_phases.find { ... }`
|
|
10
|
+
reuses the same Xcodeproj object across runs, and `pod install` never
|
|
11
|
+
touches an attribute it doesn't assign — so a project that had already run
|
|
12
|
+
0.4.1-0.4.3 (which did set `input_paths` on that same, reused object) kept
|
|
13
|
+
the stale value forever, silently reintroducing the exact "Cycle inside
|
|
14
|
+
Runner" failure 0.4.4 was meant to remove. Confirmed live against `ledger`:
|
|
15
|
+
the cycle came back, now involving whichever framework happened to be on
|
|
16
|
+
the other side of the shared `ModuleVerifierTaskProducer` gate (in this
|
|
17
|
+
case an SPM-resolved `AppLovinAdapter.xcframework`, following the
|
|
18
|
+
consumer's separate SPM plugin migration — same underlying mechanism, not
|
|
19
|
+
a new bug). Fixed by explicitly setting `phase.input_paths = []` on both
|
|
20
|
+
phases, so a stale value is genuinely wiped on the next `pod install`, not
|
|
21
|
+
just left unset going forward.
|
|
22
|
+
|
|
23
|
+
## 0.4.4
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
- **"Cycle inside Runner" could still occur even after 0.4.1-0.4.3.**
|
|
27
|
+
Confirmed live (again, against `ledger`) that declaring `input_paths` on
|
|
28
|
+
`[CP] Check Pods Manifest.lock`'s own output (introduced in 0.4.1 as the
|
|
29
|
+
original fix, kept through 0.4.2/0.4.3 as "belt-and-suspenders") was
|
|
30
|
+
actually the *cause* of the cycle, not a fix for it: `[ann-flavor] Merge
|
|
31
|
+
Entitlements`/`[ann-flavor] Merge Info.plist`'s output feeds
|
|
32
|
+
`ProcessProductPackaging` (signing), which Xcode's new build system gates
|
|
33
|
+
behind a chain of task producers (`ModuleVerifierTaskProducer` et al) —
|
|
34
|
+
and `Check Pods Manifest.lock`'s own output is *itself* gated behind that
|
|
35
|
+
same chain. Declaring it as an input routed these phases through that
|
|
36
|
+
chain from the other direction, closing a genuine cycle with the Firebase
|
|
37
|
+
framework-copy phases (also gated behind it) regardless of
|
|
38
|
+
`build_phases` position. Fixed by removing the `input_paths` declaration
|
|
39
|
+
entirely — `output_paths` plus running after the Pods/framework-copy
|
|
40
|
+
phases (the 0.4.2 position fix, kept) is sufficient on its own; this
|
|
41
|
+
phase never actually needed Check Pods Manifest.lock's result as an
|
|
42
|
+
input. Xcode's own error message ("moving Check Pods Manifest.lock so it
|
|
43
|
+
runs before the phase that depends on its outputs") was describing a
|
|
44
|
+
self-inflicted dependency, not a real requirement.
|
|
45
|
+
|
|
3
46
|
## 0.4.3
|
|
4
47
|
|
|
5
48
|
### Fixed
|
|
@@ -912,10 +912,17 @@ module AnnFlavorCocoapods
|
|
|
912
912
|
# output_paths) -- suppresses "input file not found" for INFOPLIST_FILE
|
|
913
913
|
# referencing a path nothing else produces until this phase runs.
|
|
914
914
|
phase.output_paths = ['$(DERIVED_FILE_DIR)/Info-merged.plist']
|
|
915
|
-
#
|
|
916
|
-
#
|
|
917
|
-
#
|
|
918
|
-
|
|
915
|
+
# Explicitly cleared, NOT just omitted -- v0.4.1-0.4.3 set input_paths
|
|
916
|
+
# to Check Pods Manifest.lock's output; v0.4.4 stopped setting it (see
|
|
917
|
+
# the identical, fuller explanation on inject_merge_entitlements_phase
|
|
918
|
+
# below for why that declaration was actually the cause of the real
|
|
919
|
+
# "Cycle inside Runner" failure, not a fix for it), but never explicitly
|
|
920
|
+
# cleared it -- `existing` reuses the same Xcodeproj object across runs,
|
|
921
|
+
# so a project that upgraded from 0.4.1-0.4.3 kept the stale value
|
|
922
|
+
# forever (pod install never touches an attribute it doesn't assign),
|
|
923
|
+
# silently reintroducing the exact cycle 0.4.4 was meant to fix.
|
|
924
|
+
# Confirmed live against ledger.
|
|
925
|
+
phase.input_paths = []
|
|
919
926
|
|
|
920
927
|
# Appended at the END of build_phases, not unshifted to the front --
|
|
921
928
|
# see the identical, fuller explanation on inject_merge_entitlements_phase
|
|
@@ -1027,11 +1034,34 @@ module AnnFlavorCocoapods
|
|
|
1027
1034
|
phase.shell_script = script
|
|
1028
1035
|
phase.show_env_vars_in_log = '0'
|
|
1029
1036
|
phase.output_paths = ['$(DERIVED_FILE_DIR)/Entitlements-merged.entitlements']
|
|
1030
|
-
#
|
|
1031
|
-
#
|
|
1032
|
-
#
|
|
1033
|
-
|
|
1034
|
-
|
|
1037
|
+
# NOT declaring input_paths on Check Pods Manifest.lock's own output
|
|
1038
|
+
# here (tried in v0.4.1/0.4.2/0.4.3 as "belt-and-suspenders"). Confirmed
|
|
1039
|
+
# live (yet again, against ledger) that this input_paths declaration is
|
|
1040
|
+
# what CAUSES the real "Cycle inside Runner" failure, not a partial fix
|
|
1041
|
+
# for it: this phase's output feeds ProcessProductPackaging (signing),
|
|
1042
|
+
# which Xcode's new build system gates behind a chain of task producers
|
|
1043
|
+
# (ModuleVerifierTaskProducer et al) — declaring Check Pods Manifest
|
|
1044
|
+
# .lock's result file as this phase's OWN input routes this phase
|
|
1045
|
+
# through that SAME gate chain from the other direction, since Check
|
|
1046
|
+
# Pods Manifest.lock's output is itself gated behind
|
|
1047
|
+
# ModuleVerifierTaskProducer too. The Firebase framework-copy phases
|
|
1048
|
+
# are gated behind that identical chain — closing a genuine cycle no
|
|
1049
|
+
# matter where this phase sits in build_phases. Xcode's own error
|
|
1050
|
+
# message ("moving Check Pods Manifest.lock so it runs before the
|
|
1051
|
+
# phase that depends on its outputs") is describing exactly this
|
|
1052
|
+
# self-inflicted dependency, not a real requirement — this phase never
|
|
1053
|
+
# actually needed Check Pods Manifest.lock's result as an input;
|
|
1054
|
+
# output_paths + running after the Pods/framework-copy phases (via
|
|
1055
|
+
# position, below) is sufficient on its own.
|
|
1056
|
+
#
|
|
1057
|
+
# Explicitly cleared (not just omitted) -- `existing` reuses the same
|
|
1058
|
+
# Xcodeproj object across runs, so a project that upgraded from
|
|
1059
|
+
# 0.4.1-0.4.3 kept the stale input_paths value forever (pod install
|
|
1060
|
+
# never touches an attribute it doesn't assign), silently
|
|
1061
|
+
# reintroducing the exact cycle this fix was meant to remove.
|
|
1062
|
+
# Confirmed live against ledger.
|
|
1063
|
+
phase.input_paths = []
|
|
1064
|
+
#
|
|
1035
1065
|
# Appended at the END of build_phases, not unshifted to the front.
|
|
1036
1066
|
# v0.4.1 tried fixing this phase's real "Cycle inside Runner" Xcode
|
|
1037
1067
|
# build failure (confirmed live against ledger, a project with real
|