uploadcare-ruby 1.0.5 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7c1df4ed27dd413da0a8aa2bf116fc41a5f59347
4
- data.tar.gz: d947913ea623ceeffc06c583b3406e751f59f7c8
3
+ metadata.gz: 7202dfd94679cd8f39df975484a50a6b1b8f7474
4
+ data.tar.gz: f53742f0245eae1002a6351afab310bcbdb3175d
5
5
  SHA512:
6
- metadata.gz: b84d77ef7cf3b2f8aa0463fc824bbb71ed94c78f75817d5756c108d4296df555e58684eaaf202475792e5d953228729a7606f42697e116dceb2fa619b2037fe0
7
- data.tar.gz: 85c71b37914fc456cb2e6b9ef0b4f5d691c68ddaa88c44f00edd42504ed9601362bbbce4b4f2ae34a8e9ed1d1115f543e5e3576b750d2bd2c0a2d81cf605b9fa
6
+ metadata.gz: 8f66ab85489edc1e08c87b63fb294cdff5dd382df5c5c80e531504dad1b7edaf8c16969448bbf721d9bf17f7af9175e3466cc7062feb2850af6f43b49903446c
7
+ data.tar.gz: c7ada37e8c0d23a9ffafe7dc9ce16f758e3ecafe092b0b099777e24f75c32ceccc13083464514edf1462898dddcc28ec920f427fa30079bb00e0a5324255300e
@@ -0,0 +1,12 @@
1
+ language: ruby
2
+
3
+ rvm:
4
+ - 1.9.3
5
+ - 2.0.0
6
+ - 2.1.10
7
+ - 2.2.6
8
+ - 2.3.3
9
+ - 2.4.0
10
+
11
+ before_install:
12
+ - gem update bundler
@@ -0,0 +1,6 @@
1
+ #Changelog
2
+
3
+ ### 1.0.6, 30.01.2017
4
+
5
+ - Fixed incorrect dependencies
6
+ - Added ruby version and public API key to User-Agent header (can be overriden in config)
data/LICENSE CHANGED
@@ -1,22 +1,21 @@
1
- Copyright (c) 2012 Vadim Rastyagaev
1
+ The MIT License (MIT)
2
2
 
3
- MIT License
3
+ Copyright (c) 2016 Uploadcare, LLC
4
4
 
5
- Permission is hereby granted, free of charge, to any person obtaining
6
- a copy of this software and associated documentation files (the
7
- "Software"), to deal in the Software without restriction, including
8
- without limitation the rights to use, copy, modify, merge, publish,
9
- distribute, sublicense, and/or sell copies of the Software, and to
10
- permit persons to whom the Software is furnished to do so, subject to
11
- the following conditions:
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:
12
11
 
13
- The above copyright notice and this permission notice shall be
14
- included in all copies or substantial portions of the Software.
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
15
14
 
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
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.
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Build Status](https://secure.travis-ci.org/uploadcare/ruby-uploadcare-api.png?branch=master)](http://travis-ci.org/uploadcare/ruby-uploadcare-api)
1
+ [![Build Status](https://secure.travis-ci.org/uploadcare/uploadcare-ruby.png?branch=master)](http://travis-ci.org/uploadcare/uploadcare-ruby)
2
2
 
3
3
  A ruby wrapper for [Uploadcare.com](https://uploadcare.com) service.
4
4
 
@@ -29,9 +29,33 @@ $ gem install uploadcare-ruby
29
29
  Just create an API object - and you're good to go.
30
30
 
31
31
  ```ruby
32
- @api = Uploadcare::Api.new(CONFIG)
32
+ require 'uploadcare'
33
+
34
+ @api = Uploadcare::Api.new #with default settings
35
+
36
+ @api = Uploadcare::Api.new(settings)
37
+ ```
38
+
39
+ ### Default settings
40
+ ``` ruby
41
+ {
42
+ public_key: 'demopublickey', # you need to override this
43
+ private_key: 'demoprivatekey', # you need to override this
44
+ upload_url_base: 'https://upload.uploadcare.com',
45
+ api_url_base: 'https://api.uploadcare.com',
46
+ static_url_base: 'https://ucarecdn.com',
47
+ api_version: '0.3',
48
+ cache_files: true,
49
+ }
33
50
  ```
34
51
 
52
+ [Upload API](https://uploadcare.com/documentation/upload/) requires public key and [REST API](https://uploadcare.com/documentation/rest/) requires both public and private keys for authentication.
53
+
54
+ You can find and manage your project's API keys on project's overview page.
55
+ Open [dashboard](https://uploadcare.com/dashboard/), click on the project's name and find "Keys" section.
56
+
57
+ If you haven't found what you were looking for in these docs, try looking in our [Knowledge Base](http://kb.uploadcare.com/).
58
+
35
59
  --
36
60
 
37
61
  ## Raw API
@@ -84,7 +108,7 @@ Use file
84
108
 
85
109
  # url for the file - just paste in your template and you good to go.
86
110
  @uc_file.cdn_url
87
- # => "http://www.ucarecdn.com/c969be02-9925-4a7e-aa6d-b0730368791c/"
111
+ # => "https://ucarecdn.com/c969be02-9925-4a7e-aa6d-b0730368791c/"
88
112
  ```
89
113
 
90
114
  Store or delete file
@@ -148,7 +172,7 @@ It is returning you an array of Uploadcare files.
148
172
  # => #<Uploadcare::Api::File uuid="24626d2f-3f23-4464-b190-37115ce7742a">
149
173
 
150
174
  @uc_files[0].load_data
151
- # => #<Uploadcare::Api::File uuid="7bb9efa4-05c0-4f36-b0ef-11a4221867f6", original_file_url="http://www.ucarecdn.com/7bb9efa4-05c0-4f36-b0ef-11a4221867f6/view.png", image_info={"width"=>800, "geo_location"=>nil, "datetime_original"=>nil, "height"=>600}, ....>
175
+ # => #<Uploadcare::Api::File uuid="7bb9efa4-05c0-4f36-b0ef-11a4221867f6", original_file_url="https://ucarecdn.com/7bb9efa4-05c0-4f36-b0ef-11a4221867f6/view.png", image_info={"width"=>800, "geo_location"=>nil, "datetime_original"=>nil, "height"=>600}, ....>
152
176
  ```
153
177
 
154
178
  ## File
@@ -165,7 +189,7 @@ So all the operations you do - you do it with the file object.
165
189
  # => "c969be02-9925-4a7e-aa6d-b0730368791c"
166
190
 
167
191
  @uc_file.cdn_url
168
- # => "http://www.ucarecdn.com/c969be02-9925-4a7e-aa6d-b0730368791c/"
192
+ # => "https://ucarecdn.com/c969be02-9925-4a7e-aa6d-b0730368791c/"
169
193
  ```
170
194
 
171
195
  There is one issue with files - all data associated with it accesible with separate HTTP request only.
@@ -205,7 +229,7 @@ Then you can create file object by passing them into API:
205
229
  # => #<Uploadcare::Api::File uuid="7bb9efa4-05c0-4f36-b0ef-11a4221867f6"
206
230
 
207
231
  # file by CDN url
208
- @file = @api.file "http://www.ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/"
232
+ @file = @api.file "https://ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/"
209
233
  # => #<Uploadcare::Api::File uuid="7bb9efa4-05c0-4f36-b0ef-11a4221867f6"
210
234
 
211
235
  # not that generated files aren't loaded by initializing, you need to load it.
@@ -219,7 +243,7 @@ Version 1.0.0 of the gem has no specific methods for this kind of operations, we
219
243
  For the moment all your file objects can store operations passed by cdn url:
220
244
 
221
245
  ```ruby
222
- @file = @api.file "http://www.ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/-/crop/150x150/center/-/format/png/"
246
+ @file = @api.file "https://ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/-/crop/150x150/center/-/format/png/"
223
247
  # => #<Uploadcare::Api::File uuid="a8775cf7-0c2c-44fa-b071-4dd48637ecac"
224
248
 
225
249
  @file.operations
@@ -227,11 +251,11 @@ For the moment all your file objects can store operations passed by cdn url:
227
251
 
228
252
  # note that by default :cdn_url method will return url without any operations:
229
253
  @file.cdn_url
230
- # => "http://www.ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/""
254
+ # => "https://ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/""
231
255
 
232
256
  # you can pass true to :cdn_url methods to get url with included operations:
233
257
  @file.cdn_url(true)
234
- # => "http://www.ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/-/crop/150x150/center/-/format/png/"
258
+ # => "https://ucarecdn.com/a8775cf7-0c2c-44fa-b071-4dd48637ecac/-/crop/150x150/center/-/format/png/"
235
259
 
236
260
  # or call specific methods for url with or without them:
237
261
  @file.cdn_url_with_operations
data/Rakefile CHANGED
@@ -1,2 +1,6 @@
1
1
  #!/usr/bin/env rake
2
2
  require "bundler/gem_tasks"
3
+ require 'rspec/core/rake_task'
4
+
5
+ task :default => :spec
6
+ RSpec::Core::RakeTask.new
@@ -11,19 +11,20 @@ module Uploadcare
11
11
  private_key: 'demoprivatekey',
12
12
  upload_url_base: 'https://upload.uploadcare.com',
13
13
  api_url_base: 'https://api.uploadcare.com',
14
- static_url_base: 'http://www.ucarecdn.com',
14
+ static_url_base: 'https://ucarecdn.com',
15
15
  api_version: '0.3',
16
16
  cache_files: true,
17
17
  }
18
18
 
19
- USER_AGENT = "uploadcare-ruby/#{Uploadcare::VERSION}"
20
-
19
+ USER_AGENT = "uploadcare-ruby/#{Gem.ruby_version}/#{Uploadcare::VERSION}"
20
+
21
21
 
22
22
  def self.default_settings
23
23
  DEFAULT_SETTINGS
24
24
  end
25
25
 
26
- def self.user_agent
27
- USER_AGENT
26
+ def self.user_agent(options={})
27
+ return options[:user_agent].to_s if options[:user_agent]
28
+ [USER_AGENT, options[:public_key]].join('/')
28
29
  end
29
30
  end
@@ -1,7 +1,7 @@
1
1
  module Uploadcare
2
2
  module GroupListApi
3
3
  def group_list from=nil, limit=nil
4
- data = get '/groups/', {from: from, limit: limit}
4
+ data = get '/groups/', {from: from, limit: limit}.reject{|_,v| v.nil?}
5
5
  list = Uploadcare::Api::GroupList.new self, data
6
6
  end
7
7
  end
@@ -65,12 +65,11 @@ module Uploadcare
65
65
 
66
66
  token = get_token(url)
67
67
 
68
- while (response = get_status_response(token))['status'] == 'unknown'
68
+ while !['success', 'error'].include?((response = get_status_response(token))['status'])
69
69
  sleep 0.5
70
70
  end
71
71
 
72
72
  raise ArgumentError.new(response['error']) if response['status'] == 'error'
73
-
74
73
  uuid = response['file_id']
75
74
  Uploadcare::Api::File.new self, uuid
76
75
  end
@@ -108,4 +107,4 @@ module Uploadcare
108
107
  types[0].content_type
109
108
  end
110
109
  end
111
- end
110
+ end
@@ -6,7 +6,7 @@ module Uploadcare
6
6
  def initialize api, uuid_or_cdn_url, data=nil
7
7
  result = Uploadcare::Parser.parse_file_string uuid_or_cdn_url
8
8
 
9
- file = {uuid: result["uuid"], operations: result["operations"]}
9
+ file = {uuid: result.uuid, operations: result.operations}
10
10
 
11
11
  @api = api
12
12
 
@@ -7,7 +7,7 @@ module Uploadcare
7
7
  result = Uploadcare::Parser.parse_group_string(uuid_or_cdn_url)
8
8
 
9
9
  @api = api
10
- group = {uuid: result["uuid"], files_count: result["count"]}
10
+ group = {uuid: result.uuid, files_count: result.count}
11
11
  super group
12
12
 
13
13
  # if data is suplide - just pass it to builder.
@@ -10,7 +10,7 @@ module Uploadcare
10
10
  frd.adapter :net_http # actually, default adapter, just to be clear
11
11
  frd.headers['Authorization'] = "Uploadcare.Simple #{options[:public_key]}:#{options[:private_key]}"
12
12
  frd.headers['Accept'] = "application/vnd.uploadcare-v#{options[:api_version]}+json"
13
- frd.headers['User-Agent'] = Uploadcare::user_agent
13
+ frd.headers['User-Agent'] = Uploadcare::user_agent(options)
14
14
 
15
15
  frd.response :raise_error
16
16
  frd.response :parse_json
@@ -10,7 +10,7 @@ module Uploadcare
10
10
  frd.request :multipart
11
11
  frd.request :url_encoded
12
12
  frd.adapter :net_http
13
- frd.headers['User-Agent'] = Uploadcare::user_agent
13
+ frd.headers['User-Agent'] = Uploadcare::user_agent(options)
14
14
 
15
15
  frd.response :raise_error
16
16
  frd.response :parse_json
@@ -1,3 +1,3 @@
1
1
  module Uploadcare
2
- VERSION = "1.0.5"
2
+ VERSION = "1.0.6"
3
3
  end
@@ -28,7 +28,7 @@ describe Uploadcare::Api::File do
28
28
 
29
29
  it "results should be not only files, but loaded files" do
30
30
  @list.results.each do |file|
31
- file.is_loaded?.should be_true
31
+ file.is_loaded?.should be true
32
32
  end
33
33
  end
34
34
 
@@ -103,8 +103,20 @@ describe Uploadcare::Api::File do
103
103
 
104
104
 
105
105
  it 'should copy itself' do
106
- result = @file.copy
106
+ # This can cause "File is not ready yet" error if ran too early
107
+ # In this case we retry it 3 times before giving up
108
+ result = retry_if(Uploadcare::Error::RequestError::BadRequest){@file.copy}
107
109
  result.should be_kind_of(Hash)
108
110
  result["type"].should == "file"
109
111
  end
112
+
113
+
114
+ def retry_if(error, retries=3, &block)
115
+ block.call
116
+ rescue error
117
+ raise if retries <= 0
118
+ sleep 0.2
119
+ retry_if(error, retries-1, &block)
120
+ end
121
+
110
122
  end
@@ -37,8 +37,8 @@ describe Uploadcare::Api::Group do
37
37
  it "should create loaded and unloaded groups" do
38
38
  group = @api.create_group @files
39
39
  group_uloaded = @api.group group.uuid
40
- group.is_loaded?.should be_true
41
- group_uloaded.is_loaded?.should be_false
40
+ group.is_loaded?.should be true
41
+ group_uloaded.is_loaded?.should be false
42
42
  end
43
43
 
44
44
  it "group should load data" do
@@ -46,7 +46,7 @@ describe Uploadcare::Api::Group do
46
46
  group_uloaded = @api.group group.uuid
47
47
  group_uloaded.should respond_to(:load_data)
48
48
  expect {group_uloaded.load_data}.to_not raise_error
49
- group_uloaded.is_loaded?.should be_true
49
+ group_uloaded.is_loaded?.should be true
50
50
  end
51
51
 
52
52
  it "group should store itself" do
@@ -16,19 +16,19 @@ describe Uploadcare::Api::File do
16
16
 
17
17
  it "file created from uuid should be not loaded and without operations" do
18
18
  file = @api.file @file.uuid
19
- file.is_loaded?.should be_false
19
+ file.is_loaded?.should be false
20
20
  file.operations.should be_empty
21
21
  end
22
22
 
23
23
  it "file created from url without operations should be not be loaded and have no operations" do
24
24
  file = @api.file @file.cdn_url
25
- file.is_loaded?.should be_false
25
+ file.is_loaded?.should be false
26
26
  file.operations.should be_empty
27
27
  end
28
28
 
29
29
  it "file created from url with operations should be not be loaded and have operations" do
30
30
  file = @api.file @file.cdn_url + "-/crop/150x150/center/-/format/png/"
31
- file.is_loaded?.should be_false
31
+ file.is_loaded?.should be false
32
32
  file.operations.should_not be_empty
33
33
  end
34
34
 
@@ -0,0 +1,20 @@
1
+ require 'spec_helper'
2
+
3
+ describe Uploadcare do
4
+
5
+ describe '::user_agent' do
6
+ context "if :user_agent is specified in method's options" do
7
+ it "returns it's stringified version" do
8
+ expect( Uploadcare.user_agent(user_agent: 123) ).to eq '123'
9
+ end
10
+ end
11
+
12
+ context "if user_agent is not specified in method's options" do
13
+ it 'builds user-agent from ruby version, gem version and public key' do
14
+ expected = /#{Gem.ruby_version}\/#{described_class::VERSION}\/test/
15
+ expect( Uploadcare.user_agent(public_key: 'test') ).to match(expected)
16
+ end
17
+ end
18
+ end
19
+
20
+ end
@@ -2,7 +2,7 @@ require 'spec_helper'
2
2
 
3
3
  describe Uploadcare::Parser do
4
4
  before :all do
5
- # http://www.ucarecdn.com/be4e24fb-2cad-476f-9417-ba95e3fefbf2~3/-/crop/123/-/fromat/png/
5
+ # https://ucarecdn.com/be4e24fb-2cad-476f-9417-ba95e3fefbf2~3/-/crop/123/-/fromat/png/
6
6
  @uuid = "be4e24fb-2cad-476f-9417-ba95e3fefbf2"
7
7
  @count = "12"
8
8
  @operations = "-/crop/123/-/fromat/png/"
@@ -21,7 +21,7 @@ describe Uploadcare::Parser do
21
21
  end
22
22
 
23
23
  it "should parse file cdn string without operations string" do
24
- string = "http://www.ucarecdn.com/#{@uuid}/"
24
+ string = "https://ucarecdn.com/#{@uuid}/"
25
25
 
26
26
  parsed = Uploadcare::Parser.parse(string)
27
27
 
@@ -33,7 +33,7 @@ describe Uploadcare::Parser do
33
33
  end
34
34
 
35
35
  it "should parse file cdn string with operations string" do
36
- string = "http://www.ucarecdn.com/#{@uuid}/#{@operations}"
36
+ string = "https://ucarecdn.com/#{@uuid}/#{@operations}"
37
37
 
38
38
  parsed = Uploadcare::Parser.parse(string)
39
39
 
@@ -58,7 +58,7 @@ describe Uploadcare::Parser do
58
58
  end
59
59
 
60
60
  it "should parse file cdn string without operations string" do
61
- string = "http://www.ucarecdn.com/#{@uuid}~#{@count}/"
61
+ string = "https://ucarecdn.com/#{@uuid}~#{@count}/"
62
62
 
63
63
  parsed = Uploadcare::Parser.parse(string)
64
64
 
@@ -71,7 +71,7 @@ describe Uploadcare::Parser do
71
71
  end
72
72
 
73
73
  it "should parse file cdn string with operations string" do
74
- string = "http://www.ucarecdn.com/#{@uuid}~#{@count}/#{@operations}"
74
+ string = "https://ucarecdn.com/#{@uuid}~#{@count}/#{@operations}"
75
75
 
76
76
  parsed = Uploadcare::Parser.parse(string)
77
77
 
@@ -10,8 +10,9 @@ Gem::Specification.new do |gem|
10
10
  gem.summary = "Ruby gem for Uploadcare"
11
11
  gem.description = <<-EOF
12
12
  Ruby wrapper for Uploadcare service API.
13
- Full documentations on api can be found
13
+ Full documentations on APIs can be found
14
14
  at https://uploadcare.com/documentation/rest/
15
+ and https://uploadcare.com/documentation/upload/
15
16
  EOF
16
17
  gem.metadata = {
17
18
  "github" => "https://github.com/uploadcare/uploadcare-ruby",
@@ -30,6 +31,7 @@ Gem::Specification.new do |gem|
30
31
  gem.add_runtime_dependency 'multipart-post'
31
32
  gem.add_runtime_dependency 'mime-types'
32
33
 
33
- gem.add_development_dependency 'rspec'
34
+ gem.add_development_dependency 'rspec', "~> 3"
35
+ gem.add_development_dependency 'rake'
34
36
  gem.add_development_dependency 'pry'
35
37
  end
metadata CHANGED
@@ -1,112 +1,128 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uploadcare-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
- - '@rastyagaev (Vadim Rastyagaev)'
8
- - '@dimituri (Dimitry Solovyov)'
9
- - '@romanonthego (Roman Dubinin)'
7
+ - "@rastyagaev (Vadim Rastyagaev)"
8
+ - "@dimituri (Dimitry Solovyov)"
9
+ - "@romanonthego (Roman Dubinin)"
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-04-29 00:00:00.000000000 Z
13
+ date: 2017-01-30 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: faraday
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - ~>
19
+ - - "~>"
20
20
  - !ruby/object:Gem::Version
21
21
  version: '0.8'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
- - - ~>
26
+ - - "~>"
27
27
  - !ruby/object:Gem::Version
28
28
  version: '0.8'
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: faraday_middleware
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
- - - ~>
33
+ - - "~>"
34
34
  - !ruby/object:Gem::Version
35
35
  version: '0.9'
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - ~>
40
+ - - "~>"
41
41
  - !ruby/object:Gem::Version
42
42
  version: '0.9'
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: multipart-post
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - '>='
47
+ - - ">="
48
48
  - !ruby/object:Gem::Version
49
49
  version: '0'
50
50
  type: :runtime
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
- - - '>='
54
+ - - ">="
55
55
  - !ruby/object:Gem::Version
56
56
  version: '0'
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: mime-types
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
- - - '>='
61
+ - - ">="
62
62
  - !ruby/object:Gem::Version
63
63
  version: '0'
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
- - - '>='
68
+ - - ">="
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0'
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: rspec
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
- - - '>='
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: '3'
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - "~>"
83
+ - !ruby/object:Gem::Version
84
+ version: '3'
85
+ - !ruby/object:Gem::Dependency
86
+ name: rake
87
+ requirement: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
76
90
  - !ruby/object:Gem::Version
77
91
  version: '0'
78
92
  type: :development
79
93
  prerelease: false
80
94
  version_requirements: !ruby/object:Gem::Requirement
81
95
  requirements:
82
- - - '>='
96
+ - - ">="
83
97
  - !ruby/object:Gem::Version
84
98
  version: '0'
85
99
  - !ruby/object:Gem::Dependency
86
100
  name: pry
87
101
  requirement: !ruby/object:Gem::Requirement
88
102
  requirements:
89
- - - '>='
103
+ - - ">="
90
104
  - !ruby/object:Gem::Version
91
105
  version: '0'
92
106
  type: :development
93
107
  prerelease: false
94
108
  version_requirements: !ruby/object:Gem::Requirement
95
109
  requirements:
96
- - - '>='
110
+ - - ">="
97
111
  - !ruby/object:Gem::Version
98
112
  version: '0'
99
113
  description: " Ruby wrapper for Uploadcare service API. \n
100
- \ Full documentations on api can be found \n at
101
- https://uploadcare.com/documentation/rest/\n"
114
+ \ Full documentations on APIs can be found\n at
115
+ https://uploadcare.com/documentation/rest/\n and https://uploadcare.com/documentation/upload/\n"
102
116
  email:
103
117
  - hello@uploadcare.com
104
118
  executables: []
105
119
  extensions: []
106
120
  extra_rdoc_files: []
107
121
  files:
108
- - .DS_Store
109
- - .gitignore
122
+ - ".DS_Store"
123
+ - ".gitignore"
124
+ - ".travis.yml"
125
+ - CHANGELOG.md
110
126
  - Gemfile
111
127
  - LICENSE
112
128
  - README.md
@@ -143,6 +159,7 @@ files:
143
159
  - spec/rest/errors_spec.rb
144
160
  - spec/rest/upload_connection_spec.rb
145
161
  - spec/spec_helper.rb
162
+ - spec/uploadcare_spec.rb
146
163
  - spec/uploading/uploading_multiple_spec.rb
147
164
  - spec/uploading/uploading_spec.rb
148
165
  - spec/utils/parser_spec.rb
@@ -161,17 +178,17 @@ require_paths:
161
178
  - lib
162
179
  required_ruby_version: !ruby/object:Gem::Requirement
163
180
  requirements:
164
- - - '>='
181
+ - - ">="
165
182
  - !ruby/object:Gem::Version
166
183
  version: '0'
167
184
  required_rubygems_version: !ruby/object:Gem::Requirement
168
185
  requirements:
169
- - - '>='
186
+ - - ">="
170
187
  - !ruby/object:Gem::Version
171
188
  version: '0'
172
189
  requirements: []
173
190
  rubyforge_project:
174
- rubygems_version: 2.0.6
191
+ rubygems_version: 2.5.1
175
192
  signing_key:
176
193
  specification_version: 4
177
194
  summary: Ruby gem for Uploadcare
@@ -187,6 +204,7 @@ test_files:
187
204
  - spec/rest/errors_spec.rb
188
205
  - spec/rest/upload_connection_spec.rb
189
206
  - spec/spec_helper.rb
207
+ - spec/uploadcare_spec.rb
190
208
  - spec/uploading/uploading_multiple_spec.rb
191
209
  - spec/uploading/uploading_spec.rb
192
210
  - spec/utils/parser_spec.rb