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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eebdd0861c6e897e517afc185dbe5093672eee28a4549ab869aef3105144b72a
4
- data.tar.gz: 9976784a3f67eca1be9c0e2ed08bfe2bde6671fe845321dbc39c4b432b90fc46
3
+ metadata.gz: 308ae984ebc6057da442a37d87cda0ccaa0f110b5044ac8a1a84233390398dfb
4
+ data.tar.gz: 36e009d9eab357e286766fec9bcd31edc383237c8c17e027843380792f52a0d9
5
5
  SHA512:
6
- metadata.gz: ada32883a563af3301da9355cfc65fde024ff4a34194e59eaee2a7d6dc863c3d47a2574c3712aebf66e4b4fa29f444b96b70188016fde24810ba8656a975f0d8
7
- data.tar.gz: a0691d77e669115cb8ff313d53ad4d4267551ce8c3836fa8101b2e8a5a3342f599552d6cd197f0589a3f52e9e8082dacdd92ea5b7246944c852b69871b70c625
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
- # Belt-and-suspenders alongside the append-at-end position fix below --
916
- # explicitly orders this phase after CocoaPods' own "[CP] Check Pods
917
- # Manifest.lock" phase regardless of list position.
918
- phase.input_paths = ['$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt']
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
- # Belt-and-suspenders alongside the append-at-end position fix below --
1031
- # explicitly orders this phase after CocoaPods' own "[CP] Check Pods
1032
- # Manifest.lock" phase regardless of list position.
1033
- phase.input_paths = ['$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt']
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
@@ -1,3 +1,3 @@
1
1
  module AnnFlavorCocoapods
2
- VERSION = "0.4.3"
2
+ VERSION = "0.4.5"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ann-flavor-cocoapods
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - ANN Solutions