cocoapods-art 0.9.5 → 1.0.0

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: 5c210a12b7f7ef0c04d1c837bdc5e34cf1aee998
4
- data.tar.gz: 95824cdf325060ef935b5068139aca259b595cc5
3
+ metadata.gz: 5a57ec3a1f2bfe311aef6d7d2ca1537a326b4b3a
4
+ data.tar.gz: 1c3c40007939b2d37af8c309460213a702bd32f4
5
5
  SHA512:
6
- metadata.gz: e7a3899e8935eb6b0ae64f19d4fc3d83aee3fc236793833dab1dade9157e7661c6ab96e6207a263890464feb22b96ca21b81e24fd16458cb775b4899ac553bca
7
- data.tar.gz: 38138f091bd82a3e405651f20938eb79369555c08ec0bab6364dddc763ef07611bd43e30561da9a513a21e5d4fff09f77cfdb57ddb88c17bc8ce0b1e18821c42
6
+ metadata.gz: e1b189c95eeecc33a00b769790a9574d4d606c7003816c2846b824d390ece83626be84e0900b3336a1a580eb73e8bc964b4dafcc1cde713d4ad57df6d8d13197
7
+ data.tar.gz: 23a95dc96bb0770e854b20ddd189e5a2900e8c53ee3c29d3d6eaa29af76d11525aa824d3708c2f9f03d2d5c5a66511956c3a3c4a397da34c3d2c366bc00c6cc8
@@ -23,6 +23,5 @@ module Pod
23
23
  File.read("#{repo}/.artpodrc") if File.exist?("#{dir}/.artpodrc")
24
24
  end
25
25
  end
26
-
27
26
  end
28
27
  end
@@ -2,5 +2,5 @@
2
2
  # The namespace of the CocoaPods Artifactory plugin.
3
3
  #
4
4
  module CocoaPodsArt
5
- VERSION = '0.9.5'
5
+ VERSION = '1.0.0'
6
6
  end
@@ -1,23 +1,17 @@
1
1
  require 'pod/command/repo_art'
2
2
  require 'art_source'
3
3
  require 'cocoapods-downloader'
4
+ require 'cocoapods_art'
4
5
 
5
- Pod::HooksManager.register('cocoapods-art', :source_provider) do |context, options|
6
- Pod::UI.message 'cocoapods-art received source_provider hook'
7
- return unless (sources = options['sources'])
8
- sources.each do |source_name|
9
- source = create_source_from_name(source_name)
10
- context.add_source(source)
11
- end
12
- end
6
+ UTIL = Pod::RepoArt::RepoUtil
13
7
 
14
- # @param [Source] source The source update
15
- #
16
- def update_source(source)
17
- name = source.name
18
- argv = CLAide::ARGV.new([name])
19
- cmd = Pod::Command::RepoArt::Update.new(argv)
20
- cmd.run
8
+ Pod::HooksManager.register('cocoapods-art', :source_provider) do |context, options|
9
+ Pod::UI.message 'cocoapods-art received source_provider hook'
10
+ return unless (sources = options['sources'])
11
+ sources.each do |source_name|
12
+ source = create_source_from_name(source_name)
13
+ context.add_source(source)
14
+ end
21
15
  end
22
16
 
23
17
  # @param source_name => name of source incoming from the Podfile configuration
@@ -25,11 +19,15 @@ end
25
19
  # @return [ArtSource] source of the local spec repo which corresponds to to the given name
26
20
  #
27
21
  def create_source_from_name(source_name)
22
+ art_repo = "#{UTIL.get_repos_art_dir()}/#{source_name}"
28
23
  repos_dir = Pod::Config.instance.repos_dir
29
24
  repo = repos_dir + source_name
30
- if File.exist?("#{repo}/.artpodrc")
31
- url = File.read("#{repo}/.artpodrc")
32
- Pod::ArtSource.new(repo, url)
25
+
26
+ Pod::UI.puts "#{art_repo}/.artpodrc\n"
27
+
28
+ if File.exist?("#{art_repo}/.artpodrc")
29
+ url = File.read("#{art_repo}/.artpodrc")
30
+ Pod::ArtSource.new(art_repo, url)
33
31
  elsif Dir.exist?("#{repo}")
34
32
  Pod::ArtSource.new(repo, '');
35
33
  else
@@ -38,8 +36,8 @@ def create_source_from_name(source_name)
38
36
  end
39
37
 
40
38
  #
41
- # This ugly monkey patch is here just so we can pass the -n flag to curl and thus use the ~/.netrc file
42
- # to manage credentials. Why this trivial option is not included in the first place is beyond me.
39
+ # This patch is here just so we can pass the -n flag to curl and thus use the ~/.netrc file
40
+ # to manage credentials.
43
41
  #
44
42
  module Pod
45
43
  module Downloader
@@ -71,12 +69,11 @@ module Pod
71
69
  orig_should_flatten?
72
70
  end
73
71
  end
74
-
75
72
  end
76
73
  end
77
74
  end
78
75
 
79
- # Ugly, ugly hack to override pod's default behavior which is force the master spec repo if
76
+ # Override pod's default behavior which is force the master spec repo if
80
77
  # no sources defined - at this point the plugin sources are not yet fetched from the plugin
81
78
  # with the source provider hook thus empty Podfiles that only have the plugin declared will
82
79
  # force a master repo update.
@@ -99,7 +96,6 @@ module Pod
99
96
  orig_sources
100
97
  end
101
98
  end
102
-
103
99
  end
104
100
  end
105
101
  end
@@ -0,0 +1,22 @@
1
+ module Pod
2
+ class ArtifactoryRepo
3
+ def initialize(path, url)
4
+ @path = path
5
+ @url = url
6
+ create_name
7
+ end
8
+
9
+ def create_name
10
+ split = @path.split("/")
11
+ if split.length > 0
12
+ @name = split[split.length - 1]
13
+ end
14
+ end
15
+
16
+ attr_reader :name
17
+ attr_reader :path
18
+ attr_reader :url
19
+ end
20
+ end
21
+
22
+
@@ -10,6 +10,8 @@ module Pod
10
10
  require 'pod/command/repo_art/update'
11
11
  require 'pod/command/repo_art/list'
12
12
 
13
+ UTIL = Pod::RepoArt::RepoUtil
14
+
13
15
  self.abstract_command = true
14
16
  self.version = CocoaPodsArt::VERSION
15
17
  self.description = 'Enables working with JFrog Artifactory as a Specs repo and as a repository for Pods.'\
@@ -20,6 +22,9 @@ module Pod
20
22
 
21
23
  self.default_subcommand = 'list'
22
24
 
25
+ def init
26
+ @repos_art_dir = UTIL.get_repos_art_dir()
27
+ end
23
28
  end
24
29
  end
25
30
  end
@@ -9,8 +9,8 @@ module Pod
9
9
  self.summary = 'Add a Specs repo from Artifactory.'
10
10
 
11
11
  self.description = <<-DESC
12
- Retrieves the index from an Artifactory instance at 'URL' to the local spec repos
13
- directory at `~/.cocoapods/repos/'NAME'`.
12
+ Retrieves the index from an Artifactory instance at 'URL' to the local spec repos-art
13
+ directory at `~/.cocoapods/repos-art/'NAME'`.
14
14
  DESC
15
15
 
16
16
  self.arguments = [
@@ -19,6 +19,7 @@ module Pod
19
19
  ]
20
20
 
21
21
  def initialize(argv)
22
+ init
22
23
  @name, @url = argv.shift_argument, argv.shift_argument
23
24
  @silent = argv.flag?('silent', false)
24
25
  super
@@ -33,11 +34,18 @@ module Pod
33
34
 
34
35
  def run
35
36
  UI.section("Retrieving index from `#{@url}` into local spec repo `#{@name}`") do
36
- config.repos_dir.mkpath
37
- repo_dir_root = "#{config.repos_dir}/#{@name}"
37
+ # Check if a repo with the same name under repos/ already exists
38
+ repos_path = "#{Pod::Config.instance.home_dir}/repos"
39
+ raise Informative, "Path repos_path/#{@name} already exists - remove it first, "\
40
+ "or run 'pod repo-art update #{@name}' to update it" if File.exist?("#{repos_path}/#{@name}") && !@silent
41
+
42
+ # Check if a repo with the same name under repo-art/ already exists
43
+ repo_dir_root = "#{@repos_art_dir}/#{@name}"
38
44
  raise Informative, "Path #{repo_dir_root} already exists - remove it first, "\
39
45
  "or run 'pod repo-art update #{@name}' to update it" if File.exist?(repo_dir_root) && !@silent
40
46
 
47
+ FileUtils::mkdir_p repo_dir_root
48
+
41
49
  repo_dir_specs = "#{repo_dir_root}/Specs"
42
50
  begin
43
51
  downloader = Pod::Downloader::Http.new(repo_dir_specs, "#{@url}/index/fetchIndex", :type => 'tgz', :indexDownload => true)
@@ -60,6 +68,11 @@ module Pod
60
68
  raise Informative, "Cannot create file '#{artpodrc_path}' because : #{e.message}."\
61
69
  '- your Artifactory-backed Specs repo will not work correctly without it!'
62
70
  end
71
+ # Create a local git repository in the newly added Artifactory local repo
72
+ system "cd '#{repo_dir_root}' && git init && git add . && git commit -m 'Artifactory repo init'"
73
+
74
+ # Create local repo under repos/ which is a remote for the new local git repository
75
+ system "cd '#{repos_path}' && git clone file://#{repo_dir_root}"
63
76
  end
64
77
  UI.puts "Successfully added repo #{@name}".green unless @silent
65
78
  end
@@ -7,7 +7,7 @@ module Pod
7
7
  self.description = <<-DESC
8
8
  Lints the spec-repo `NAME`. If a directory is provided it is assumed
9
9
  to be the root of a repo. Finally, if `NAME` is not provided this
10
- will lint all the spec-repos known to CocoaPods, including all Artifactory-backed repos.
10
+ will lint all the Artifactory-backed spec-repos known to CocoaPods.
11
11
  DESC
12
12
 
13
13
  self.arguments = [
@@ -21,15 +21,49 @@ module Pod
21
21
  end
22
22
 
23
23
  def initialize(argv)
24
- @cmd = Pod::Command::Repo::Lint.new(argv)
25
- end
26
-
27
- def validate!
28
- @cmd.validate!
24
+ init
25
+ @name = argv.shift_argument
26
+ @only_errors = argv.flag?('only-errors')
27
+ super
29
28
  end
30
29
 
31
30
  def run
32
- @cmd.run
31
+ repos = if @name
32
+ UTIL.get_art_repo(@name)
33
+ else
34
+ UTIL.get_art_repos
35
+ end
36
+
37
+ repos.each do |repo|
38
+ UI.puts "\nLinting spec repo `#{repo.name}`\n".yellow
39
+
40
+ validator = Source::HealthReporter.new(repo.path)
41
+ validator.pre_check do |_name, _version|
42
+ UI.print '.'
43
+ end
44
+ report = validator.analyze
45
+ UI.puts
46
+ UI.puts
47
+
48
+ report.pods_by_warning.each do |message, versions_by_name|
49
+ UI.puts "-> #{message}".yellow
50
+ versions_by_name.each { |name, versions| UI.puts " - #{name} (#{versions * ', '})" }
51
+ UI.puts
52
+ end
53
+
54
+ report.pods_by_error.each do |message, versions_by_name|
55
+ UI.puts "-> #{message}".red
56
+ versions_by_name.each { |name, versions| UI.puts " - #{name} (#{versions * ', '})" }
57
+ UI.puts
58
+ end
59
+
60
+ UI.puts "Analyzed #{report.analyzed_paths.count} podspecs files.\n\n"
61
+ if report.pods_by_error.count.zero?
62
+ UI.puts 'All the specs passed validation.'.green << "\n\n"
63
+ else
64
+ raise Informative, "#{report.pods_by_error.count} podspecs failed validation."
65
+ end
66
+ end
33
67
  end
34
68
 
35
69
  end
@@ -1,4 +1,5 @@
1
1
  require 'util/repo_util'
2
+ require 'pod/artifactory_repo'
2
3
 
3
4
  module Pod
4
5
  class Command
@@ -10,7 +11,7 @@ module Pod
10
11
  self.summary = 'List Artifactory-backed repos.'
11
12
 
12
13
  self.description = <<-DESC
13
- List the Artifactory repos from the local spec-repos directory at `~/.cocoapods/repos/.`
14
+ List the Artifactory repos from the local spec-repos directory at `~/.cocoapods/repos-art/.`
14
15
  DESC
15
16
 
16
17
  def self.options
@@ -20,41 +21,29 @@ module Pod
20
21
  end
21
22
 
22
23
  def initialize(argv)
24
+ init
23
25
  @count_only = argv.flag?('count-only')
24
26
  super
25
27
  end
26
28
 
27
29
  def run
28
- sources = art_sources
29
- print_art_sources(sources) unless @count_only
30
- print_source_count(sources)
30
+ repos = UTIL.get_art_repos
31
+ print_art_repos(repos) unless @count_only
32
+ print_art_repos_count(repos)
31
33
  end
32
34
 
33
- def print_art_sources(sources)
34
- sources.each do |source|
35
- UI.title source.name do
36
- print_source(source)
35
+ def print_art_repos(repos)
36
+ for repo in repos
37
+ UI.title repo.name do
38
+ UI.puts "- URL: #{repo.url}"
39
+ UI.puts "- Path: #{repo.path}"
37
40
  end
38
41
  end
39
42
  UI.puts "\n"
40
43
  end
41
44
 
42
- def print_source(source)
43
- UI.puts '- Type: Artifactory'
44
- UI.puts "- URL: #{UTIL.get_art_url(source.repo)}" if UTIL.artpodrc_file_exists(source.repo)
45
- UI.puts "- Path: #{source.repo}"
46
- end
47
-
48
- # @return [Source] The list of the Artifactory sources.
49
- #
50
- def art_sources
51
- Pod::Config.instance.sources_manager.all.select do |source|
52
- UTIL.art_repo?(source.repo)
53
- end
54
- end
55
-
56
- def print_source_count(sources)
57
- number_of_repos = sources.length
45
+ def print_art_repos_count(repos)
46
+ number_of_repos = repos.length
58
47
  repo_string = number_of_repos != 1 ? 'repos' : 'repo'
59
48
  UI.puts "#{number_of_repos} #{repo_string}\n".green
60
49
  end
@@ -5,7 +5,7 @@ module Pod
5
5
  self.summary = 'Remove an Artifactory-backed Specs repo'
6
6
 
7
7
  self.description = <<-DESC
8
- Deletes the Spec repo called 'NAME' from the local spec-repos directory at '~/.cocoapods/repos/.'
8
+ Deletes the Spec repo called 'NAME' from the local spec-repos directory at '~/.cocoapods/repos-art/.'
9
9
  DESC
10
10
 
11
11
  self.arguments = [
@@ -13,20 +13,29 @@ module Pod
13
13
  ]
14
14
 
15
15
  def initialize(argv)
16
- @cmd = Command::Repo::Remove.new(argv)
16
+ init
17
+ @name = argv.shift_argument
17
18
  super
18
19
  end
19
20
 
20
21
  def validate!
21
22
  super
22
- @cmd.validate!
23
+ help! 'Deleting a repo needs a `NAME`.' unless @name
24
+ help! "repo #{@name} does not exist" unless File.directory?(repo_dir_root)
25
+ help! "You do not have permission to delete the #{@name} repository." \
26
+ 'Perhaps try prefixing this command with sudo.' unless File.writable?(repo_dir_root)
23
27
  end
24
28
 
25
29
  def run
26
- @cmd.run
30
+ UI.section("Removing spec repo `#{@name}`") do
31
+ FileUtils.rm_rf(repo_dir_root)
32
+ end
27
33
  end
28
34
 
35
+ def repo_dir_root
36
+ "#{@repos_art_dir}/#{@name}"
29
37
  end
30
38
  end
31
39
  end
32
40
  end
41
+ end
@@ -47,80 +47,69 @@ module Pod
47
47
  #
48
48
  def update(source_name = nil, show_output = false)
49
49
  if source_name
50
- sources = [art_source_named(source_name)]
50
+ sources = [UTIL.get_art_repo(source_name)]
51
51
  else
52
- sources = art_sources
52
+ sources = UTIL.get_art_repos()
53
53
  end
54
+
54
55
  sources.each do |source|
55
- UI.section "Updating spec repo `#{source.name}`" do
56
- Dir.chdir(source.repo) do
57
- begin
58
- # TODO HEAD to api/updateTime
59
- # TODO unless .lastupdated >= api/updateTime do
60
- # TODO Until we support delta downloads, update is actually add if not currently up tp date
61
- url = UTIL.get_art_url(source.repo)
62
- if @prune
63
- hard_update(source, source_name, url)
64
- else
65
- soft_update(source, url)
66
- end
67
- UI.puts "Successfully updated repo #{source.name}".green if show_output && !config.verbose?
68
- rescue => e
69
- UI.warn "Unable to update repo `#{source.name}`: #{e.message}"
70
- end
71
- end
72
- end
56
+ UI.section "Updating spec repo `#{source.name}`" do
57
+ Dir.chdir(source.path) do
58
+ begin
59
+ # TODO HEAD to api/updateTime
60
+ # TODO unless .lastupdated >= api/updateTime do
61
+ # TODO Until we support delta downloads, update is actually add if not currently up tp date
62
+ url = UTIL.get_art_url(source.path)
63
+ if @prune
64
+ hard_update(source.name, source.path, url)
65
+ else
66
+ soft_update(source.path, url)
67
+ end
68
+ UI.puts "Successfully updated repo #{source.name}".green if show_output && !config.verbose?
69
+ rescue => e
70
+ UI.warn "Unable to update repo `#{source.name}`: #{e.message}"
71
+ end
72
+ end
73
+ end
73
74
  end
74
75
  end
75
76
 
76
77
  # Performs a 'soft' update which appends any changes from the remote without deleting out-of-sync entries
77
78
  #
78
- def soft_update(source, url)
79
- downloader = Pod::Downloader::Http.new("#{source.repo}", "#{url}/index/fetchIndex", :type => 'tgz', :indexDownload => true)
79
+ def soft_update(path, url)
80
+ downloader = Pod::Downloader::Http.new("#{path}", "#{url}/index/fetchIndex", :type => 'tgz', :indexDownload => true)
80
81
  downloader.download
81
- UTIL.cleanup_index_download("#{source.repo}")
82
- UTIL.del_redundant_spec_dir("#{source.repo}/Specs/Specs")
82
+ UTIL.cleanup_index_download("#{path}")
83
+ UTIL.del_redundant_spec_dir("#{path}/Specs/Specs")
84
+ system "cd '#{path}' && git add . && git commit -m 'Artifactory repo update specs'"
83
85
  end
84
86
 
85
87
  # Performs a 'hard' update which prunes all index entries which are not sync with the remote (override)
86
88
  #
87
- def hard_update(source, source_name, url)
89
+ def hard_update(name, path, url)
90
+ UI.puts path
88
91
  begin
89
- repo_update_tmp = "#{source.repo}_update_tmp"
90
- system("mv", source.repo.to_s, repo_update_tmp)
91
- argv = CLAide::ARGV.new([source_name, url, '--silent'])
92
+ repos_path = "#{Pod::Config.instance.home_dir}/repos/#{name}"
93
+ repos_art_path = "#{Pod::Config.instance.home_dir}/repos-art/#{name}"
94
+
95
+ repo_update_tmp = "#{repos_path}_update_tmp"
96
+ repo_art_update_tmp = "#{repos_art_path}_update_tmp"
97
+
98
+ system("mv", repos_path.to_s, repo_update_tmp)
99
+ system("mv", repos_art_path.to_s, repo_art_update_tmp)
100
+
101
+ argv = CLAide::ARGV.new([name, url, '--silent'])
92
102
  Pod::Command::RepoArt::Add.new(argv).run
103
+
93
104
  FileUtils.remove_entry_secure(repo_update_tmp, :force => true)
105
+ FileUtils.remove_entry_secure(repo_art_update_tmp, :force => true)
94
106
  rescue => e
95
- FileUtils.remove_entry_secure(source.repo.to_s, :force => true)
96
- system("mv", repo_update_tmp, source.repo.to_s)
107
+ FileUtils.remove_entry_secure(path.to_s, :force => true)
108
+ system("mv", repo_update_tmp, repos_path.to_s)
109
+ system("mv", repo_art_update_tmp, repos_art_path.to_s)
97
110
  raise Informative, "Error getting the index from Artifactory at: '#{url}' : #{e.message}"
98
111
  end
99
112
  end
100
-
101
- # @return [Source] The Artifactory source with the given name.
102
- #
103
- # @param [String] name The name of the source.
104
- #
105
- def art_source_named(name)
106
- specified_source = Pod::Config.instance.sources_manager.aggregate.sources.find { |s| s.name == name }
107
- unless specified_source
108
- raise Informative, "Unable to find the repo called `#{name}`."
109
- end
110
- unless UTIL.art_repo?(specified_source.repo)
111
- raise Informative, "Repo `#{name}` is not an Artifactory-backed repo."
112
- end
113
- specified_source
114
- end
115
-
116
- # @return [Source] The list of the Artifactory sources.
117
- #
118
- def art_sources
119
- Pod::Config.instance.sources_manager.all.select do |source|
120
- UTIL.art_repo?(source.repo)
121
- end
122
- end
123
-
124
113
  end
125
114
  end
126
115
  end
@@ -4,6 +4,41 @@ module Pod
4
4
  class RepoArt
5
5
  class RepoUtil
6
6
 
7
+ # @return list of Artifactory repos, read from the ~/.cocoapods/repos-art
8
+ #
9
+ def self.get_art_repos
10
+ repos_art_dir = UTIL.get_repos_art_dir()
11
+ dirs = Dir.glob "#{repos_art_dir}/*/"
12
+ repos = []
13
+ for dir in dirs
14
+ if UTIL.artpodrc_file_exists(dir)
15
+ url = UTIL.get_art_url(dir)
16
+ repos.push ArtifactoryRepo.new(dir, url)
17
+ end
18
+ end
19
+ repos
20
+ end
21
+
22
+ # @return [Source] The Artifactory source with the given name.
23
+ #
24
+ # @param [String] name The name of the source.
25
+ #
26
+ def self.get_art_repo(name)
27
+ #specified_source = Pod::Config.instance.sources_manager.aggregate.sources.find { |s| s.name == name }
28
+ repos = get_art_repos()
29
+ art_repo = nil
30
+ for repo in repos
31
+ if repo.name == name
32
+ art_repo = repo
33
+ end
34
+ end
35
+
36
+ unless art_repo
37
+ raise Informative, "Unable to find the Artifactory-backed repo called `#{name}`."
38
+ end
39
+ art_repo
40
+ end
41
+
7
42
  # @return whether a source is an Artifactory backed repo.
8
43
  #
9
44
  # @param [Pathname] repo_root_path root directory of the repo.
@@ -28,6 +63,12 @@ module Pod
28
63
  File.exist?("#{dir}/.artpodrc")
29
64
  end
30
65
 
66
+ # @return the full path to the repos-art directory
67
+ #
68
+ def self.get_repos_art_dir()
69
+ "#{Pod::Config.instance.home_dir}/repos-art"
70
+ end
71
+
31
72
  # Cleans up all of the junk left over from using the Downloader
32
73
  #
33
74
  def self.cleanup_index_download(tmp_file_dir)
@@ -40,7 +81,6 @@ module Pod
40
81
  # The default flattening the Downloader uses for tgz makes this screwy
41
82
  Dir.delete(redundant_specs_dir) if (Dir.exist?(redundant_specs_dir) && Dir.glob(redundant_specs_dir + '/' + '*').empty?)
42
83
  end
43
-
44
84
  end
45
85
  end
46
86
  end
metadata CHANGED
@@ -1,41 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-art
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.5
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Feldman
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-07 00:00:00.000000000 Z
11
+ date: 2017-03-13 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.3'
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.3'
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: '0'
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: '0'
41
41
  description: Enables you to use Artifactory as your spec repo, as well as a repository
@@ -46,22 +46,22 @@ executables: []
46
46
  extensions: []
47
47
  extra_rdoc_files: []
48
48
  files:
49
- - Gemfile
50
- - Gemfile.lock
51
- - LICENSE
52
- - README.md
53
- - Rakefile
54
49
  - lib/art_source.rb
55
50
  - lib/cocoapods_art.rb
56
51
  - lib/cocoapods_plugin.rb
57
- - lib/pod/command/repo_art.rb
52
+ - lib/pod/artifactory_repo.rb
58
53
  - lib/pod/command/repo_art/add.rb
59
54
  - lib/pod/command/repo_art/lint.rb
60
55
  - lib/pod/command/repo_art/list.rb
61
56
  - lib/pod/command/repo_art/push.rb
62
57
  - lib/pod/command/repo_art/remove.rb
63
58
  - lib/pod/command/repo_art/update.rb
59
+ - lib/pod/command/repo_art.rb
64
60
  - lib/util/repo_util.rb
61
+ - Gemfile
62
+ - LICENSE
63
+ - Rakefile
64
+ - README.md
65
65
  homepage: https://github.com/JFrogDev/cocoapods-art
66
66
  licenses:
67
67
  - Apache-2.0
@@ -72,19 +72,18 @@ require_paths:
72
72
  - lib
73
73
  required_ruby_version: !ruby/object:Gem::Requirement
74
74
  requirements:
75
- - - ">="
75
+ - - '>='
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
78
  required_rubygems_version: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  requirements: []
84
84
  rubyforge_project:
85
- rubygems_version: 2.5.1
85
+ rubygems_version: 2.0.14
86
86
  signing_key:
87
87
  specification_version: 4
88
88
  summary: Artifactory support for CocoaPods
89
89
  test_files: []
90
- has_rdoc:
@@ -1,79 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- cocoapods-art (0.9.3)
5
-
6
- GEM
7
- remote: https://rubygems.org/
8
- specs:
9
- activesupport (4.2.6)
10
- i18n (~> 0.7)
11
- json (~> 1.7, >= 1.7.7)
12
- minitest (~> 5.1)
13
- thread_safe (~> 0.3, >= 0.3.4)
14
- tzinfo (~> 1.1)
15
- claide (1.0.0)
16
- cocoapods (1.0.1)
17
- activesupport (>= 4.0.2)
18
- claide (>= 1.0.0, < 2.0)
19
- cocoapods-core (= 1.0.1)
20
- cocoapods-deintegrate (>= 1.0.0, < 2.0)
21
- cocoapods-downloader (>= 1.0.0, < 2.0)
22
- cocoapods-plugins (>= 1.0.0, < 2.0)
23
- cocoapods-search (>= 1.0.0, < 2.0)
24
- cocoapods-stats (>= 1.0.0, < 2.0)
25
- cocoapods-trunk (>= 1.0.0, < 2.0)
26
- cocoapods-try (>= 1.0.0, < 2.0)
27
- colored (~> 1.2)
28
- escape (~> 0.0.4)
29
- fourflusher (~> 0.3.0)
30
- molinillo (~> 0.4.5)
31
- nap (~> 1.0)
32
- xcodeproj (>= 1.1.0, < 2.0)
33
- cocoapods-core (1.0.1)
34
- activesupport (>= 4.0.2)
35
- fuzzy_match (~> 2.0.4)
36
- nap (~> 1.0)
37
- cocoapods-deintegrate (1.0.0)
38
- cocoapods-downloader (1.0.0)
39
- cocoapods-plugins (1.0.0)
40
- nap
41
- cocoapods-search (1.0.0)
42
- cocoapods-stats (1.0.0)
43
- cocoapods-trunk (1.0.0)
44
- nap (>= 0.8, < 2.0)
45
- netrc (= 0.7.8)
46
- cocoapods-try (1.0.0)
47
- colored (1.2)
48
- escape (0.0.4)
49
- fourflusher (0.3.1)
50
- fuzzy_match (2.0.4)
51
- i18n (0.7.0)
52
- json (1.8.3)
53
- minitest (5.9.0)
54
- molinillo (0.4.5)
55
- nap (1.1.0)
56
- netrc (0.7.8)
57
- rake (0.9.6)
58
- thread_safe (0.3.5)
59
- tzinfo (1.2.2)
60
- thread_safe (~> 0.1)
61
- xcodeproj (1.1.0)
62
- activesupport (>= 3)
63
- claide (>= 1.0.0, < 2.0)
64
- colored (~> 1.2)
65
-
66
- PLATFORMS
67
- ruby
68
-
69
- DEPENDENCIES
70
- bundler (~> 1.3)
71
- claide
72
- cocoapods
73
- cocoapods-art!
74
- cocoapods-core
75
- cocoapods-downloader
76
- rake (~> 0)
77
-
78
- BUNDLED WITH
79
- 1.12.5