cocoapods-spm 0.1.11 → 0.1.12

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: 6c3b50f5ee1f6aac5f97a26a629a3db6e979d9d3f64d23d8b0ad09efb64b65a8
4
- data.tar.gz: f9a36254b07ad0a945a4f74a408f86e5c64061401b1313d1176a6cf6d9a3b961
3
+ metadata.gz: 4339f6dade7353651b8e2a5abaeec61bfd2df3f8ebf82bab05abcaa8d747c472
4
+ data.tar.gz: 996f6b6bd81f835810e92d6ddd98d3f577e6ef28c0ea9567addb75c3112e49f1
5
5
  SHA512:
6
- metadata.gz: 9129545f35676f21d34e904e5517b3a05d0fc18eaff8ca0e9fa3045d97d965ab61f7f0c07428df4e663a482d585de920e499f04d2cd76f5732f323295f1ae86b
7
- data.tar.gz: 16461e45669ff05d949264c52dfd7b820e562ed5fd8096d86593e07c2a9f4fdb974e22923bc8f79c22d79d95b68c6573317c51a8fe0353862bf1aa1b8e85608a
6
+ metadata.gz: 2cc5b3cfd2732dbb5226c847a167f33164463fc04c376f85627cd9ed190a3ed030e7c941ade065028dc3fca9aa06450f1efa1f546d661b546a581bd7d84b7c94
7
+ data.tar.gz: 8106d7b9e99beeb9c9f07d056926e9bc03bc42210d0f3200a7eee2314eefaf5dd2f6076fae1bcaf9244728ac4fc4a12cf82a312d549d0b69a74ee837ae8fac6f
@@ -15,10 +15,14 @@ module Pod
15
15
  end
16
16
 
17
17
  def inspect
18
- "#<#{self.class} #{name}/#{product} pkg=#{pkg}>"
18
+ "#<#{self.class} #{full_name} pkg=#{pkg}>"
19
19
  end
20
20
 
21
21
  alias to_s inspect
22
+
23
+ def full_name
24
+ "#{@name}/#{@product}"
25
+ end
22
26
  end
23
27
  end
24
28
  end
@@ -108,6 +108,12 @@ module Pod
108
108
  { :kind => "branch", :branch => branch }
109
109
  elsif (revision = options.delete(:commit))
110
110
  { :kind => "revision", :revision => revision }
111
+ elsif (version = options.delete(:up_to_next_major_version))
112
+ { :kind => "upToNextMajorVersion", :minimumVersion => version }
113
+ elsif (version = options.delete(:up_to_next_minor_version))
114
+ { :kind => "upToNextMinorVersion", :minimumVersion => version }
115
+ elsif (range = options.delete(:version_range))
116
+ { :kind => "versionRange", :minimumVersion => range[0], :maximumVersion => range[1] }
111
117
  else
112
118
  raise "Missing requirement for SPM package: #{name}"
113
119
  end
@@ -26,6 +26,7 @@ module Pod
26
26
 
27
27
  def resolve_recursive_targets
28
28
  @result.spm_dependencies_by_target.values.flatten.uniq(&:product).each do |dep|
29
+ validate_dep!(dep)
29
30
  next if dep.pkg.use_default_xcode_linking?
30
31
 
31
32
  @podfile.platforms.each do |platform|
@@ -33,6 +34,24 @@ module Pod
33
34
  end
34
35
  end
35
36
  end
37
+
38
+ def validate_dep!(dep)
39
+ return unless dep.pkg.nil?
40
+
41
+ raise Informative, <<~HEREDOC
42
+ Missing package for dependency `#{dep.full_name}` (used by #{direct_dependants(dep).join(', ')}).
43
+ 💡 Did you forget to declare package `#{dep.name}` in Podfile?
44
+ Refer to this doc for package declaration: https://github.com/trinhngocthuyen/cocoapods-spm/blob/main/docs/declaring_packages.md
45
+ HEREDOC
46
+ end
47
+
48
+ def direct_dependants(dep)
49
+ @result
50
+ .spm_dependencies_by_target
51
+ .reject { |k, _| k.start_with?("Pods-") }
52
+ .select { |_, v| v.include?(dep) }
53
+ .keys
54
+ end
36
55
  end
37
56
  end
38
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-spm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.11
4
+ version: 0.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thuyen Trinh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-01-05 00:00:00.000000000 Z
11
+ date: 2025-02-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xcodeproj