plasmo_xcodeproj 1.21.1

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.
Files changed (69) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +19 -0
  3. data/README.md +95 -0
  4. data/bin/xcodeproj +10 -0
  5. data/lib/xcodeproj/command/config_dump.rb +91 -0
  6. data/lib/xcodeproj/command/project_diff.rb +56 -0
  7. data/lib/xcodeproj/command/show.rb +60 -0
  8. data/lib/xcodeproj/command/sort.rb +44 -0
  9. data/lib/xcodeproj/command/target_diff.rb +43 -0
  10. data/lib/xcodeproj/command.rb +63 -0
  11. data/lib/xcodeproj/config/other_linker_flags_parser.rb +73 -0
  12. data/lib/xcodeproj/config.rb +386 -0
  13. data/lib/xcodeproj/constants.rb +465 -0
  14. data/lib/xcodeproj/differ.rb +239 -0
  15. data/lib/xcodeproj/gem_version.rb +5 -0
  16. data/lib/xcodeproj/helper.rb +30 -0
  17. data/lib/xcodeproj/plist.rb +94 -0
  18. data/lib/xcodeproj/project/case_converter.rb +90 -0
  19. data/lib/xcodeproj/project/object/build_configuration.rb +255 -0
  20. data/lib/xcodeproj/project/object/build_file.rb +84 -0
  21. data/lib/xcodeproj/project/object/build_phase.rb +369 -0
  22. data/lib/xcodeproj/project/object/build_rule.rb +109 -0
  23. data/lib/xcodeproj/project/object/configuration_list.rb +117 -0
  24. data/lib/xcodeproj/project/object/container_item_proxy.rb +116 -0
  25. data/lib/xcodeproj/project/object/file_reference.rb +338 -0
  26. data/lib/xcodeproj/project/object/group.rb +506 -0
  27. data/lib/xcodeproj/project/object/helpers/build_settings_array_settings_by_object_version.rb +72 -0
  28. data/lib/xcodeproj/project/object/helpers/file_references_factory.rb +245 -0
  29. data/lib/xcodeproj/project/object/helpers/groupable_helper.rb +260 -0
  30. data/lib/xcodeproj/project/object/native_target.rb +751 -0
  31. data/lib/xcodeproj/project/object/reference_proxy.rb +86 -0
  32. data/lib/xcodeproj/project/object/root_object.rb +100 -0
  33. data/lib/xcodeproj/project/object/swift_package_product_dependency.rb +29 -0
  34. data/lib/xcodeproj/project/object/swift_package_remote_reference.rb +33 -0
  35. data/lib/xcodeproj/project/object/target_dependency.rb +94 -0
  36. data/lib/xcodeproj/project/object.rb +534 -0
  37. data/lib/xcodeproj/project/object_attributes.rb +522 -0
  38. data/lib/xcodeproj/project/object_dictionary.rb +210 -0
  39. data/lib/xcodeproj/project/object_list.rb +223 -0
  40. data/lib/xcodeproj/project/project_helper.rb +341 -0
  41. data/lib/xcodeproj/project/uuid_generator.rb +132 -0
  42. data/lib/xcodeproj/project.rb +874 -0
  43. data/lib/xcodeproj/scheme/abstract_scheme_action.rb +100 -0
  44. data/lib/xcodeproj/scheme/analyze_action.rb +19 -0
  45. data/lib/xcodeproj/scheme/archive_action.rb +59 -0
  46. data/lib/xcodeproj/scheme/build_action.rb +298 -0
  47. data/lib/xcodeproj/scheme/buildable_product_runnable.rb +55 -0
  48. data/lib/xcodeproj/scheme/buildable_reference.rb +129 -0
  49. data/lib/xcodeproj/scheme/command_line_arguments.rb +162 -0
  50. data/lib/xcodeproj/scheme/environment_variables.rb +170 -0
  51. data/lib/xcodeproj/scheme/execution_action.rb +86 -0
  52. data/lib/xcodeproj/scheme/launch_action.rb +179 -0
  53. data/lib/xcodeproj/scheme/location_scenario_reference.rb +49 -0
  54. data/lib/xcodeproj/scheme/macro_expansion.rb +34 -0
  55. data/lib/xcodeproj/scheme/profile_action.rb +57 -0
  56. data/lib/xcodeproj/scheme/remote_runnable.rb +92 -0
  57. data/lib/xcodeproj/scheme/send_email_action_content.rb +84 -0
  58. data/lib/xcodeproj/scheme/shell_script_action_content.rb +77 -0
  59. data/lib/xcodeproj/scheme/test_action.rb +394 -0
  60. data/lib/xcodeproj/scheme/xml_element_wrapper.rb +82 -0
  61. data/lib/xcodeproj/scheme.rb +375 -0
  62. data/lib/xcodeproj/user_interface.rb +22 -0
  63. data/lib/xcodeproj/workspace/file_reference.rb +79 -0
  64. data/lib/xcodeproj/workspace/group_reference.rb +67 -0
  65. data/lib/xcodeproj/workspace/reference.rb +40 -0
  66. data/lib/xcodeproj/workspace.rb +277 -0
  67. data/lib/xcodeproj/xcodebuild_helper.rb +108 -0
  68. data/lib/xcodeproj.rb +29 -0
  69. metadata +208 -0
@@ -0,0 +1,277 @@
1
+ require 'fileutils'
2
+ require 'rexml/document'
3
+ require 'xcodeproj/workspace/file_reference'
4
+ require 'xcodeproj/workspace/group_reference'
5
+
6
+ module Xcodeproj
7
+ # Provides support for generating, reading and serializing Xcode Workspace
8
+ # documents.
9
+ #
10
+ class Workspace
11
+ # @return [REXML::Document] the parsed XML model for the workspace contents
12
+ attr_reader :document
13
+
14
+ # @return [Hash<String => String>] a mapping from scheme name to project full path
15
+ # containing the scheme
16
+ attr_reader :schemes
17
+
18
+ # @return [Array<FileReference>] the paths of the projects contained in the
19
+ # workspace.
20
+ #
21
+ def file_references
22
+ return [] unless @document
23
+ @document.get_elements('/Workspace//FileRef').map do |node|
24
+ FileReference.from_node(node)
25
+ end
26
+ end
27
+
28
+ # @return [Array<GroupReference>] the groups contained in the workspace
29
+ #
30
+ def group_references
31
+ return [] unless @document
32
+ @document.get_elements('/Workspace//Group').map do |node|
33
+ GroupReference.from_node(node)
34
+ end
35
+ end
36
+
37
+ # @param [REXML::Document] document @see document
38
+ # @param [Array<FileReference>] file_references additional projects to add
39
+ #
40
+ # @note The document parameter is passed to the << operator if it is not a
41
+ # valid REXML::Document. It is optional, but may also be passed as nil
42
+ #
43
+ def initialize(document, *file_references)
44
+ @schemes = {}
45
+ if document.nil?
46
+ @document = REXML::Document.new(root_xml(''))
47
+ elsif document.is_a?(REXML::Document)
48
+ @document = document
49
+ else
50
+ @document = REXML::Document.new(root_xml(''))
51
+ self << document
52
+ end
53
+ file_references.each { |ref| self << ref }
54
+ end
55
+
56
+ #-------------------------------------------------------------------------#
57
+
58
+ # Returns a workspace generated by reading the contents of the given path.
59
+ #
60
+ # @param [String] path
61
+ # the path of the `xcworkspace` file.
62
+ #
63
+ # @return [Workspace] the generated workspace.
64
+ #
65
+ def self.new_from_xcworkspace(path)
66
+ from_s(File.read(File.join(path, 'contents.xcworkspacedata')),
67
+ File.expand_path(path))
68
+ rescue Errno::ENOENT
69
+ new(nil)
70
+ end
71
+
72
+ #-------------------------------------------------------------------------#
73
+
74
+ # Returns a workspace generated by reading the contents of the given
75
+ # XML representation.
76
+ #
77
+ # @param [String] xml
78
+ # the XML representation of the workspace.
79
+ #
80
+ # @return [Workspace] the generated workspace.
81
+ #
82
+ def self.from_s(xml, workspace_path = '')
83
+ document = REXML::Document.new(xml)
84
+ instance = new(document)
85
+ instance.load_schemes(workspace_path)
86
+ instance
87
+ end
88
+
89
+ # Adds a new path to the list of the of projects contained in the
90
+ # workspace.
91
+ # @param [String, Xcodeproj::Workspace::FileReference] path_or_reference
92
+ # A string or Xcode::Workspace::FileReference containing a path to an Xcode project
93
+ #
94
+ # @raise [ArgumentError] Raised if the input is neither a String nor a FileReference
95
+ #
96
+ # @return [void]
97
+ #
98
+ def <<(path_or_reference)
99
+ return unless @document && @document.respond_to?(:root)
100
+
101
+ case path_or_reference
102
+ when String
103
+ project_file_reference = Xcodeproj::Workspace::FileReference.new(path_or_reference)
104
+ when Xcodeproj::Workspace::FileReference
105
+ project_file_reference = path_or_reference
106
+ projpath = nil
107
+ else
108
+ raise ArgumentError, "Input to the << operator must be a file path or FileReference, got #{path_or_reference.inspect}"
109
+ end
110
+ unless file_references.any? { |ref| project_file_reference.eql? ref }
111
+ @document.root.add_element(project_file_reference.to_node)
112
+ end
113
+ load_schemes_from_project File.expand_path(projpath || project_file_reference.path)
114
+ end
115
+
116
+ #-------------------------------------------------------------------------#
117
+
118
+ # Adds a new group container to the workspace
119
+ # workspace.
120
+ #
121
+ # @param [String] name The name of the group
122
+ #
123
+ # @yield [Xcodeproj::Workspace::GroupReference, REXML::Element]
124
+ # Yields the GroupReference and underlying XML element for mutation
125
+ #
126
+ # @return [Xcodeproj::Workspace::GroupReference] The added group reference
127
+ #
128
+ def add_group(name)
129
+ return nil unless @document
130
+ group = Xcodeproj::Workspace::GroupReference.new(name)
131
+ elem = @document.root.add_element(group.to_node)
132
+ yield group, elem if block_given?
133
+ group
134
+ end
135
+
136
+ # Checks if the workspace contains the project with the given file
137
+ # reference.
138
+ #
139
+ # @param [FileReference] file_reference
140
+ # The file_reference to the project.
141
+ #
142
+ # @return [Boolean] whether the project is contained in the workspace.
143
+ #
144
+ def include?(file_reference)
145
+ file_references.include?(file_reference)
146
+ end
147
+
148
+ # @return [String] the XML representation of the workspace.
149
+ #
150
+ def to_s
151
+ contents = ''
152
+ stack = []
153
+ @document.root.each_recursive do |elem|
154
+ until stack.empty?
155
+ last = stack.last
156
+ break if last == elem.parent
157
+ contents += xcworkspace_element_end_xml(stack.length, last)
158
+ stack.pop
159
+ end
160
+
161
+ stack << elem
162
+ contents += xcworkspace_element_start_xml(stack.length, elem)
163
+ end
164
+
165
+ until stack.empty?
166
+ contents += xcworkspace_element_end_xml(stack.length, stack.last)
167
+ stack.pop
168
+ end
169
+
170
+ root_xml(contents)
171
+ end
172
+
173
+ # Saves the workspace at the given `xcworkspace` path.
174
+ #
175
+ # @param [String] path
176
+ # the path where to save the project.
177
+ #
178
+ # @return [void]
179
+ #
180
+ def save_as(path)
181
+ FileUtils.mkdir_p(path)
182
+ File.open(File.join(path, 'contents.xcworkspacedata'), 'w') do |out|
183
+ out << to_s
184
+ end
185
+ end
186
+
187
+ #-------------------------------------------------------------------------#
188
+
189
+ # Load all schemes from all projects in workspace or in the workspace container itself
190
+ #
191
+ # @param [String] workspace_dir_path
192
+ # path of workspaces dir
193
+ #
194
+ # @return [void]
195
+ #
196
+ def load_schemes(workspace_dir_path)
197
+ # Normalizes path to directory of workspace needed for file_reference.absolute_path
198
+ workspaces_dir = workspace_dir_path
199
+ if File.extname(workspace_dir_path) == '.xcworkspace'
200
+ workspaces_dir = File.expand_path('..', workspaces_dir)
201
+ end
202
+
203
+ file_references.each do |file_reference|
204
+ project_full_path = file_reference.absolute_path(workspaces_dir)
205
+ load_schemes_from_project(project_full_path)
206
+ end
207
+
208
+ # Load schemes that are in the workspace container.
209
+ workspace_abs_path = File.absolute_path(workspace_dir_path)
210
+ Dir[File.join(workspace_dir_path, 'xcshareddata', 'xcschemes', '*.xcscheme')].each do |scheme|
211
+ scheme_name = File.basename(scheme, '.xcscheme')
212
+ @schemes[scheme_name] = workspace_abs_path
213
+ end
214
+ end
215
+
216
+ private
217
+
218
+ # Load all schemes from project
219
+ #
220
+ # @param [String] project_full_path
221
+ # project full path
222
+ #
223
+ # @return [void]
224
+ #
225
+ def load_schemes_from_project(project_full_path)
226
+ schemes = Xcodeproj::Project.schemes project_full_path
227
+ schemes.each do |scheme_name|
228
+ @schemes[scheme_name] = project_full_path
229
+ end
230
+ end
231
+
232
+ # @return [String] The template of the workspace XML as formated by Xcode.
233
+ #
234
+ # @param [String] contents The XML contents of the workspace.
235
+ #
236
+ def root_xml(contents)
237
+ <<-DOC
238
+ <?xml version="1.0" encoding="UTF-8"?>
239
+ <Workspace
240
+ version = "1.0">
241
+ #{contents.rstrip}
242
+ </Workspace>
243
+ DOC
244
+ end
245
+
246
+ #
247
+ # @param [Integer] depth The depth of the element in the tree
248
+ # @param [REXML::Document::Element] elem The XML element to format.
249
+ #
250
+ # @return [String] The Xcode-specific XML formatting of an element start
251
+ #
252
+ def xcworkspace_element_start_xml(depth, elem)
253
+ attributes = case elem.name
254
+ when 'Group'
255
+ %w(location name)
256
+ when 'FileRef'
257
+ %w(location)
258
+ end
259
+ contents = "<#{elem.name}"
260
+ indent = ' ' * depth
261
+ attributes.each { |name| contents += "\n #{name} = \"#{elem.attribute(name)}\"" }
262
+ contents.split("\n").map { |line| "#{indent}#{line}" }.join("\n") + ">\n"
263
+ end
264
+
265
+ #
266
+ # @param [Integer] depth The depth of the element in the tree
267
+ # @param [REXML::Document::Element] elem The XML element to format.
268
+ #
269
+ # @return [String] The Xcode-specific XML formatting of an element end
270
+ #
271
+ def xcworkspace_element_end_xml(depth, elem)
272
+ "#{' ' * depth}</#{elem.name}>\n"
273
+ end
274
+
275
+ #-------------------------------------------------------------------------#
276
+ end
277
+ end
@@ -0,0 +1,108 @@
1
+ module Xcodeproj
2
+ # Helper class which returns information from xcodebuild.
3
+ #
4
+ class XcodebuildHelper
5
+ def initialize
6
+ @needs_to_parse_sdks = true
7
+ end
8
+
9
+ # @return [String] The version of the last iOS sdk.
10
+ #
11
+ def last_ios_sdk
12
+ parse_sdks_if_needed
13
+ versions_by_sdk[:ios].sort.last
14
+ end
15
+
16
+ # @return [String] The version of the last OS X sdk.
17
+ #
18
+ def last_osx_sdk
19
+ parse_sdks_if_needed
20
+ versions_by_sdk[:osx].sort.last
21
+ end
22
+
23
+ # @return [String] The version of the last tvOS sdk.
24
+ #
25
+ def last_tvos_sdk
26
+ parse_sdks_if_needed
27
+ versions_by_sdk[:tvos].sort.last
28
+ end
29
+
30
+ # @return [String] The version of the last watchOS sdk.
31
+ #
32
+ def last_watchos_sdk
33
+ parse_sdks_if_needed
34
+ versions_by_sdk[:watchos].sort.last
35
+ end
36
+
37
+ private
38
+
39
+ # !@group Private Helpers
40
+
41
+ #-------------------------------------------------------------------------#
42
+
43
+ # @return [Hash] The versions of the sdks grouped by name (`:ios`, or `:osx`).
44
+ #
45
+ attr_accessor :versions_by_sdk
46
+
47
+ # @return [void] Parses the SDKs returned by xcodebuild and stores the
48
+ # information in the `needs_to_parse_sdks` hash.
49
+ #
50
+ def parse_sdks_if_needed
51
+ if @needs_to_parse_sdks
52
+ @versions_by_sdk = {}
53
+ @versions_by_sdk[:osx] = []
54
+ @versions_by_sdk[:ios] = []
55
+ @versions_by_sdk[:tvos] = []
56
+ @versions_by_sdk[:watchos] = []
57
+ if xcodebuild_available?
58
+ sdks = parse_sdks_information(xcodebuild_sdks)
59
+ sdks.each do |(name, version)|
60
+ case
61
+ when name == 'macosx' then @versions_by_sdk[:osx] << version
62
+ when name == 'iphoneos' then @versions_by_sdk[:ios] << version
63
+ when name == 'appletvos' then @versions_by_sdk[:tvos] << version
64
+ when name == 'watchos' then @versions_by_sdk[:watchos] << version
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
70
+
71
+ # @return [Bool] Whether xcodebuild is available.
72
+ #
73
+ def xcodebuild_available?
74
+ if @xcodebuild_available.nil?
75
+ `which xcodebuild 2>/dev/null`
76
+ @xcodebuild_available = $?.exitstatus.zero?
77
+ end
78
+ @xcodebuild_available
79
+ end
80
+
81
+ # @return [Array<Array<String>>] An array of tuples where the first element
82
+ # is the name of the SDK and the second is the version.
83
+ #
84
+ def parse_sdks_information(output)
85
+ output.scan(/-sdk (macosx|iphoneos|watchos|appletvos)(.+\w)/)
86
+ end
87
+
88
+ # @return [String] The sdk information reported by xcodebuild.
89
+ #
90
+ def xcodebuild_sdks
91
+ `xcodebuild -showsdks 2>/dev/null`
92
+ end
93
+
94
+ #-------------------------------------------------------------------------#
95
+
96
+ # @!group Singleton
97
+
98
+ # @return [XcodebuildHelper] the current xcodebuild instance creating one
99
+ # if needed, which caches the information from the xcodebuild
100
+ # command line tool.
101
+ #
102
+ def self.instance
103
+ @instance ||= new
104
+ end
105
+
106
+ #-------------------------------------------------------------------------#
107
+ end
108
+ end
data/lib/xcodeproj.rb ADDED
@@ -0,0 +1,29 @@
1
+ module Xcodeproj
2
+ require 'pathname'
3
+ require 'claide'
4
+ require 'colored2'
5
+
6
+ class PlainInformative < StandardError
7
+ include CLAide::InformativeError
8
+ end
9
+
10
+ class Informative < PlainInformative
11
+ def message
12
+ super !~ /\[!\]/ ? "[!] #{super}\n".red : super
13
+ end
14
+ end
15
+
16
+ require 'xcodeproj/gem_version'
17
+ require 'xcodeproj/user_interface'
18
+
19
+ autoload :Command, 'xcodeproj/command'
20
+ autoload :Config, 'xcodeproj/config'
21
+ autoload :Constants, 'xcodeproj/constants'
22
+ autoload :Differ, 'xcodeproj/differ'
23
+ autoload :Helper, 'xcodeproj/helper'
24
+ autoload :Plist, 'xcodeproj/plist'
25
+ autoload :Project, 'xcodeproj/project'
26
+ autoload :Workspace, 'xcodeproj/workspace'
27
+ autoload :XCScheme, 'xcodeproj/scheme'
28
+ autoload :XcodebuildHelper, 'xcodeproj/xcodebuild_helper'
29
+ end
metadata ADDED
@@ -0,0 +1,208 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: plasmo_xcodeproj
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.21.1
5
+ platform: ruby
6
+ authors:
7
+ - Daniel Sinclair
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2022-04-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: atomos
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.1.3
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.1.3
27
+ - !ruby/object:Gem::Dependency
28
+ name: CFPropertyList
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 2.3.3
34
+ - - "<"
35
+ - !ruby/object:Gem::Version
36
+ version: '4.0'
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 2.3.3
44
+ - - "<"
45
+ - !ruby/object:Gem::Version
46
+ version: '4.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: claide
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 1.0.2
54
+ - - "<"
55
+ - !ruby/object:Gem::Version
56
+ version: '2.0'
57
+ type: :runtime
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: 1.0.2
64
+ - - "<"
65
+ - !ruby/object:Gem::Version
66
+ version: '2.0'
67
+ - !ruby/object:Gem::Dependency
68
+ name: colored2
69
+ requirement: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: '3.1'
74
+ type: :runtime
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '3.1'
81
+ - !ruby/object:Gem::Dependency
82
+ name: nanaimo
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: 0.3.0
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: 0.3.0
95
+ - !ruby/object:Gem::Dependency
96
+ name: rexml
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: 3.2.4
102
+ type: :runtime
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: 3.2.4
109
+ description: Xcodeproj lets you create and modify Xcode projects from Ruby. Script
110
+ boring management tasks or build Xcode-friendly libraries. Also includes support
111
+ for Xcode workspaces (.xcworkspace) and configuration files (.xcconfig).
112
+ email: d@niel.nyc
113
+ executables:
114
+ - xcodeproj
115
+ extensions: []
116
+ extra_rdoc_files: []
117
+ files:
118
+ - LICENSE
119
+ - README.md
120
+ - bin/xcodeproj
121
+ - lib/xcodeproj.rb
122
+ - lib/xcodeproj/command.rb
123
+ - lib/xcodeproj/command/config_dump.rb
124
+ - lib/xcodeproj/command/project_diff.rb
125
+ - lib/xcodeproj/command/show.rb
126
+ - lib/xcodeproj/command/sort.rb
127
+ - lib/xcodeproj/command/target_diff.rb
128
+ - lib/xcodeproj/config.rb
129
+ - lib/xcodeproj/config/other_linker_flags_parser.rb
130
+ - lib/xcodeproj/constants.rb
131
+ - lib/xcodeproj/differ.rb
132
+ - lib/xcodeproj/gem_version.rb
133
+ - lib/xcodeproj/helper.rb
134
+ - lib/xcodeproj/plist.rb
135
+ - lib/xcodeproj/project.rb
136
+ - lib/xcodeproj/project/case_converter.rb
137
+ - lib/xcodeproj/project/object.rb
138
+ - lib/xcodeproj/project/object/build_configuration.rb
139
+ - lib/xcodeproj/project/object/build_file.rb
140
+ - lib/xcodeproj/project/object/build_phase.rb
141
+ - lib/xcodeproj/project/object/build_rule.rb
142
+ - lib/xcodeproj/project/object/configuration_list.rb
143
+ - lib/xcodeproj/project/object/container_item_proxy.rb
144
+ - lib/xcodeproj/project/object/file_reference.rb
145
+ - lib/xcodeproj/project/object/group.rb
146
+ - lib/xcodeproj/project/object/helpers/build_settings_array_settings_by_object_version.rb
147
+ - lib/xcodeproj/project/object/helpers/file_references_factory.rb
148
+ - lib/xcodeproj/project/object/helpers/groupable_helper.rb
149
+ - lib/xcodeproj/project/object/native_target.rb
150
+ - lib/xcodeproj/project/object/reference_proxy.rb
151
+ - lib/xcodeproj/project/object/root_object.rb
152
+ - lib/xcodeproj/project/object/swift_package_product_dependency.rb
153
+ - lib/xcodeproj/project/object/swift_package_remote_reference.rb
154
+ - lib/xcodeproj/project/object/target_dependency.rb
155
+ - lib/xcodeproj/project/object_attributes.rb
156
+ - lib/xcodeproj/project/object_dictionary.rb
157
+ - lib/xcodeproj/project/object_list.rb
158
+ - lib/xcodeproj/project/project_helper.rb
159
+ - lib/xcodeproj/project/uuid_generator.rb
160
+ - lib/xcodeproj/scheme.rb
161
+ - lib/xcodeproj/scheme/abstract_scheme_action.rb
162
+ - lib/xcodeproj/scheme/analyze_action.rb
163
+ - lib/xcodeproj/scheme/archive_action.rb
164
+ - lib/xcodeproj/scheme/build_action.rb
165
+ - lib/xcodeproj/scheme/buildable_product_runnable.rb
166
+ - lib/xcodeproj/scheme/buildable_reference.rb
167
+ - lib/xcodeproj/scheme/command_line_arguments.rb
168
+ - lib/xcodeproj/scheme/environment_variables.rb
169
+ - lib/xcodeproj/scheme/execution_action.rb
170
+ - lib/xcodeproj/scheme/launch_action.rb
171
+ - lib/xcodeproj/scheme/location_scenario_reference.rb
172
+ - lib/xcodeproj/scheme/macro_expansion.rb
173
+ - lib/xcodeproj/scheme/profile_action.rb
174
+ - lib/xcodeproj/scheme/remote_runnable.rb
175
+ - lib/xcodeproj/scheme/send_email_action_content.rb
176
+ - lib/xcodeproj/scheme/shell_script_action_content.rb
177
+ - lib/xcodeproj/scheme/test_action.rb
178
+ - lib/xcodeproj/scheme/xml_element_wrapper.rb
179
+ - lib/xcodeproj/user_interface.rb
180
+ - lib/xcodeproj/workspace.rb
181
+ - lib/xcodeproj/workspace/file_reference.rb
182
+ - lib/xcodeproj/workspace/group_reference.rb
183
+ - lib/xcodeproj/workspace/reference.rb
184
+ - lib/xcodeproj/xcodebuild_helper.rb
185
+ homepage: https://github.com/DanielSinclair/Xcodeproj
186
+ licenses:
187
+ - MIT
188
+ metadata: {}
189
+ post_install_message:
190
+ rdoc_options: []
191
+ require_paths:
192
+ - lib
193
+ required_ruby_version: !ruby/object:Gem::Requirement
194
+ requirements:
195
+ - - ">="
196
+ - !ruby/object:Gem::Version
197
+ version: 2.0.0
198
+ required_rubygems_version: !ruby/object:Gem::Requirement
199
+ requirements:
200
+ - - ">="
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ requirements: []
204
+ rubygems_version: 3.0.3.1
205
+ signing_key:
206
+ specification_version: 3
207
+ summary: Create and modify Xcode projects from Ruby.
208
+ test_files: []