cocoapods-stats 1.0.0.beta.1 → 1.0.0.beta.2

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
  SHA1:
3
- metadata.gz: 0feac1b1dea52e29e831c3e7fe8ac514e5e6fc09
4
- data.tar.gz: 5f90c75d752e9e49382e27051ab1ed3dd5930514
3
+ metadata.gz: f83f2c32f2b11b9f98a6b33d73b1447d9c96826d
4
+ data.tar.gz: 79ba9a9b409484c8af70056b3b0b185c75bde286
5
5
  SHA512:
6
- metadata.gz: 7894a191aaafb7028830268a7061251a0f12c44e527c17a83bfc1f1d2a22a62d27bdc87bd5043efb65f4bf776625c6f375f9527b3e8ccb7732719ceba1c10fc2
7
- data.tar.gz: b1e5dc43c41bdd67c327f6d10be6f2f6df036d715bf52969f54b625798e0ae65fa25a03a4cfa38d5ec00c98ac7b7275e5f82b46ef02758c23c9d7b5e851cb00a
6
+ metadata.gz: e1ce9b9bf7efadf1c30a6fcd685d7f9cec66235d5e894eafe3d526a7d35bd9f372e2ad50b27116793a42ec15ec191886c39536a5287a76f4e9be377f4784f4e1
7
+ data.tar.gz: 809721de765a386814dd70829445e93a60f889910b3ec73d739a9ea007d90189b378ba6e162d2670a261bbcaf76e8e18f60c7c8878fa91d37c0fca065dd4399c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # CocoaPods Stats CHANGELOG
2
2
 
3
+ ## 1.0.0.beta.2 (2016-01-05)
4
+
5
+ ##### Enhancements
6
+
7
+ * Speed up stats collection by not re-opening every user Xcode project.
8
+ [Samuel Giddins](https://github.com/segiddins)
9
+
10
+
3
11
  ## 1.0.0.beta.1 (2015-12-30)
4
12
 
5
13
  This version contains no changes.
data/Gemfile CHANGED
@@ -4,7 +4,7 @@ source 'https://rubygems.org'
4
4
  gemspec
5
5
 
6
6
  group :development do
7
- gem 'cocoapods'
7
+ gem 'cocoapods', '>= 0.a'
8
8
 
9
9
  gem 'bacon'
10
10
  gem 'prettybacon'
data/Gemfile.lock CHANGED
@@ -1,12 +1,12 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- cocoapods-stats (1.0.0.beta.1)
4
+ cocoapods-stats (1.0.0.beta.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- activesupport (4.2.1)
9
+ activesupport (4.2.5)
10
10
  i18n (~> 0.7)
11
11
  json (~> 1.7, >= 1.7.7)
12
12
  minitest (~> 5.1)
@@ -16,44 +16,51 @@ GEM
16
16
  astrolabe (1.3.0)
17
17
  parser (>= 2.2.0.pre.3, < 3.0)
18
18
  bacon (1.2.0)
19
- claide (0.8.1)
20
- cocoapods (0.37.2)
21
- activesupport (>= 3.2.15)
22
- claide (~> 0.8.1)
23
- cocoapods-core (= 0.37.2)
24
- cocoapods-downloader (~> 0.9.0)
25
- cocoapods-plugins (~> 0.4.2)
26
- cocoapods-trunk (~> 0.6.1)
27
- cocoapods-try (~> 0.4.5)
19
+ claide (1.0.0.beta.1)
20
+ cocoapods (1.0.0.beta.1)
21
+ activesupport (>= 4.0.2)
22
+ claide (>= 1.0.0.beta.1, < 2.0)
23
+ cocoapods-core (= 1.0.0.beta.1)
24
+ cocoapods-deintegrate (>= 1.0.0.beta.1, < 2.0)
25
+ cocoapods-downloader (>= 1.0.0.beta.1, < 2.0)
26
+ cocoapods-plugins (>= 1.0.0.beta.1, < 2.0)
27
+ cocoapods-search (>= 1.0.0.beta.1, < 2.0)
28
+ cocoapods-stats (>= 1.0.0.beta.1, < 2.0)
29
+ cocoapods-trunk (>= 1.0.0.beta.1, < 2.0)
30
+ cocoapods-try (>= 1.0.0.beta.1, < 2.0)
28
31
  colored (~> 1.2)
29
32
  escape (~> 0.0.4)
30
- molinillo (~> 0.2.3)
31
- nap (~> 0.8)
32
- xcodeproj (~> 0.24.2)
33
- cocoapods-core (0.37.2)
34
- activesupport (>= 3.2.15)
33
+ fourflusher (~> 0.3.0)
34
+ molinillo (~> 0.4.1)
35
+ nap (~> 1.0)
36
+ xcodeproj (>= 1.0.0.beta.1, < 2.0)
37
+ cocoapods-core (1.0.0.beta.1)
38
+ activesupport (>= 4.0.2)
35
39
  fuzzy_match (~> 2.0.4)
36
- nap (~> 0.8.0)
37
- cocoapods-downloader (0.9.0)
38
- cocoapods-plugins (0.4.2)
40
+ nap (~> 1.0)
41
+ cocoapods-deintegrate (1.0.0.beta.1)
42
+ cocoapods-downloader (1.0.0.beta.1)
43
+ cocoapods-plugins (1.0.0.beta.1)
39
44
  nap
40
- cocoapods-trunk (0.6.1)
41
- nap (>= 0.8)
45
+ cocoapods-search (1.0.0.beta.1)
46
+ cocoapods-trunk (1.0.0.beta.1)
47
+ nap (>= 0.8, < 2.0)
42
48
  netrc (= 0.7.8)
43
- cocoapods-try (0.4.5)
49
+ cocoapods-try (1.0.0.beta.1)
44
50
  colored (1.2)
45
51
  escape (0.0.4)
52
+ fourflusher (0.3.0)
46
53
  fuzzy_match (2.0.4)
47
54
  i18n (0.7.0)
48
55
  json (1.8.3)
49
56
  metaclass (0.0.4)
50
- minitest (5.7.0)
57
+ minitest (5.8.3)
51
58
  mocha (1.1.0)
52
59
  metaclass (~> 0.0.1)
53
60
  mocha-on-bacon (0.2.2)
54
61
  mocha (>= 0.13.0)
55
- molinillo (0.2.3)
56
- nap (0.8.0)
62
+ molinillo (0.4.1)
63
+ nap (1.0.0)
57
64
  netrc (0.7.8)
58
65
  parser (2.2.2.2)
59
66
  ast (>= 1.1, < 3.0)
@@ -72,8 +79,9 @@ GEM
72
79
  thread_safe (0.3.5)
73
80
  tzinfo (1.2.2)
74
81
  thread_safe (~> 0.1)
75
- xcodeproj (0.24.2)
82
+ xcodeproj (1.0.0.beta.2)
76
83
  activesupport (>= 3)
84
+ claide (>= 1.0.0.beta.1, < 2.0)
77
85
  colored (~> 1.2)
78
86
 
79
87
  PLATFORMS
@@ -82,7 +90,7 @@ PLATFORMS
82
90
  DEPENDENCIES
83
91
  bacon
84
92
  bundler (~> 1.3)
85
- cocoapods
93
+ cocoapods (>= 0.a)
86
94
  cocoapods-stats!
87
95
  mocha-on-bacon
88
96
  prettybacon
@@ -1,3 +1,3 @@
1
1
  module CocoapodsStats
2
- VERSION = '1.0.0.beta.1'.freeze
2
+ VERSION = '1.0.0.beta.2'.freeze
3
3
  end
@@ -7,14 +7,6 @@ module CocoaPodsStats
7
7
  # generate a collection of hashes
8
8
  def pods_from_project(context, master_pods)
9
9
  context.umbrella_targets.flat_map do |target|
10
- next unless target.user_project_path
11
-
12
- # These UUIDs come from the Xcode project
13
- # http://danwright.info/blog/2010/10/xcode-pbxproject-files-3/
14
-
15
- project = Xcodeproj::Project.open(target.user_project_path)
16
- next unless project
17
-
18
10
  root_specs = target.specs.map(&:root).uniq
19
11
 
20
12
  # As it's hard to look up the source of a pod, we
@@ -24,19 +16,18 @@ module CocoaPodsStats
24
16
  select { |spec| master_pods.include?(spec.name) }.
25
17
  map { |spec| { :name => spec.name, :version => spec.version.to_s } }
26
18
 
27
- target.user_target_uuids.map do |uuid|
28
- project_target = project.objects_by_uuid[uuid]
29
-
19
+ # This will be an empty array for `integrate_targets: false` Podfiles
20
+ target.user_targets.map do |user_target|
30
21
  # Send in a digested'd UUID anyway, a second layer
31
22
  # of misdirection can't hurt
32
23
  {
33
- :uuid => Digest::SHA256.hexdigest(uuid),
34
- :type => project_target.product_type,
24
+ :uuid => Digest::SHA256.hexdigest(user_target.uuid),
25
+ :type => user_target.product_type,
35
26
  :pods => pods,
36
- :platform => project_target.platform_name,
27
+ :platform => user_target.platform_name,
37
28
  }
38
29
  end
39
- end.compact
30
+ end
40
31
  end
41
32
  end
42
33
  end
@@ -4,13 +4,10 @@ require 'cocoapods_stats/target_mapper'
4
4
  describe CocoaPodsStats::TargetMapper do
5
5
  describe 'pods_from_project' do
6
6
  before do
7
- project_target = mock
8
- project_target.stubs(:product_type).returns('testing')
9
- project_target.stubs(:platform_name).returns('test platform')
10
-
11
- project = mock
12
- project.stubs(:objects_by_uuid).returns('111222333' => project_target)
13
- Xcodeproj::Project.stubs(:open).returns(project)
7
+ @user_target = mock('PBXNativeTarget')
8
+ @user_target.stubs(:product_type).returns('testing')
9
+ @user_target.stubs(:platform_name).returns('test platform')
10
+ @user_target.stubs(:uuid).returns('111222333')
14
11
  end
15
12
 
16
13
  it 'returns expected data' do
@@ -20,12 +17,12 @@ describe CocoaPodsStats::TargetMapper do
20
17
  spec.name = 'ORStackView'
21
18
  spec.version = '1.1.1'
22
19
 
23
- target = mock
20
+ target = mock('AggregateTarget')
24
21
  target.stubs(:specs).returns([spec])
25
- target.stubs(:user_target_uuids).returns(['111222333'])
26
- target.stubs(:user_project_path).returns('/foo/bar')
22
+ target.stubs(:user_targets).returns([@user_target])
23
+ target.stubs(:user_project).returns(mock('Project'))
27
24
 
28
- context = mock
25
+ context = mock('Context')
29
26
  context.stubs(:umbrella_targets).returns([target])
30
27
 
31
28
  mapper = CocoaPodsStats::TargetMapper.new
@@ -49,12 +46,12 @@ describe CocoaPodsStats::TargetMapper do
49
46
  spec.name = 'ORStackView'
50
47
  spec.version = '1.1.1'
51
48
 
52
- target = mock
49
+ target = mock('AggregateTarget')
53
50
  target.stubs(:specs).returns([spec])
54
- target.stubs(:user_target_uuids).returns(['111222333'])
55
- target.stubs(:user_project_path).returns('/foo/bar')
51
+ target.stubs(:user_targets).returns([@user_target])
52
+ target.stubs(:user_project).returns(mock('Project'))
56
53
 
57
- context = mock
54
+ context = mock('Context')
58
55
  context.stubs(:umbrella_targets).returns([target])
59
56
 
60
57
  mapper = CocoaPodsStats::TargetMapper.new
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-stats
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.beta.1
4
+ version: 1.0.0.beta.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Orta Therox
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-12-30 00:00:00.000000000 Z
12
+ date: 2016-01-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler