cocoapods-downloader 1.5.1 → 1.6.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.

Potentially problematic release.


This version of cocoapods-downloader might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 62d6e0b714faaaf66ca8228f636b34e61976252749672e04a3a6aa0445b18709
4
- data.tar.gz: f585de6e9a7e972a89c87c98d73619798e66340d814fff06231992dfbce62e33
3
+ metadata.gz: 20f16f6bb4e3cc9aa727c6a112b18667e583292c3b2acc931597809f7ff1b26b
4
+ data.tar.gz: b58a2541b4a8210e8357b92cf9f532a061f39585a619484efa8ea6c83a39585a
5
5
  SHA512:
6
- metadata.gz: 87552efe2b4e7332c9b5cfe88ea19ad1e404d4eee94ea3187f60d26e40dcd910b049f05e7246dd8a7cb210ce96658cc7703a3f9095e6ed0c49151ae9019a80a7
7
- data.tar.gz: 8b44845a7e0da71748ff781fd15de6eb17bbca24f8fa72b76029bc65341805436d2460b6df38b092322006a5e7b2075b40a04eaad06c63cd9dcef87a69fcdfa0
6
+ metadata.gz: 976e976c7c981b75242914f8be32f8c2be30e30e23d2a4c61bd7a1ea10d41cdee46c74768f1af849515a6743d5d3020dec90597ffe196eea0e48d5b2fd6c425e
7
+ data.tar.gz: 147b35462c7f4c988635de9e37a0a787e0a3709c410f83788121c303ddeac0eabc34643fe4eae0fdcb72c483bc3245399c9714e7dac6284c92a2a6eb9d4b394b
data/README.markdown CHANGED
@@ -4,8 +4,7 @@ A small library for downloading files from remotes in a folder.
4
4
 
5
5
  [![Build Status](https://img.shields.io/github/workflow/status/CocoaPods/CocoaPods-Downloader/Spec)](https://github.com/CocoaPods/cocoapods-downloader/actions)
6
6
  [![Gem Version](https://img.shields.io/gem/v/cocoapods-downloader)](https://rubygems.org/gems/cocoapods-downloader)
7
- [![Maintainability](https://api.codeclimate.com/v1/badges/a99a88d28ad37a79dbf6/maintainability)](https://codeclimate.com/github/CocoaPods/cocoapods-downloader/maintainability)
8
- [![Test Coverage](https://api.codeclimate.com/v1/badges/a99a88d28ad37a79dbf6/test_coverage)](https://codeclimate.com/github/CocoaPods/cocoapods-downloader/test_coverage)
7
+ [![Maintainability](https://api.codeclimate.com/v1/badges/2253ffb0c2c98e4d1c71/maintainability)](https://codeclimate.com/github/CocoaPods/cocoapods-downloader/maintainability)
9
8
 
10
9
  ## Install
11
10
 
@@ -73,6 +72,10 @@ All CocoaPods development happens on GitHub, there is a repository for [CocoaPod
73
72
 
74
73
  Follow [@CocoaPods](http://twitter.com/CocoaPods) to get up to date information about what's going on in the CocoaPods world.
75
74
 
75
+ ## Development
76
+
77
+ You need to have `svn`, `bzr`, `hg` and `git` installed to run the specs. There are some specs which require `hdiutil` which will only run on macOS.
78
+
76
79
  ## License
77
80
 
78
81
  This gem and CocoaPods are available under the MIT license.
@@ -77,6 +77,7 @@ module Pod
77
77
  # @return [void]
78
78
  #
79
79
  def download
80
+ validate_input
80
81
  ui_action("#{name} download") do
81
82
  target_path.mkpath
82
83
  download!
@@ -121,6 +122,14 @@ module Pod
121
122
  raise 'Abstract method'
122
123
  end
123
124
 
125
+ # Provides a before-download check for safety of the options in the
126
+ # concrete downloader.
127
+ #
128
+ # @return [void]
129
+ #
130
+ def validate_input
131
+ end
132
+
124
133
  # Returns a User-Agent string that itentifies http network requests as
125
134
  # originating from CocoaPods.
126
135
  # Contains version numbers from the CocoaPods Gem and the cocoapods-downloader Gem.
@@ -3,6 +3,6 @@ module Pod
3
3
  # @return [String] Downloader’s version, following
4
4
  # [semver](http://semver.org).
5
5
  #
6
- VERSION = '1.5.1'.freeze
6
+ VERSION = '1.6.2'.freeze
7
7
  end
8
8
  end
@@ -153,6 +153,12 @@ module Pod
153
153
  def target_git(*args)
154
154
  git!(['-C', target_path] + args)
155
155
  end
156
+
157
+ def validate_input
158
+ input = [url, options[:branch], options[:commit], options[:tag]].map(&:to_s)
159
+ invalid = input.compact.any? { |value| value.start_with?('--') || value.include?(' --') }
160
+ raise DownloaderError, "Provided unsafe input for git #{options}." if invalid
161
+ end
156
162
  end
157
163
  end
158
164
  end
@@ -49,6 +49,12 @@ module Pod
49
49
  def download_branch!
50
50
  hg! 'clone', url, '--updaterev', options[:branch], @target_path
51
51
  end
52
+
53
+ def validate_input
54
+ input = [url, options[:revision], options[:branch], options[:tag]].map(&:to_s)
55
+ invalid = input.compact.any? { |value| value.start_with?('--') || value.include?(' --') }
56
+ raise DownloaderError, "Provided unsafe input for hg #{options}." if invalid
57
+ end
52
58
  end
53
59
  end
54
60
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-downloader
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eloy Duran
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-09-07 00:00:00.000000000 Z
12
+ date: 2022-03-28 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description:
15
15
  email:
@@ -52,7 +52,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0'
54
54
  requirements: []
55
- rubygems_version: 3.2.3
55
+ rubygems_version: 3.1.6
56
56
  signing_key:
57
57
  specification_version: 3
58
58
  summary: A small library for downloading files from remotes in a folder.