synx 0.0.52 → 0.0.53

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- YzdhZjY3ZjRkNjJkOTgzOTIzYTE1YmI2ZTBhY2JmNjMxNjA3NTU2Yw==
5
- data.tar.gz: !binary |-
6
- MjFmMzIxZjM1MjYzZTYzYWRjYzg5YTY2M2I4ZjA2NDY1YTQ1NThiMQ==
2
+ SHA1:
3
+ metadata.gz: 5043440d8edbbb67b2ef33b532a58059c61d12ed
4
+ data.tar.gz: c4fd56cb0af56f445ddc9756088b6c92c0cba029
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- Y2RhN2E4MmUwYjViNGQ0ZDgzYjM1MzVhN2M3NDE1MTFlM2FhOGE2MmZmOTQ0
10
- YmJjMzJlNDM1ZTNkMGIyZjY3MGI1NTVlYWY4NGFlMDljYmVlYzA0OGEzM2Mz
11
- ZWZmN2I1MzNjNWViN2NiYmJlODgyZTRiN2RlYWQ1N2FkNDJlZjA=
12
- data.tar.gz: !binary |-
13
- ZjMxMWMwNWY2OGEyNzMyZWRiN2Y3N2Y1NTRjODY2NjEzNTMwMjZlMjhkM2Qw
14
- N2UyZTJmN2Y3MDYxMDA2YWE2YjFlM2MwMGMyN2MzZDlhYjdkOTVjOTM0YTM3
15
- ODc5ZDI3Mjg2ZGE0OTY4ZTMzYTI0OGY1YzkzZTc5YjgwZDUyMjg=
6
+ metadata.gz: f7cfb4d9ca835d619aec07971e5ae968384a5c91140080528d563da18730957396ced3ca088b82a3859677ff6dfdfaacdf169ff4f84705fb1131b8cb5ee2811b
7
+ data.tar.gz: 08a25df38b0915f8cac88728f3c2d80f78624dfda690324c78d300fce5b6886cc79009ca3fdfa02d8dceae6bbdf6d91bb358950171361c7c452cff10ebba2243
data/README.md CHANGED
@@ -1,8 +1,8 @@
1
+ ![synx logo](https://raw.githubusercontent.com/venmo/synx/marklarr/dev/docs/images/synx-logo.png?token=760261__eyJzY29wZSI6IlJhd0Jsb2I6dmVubW8vc3lueC9tYXJrbGFyci9kZXYvZG9jcy9pbWFnZXMvc3lueC1sb2dvLnBuZyIsImV4cGlyZXMiOjE0MDE5MzExNDF9--6c8a22318eaafed2185cb16d39189dcadb75c742)
2
+
1
3
  [![Gem Version](https://badge.fury.io/rb/synx.svg)](http://badge.fury.io/rb/synx)
2
4
  [![Build Status](https://travis-ci.org/venmo/synx.svg?branch=master)](https://travis-ci.org/venmo/synx)
3
5
 
4
- ![synx logo](https://raw.githubusercontent.com/venmo/synx/marklarr/dev/docs/images/synx-logo.png?token=760261__eyJzY29wZSI6IlJhd0Jsb2I6dmVubW8vc3lueC9tYXJrbGFyci9kZXYvZG9jcy9pbWFnZXMvc3lueC1sb2dvLnBuZyIsImV4cGlyZXMiOjE0MDE5MzExNDF9--6c8a22318eaafed2185cb16d39189dcadb75c742)
5
-
6
6
  A command-line tool that reorganizes your Xcode project folder to match your Xcode groups.
7
7
 
8
8
  ![synx gif](https://raw.githubusercontent.com/venmo/synx/marklarr/dev/docs/images/synx.gif?token=760261__eyJzY29wZSI6IlJhd0Jsb2I6dmVubW8vc3lueC9tYXJrbGFyci9kZXYvZG9jcy9pbWFnZXMvc3lueC5naWYiLCJleHBpcmVzIjoxNDAxODU2NzAyfQ%3D%3D--fc7d8546f3d4860df9024b1ee82ea13b86a2da88)
@@ -41,7 +41,9 @@ Synx supports the following options:
41
41
 
42
42
  ```
43
43
  --prune, -p remove source files and image resources that are not referenced by the the xcode project
44
+ --no-color removes all color from the output
44
45
  --no-default-exclusions doesn't use the default exclusions of /Libraries, /Frameworks, and /Products
46
+ --quiet, -q silence all output
45
47
  --exclusion, -e EXCLUSION ignore an Xcode group while syncing
46
48
  ```
47
49
 
@@ -53,11 +55,10 @@ if they wanted to not sync the `/OCMock/Core Mocks` and `/OCMockTests` groups, a
53
55
 
54
56
  ## Contributing
55
57
 
56
- 1. Fork it
57
- 2. Create your feature branch (`git checkout -b my-new-feature`)
58
- 3. Commit your changes (`git commit -am 'Add some feature'`)
59
- 4. Push to the branch (`git push origin my-new-feature`)
60
- 5. Create a new Pull Request
58
+ We'd love to see your ideas for improving this library! The best way to contribute is by submitting a pull request. We'll do our best to respond to your patch as soon as possible. You can also submit a [new Github issue](https://github.com/venmo/synx/issues/new) if you find bugs or have questions. :octocat:
59
+
60
+ Please make sure to follow our general coding style and add test coverage for new features!
61
+
61
62
 
62
63
  ## Contributors
63
64
 
data/bin/synx CHANGED
@@ -1,19 +1,20 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require 'clamp'
4
- require File.join(File.dirname(__FILE__), '..', 'lib', 'synx')
4
+ require 'synx'
5
5
 
6
6
  Clamp do
7
7
 
8
8
  parameter "xcodeproj", "Path to the xcodeproj", :attribute_name => :xcodeproj_path
9
9
  option ["--prune", "-p"], :flag, "remove source files and image resources that are not referenced by the the xcode project"
10
+ option "--no-color", :flag, "removes all color from the output"
10
11
  option "--no-default-exclusions", :flag, "doesn't use the default exclusions of /Libraries, /Frameworks, and /Products"
11
12
  option ["--quiet", "-q"], :flag, "silence all output"
12
13
  option ["--exclusion", "-e"], "EXCLUSION", "ignore an Xcode group while syncing", :multivalued => true
13
14
 
14
15
  def execute
15
16
  project = Synx::Project.open(xcodeproj_path)
16
- project.sync(:prune => prune?, :quiet => quiet?, :no_default_exclusions => no_default_exclusions?, :group_exclusions => exclusion_list)
17
+ project.sync(:prune => prune?, :quiet => quiet?, :no_color => no_color?, :no_default_exclusions => no_default_exclusions?, :group_exclusions => exclusion_list)
17
18
  end
18
19
 
19
20
  end
data/lib/synx.rb CHANGED
@@ -1,13 +1,6 @@
1
+ require "synx/xcodeproj_ext"
1
2
  require "synx/version"
2
3
  require "synx/project"
3
- require "synx/pbx_file_reference"
4
- require "synx/pbx_group"
5
- require "synx/abstract_object"
6
- require "synx/abstract_target"
7
- require "synx/pbx_variant_group"
8
4
  require "synx/tabber"
9
5
 
10
- require "colored"
11
-
12
- module Synx
13
- end
6
+ require "colorize"
data/lib/synx/project.rb CHANGED
@@ -7,7 +7,7 @@ module Synx
7
7
  SYNXRONIZE_DIR = File.join(ENV["HOME"], '.synx')
8
8
  private_constant :SYNXRONIZE_DIR
9
9
 
10
- DEFAULT_EXCLUSIONS = %W(/Libraries /Frameworks /Products)
10
+ DEFAULT_EXCLUSIONS = %W(/Libraries /Frameworks /Products /Pods)
11
11
  private_constant :DEFAULT_EXCLUSIONS
12
12
 
13
13
  attr_accessor :delayed_groups_set_path, :group_exclusions, :prune
@@ -18,7 +18,7 @@ module Synx
18
18
  Synx::Tabber.increase
19
19
  Synx::Tabber.puts "Syncing files that are included in Xcode project...".bold.white
20
20
  main_group.all_groups.each { |gr| gr.sync(main_group) }
21
- puts "\n\n" unless options[:quiet]
21
+ Synx::Tabber.puts "\n\n"
22
22
  Synx::Tabber.puts "Syncing files that are not included in Xcode project..".bold.white
23
23
  main_group.all_groups.each(&:move_entries_not_in_xcodeproj)
24
24
  transplant_work_project
@@ -49,7 +49,7 @@ module Synx
49
49
 
50
50
  self.group_exclusions |= options[:group_exclusions] if options[:group_exclusions]
51
51
 
52
- Synx::Tabber.quiet = options[:quiet]
52
+ Synx::Tabber.options = options
53
53
  end
54
54
  private :set_options
55
55
 
@@ -93,21 +93,20 @@ module Synx
93
93
  end
94
94
 
95
95
  def group_exclusions=(new_exclusions)
96
- new_exclusions.each do |exclusion|
96
+ @group_exclusions = new_exclusions.map do |exclusion|
97
97
  # Group paths always start with a '/', so put one there if it isn't already.
98
- exclusion.prepend("/") unless exclusion[0] == "/"
98
+ exclusion = "/" + exclusion unless exclusion[0] == "/"
99
99
  # Don't check our own default exclusions -- they may not have it in their project.
100
100
  unless DEFAULT_EXCLUSIONS.include?(exclusion)
101
101
  # remove leading '/' for this check
102
- exclusion = exclusion.dup
103
- exclusion[0] = ''
104
- unless self[exclusion]
105
- raise IndexError, "No group #{exclusion} exists"
102
+ exclusionCopy = exclusion.dup
103
+ exclusionCopy[0] = ''
104
+ unless self[exclusionCopy]
105
+ raise IndexError, "No group #{exclusionCopy} exists"
106
106
  end
107
107
  end
108
+ exclusion
108
109
  end
109
-
110
- @group_exclusions = new_exclusions
111
110
  end
112
111
 
113
112
  def has_object_for_pathname?(pathname)
data/lib/synx/tabber.rb CHANGED
@@ -1,38 +1,39 @@
1
1
  module Synx
2
2
  class Tabber
3
3
 
4
- @@quiet = false
5
- @@tabbing = 0
4
+ @options = {}
5
+ @tabbing = 0
6
6
 
7
7
  class << self
8
8
  def increase(n=1)
9
- @@tabbing += n
9
+ @tabbing += n
10
10
  end
11
11
 
12
12
  def decrease(n=1)
13
- @@tabbing -= n
14
- @@tabbing = 0 if @@tabbing < 0
13
+ @tabbing -= n
14
+ @tabbing = 0 if @tabbing < 0
15
15
  end
16
16
 
17
17
  def current
18
- @@tabbing
18
+ @tabbing
19
19
  end
20
20
 
21
21
  def reset
22
- @@tabbing = 0
23
- self.quiet = false
22
+ @tabbing = 0
23
+ self.options = {}
24
24
  end
25
25
 
26
- def quiet=(quiet)
27
- @@quiet = quiet
26
+ def options=(options = {})
27
+ @options = options
28
28
  end
29
29
 
30
- def quiet?
31
- @@quiet
30
+ def options
31
+ @options
32
32
  end
33
33
 
34
34
  def puts(str="")
35
- Kernel.puts (a_single_tab * @@tabbing) + str.to_s unless quiet?
35
+ str = str.uncolorize if options[:no_color]
36
+ output.puts (a_single_tab * @tabbing) + str.to_s unless options[:quiet]
36
37
  end
37
38
 
38
39
  def a_single_tab
@@ -40,6 +41,11 @@ module Synx
40
41
  end
41
42
  private :a_single_tab
42
43
 
44
+ def output
45
+ options.fetch(:output, $stdout)
46
+ end
47
+ private :output
48
+
43
49
  end
44
50
  end
45
51
  end
data/lib/synx/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Synx
2
- VERSION = "0.0.52"
2
+ VERSION = "0.0.53"
3
3
  end
@@ -0,0 +1,7 @@
1
+ require "xcodeproj"
2
+
3
+ require "synx/xcodeproj_ext/project/object/pbx_file_reference"
4
+ require "synx/xcodeproj_ext/project/object/pbx_group"
5
+ require "synx/xcodeproj_ext/project/object/abstract_object"
6
+ require "synx/xcodeproj_ext/project/object/abstract_target"
7
+ require "synx/xcodeproj_ext/project/object/pbx_variant_group"
@@ -1,5 +1,3 @@
1
- require 'xcodeproj'
2
-
3
1
  module Xcodeproj
4
2
  class Project
5
3
  module Object
@@ -41,4 +39,4 @@ module Xcodeproj
41
39
  end
42
40
  end
43
41
  end
44
- end
42
+ end
@@ -1,5 +1,3 @@
1
- require 'xcodeproj'
2
-
3
1
  module Xcodeproj
4
2
  class Project
5
3
  module Object
@@ -12,4 +10,4 @@ module Xcodeproj
12
10
  end
13
11
  end
14
12
  end
15
- end
13
+ end
@@ -1,10 +1,8 @@
1
- require 'xcodeproj'
2
-
3
1
  module Xcodeproj
4
2
  class Project
5
3
  module Object
6
4
  class PBXFileReference
7
-
5
+
8
6
  def sync(group)
9
7
  if should_sync?
10
8
  if should_move?
@@ -25,10 +23,10 @@ module Xcodeproj
25
23
  end
26
24
 
27
25
  def output
28
- build_settings_ammended = "(build settings ammended: #{@setting_keys_changed.join(", ")})" if @setting_keys_changed.count > 0
26
+ build_settings_amended = "(build settings amended: #{@setting_keys_changed.join(", ")})" if @setting_keys_changed.count > 0
29
27
  removed_from_groups = "(had multiple parent groups, removed from groups: #{@removed_from_groups.join(", ")})" if @removed_from_groups.count > 0
30
- str_output = "#{basename} #{build_settings_ammended} #{removed_from_groups}"
31
- str_output = str_output.yellow if removed_from_groups || build_settings_ammended
28
+ str_output = "#{basename} #{build_settings_amended} #{removed_from_groups}"
29
+ str_output = str_output.yellow if removed_from_groups || build_settings_amended
32
30
  Synx::Tabber.puts str_output
33
31
  end
34
32
 
@@ -48,7 +46,7 @@ module Xcodeproj
48
46
  def change_build_settings_reference
49
47
  @setting_keys_changed = []
50
48
  return unless basename =~ /\.(pch|plist)$/
51
-
49
+
52
50
  project.targets.each do |t|
53
51
  t.each_build_settings do |bs|
54
52
  ["INFOPLIST_FILE", "GCC_PREFIX_HEADER"].each do |setting_key|
@@ -67,4 +65,4 @@ module Xcodeproj
67
65
  end
68
66
  end
69
67
  end
70
- end
68
+ end
@@ -1,10 +1,8 @@
1
- require 'xcodeproj'
2
-
3
1
  module Xcodeproj
4
2
  class Project
5
3
  module Object
6
4
  class PBXGroup
7
-
5
+
8
6
  def sync(group)
9
7
  ensure_internal_consistency(group)
10
8
  if excluded_from_sync?
@@ -61,7 +59,7 @@ module Xcodeproj
61
59
 
62
60
  def handle_unused_entry(entry_pathname)
63
61
  entries_to_ignore = %W(.DS_Store)
64
- unless entries_to_ignore.include?(entry_pathname.basename.to_s)
62
+ unless entries_to_ignore.include?(entry_pathname.basename.to_s)
65
63
  if entry_pathname.directory?
66
64
  work_entry_pathname = project.pathname_to_work_pathname(entry_pathname)
67
65
  # The directory may have already been created for one of two reasons
@@ -134,4 +132,4 @@ module Xcodeproj
134
132
  end
135
133
  end
136
134
  end
137
- end
135
+ end
@@ -1,10 +1,8 @@
1
- require 'xcodeproj'
2
-
3
1
  module Xcodeproj
4
2
  class Project
5
3
  module Object
6
4
  class PBXVariantGroup
7
-
5
+
8
6
  # Need to retain *.lproj files on the system
9
7
  def sync(group)
10
8
  ensure_internal_consistency(group)
data/spec/spec_helper.rb CHANGED
@@ -1,11 +1,9 @@
1
1
  require 'bundler/setup'
2
- Bundler.setup
3
-
4
2
  require 'synx'
5
3
  require 'pry'
6
4
 
7
- DUMMY_SYNX_PATH = File.join(File.dirname(__FILE__), 'dummy')
8
- DUMMY_SYNX_TEST_PATH = File.join(File.dirname(__FILE__), 'test_dummy')
5
+ DUMMY_SYNX_PATH = File.expand_path('../dummy', __FILE__)
6
+ DUMMY_SYNX_TEST_PATH = File.expand_path('../test_dummy', __FILE__)
9
7
  DUMMY_SYNX_TEST_PROJECT_PATH = File.join(DUMMY_SYNX_TEST_PATH, 'dummy.xcodeproj')
10
8
  FileUtils.rm_rf(DUMMY_SYNX_TEST_PATH)
11
9
  FileUtils.cp_r(DUMMY_SYNX_PATH, DUMMY_SYNX_TEST_PATH)
@@ -1,5 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '..', 'spec_helper')
2
-
1
+ require 'spec_helper'
3
2
  require 'fileutils'
4
3
  require 'pathname'
5
4
  require 'yaml'
@@ -86,17 +85,17 @@ describe Synx::Project do
86
85
  end
87
86
 
88
87
  def expected_file_structure
89
- YAML::load_file(File.join(File.dirname(__FILE__), "expected_file_structure.yml"))
88
+ YAML::load_file(File.expand_path("../expected_file_structure.yml", __FILE__))
90
89
  end
91
90
 
92
91
  def expected_group_structure
93
- YAML::load_file(File.join(File.dirname(__FILE__), "expected_group_structure.yml"))
92
+ YAML::load_file(File.expand_path("../expected_group_structure.yml", __FILE__))
94
93
  end
95
94
 
96
95
  describe "with no additional options" do
97
96
 
98
97
  before(:all) do
99
- DUMMY_SYNX_TEST_PROJECT.sync
98
+ DUMMY_SYNX_TEST_PROJECT.sync(:output => StringIO.new)
100
99
  end
101
100
 
102
101
  it "should have the correct physical file structure" do
@@ -125,7 +124,7 @@ describe Synx::Project do
125
124
  describe "with the prune option toggled" do
126
125
 
127
126
  before(:all) do
128
- DUMMY_SYNX_TEST_PROJECT.sync(:prune => true)
127
+ DUMMY_SYNX_TEST_PROJECT.sync(:prune => true, :output => StringIO.new)
129
128
  end
130
129
 
131
130
  it "should remove unreferenced images and source files if the prune option is toggled" do
@@ -144,7 +143,7 @@ describe Synx::Project do
144
143
  describe "with the no_default_exclusions option toggled" do
145
144
 
146
145
  before(:all) do
147
- DUMMY_SYNX_TEST_PROJECT.sync(:no_default_exclusions => true)
146
+ DUMMY_SYNX_TEST_PROJECT.sync(:no_default_exclusions => true, :output => StringIO.new)
148
147
  end
149
148
 
150
149
  it "should have an empty array for default exclusions" do
@@ -155,11 +154,11 @@ describe Synx::Project do
155
154
  describe "with group_exclusions provided as options" do
156
155
 
157
156
  before(:all) do
158
- DUMMY_SYNX_TEST_PROJECT.sync(:group_exclusions => %W(/dummy /dummy/SuchGroup/VeryChildGroup))
157
+ DUMMY_SYNX_TEST_PROJECT.sync(:group_exclusions => %W(/dummy /dummy/SuchGroup/VeryChildGroup), :output => StringIO.new)
159
158
  end
160
159
 
161
160
  it "should add the group exclusions to the array" do
162
- expect(DUMMY_SYNX_TEST_PROJECT.group_exclusions.sort).to eq(%W(/Libraries /Products /Frameworks /dummy /dummy/SuchGroup/VeryChildGroup).sort)
161
+ expect(DUMMY_SYNX_TEST_PROJECT.group_exclusions.sort).to eq(%W(/Libraries /Products /Frameworks /Pods /dummy /dummy/SuchGroup/VeryChildGroup).sort)
163
162
  end
164
163
  end
165
164
 
@@ -1,11 +1,14 @@
1
- require File.join(File.dirname(__FILE__), '..', 'spec_helper')
1
+ require 'spec_helper'
2
2
 
3
3
  describe Synx::Tabber do
4
4
 
5
5
  before(:each) do
6
6
  Synx::Tabber.reset
7
+ Synx::Tabber.options[:output] = output
7
8
  end
8
9
 
10
+ let(:output) { StringIO.new }
11
+
9
12
  describe "::increase" do
10
13
  it "should default to increasing tabbing by 1" do
11
14
  Synx::Tabber.increase
@@ -48,16 +51,33 @@ describe Synx::Tabber do
48
51
  end
49
52
 
50
53
  describe "::puts" do
51
- it "should call system's puts on the string, appending the appropraite indentation" do
54
+ it "should print to the output io with the appropriate indentation" do
52
55
  Synx::Tabber.increase(3)
53
- expect(Kernel).to receive(:puts).with(" Hello, world.")
54
56
  Synx::Tabber.puts("Hello, world.")
57
+ expect(output.string).to eq(" Hello, world.\n")
55
58
  end
56
59
 
57
60
  it "should not print anything if quiet is true" do
58
- Synx::Tabber.quiet = true
59
- Synx::Tabber.increase(3)
60
- expect(Kernel).to_not receive(:puts)
61
+ Synx::Tabber.options[:quiet] = true
62
+ Synx::Tabber.puts("Hello, world.")
63
+ expect(output.string).to eq("")
64
+ end
65
+
66
+ it "should print colors if no_color is false or not present" do
67
+ Synx::Tabber.puts("Hello, world.".red)
68
+ expect(output.string).to eq("\e[0;31;49mHello, world.\e[0m\n")
69
+ end
70
+
71
+ it "should not print colors if no_color is true" do
72
+ Synx::Tabber.options[:no_color] = true
73
+ Synx::Tabber.puts("Hello, world.".red)
74
+ expect(output.string).to eq("Hello, world.\n")
75
+ end
76
+
77
+ it "prints to stdout if no output is specified" do
78
+ expect($stdout).to receive(:puts).with(" Hello, world.")
79
+ Synx::Tabber.reset
80
+ Synx::Tabber.increase
61
81
  Synx::Tabber.puts("Hello, world.")
62
82
  end
63
83
  end
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '..', 'spec_helper')
1
+ require 'spec_helper'
2
2
 
3
3
  describe Xcodeproj::Project::Object::PBXGroup do
4
4
 
data/synx.gemspec CHANGED
@@ -27,6 +27,6 @@ Gem::Specification.new do |spec|
27
27
  spec.add_development_dependency "pry", "~> 0.9"
28
28
 
29
29
  spec.add_dependency "clamp", "~> 0.6"
30
- spec.add_dependency "colored", "~> 1.2"
30
+ spec.add_dependency "colorize", "~> 0.7"
31
31
  spec.add_dependency "xcodeproj", "~> 0.17"
32
32
  end
metadata CHANGED
@@ -1,116 +1,116 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: synx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.52
4
+ version: 0.0.53
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark Larsen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-24 00:00:00.000000000 Z
11
+ date: 2014-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.6'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.6'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '10.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '2.14'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '2.14'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: pry
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0.9'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0.9'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: clamp
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ~>
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0.6'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ~>
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0.6'
83
83
  - !ruby/object:Gem::Dependency
84
- name: colored
84
+ name: colorize
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ~>
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '1.2'
89
+ version: '0.7'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ~>
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '1.2'
96
+ version: '0.7'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: xcodeproj
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0.17'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0.17'
111
- description: ! " A command-line tool that reorganizes your Xcode
112
- project folder to match your Xcode groups\n Synx parses your
113
- .xcodeproj to build the same group structure out on the file system.\n"
111
+ description: |2
112
+ A command-line tool that reorganizes your Xcode project folder to match your Xcode groups
113
+ Synx parses your .xcodeproj to build the same group structure out on the file system.
114
114
  email:
115
115
  - mark@venmo.com
116
116
  executables:
@@ -118,22 +118,23 @@ executables:
118
118
  extensions: []
119
119
  extra_rdoc_files: []
120
120
  files:
121
- - .gitignore
122
- - .travis.yml
121
+ - ".gitignore"
122
+ - ".travis.yml"
123
123
  - Gemfile
124
124
  - LICENSE.txt
125
125
  - README.md
126
126
  - Rakefile
127
127
  - bin/synx
128
128
  - lib/synx.rb
129
- - lib/synx/abstract_object.rb
130
- - lib/synx/abstract_target.rb
131
- - lib/synx/pbx_file_reference.rb
132
- - lib/synx/pbx_group.rb
133
- - lib/synx/pbx_variant_group.rb
134
129
  - lib/synx/project.rb
135
130
  - lib/synx/tabber.rb
136
131
  - lib/synx/version.rb
132
+ - lib/synx/xcodeproj_ext.rb
133
+ - lib/synx/xcodeproj_ext/project/object/abstract_object.rb
134
+ - lib/synx/xcodeproj_ext/project/object/abstract_target.rb
135
+ - lib/synx/xcodeproj_ext/project/object/pbx_file_reference.rb
136
+ - lib/synx/xcodeproj_ext/project/object/pbx_group.rb
137
+ - lib/synx/xcodeproj_ext/project/object/pbx_variant_group.rb
137
138
  - spec/dummy/dummy.xcodeproj/project.pbxproj
138
139
  - spec/dummy/dummy.xcodeproj/project.xcworkspace/contents.xcworkspacedata
139
140
  - spec/dummy/dummy.xcodeproj/xcuserdata/marklarsen.xcuserdatad/xcschemes/dummy.xcscheme
@@ -171,9 +172,9 @@ files:
171
172
  - spec/spec_helper.rb
172
173
  - spec/synx/expected_file_structure.yml
173
174
  - spec/synx/expected_group_structure.yml
174
- - spec/synx/pbx_group_spec.rb
175
175
  - spec/synx/project_spec.rb
176
176
  - spec/synx/tabber_spec.rb
177
+ - spec/synx/xcodeproj_ext/project/object/pbx_group_spec.rb
177
178
  - synx.gemspec
178
179
  homepage: https://github.com/venmo/synx
179
180
  licenses:
@@ -185,12 +186,12 @@ require_paths:
185
186
  - lib
186
187
  required_ruby_version: !ruby/object:Gem::Requirement
187
188
  requirements:
188
- - - ! '>='
189
+ - - ">="
189
190
  - !ruby/object:Gem::Version
190
191
  version: '0'
191
192
  required_rubygems_version: !ruby/object:Gem::Requirement
192
193
  requirements:
193
- - - ! '>='
194
+ - - ">="
194
195
  - !ruby/object:Gem::Version
195
196
  version: '0'
196
197
  requirements: []
@@ -238,7 +239,6 @@ test_files:
238
239
  - spec/spec_helper.rb
239
240
  - spec/synx/expected_file_structure.yml
240
241
  - spec/synx/expected_group_structure.yml
241
- - spec/synx/pbx_group_spec.rb
242
242
  - spec/synx/project_spec.rb
243
243
  - spec/synx/tabber_spec.rb
244
- has_rdoc:
244
+ - spec/synx/xcodeproj_ext/project/object/pbx_group_spec.rb