xcake 0.8.13 → 0.9.4

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 (61) hide show
  1. checksums.yaml +5 -5
  2. data/lib/xcake.rb +1 -2
  3. data/lib/xcake/command/make.rb +1 -3
  4. data/lib/xcake/constants.rb +10 -10
  5. data/lib/xcake/context.rb +0 -2
  6. data/lib/xcake/context/xcodeproj_context.rb +5 -8
  7. data/lib/xcake/core_ext/class.rb +14 -0
  8. data/lib/xcake/dependency_provider.rb +3 -3
  9. data/lib/xcake/dsl/build_phase/copy_files_build_phase.rb +1 -3
  10. data/lib/xcake/dsl/build_phase/shell_script_build_phase.rb +10 -0
  11. data/lib/xcake/dsl/build_rule.rb +2 -2
  12. data/lib/xcake/dsl/configurable.rb +10 -8
  13. data/lib/xcake/dsl/configuration/sugar.rb +1 -1
  14. data/lib/xcake/dsl/project.rb +1 -1
  15. data/lib/xcake/dsl/project/hooks.rb +4 -0
  16. data/lib/xcake/dsl/project/sugar.rb +17 -15
  17. data/lib/xcake/dsl/scheme.rb +2 -3
  18. data/lib/xcake/dsl/target.rb +13 -5
  19. data/lib/xcake/generator.rb +1 -0
  20. data/lib/xcake/generator/default_project_structure_generator.rb +5 -6
  21. data/lib/xcake/generator/project_generator.rb +3 -2
  22. data/lib/xcake/generator/scheme_generator.rb +31 -33
  23. data/lib/xcake/generator/target_file_reference_generator.rb +11 -10
  24. data/lib/xcake/generator/target_framework_generator.rb +6 -6
  25. data/lib/xcake/generator/target_library_generator.rb +5 -6
  26. data/lib/xcake/path_classifier.rb +23 -19
  27. data/lib/xcake/ui.rb +1 -1
  28. data/lib/xcake/version.rb +1 -1
  29. data/lib/xcake/xcode/project.rb +3 -2
  30. data/lib/xcake/xcode/scheme_list.rb +0 -2
  31. data/lib/xcake/xcodeproj_ext/PBXGroup.rb +12 -10
  32. data/lib/xcake/xcodeproj_ext/PBXNativeTarget.rb +2 -2
  33. metadata +135 -91
  34. data/.gitattributes +0 -1
  35. data/.gitignore +0 -39
  36. data/.rspec +0 -2
  37. data/.travis.yml +0 -16
  38. data/.yardopts +0 -7
  39. data/CHANGELOG.md +0 -329
  40. data/CODE_OF_CONDUCT.md +0 -13
  41. data/Gemfile +0 -4
  42. data/LICENSE.txt +0 -21
  43. data/README.md +0 -110
  44. data/Rakefile +0 -6
  45. data/bin/console +0 -10
  46. data/bin/setup +0 -7
  47. data/fastlane-plugin-xcake/Gemfile +0 -3
  48. data/fastlane-plugin-xcake/LICENSE +0 -21
  49. data/fastlane-plugin-xcake/README.md +0 -31
  50. data/fastlane-plugin-xcake/Rakefile +0 -6
  51. data/fastlane-plugin-xcake/fastlane-plugin-xcake.gemspec +0 -25
  52. data/fastlane-plugin-xcake/lib/fastlane/plugin/xcake.rb +0 -16
  53. data/fastlane-plugin-xcake/lib/fastlane/plugin/xcake/actions/xcake_action.rb +0 -34
  54. data/fastlane-plugin-xcake/lib/fastlane/plugin/xcake/version.rb +0 -5
  55. data/fastlane-plugin-xcake/spec/spec_helper.rb +0 -8
  56. data/hound.yml +0 -2
  57. data/lib/xcake/core_ext/array.rb +0 -5
  58. data/lib/xcake/core_ext/object.rb +0 -7
  59. data/rubocop.yml +0 -173
  60. data/rubocop_general.yml +0 -113
  61. data/xcake.gemspec +0 -40
data/Rakefile DELETED
@@ -1,6 +0,0 @@
1
- require 'bundler/gem_tasks'
2
- require 'rspec/core/rake_task'
3
-
4
- RSpec::Core::RakeTask.new(:spec)
5
-
6
- task default: :spec
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'bundler/setup'
4
-
5
- # You can add fixtures and/or initialization code here to make experimenting
6
- # with your gem easier. You can also use a different console, if you like.
7
-
8
- # (If you use this, don't forget to add pry to your Gemfile!)
9
- require 'pry'
10
- Pry.start
data/bin/setup DELETED
@@ -1,7 +0,0 @@
1
- #!/bin/bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
4
-
5
- bundle install
6
-
7
- # Do any other automated setup that you need to do here
@@ -1,3 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gemspec
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2016 fastlane
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
@@ -1,31 +0,0 @@
1
- # xcake `fastlane` Plugin
2
-
3
- [![Gem](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-xcake)
4
-
5
- ## Getting Started
6
-
7
- This project is a [fastlane](https://github.com/fastlane/fastlane) plugin. To get started with fastlane-plugin-xcake, add it to your project by running:
8
-
9
- ```bash
10
- fastlane add_plugin xcake
11
- ```
12
-
13
- ## About xcake
14
-
15
- Generate project using `xcake make`.
16
-
17
- ## Issues and Feedback
18
-
19
- For any other issues and feedback about this plugin, please submit it to this repository.
20
-
21
- ## Troubleshooting
22
-
23
- For some more detailed help with plugins problems, check out the [Plugins Troubleshooting](https://github.com/fastlane/fastlane/blob/master/fastlane/docs/PluginsTroubleshooting.md) doc in the main `fastlane` repo.
24
-
25
- ## Using `fastlane` Plugins
26
-
27
- For more information about how the `fastlane` plugin system works, check out the [Plugins documentation](https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Plugins.md) in the main `fastlane` repo.
28
-
29
- ## About `fastlane`
30
-
31
- `fastlane` automates building, testing, and releasing your app for beta and app store distributions. To learn more about `fastlane`, check out [fastlane.tools](https://fastlane.tools).
@@ -1,6 +0,0 @@
1
- require 'bundler/gem_tasks'
2
- require 'rspec/core/rake_task'
3
-
4
- RSpec::Core::RakeTask.new(:spec)
5
-
6
- task default: :spec
@@ -1,25 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'fastlane/plugin/xcake/version'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = 'fastlane-plugin-xcake'
8
- spec.version = Fastlane::Xcake::VERSION
9
- spec.authors = ['James Campbell']
10
- spec.email = ['james@supmenow.com']
11
-
12
- spec.summary = 'DSL for Xcode Projects.'
13
- spec.description = 'Create your Xcode projects automatically using a stupid simple DSL.'
14
- spec.homepage = 'https://github.com/jcampbell05/xcake/'
15
- spec.license = 'MIT'
16
-
17
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
- spec.require_paths = ['lib']
19
-
20
- spec.add_dependency 'xcake'
21
-
22
- spec.add_development_dependency 'rspec', '~> 3.4.0'
23
- spec.add_development_dependency 'fastlane', '~> 1.89'
24
- spec.add_development_dependency 'pry'
25
- end
@@ -1,16 +0,0 @@
1
- require 'fastlane/plugin/xcake/version'
2
-
3
- module Fastlane
4
- module Xcake
5
- # Return all .rb files inside the "actions" and "helper" directory
6
- def self.all_classes
7
- Dir[File.expand_path('*/{actions,helper}/*.rb', File.dirname(__FILE__))]
8
- end
9
- end
10
- end
11
-
12
- # By default we want to import all available actions and helpers
13
- # A plugin can contain any number of actions and plugins
14
- Fastlane::Xcake.all_classes.each do |current|
15
- require current
16
- end
@@ -1,34 +0,0 @@
1
- module Fastlane
2
- module Actions
3
- class XcakeAction < Action
4
- def self.run(_params)
5
- require 'xcake'
6
-
7
- if defined?(::Xcake::Command::Make)
8
- # New `xcake make` command
9
- ::Xcake::Command::Make.run
10
- else
11
- # Legacy `xcake` command
12
- ::Xcake::Command.run
13
- end
14
- end
15
-
16
- def self.description
17
- 'Runs `xcake` for the project'
18
- end
19
-
20
- def self.available_options
21
- [
22
- ]
23
- end
24
-
25
- def self.is_supported?(platform)
26
- [:ios, :mac].include? platform
27
- end
28
-
29
- def self.authors
30
- ['jcampbell05']
31
- end
32
- end
33
- end
34
- end
@@ -1,5 +0,0 @@
1
- module Fastlane
2
- module Xcake
3
- VERSION = '0.1.0'.freeze
4
- end
5
- end
@@ -1,8 +0,0 @@
1
- $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
-
3
- # This module is only used to check the environment is currently a testing env
4
- module SpecHelper
5
- end
6
-
7
- require 'fastlane' # to import the Action super class
8
- require 'fastlane/plugin/xcake' # import the actual plugin
data/hound.yml DELETED
@@ -1,2 +0,0 @@
1
- ruby:
2
- config_file: .rubocop.yml
@@ -1,5 +0,0 @@
1
- class Array
2
- def to_h
3
- Hash[*flatten(1)]
4
- end
5
- end
@@ -1,7 +0,0 @@
1
- class Object
2
- # Returns all descendants of a class
3
- #
4
- def self.descendants
5
- ObjectSpace.each_object(Class).select { |klass| klass < self }
6
- end
7
- end
@@ -1,173 +0,0 @@
1
- ##################
2
- # All rules specific to this repo
3
- ##################
4
-
5
- inherit_from: .rubocop_general.yml
6
-
7
- # e.g.
8
- # def self.is_supported?(platform)
9
- # we may never use `platform`
10
- Lint/UnusedMethodArgument:
11
- Enabled: false
12
-
13
- # the let(:key) { ... }
14
- Lint/ParenthesesAsGroupedExpression:
15
- Exclude:
16
- - 'spec/**/*'
17
-
18
- # We use `is_supported?` everywhere already
19
- Style/PredicateName:
20
- Enabled: false
21
-
22
- # Disable '+ should be surrounded with a single space' for xcodebuild_spec.rb
23
- Style/SpaceAroundOperators:
24
- Exclude:
25
- - 'spec/actions_specs/xcodebuild_spec.rb'
26
-
27
- Metrics/MethodLength:
28
- Exclude:
29
- - 'lib/fastlane/actions/*.rb'
30
- - 'bin/fastlane'
31
-
32
- AllCops:
33
- Include:
34
- - 'fastlane/Fastfile'
35
- Exclude:
36
- - 'lib/assets/custom_action_template.rb'
37
-
38
- # Offense count: 20
39
- Metrics/AbcSize:
40
- Max: 63
41
-
42
- # Offense count: 7
43
- # Configuration parameters: CountComments.
44
- Metrics/ClassLength:
45
- Max: 320
46
-
47
- # Offense count: 4
48
- Metrics/CyclomaticComplexity:
49
- Max: 17
50
-
51
- # Offense count: 489
52
- # Configuration parameters: AllowURI, URISchemes.
53
- Metrics/LineLength:
54
- Max: 372
55
-
56
- # Offense count: 5
57
- # Configuration parameters: CountKeywordArgs.
58
- Metrics/ParameterLists:
59
- Max: 17
60
-
61
- # Offense count: 3
62
- Metrics/PerceivedComplexity:
63
- Max: 18
64
-
65
- # Offense count: 1
66
- # Cop supports --auto-correct.
67
- Style/Alias:
68
- Enabled: false
69
-
70
- # Offense count: 14
71
- # Cop supports --auto-correct.
72
- # Configuration parameters: EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle, SupportedLastArgumentHashStyles.
73
- Style/AlignHash:
74
- Enabled: false
75
-
76
- # Offense count: 22
77
- # Cop supports --auto-correct.
78
- # Configuration parameters: EnforcedStyle, SupportedStyles.
79
- Style/AndOr:
80
- Enabled: false
81
-
82
- # Offense count: 1
83
- # Configuration parameters: EnforcedStyle, SupportedStyles.
84
- Style/ClassAndModuleChildren:
85
- Enabled: false
86
-
87
- # Offense count: 19
88
- Style/Documentation:
89
- Enabled: false
90
-
91
- # Offense count: 112
92
- # Cop supports --auto-correct.
93
- # Configuration parameters: EnforcedStyle, SupportedStyles.
94
- Style/DotPosition:
95
- Enabled: false
96
-
97
- # Offense count: 12
98
- # Cop supports --auto-correct.
99
- # Configuration parameters: EnforcedStyle, SupportedStyles.
100
- Style/EmptyLinesAroundClassBody:
101
- Enabled: false
102
-
103
- # Configuration parameters: MinBodyLength.
104
- Style/GuardClause:
105
- Enabled: false
106
-
107
- # Offense count: 4
108
- # Cop supports --auto-correct.
109
- # Configuration parameters: MaxLineLength.
110
- Style/IfUnlessModifier:
111
- Enabled: false
112
-
113
- # Offense count: 74
114
- # Cop supports --auto-correct.
115
- # Configuration parameters: EnforcedStyle, SupportedStyles.
116
- Style/MultilineOperationIndentation:
117
- Enabled: false
118
-
119
- # Offense count: 10
120
- # Cop supports --auto-correct.
121
- Style/NumericLiterals:
122
- MinDigits: 14
123
-
124
- # Offense count: 2
125
- # Cop supports --auto-correct.
126
- Style/PerlBackrefs:
127
- Enabled: false
128
-
129
- # Offense count: 19
130
- # Cop supports --auto-correct.
131
- # Configuration parameters: AllowMultipleReturnValues.
132
- Style/RedundantReturn:
133
- Enabled: false
134
-
135
- # Offense count: 77
136
- # Cop supports --auto-correct.
137
- Style/RedundantSelf:
138
- Enabled: false
139
-
140
- # Offense count: 38
141
- # Cop supports --auto-correct.
142
- # Configuration parameters: EnforcedStyle, SupportedStyles.
143
- Style/SignalException:
144
- Enabled: false
145
-
146
- # Offense count: 5
147
- # Cop supports --auto-correct.
148
- # Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
149
- Style/SpaceInsideBlockBraces:
150
- Enabled: false
151
-
152
- # Offense count: 291
153
- # Cop supports --auto-correct.
154
- # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SupportedStyles.
155
- Style/SpaceInsideHashLiteralBraces:
156
- Enabled: false
157
-
158
- # Offense count: 8
159
- # Cop supports --auto-correct.
160
- Style/SpaceInsideParens:
161
- Enabled: false
162
-
163
- # Offense count: 881
164
- # Cop supports --auto-correct.
165
- # Configuration parameters: EnforcedStyle, SupportedStyles.
166
- Style/StringLiterals:
167
- Enabled: false
168
-
169
- # Offense count: 9
170
- # Cop supports --auto-correct.
171
- # Configuration parameters: WordRegex.
172
- Style/WordArray:
173
- MinSize: 19
@@ -1,113 +0,0 @@
1
-
2
- Style/ClassCheck:
3
- EnforcedStyle: kind_of?
4
-
5
- # Cop supports --auto-correct.
6
- # Configuration parameters: EnforcedStyle, SupportedStyles.
7
- Style/BracesAroundHashParameters:
8
- Enabled: false
9
-
10
- Lint/UselessAssignment:
11
- Exclude:
12
- - 'spec/**/*'
13
-
14
- # Cop supports --auto-correct.
15
- # Configuration parameters: EnforcedStyle, SupportedStyles.
16
- Style/IndentHash:
17
- Enabled: false
18
-
19
- Style/RaiseArgs:
20
- EnforcedStyle: exploded
21
-
22
- Style/DoubleNegation:
23
- Enabled: false
24
-
25
- Lint/HandleExceptions:
26
- Enabled: false
27
-
28
- # Cop supports --auto-correct.
29
- Lint/UnusedBlockArgument:
30
- Enabled: false
31
-
32
- # Needed for $verbose
33
- Style/GlobalVars:
34
- Enabled: false
35
-
36
- Style/FileName:
37
- Enabled: false
38
-
39
- # $? Exit
40
- Style/SpecialGlobalVars:
41
- Enabled: false
42
-
43
- # the let(:key) { ... } should be allowed in tests
44
- Lint/ParenthesesAsGroupedExpression:
45
- Exclude:
46
- - 'spec/**/*'
47
-
48
- # options.rb might be large, we know that
49
- Metrics/MethodLength:
50
- Max: 60
51
- Exclude:
52
- - 'lib/*/options.rb'
53
-
54
- Metrics/AbcSize:
55
- Max: 60
56
- Exclude:
57
- - 'lib/*/options.rb'
58
-
59
- # Both string notations are okay
60
- Style/StringLiterals:
61
- Enabled: false
62
-
63
- # The %w might be confusing for new users
64
- Style/WordArray:
65
- MinSize: 19
66
-
67
- # Not a good thing
68
- Style/RedundantSelf:
69
- Enabled: false
70
-
71
- # raise and fail are both okay
72
- Style/SignalException:
73
- Enabled: false
74
-
75
- # Better too much 'return' than one missing
76
- Style/RedundantReturn:
77
- Enabled: false
78
-
79
- # Having if in the same line might not always be good
80
- Style/IfUnlessModifier:
81
- Enabled: false
82
-
83
- # That looks wrong
84
- Style/AlignHash:
85
- Enabled: false
86
-
87
- # and and or is okay
88
- Style/AndOr:
89
- Enabled: false
90
-
91
- # Configuration parameters: CountComments.
92
- Metrics/ClassLength:
93
- Max: 320
94
-
95
- Metrics/CyclomaticComplexity:
96
- Max: 17
97
-
98
- # Configuration parameters: AllowURI, URISchemes.
99
- Metrics/LineLength:
100
- Max: 370
101
-
102
- # Configuration parameters: CountKeywordArgs.
103
- Metrics/ParameterLists:
104
- Max: 17
105
-
106
- Metrics/PerceivedComplexity:
107
- Max: 18
108
-
109
- Style/DotPosition:
110
- Enabled: false
111
-
112
- Style/GuardClause:
113
- Enabled: false