cocoapods-bazel 0.1.1 → 0.1.3
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/.github/workflows/tests.yml +2 -2
- data/.gitignore +4 -0
- data/CHANGELOG.md +9 -0
- data/README.md +6 -0
- data/cocoapods-bazel.gemspec +0 -2
- data/lib/cocoapods/bazel/config.rb +62 -2
- data/lib/cocoapods/bazel/target.rb +53 -10
- data/lib/cocoapods/bazel/version.rb +1 -1
- data/lib/cocoapods/bazel.rb +45 -5
- metadata +3 -6
- data/Gemfile.lock +0 -145
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 85537880f86a7c5c9b15a1db278672ae4b1f27c3ead44e3498b653267e66db77
|
4
|
+
data.tar.gz: 07f5bc07ca05a3fd382588ca0be1d85218b3ff8232e60a1cb477953480c3403b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 48e0089179b162707d5219cadde68f2e98b80c38acbc48a94be25605d3532e5174b6b2c4d8b05da03597c76df46b17ccc8a91e4fe682678257b7662892ba4c5b
|
7
|
+
data.tar.gz: 141015e3c549842a5a72ef8ed391351230fc163d99d26072df2e1748c97b0002857628e760bc646833fceb6a57cca1ddd736e85c85ec2125ff0b91552f104db0
|
data/.github/workflows/tests.yml
CHANGED
@@ -12,8 +12,8 @@ jobs:
|
|
12
12
|
runs-on: macos-latest
|
13
13
|
steps:
|
14
14
|
- uses: actions/checkout@v1
|
15
|
-
- name:
|
16
|
-
run: sudo xcode-select -
|
15
|
+
- name: Print Xcode version
|
16
|
+
run: sudo xcode-select -p
|
17
17
|
- uses: actions/setup-ruby@v1
|
18
18
|
with:
|
19
19
|
ruby-version: "2.x" # Version range or exact version of a Ruby version to use, using semvers version range syntax.
|
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
0.1.3
|
2
|
+
|
3
|
+
* Add ability to insert a docstring at top of generated build files (#58)
|
4
|
+
* Remove expand_directories for resource_bundle (#48)
|
5
|
+
|
6
|
+
0.1.2
|
7
|
+
|
8
|
+
* Generate empty BUILD.bazel file at sandbox root (Pods/) during build file generation stage
|
9
|
+
|
1
10
|
0.1.1
|
2
11
|
|
3
12
|
* Raise error and offer suggestion if pod path is outside of current workspace
|
data/README.md
CHANGED
@@ -44,6 +44,12 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
|
|
44
44
|
|
45
45
|
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
46
46
|
|
47
|
+
## Experimental Features
|
48
|
+
|
49
|
+
There are some experimental features that are opt-in and can be enabled adding the plugin to the `Podfile`. Some of these features intentionally break the contract with the `.podspecs` specification in order to create `BUILD` files that are easier to maintain and/or evolve using Bazel features that don't have a direct relationship with what cocoapods does. You'll find the keys to enable such features and a brief explanation/motivation for each in `Bazel::Config::EXPERIMENTAL_FEATURES` (`lib/cocoapods/bazel/config.rb`).
|
50
|
+
|
51
|
+
Note that tests for the experimental features are located under `spec/integration/experimental_features` and these should mostly replicate the tests under `spec/integration/monorepo` but with the features on. Also it's a place to create tests specific to a experimental feature that not necessarily will affect the default usage of `cocoapods-bazel`.
|
52
|
+
|
47
53
|
## Contributing
|
48
54
|
|
49
55
|
Bug reports and pull requests are welcome on GitHub at https://github.com/ob/cocoapods-bazel.
|
data/cocoapods-bazel.gemspec
CHANGED
@@ -12,8 +12,6 @@ Gem::Specification.new do |spec|
|
|
12
12
|
spec.homepage = 'https://github.com/ob/cocoapods-bazel'
|
13
13
|
spec.license = 'apache2'
|
14
14
|
|
15
|
-
spec.metadata['allowed_push_host'] = "https://rubygems.org/"
|
16
|
-
|
17
15
|
spec.metadata['homepage_uri'] = spec.homepage
|
18
16
|
spec.metadata['source_code_uri'] = spec.homepage
|
19
17
|
spec.metadata['changelog_uri'] = "#{spec.homepage}/blob/master/CHANGELOG.md"
|
@@ -4,6 +4,44 @@ module Pod
|
|
4
4
|
module Bazel
|
5
5
|
class Config
|
6
6
|
PLUGIN_KEY = 'cocoapods-bazel'
|
7
|
+
EXPERIMENTAL_FEATURES = [
|
8
|
+
# When enabled cocoapods-bazel will add one additional config_setting for the 'deps' attribute only
|
9
|
+
# containing both 'debug' and 'release' dependencies.
|
10
|
+
#
|
11
|
+
# In other works when this flag is active cocoapods-bazel will continue to create these:
|
12
|
+
#
|
13
|
+
# - //Pods/cocoapods-bazel:debug
|
14
|
+
# - //Pods/cocoapods-bazel:release
|
15
|
+
#
|
16
|
+
# and generate the same 'select()' statements for all attributes but 'deps'.
|
17
|
+
#
|
18
|
+
# Additionaly these new config_setting values will be created:
|
19
|
+
#
|
20
|
+
# - //Pods/cocoapods-bazel:deps_debug
|
21
|
+
# - //Pods/cocoapods-bazel:deps_release
|
22
|
+
# - //Pods/cocoapods-bazel:deps_debug_and_release
|
23
|
+
#
|
24
|
+
# and used only in the 'deps' attribute.
|
25
|
+
#
|
26
|
+
# This effectively decouple 'deps' from the other attributes from a configuration perspective and allow one to build
|
27
|
+
# with different combinations of these settings. One example of a use case is generating release builds with 'debug' dependencies
|
28
|
+
# available so debug-only features can be used to inspect/validate behaviour in a release build (some call these "dogfood" builds).
|
29
|
+
#
|
30
|
+
# From a conceptual perspective this will generate BUILD files with "all" states and allow one to use bazel features to 'select()' the desired ones.
|
31
|
+
# This intentionally breaks the contract with the .podspec specification since cocoapods does not have the concept of 'select()'-ing configurations.
|
32
|
+
#
|
33
|
+
# Still in the context of the use case above ('dogfood' builds), without this experimental feature one would have to
|
34
|
+
# change the configurations in the .podspec file from:
|
35
|
+
# `s.dependency 'Foo', configurations: %w[Debug]`
|
36
|
+
# to:
|
37
|
+
# `s.dependency 'Foo', configurations: %w[Debug Release]`
|
38
|
+
# and re-run cocoapods-bazel to generate the desired type of build and then re-run it again to go back to the previous state.
|
39
|
+
#
|
40
|
+
# This might be ok for some teams but it prevents others that are interested in using cocoapods-bazel to migrate to Bazel and eventually stop
|
41
|
+
# depending on cocoapods. If the generated BUILD files don't contain "all" states and a 'pod install' is always required it's not trivial how to eventually treat the
|
42
|
+
# BUILD files as source of truth.
|
43
|
+
:experimental_deps_debug_and_release
|
44
|
+
].freeze
|
7
45
|
private_constant :PLUGIN_KEY
|
8
46
|
DEFAULTS = {
|
9
47
|
rules: {
|
@@ -13,8 +51,13 @@ module Pod
|
|
13
51
|
}.freeze,
|
14
52
|
overrides: {}.freeze,
|
15
53
|
buildifier: true,
|
16
|
-
default_xcconfigs: {}.freeze
|
54
|
+
default_xcconfigs: {}.freeze,
|
55
|
+
build_file_doc: '',
|
56
|
+
features: {
|
57
|
+
experimental_deps_debug_and_release: false
|
58
|
+
}
|
17
59
|
}.with_indifferent_access.freeze
|
60
|
+
|
18
61
|
private_constant :DEFAULTS
|
19
62
|
|
20
63
|
attr_reader :to_h
|
@@ -30,7 +73,7 @@ module Pod
|
|
30
73
|
end
|
31
74
|
|
32
75
|
def self.from_podfile_options(options)
|
33
|
-
new(DEFAULTS.merge(options) do |_key, old_val, new_val|
|
76
|
+
config = new(DEFAULTS.merge(options) do |_key, old_val, new_val|
|
34
77
|
case old_val
|
35
78
|
when Hash
|
36
79
|
old_val.merge(new_val) # intentionally only 1 level deep of merging
|
@@ -38,6 +81,15 @@ module Pod
|
|
38
81
|
new_val
|
39
82
|
end
|
40
83
|
end)
|
84
|
+
|
85
|
+
# Validating if only supported/valid experimental features
|
86
|
+
# exist in the Podfile (only applies if :features is not empty)
|
87
|
+
features = config.to_h[:features] || {}
|
88
|
+
features.keys.map(&:to_sym).each do |key|
|
89
|
+
raise "Unrecognized experimental feature '#{key}' in Podfile. Available options are: #{EXPERIMENTAL_FEATURES}" unless EXPERIMENTAL_FEATURES.include?(key)
|
90
|
+
end
|
91
|
+
|
92
|
+
config
|
41
93
|
end
|
42
94
|
|
43
95
|
def initialize(to_h)
|
@@ -55,6 +107,14 @@ module Pod
|
|
55
107
|
def default_xcconfigs
|
56
108
|
to_h[:default_xcconfigs]
|
57
109
|
end
|
110
|
+
|
111
|
+
def experimental_deps_debug_and_release
|
112
|
+
to_h[:features][:experimental_deps_debug_and_release]
|
113
|
+
end
|
114
|
+
|
115
|
+
def build_file_doc
|
116
|
+
to_h[:build_file_doc]
|
117
|
+
end
|
58
118
|
end
|
59
119
|
end
|
60
120
|
end
|
@@ -30,7 +30,7 @@ module Pod
|
|
30
30
|
attr_reader :installer, :pod_target, :file_accessors, :non_library_spec, :label, :package, :default_xcconfigs, :resolved_xconfig_by_config
|
31
31
|
private :installer, :pod_target, :file_accessors, :non_library_spec, :label, :package, :default_xcconfigs, :resolved_xconfig_by_config
|
32
32
|
|
33
|
-
def initialize(installer, pod_target, non_library_spec = nil, default_xcconfigs = {})
|
33
|
+
def initialize(installer, pod_target, non_library_spec = nil, default_xcconfigs = {}, experimental_deps_debug_and_release = false)
|
34
34
|
@installer = installer
|
35
35
|
@pod_target = pod_target
|
36
36
|
@file_accessors = non_library_spec ? pod_target.file_accessors.select { |fa| fa.spec == non_library_spec } : pod_target.file_accessors.select { |fa| fa.spec.library_specification? }
|
@@ -40,6 +40,7 @@ module Pod
|
|
40
40
|
@package = installer.sandbox.pod_dir(pod_target.pod_name).relative_path_from(installer.config.installation_root).to_s
|
41
41
|
@default_xcconfigs = default_xcconfigs
|
42
42
|
@resolved_xconfig_by_config = {}
|
43
|
+
@experimental_deps_debug_and_release = experimental_deps_debug_and_release
|
43
44
|
end
|
44
45
|
|
45
46
|
def bazel_label(relative_to: nil)
|
@@ -66,7 +67,7 @@ module Pod
|
|
66
67
|
end
|
67
68
|
|
68
69
|
app_spec, app_target = *app_host_info
|
69
|
-
Target.new(installer, app_target, app_spec)
|
70
|
+
Target.new(installer, app_target, app_spec, {}, @experimental_deps_debug_and_release)
|
70
71
|
end
|
71
72
|
|
72
73
|
def type
|
@@ -341,7 +342,7 @@ module Pod
|
|
341
342
|
fa.spec_consumer.resource_bundles.each do |name, file_patterns|
|
342
343
|
bundle = bundles[name] ||= {}
|
343
344
|
patterns_by_exclude = bundle[fa.spec_consumer.exclude_files] ||= []
|
344
|
-
patterns_by_exclude.concat(file_patterns.flat_map { |g| expand_glob(g, expand_directories:
|
345
|
+
patterns_by_exclude.concat(file_patterns.flat_map { |g| expand_glob(g, expand_directories: false) })
|
345
346
|
end
|
346
347
|
end.tap do |bundles|
|
347
348
|
kwargs[:resource_bundles] = bundles.map do |bundle_name, patterns_by_excludes|
|
@@ -473,8 +474,14 @@ module Pod
|
|
473
474
|
labels_by_config = {}
|
474
475
|
|
475
476
|
if !sorted_debug_labels.empty? || !sorted_release_labels.empty?
|
476
|
-
|
477
|
-
|
477
|
+
if @experimental_deps_debug_and_release
|
478
|
+
labels_by_config[build_settings_label(:deps_debug)] = sorted_debug_labels
|
479
|
+
labels_by_config[build_settings_label(:deps_release)] = sorted_release_labels
|
480
|
+
labels_by_config[build_settings_label(:deps_debug_and_release)] = sorted_debug_labels + sorted_release_labels
|
481
|
+
else
|
482
|
+
labels_by_config[build_settings_label(:debug)] = sorted_debug_labels
|
483
|
+
labels_by_config[build_settings_label(:release)] = sorted_release_labels
|
484
|
+
end
|
478
485
|
end
|
479
486
|
|
480
487
|
if labels_by_config.empty? # no per-config dependency
|
@@ -542,10 +549,21 @@ module Pod
|
|
542
549
|
end
|
543
550
|
end
|
544
551
|
|
552
|
+
def rules_ios_platform_name(platform)
|
553
|
+
name = platform.string_name.downcase
|
554
|
+
return 'macos' if name == 'osx'
|
555
|
+
|
556
|
+
name
|
557
|
+
end
|
558
|
+
|
545
559
|
def framework_kwargs
|
560
|
+
library_spec = pod_target.file_accessors.find { |fa| fa.spec.library_specification? }.spec
|
546
561
|
{
|
547
562
|
visibility: ['//visibility:public'],
|
548
|
-
|
563
|
+
bundle_id: resolved_value_by_build_setting('PRODUCT_BUNDLE_IDENTIFIER'),
|
564
|
+
infoplists_by_build_setting: pod_target_infoplists_by_build_setting,
|
565
|
+
infoplists: common_pod_target_infoplists(additional_plist: nil_if_empty(library_spec.consumer(pod_target.platform).info_plist)),
|
566
|
+
platforms: { rules_ios_platform_name(pod_target.platform) => build_os_version || pod_target.platform.deployment_target.to_s }
|
549
567
|
}
|
550
568
|
end
|
551
569
|
|
@@ -555,14 +573,35 @@ module Pod
|
|
555
573
|
env: pod_target.scheme_for_spec(non_library_spec).fetch(:environment_variables, {}),
|
556
574
|
infoplists_by_build_setting: pod_target_infoplists_by_build_setting,
|
557
575
|
infoplists: common_pod_target_infoplists(additional_plist: nil_if_empty(non_library_spec.consumer(pod_target.platform).info_plist)),
|
558
|
-
minimum_os_version: pod_target.deployment_target_for_non_library_spec(non_library_spec),
|
576
|
+
minimum_os_version: build_os_version || pod_target.deployment_target_for_non_library_spec(non_library_spec),
|
559
577
|
test_host: test_host&.bazel_label(relative_to: package) || file_accessors.any? { |fa| fa.spec_consumer.requires_app_host? } || nil
|
560
578
|
}
|
561
579
|
end
|
562
580
|
|
581
|
+
def build_os_version
|
582
|
+
# If there's a SWIFT_DEPLOYMENT_TARGET version set, use that for the
|
583
|
+
# minimum version. It's not currently supported or desirable in rules_ios to have
|
584
|
+
# these distinct, however xcconfig supports that.
|
585
|
+
swift_deployment_target = resolved_value_by_build_setting('SWIFT_DEPLOYMENT_TARGET')
|
586
|
+
|
587
|
+
llvm_target_triple_os_version = resolved_value_by_build_setting('LLVM_TARGET_TRIPLE_OS_VERSION')
|
588
|
+
if llvm_target_triple_os_version
|
589
|
+
# For clang this is set ios9.0: take everything after the os name
|
590
|
+
version_number = llvm_target_triple_os_version.match(/\d.*/)
|
591
|
+
clang_build_os_version = version_number.to_s if version_number
|
592
|
+
end
|
593
|
+
if !swift_deployment_target.nil? && !clang_build_os_version.nil?
|
594
|
+
raise "warning: had different os versions #{swift_deployment_target} #{clang_build_os_version}" if swift_deployment_target != clang_build_os_version
|
595
|
+
end
|
596
|
+
swift_deployment_target || clang_build_os_version
|
597
|
+
end
|
598
|
+
|
563
599
|
def app_kwargs
|
564
600
|
# maps to kwargs listed for https://github.com/bazelbuild/rules_apple/blob/master/doc/rules-ios.md#ios_application
|
565
|
-
|
601
|
+
|
602
|
+
platform_target = pod_target.deployment_target_for_non_library_spec(non_library_spec)
|
603
|
+
|
604
|
+
kwargs = {
|
566
605
|
app_icons: [],
|
567
606
|
bundle_id: resolved_value_by_build_setting('PRODUCT_BUNDLE_IDENTIFIER') || "org.cocoapods.#{label}",
|
568
607
|
bundle_name: nil,
|
@@ -576,7 +615,7 @@ module Pod
|
|
576
615
|
ipa_post_processor: nil,
|
577
616
|
launch_images: [],
|
578
617
|
launch_storyboard: nil,
|
579
|
-
minimum_os_version:
|
618
|
+
minimum_os_version: build_os_version || platform_target,
|
580
619
|
provisioning_profile: nil,
|
581
620
|
resources: [],
|
582
621
|
settings_bundle: [],
|
@@ -584,6 +623,10 @@ module Pod
|
|
584
623
|
version: [],
|
585
624
|
watch_application: []
|
586
625
|
}
|
626
|
+
|
627
|
+
# If the user has set a different build os set that here
|
628
|
+
kwargs[:minimum_deployment_os_version] = platform_target if build_os_version
|
629
|
+
kwargs
|
587
630
|
end
|
588
631
|
|
589
632
|
def app_targeted_device_families
|
@@ -607,7 +650,7 @@ module Pod
|
|
607
650
|
'slices' => xcframework.slices.map do |slice|
|
608
651
|
{
|
609
652
|
'identifier' => slice.identifier,
|
610
|
-
'platform' => slice.platform
|
653
|
+
'platform' => rules_ios_platform_name(slice.platform),
|
611
654
|
'platform_variant' => slice.platform_variant.to_s,
|
612
655
|
'supported_archs' => slice.supported_archs,
|
613
656
|
'path' => slice.path.relative_path_from(@package_dir).to_s,
|
data/lib/cocoapods/bazel.rb
CHANGED
@@ -19,6 +19,10 @@ module Pod
|
|
19
19
|
UI.titled_section 'Generating Bazel files' do
|
20
20
|
workspace = installer.config.installation_root
|
21
21
|
sandbox = installer.sandbox
|
22
|
+
|
23
|
+
# Ensure we declare the sandbox (Pods/) as a package so each Pod (as a package) belongs to sandbox root package instead
|
24
|
+
FileUtils.touch(File.join(installer.config.sandbox_root, 'BUILD.bazel'))
|
25
|
+
|
22
26
|
build_files = Hash.new { |h, k| h[k] = StarlarkCompiler::BuildFile.new(workspace: workspace, package: k) }
|
23
27
|
installer.pod_targets.each do |pod_target|
|
24
28
|
package = sandbox.pod_dir(pod_target.pod_name).relative_path_from(workspace).to_s
|
@@ -34,8 +38,25 @@ module Pod
|
|
34
38
|
|
35
39
|
build_file = build_files[package]
|
36
40
|
|
37
|
-
|
38
|
-
|
41
|
+
targets_without_library_specification = pod_target.file_accessors.reject { |fa| fa.spec.library_specification? }.map do |fa|
|
42
|
+
Target.new(
|
43
|
+
installer,
|
44
|
+
pod_target,
|
45
|
+
fa.spec,
|
46
|
+
default_xcconfigs,
|
47
|
+
config.experimental_deps_debug_and_release
|
48
|
+
)
|
49
|
+
end
|
50
|
+
|
51
|
+
default_target = Target.new(
|
52
|
+
installer,
|
53
|
+
pod_target,
|
54
|
+
nil,
|
55
|
+
default_xcconfigs,
|
56
|
+
config.experimental_deps_debug_and_release
|
57
|
+
)
|
58
|
+
|
59
|
+
bazel_targets = [default_target] + targets_without_library_specification
|
39
60
|
|
40
61
|
bazel_targets.each do |t|
|
41
62
|
load = config.load_for(macro: t.type)
|
@@ -46,6 +67,13 @@ module Pod
|
|
46
67
|
|
47
68
|
build_files.each_value(&:save!)
|
48
69
|
format_files(build_files: build_files, buildifier: config.buildifier, workspace: workspace)
|
70
|
+
unless config.build_file_doc.empty?
|
71
|
+
build_files.each_key.each do |key|
|
72
|
+
path = File.join(workspace, key, 'BUILD.bazel')
|
73
|
+
content = File.read(path)
|
74
|
+
File.write(path, "\"\"\"\n#{config.build_file_doc}\n\"\"\"\n\n" + content)
|
75
|
+
end
|
76
|
+
end
|
49
77
|
|
50
78
|
cocoapods_bazel_path = File.join(sandbox.root, 'cocoapods-bazel')
|
51
79
|
FileUtils.mkdir_p cocoapods_bazel_path
|
@@ -60,11 +88,23 @@ module Pod
|
|
60
88
|
|
61
89
|
cocoapods_bazel_pkg = Pathname.new(path).relative_path_from Pathname.new(workspace)
|
62
90
|
configs_build_file = StarlarkCompiler::BuildFile.new(workspace: workspace, package: cocoapods_bazel_pkg)
|
63
|
-
|
64
91
|
configs_build_file.add_load(of: 'string_flag', from: '@bazel_skylib//rules:common_settings.bzl')
|
65
92
|
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new('string_flag', name: 'config', build_setting_default: 'debug', visibility: ['//visibility:public'])
|
66
|
-
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new('config_setting', name: 'debug', flag_values: { ':config' => 'debug' })
|
67
|
-
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new('config_setting', name: 'release', flag_values: { ':config' => 'release' })
|
93
|
+
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new('config_setting', name: 'debug', flag_values: { ':config' => 'debug' }, visibility: ['//visibility:public'])
|
94
|
+
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new('config_setting', name: 'release', flag_values: { ':config' => 'release' }, visibility: ['//visibility:public'])
|
95
|
+
|
96
|
+
if config.experimental_deps_debug_and_release
|
97
|
+
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new('string_flag', name: 'deps_config', build_setting_default: 'deps_debug', visibility: ['//visibility:public'])
|
98
|
+
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new(
|
99
|
+
'config_setting', name: 'deps_debug', flag_values: { ':deps_config' => 'deps_debug' }, visibility: ['//visibility:public']
|
100
|
+
)
|
101
|
+
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new(
|
102
|
+
'config_setting', name: 'deps_release', flag_values: { ':deps_config' => 'deps_release' }, visibility: ['//visibility:public']
|
103
|
+
)
|
104
|
+
configs_build_file.add_target StarlarkCompiler::AST::FunctionCall.new(
|
105
|
+
'config_setting', name: 'deps_debug_and_release', flag_values: { ':deps_config' => 'deps_debug_and_release' }, visibility: ['//visibility:public']
|
106
|
+
)
|
107
|
+
end
|
68
108
|
|
69
109
|
configs_build_file.save!
|
70
110
|
format_files(build_files: { cocoapods_bazel_pkg => configs_build_file }, buildifier: config.buildifier, workspace: workspace)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-bazel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shawn Chen
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2022-01-26 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -55,7 +55,6 @@ files:
|
|
55
55
|
- ".rubocop_todo.yml"
|
56
56
|
- CHANGELOG.md
|
57
57
|
- Gemfile
|
58
|
-
- Gemfile.lock
|
59
58
|
- LICENSE.txt
|
60
59
|
- README.md
|
61
60
|
- Rakefile
|
@@ -76,7 +75,6 @@ homepage: https://github.com/ob/cocoapods-bazel
|
|
76
75
|
licenses:
|
77
76
|
- apache2
|
78
77
|
metadata:
|
79
|
-
allowed_push_host: https://rubygems.org/
|
80
78
|
homepage_uri: https://github.com/ob/cocoapods-bazel
|
81
79
|
source_code_uri: https://github.com/ob/cocoapods-bazel
|
82
80
|
changelog_uri: https://github.com/ob/cocoapods-bazel/blob/master/CHANGELOG.md
|
@@ -95,8 +93,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
95
93
|
- !ruby/object:Gem::Version
|
96
94
|
version: '0'
|
97
95
|
requirements: []
|
98
|
-
|
99
|
-
rubygems_version: 2.7.7
|
96
|
+
rubygems_version: 3.1.4
|
100
97
|
signing_key:
|
101
98
|
specification_version: 4
|
102
99
|
summary: A plugin for CocoaPods that generates Bazel build files for pods
|
data/Gemfile.lock
DELETED
@@ -1,145 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
cocoapods-bazel (0.1.1)
|
5
|
-
starlark_compiler (~> 0.3)
|
6
|
-
|
7
|
-
GEM
|
8
|
-
remote: https://rubygems.org/
|
9
|
-
specs:
|
10
|
-
CFPropertyList (3.0.3)
|
11
|
-
activesupport (5.2.4.4)
|
12
|
-
concurrent-ruby (~> 1.0, >= 1.0.2)
|
13
|
-
i18n (>= 0.7, < 2)
|
14
|
-
minitest (~> 5.1)
|
15
|
-
tzinfo (~> 1.1)
|
16
|
-
addressable (2.7.0)
|
17
|
-
public_suffix (>= 2.0.2, < 5.0)
|
18
|
-
algoliasearch (1.27.5)
|
19
|
-
httpclient (~> 2.8, >= 2.8.3)
|
20
|
-
json (>= 1.5.1)
|
21
|
-
ast (2.4.0)
|
22
|
-
atomos (0.1.3)
|
23
|
-
bacon (1.2.0)
|
24
|
-
claide (1.0.3)
|
25
|
-
clintegracon (0.9.0)
|
26
|
-
colored2 (~> 3.1)
|
27
|
-
diffy
|
28
|
-
cocoapods (1.10.1)
|
29
|
-
addressable (~> 2.6)
|
30
|
-
claide (>= 1.0.2, < 2.0)
|
31
|
-
cocoapods-core (= 1.10.1)
|
32
|
-
cocoapods-deintegrate (>= 1.0.3, < 2.0)
|
33
|
-
cocoapods-downloader (>= 1.4.0, < 2.0)
|
34
|
-
cocoapods-plugins (>= 1.0.0, < 2.0)
|
35
|
-
cocoapods-search (>= 1.0.0, < 2.0)
|
36
|
-
cocoapods-trunk (>= 1.4.0, < 2.0)
|
37
|
-
cocoapods-try (>= 1.1.0, < 2.0)
|
38
|
-
colored2 (~> 3.1)
|
39
|
-
escape (~> 0.0.4)
|
40
|
-
fourflusher (>= 2.3.0, < 3.0)
|
41
|
-
gh_inspector (~> 1.0)
|
42
|
-
molinillo (~> 0.6.6)
|
43
|
-
nap (~> 1.0)
|
44
|
-
ruby-macho (~> 1.4)
|
45
|
-
xcodeproj (>= 1.19.0, < 2.0)
|
46
|
-
cocoapods-core (1.10.1)
|
47
|
-
activesupport (> 5.0, < 6)
|
48
|
-
addressable (~> 2.6)
|
49
|
-
algoliasearch (~> 1.0)
|
50
|
-
concurrent-ruby (~> 1.1)
|
51
|
-
fuzzy_match (~> 2.0.4)
|
52
|
-
nap (~> 1.0)
|
53
|
-
netrc (~> 0.11)
|
54
|
-
public_suffix
|
55
|
-
typhoeus (~> 1.0)
|
56
|
-
cocoapods-deintegrate (1.0.4)
|
57
|
-
cocoapods-downloader (1.4.0)
|
58
|
-
cocoapods-plugins (1.0.0)
|
59
|
-
nap
|
60
|
-
cocoapods-search (1.0.0)
|
61
|
-
cocoapods-trunk (1.5.0)
|
62
|
-
nap (>= 0.8, < 2.0)
|
63
|
-
netrc (~> 0.11)
|
64
|
-
cocoapods-try (1.2.0)
|
65
|
-
colored2 (3.1.2)
|
66
|
-
concurrent-ruby (1.1.8)
|
67
|
-
diff-lcs (1.3)
|
68
|
-
diffy (3.3.0)
|
69
|
-
escape (0.0.4)
|
70
|
-
ethon (0.12.0)
|
71
|
-
ffi (>= 1.3.0)
|
72
|
-
ffi (1.14.2)
|
73
|
-
fourflusher (2.3.1)
|
74
|
-
fuzzy_match (2.0.4)
|
75
|
-
gh_inspector (1.1.3)
|
76
|
-
httpclient (2.8.3)
|
77
|
-
i18n (1.8.8)
|
78
|
-
concurrent-ruby (~> 1.0)
|
79
|
-
jaro_winkler (1.5.4)
|
80
|
-
json (2.5.1)
|
81
|
-
minitest (5.14.3)
|
82
|
-
molinillo (0.6.6)
|
83
|
-
nanaimo (0.3.0)
|
84
|
-
nap (1.1.0)
|
85
|
-
netrc (0.11.0)
|
86
|
-
parallel (1.19.1)
|
87
|
-
parser (2.6.5.0)
|
88
|
-
ast (~> 2.4.0)
|
89
|
-
prettybacon (0.0.2)
|
90
|
-
bacon (~> 1.2)
|
91
|
-
public_suffix (4.0.6)
|
92
|
-
rainbow (3.0.0)
|
93
|
-
rake (12.3.3)
|
94
|
-
rspec (3.9.0)
|
95
|
-
rspec-core (~> 3.9.0)
|
96
|
-
rspec-expectations (~> 3.9.0)
|
97
|
-
rspec-mocks (~> 3.9.0)
|
98
|
-
rspec-core (3.9.0)
|
99
|
-
rspec-support (~> 3.9.0)
|
100
|
-
rspec-expectations (3.9.0)
|
101
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
102
|
-
rspec-support (~> 3.9.0)
|
103
|
-
rspec-mocks (3.9.0)
|
104
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
105
|
-
rspec-support (~> 3.9.0)
|
106
|
-
rspec-support (3.9.0)
|
107
|
-
rubocop (0.78.0)
|
108
|
-
jaro_winkler (~> 1.5.1)
|
109
|
-
parallel (~> 1.10)
|
110
|
-
parser (>= 2.6)
|
111
|
-
rainbow (>= 2.2.2, < 4.0)
|
112
|
-
ruby-progressbar (~> 1.7)
|
113
|
-
unicode-display_width (>= 1.4.0, < 1.7)
|
114
|
-
ruby-macho (1.4.0)
|
115
|
-
ruby-progressbar (1.10.1)
|
116
|
-
starlark_compiler (0.3.0)
|
117
|
-
thread_safe (0.3.6)
|
118
|
-
typhoeus (1.4.0)
|
119
|
-
ethon (>= 0.9.0)
|
120
|
-
tzinfo (1.2.9)
|
121
|
-
thread_safe (~> 0.1)
|
122
|
-
unicode-display_width (1.6.0)
|
123
|
-
xcodeproj (1.19.0)
|
124
|
-
CFPropertyList (>= 2.3.3, < 4.0)
|
125
|
-
atomos (~> 0.1.3)
|
126
|
-
claide (>= 1.0.2, < 2.0)
|
127
|
-
colored2 (~> 3.1)
|
128
|
-
nanaimo (~> 0.3.0)
|
129
|
-
|
130
|
-
PLATFORMS
|
131
|
-
ruby
|
132
|
-
|
133
|
-
DEPENDENCIES
|
134
|
-
bacon (~> 1.2)
|
135
|
-
bundler (>= 2.1)
|
136
|
-
clintegracon (~> 0.9.0)
|
137
|
-
cocoapods (~> 1.9)
|
138
|
-
cocoapods-bazel!
|
139
|
-
prettybacon (~> 0.0.2)
|
140
|
-
rake (~> 12.3)
|
141
|
-
rspec (~> 3.9)
|
142
|
-
rubocop (~> 0.78)
|
143
|
-
|
144
|
-
BUNDLED WITH
|
145
|
-
2.2.8
|