uploadcare-ruby 4.3.2 → 4.3.4

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
  SHA256:
3
- metadata.gz: 8676f15043bd23347f7ad31f86969d496244e920d4d081c2a60a67ae2e391cc8
4
- data.tar.gz: 412775f12bbcf6fa6d6b0d522461847dfad18a30d69ce3d5a1a0dfaeac2b792e
3
+ metadata.gz: a74c3c72e0515754e232f7e424044fb052c3e03e5ff785b09c09ef512127f768
4
+ data.tar.gz: 80ed959b129a9d33a21bfe0dee21c6745326cd427a0c1dc88c198e75ce5819e7
5
5
  SHA512:
6
- metadata.gz: de5165a48a01ed970bea7d4f61e90db62b8d482fdce4faa775e750969485f81910594fdd4529992e411e67cad50d89dca9d11a4bb1e0ec11cba834b0b33275f3
7
- data.tar.gz: a5b977c740b4ec59400379c6d6540614e96beb3b0e4f48b2449f247a381a460942b8e6390edd9dfa5c47bff9abcf20b94abcd3f98671b1c8a8198bca69ae634a
6
+ metadata.gz: 81fe14594ea08fd8675dbfd90283609c8b5294216dee45e02a85c8c66161a15ce540938f966162a2527504f62d9c8533bfbd073392fdeb5bede1b69a40145e41
7
+ data.tar.gz: 56ec68397a62fd77a8db4128a00bd9011b14340f745349691a7334c317a3adbae5c7c39496440c35c2288371e00a47ddb0dc9740045e9c56461521b7c22e0ee5
data/.rubocop.yml CHANGED
@@ -2,10 +2,10 @@ AllCops:
2
2
  NewCops: enable
3
3
  TargetRubyVersion: 2.7
4
4
 
5
- Metrics/LineLength:
5
+ Layout/LineLength:
6
6
  Max: 120
7
7
 
8
- IneffectiveAccessModifier:
8
+ Lint/IneffectiveAccessModifier:
9
9
  Enabled: false
10
10
 
11
11
  Style/HashTransformKeys:
data/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.3.4 — 2023-05-16
4
+
5
+ ### Changed
6
+
7
+ * Use `auto` as the default value for the `store` param.
8
+
9
+
10
+ ## 4.3.3 — 2023-04-14
11
+
12
+ ### Changed
13
+
14
+ * Use `file_info` request after a file upload if the secret key is not provided.
15
+
16
+ ### Added
17
+
18
+ * Add a new `file_info` method to retreive file information without the secret key.
19
+
3
20
  ## 4.3.2 — 2023-03-28
4
21
 
5
22
  ### Changed
data/Gemfile CHANGED
@@ -2,5 +2,12 @@
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
+ gem 'byebug', '~> 11.1'
6
+ gem 'rake', '~> 13.0'
7
+ gem 'rspec', '~> 3.0'
8
+ gem 'rubocop', '~> 1.48'
9
+ gem 'vcr', '~> 6.1'
10
+ gem 'webmock', '~> 3.18'
11
+
5
12
  # Specify your gem's dependencies in uploadcare-ruby.gemspec
6
13
  gemspec
@@ -25,7 +25,6 @@ module Uploadcare
25
25
 
26
26
  # Asks Uploadcare server to create a number of storage bin for uploads
27
27
  def upload_start(object, options = {})
28
- options.merge!(store: options[:store] || false)
29
28
  body = HTTP::FormData::Multipart.new(
30
29
  Param::Upload::UploadParamsGenerator.call(options).merge(form_data_for(object))
31
30
  )
@@ -53,6 +53,18 @@ module Uploadcare
53
53
  get(path: 'from_url/status/', params: query_params)
54
54
  end
55
55
 
56
+ # Get information about an uploaded file
57
+ # Secret key not needed
58
+ #
59
+ # https://uploadcare.com/api-refs/upload-api/#tag/Upload/operation/fileUploadInfo
60
+ def file_info(uuid)
61
+ query_params = {
62
+ file_id: uuid,
63
+ pub_key: Uploadcare.config.public_key
64
+ }
65
+ get(path: 'info/', params: query_params)
66
+ end
67
+
56
68
  private
57
69
 
58
70
  alias api_struct_post post
@@ -10,7 +10,7 @@ module Uploadcare
10
10
  # Converts files
11
11
  #
12
12
  # @param doc_params [Array] of hashes with params or [Hash]
13
- # @option options [Boolean] :store (false) whether to store file on servers.
13
+ # @option options [Boolean] :store whether to store file on servers.
14
14
  def convert(params, options = {})
15
15
  files_params = params.is_a?(Hash) ? [params] : params
16
16
  conversion_client.new.convert_many(files_params, options)
@@ -15,7 +15,7 @@ module Uploadcare
15
15
  #
16
16
  # @param object [Array], [String] or [File]
17
17
  # @param [Hash] options options for upload
18
- # @option options [Boolean] :store (false) whether to store file on servers.
18
+ # @option options [Boolean] :store whether to store file on servers.
19
19
  def self.upload(object, options = {})
20
20
  if big_file?(object)
21
21
  multipart_upload(object, options)
@@ -33,7 +33,13 @@ module Uploadcare
33
33
  # upload single file
34
34
  def self.upload_file(file, options = {})
35
35
  response = UploaderClient.new.upload_many([file], options)
36
- Uploadcare::Entity::File.info(response.success.to_a.flatten[-1])
36
+ uuid = response.success.values.first
37
+ if Uploadcare.config.secret_key.nil?
38
+ Uploadcare::Entity::File.new(file_info(uuid).success)
39
+ else
40
+ # we can get more info about the uploaded file
41
+ Uploadcare::Entity::File.info(uuid)
42
+ end
37
43
  end
38
44
 
39
45
  # upload multiple files
@@ -63,6 +69,12 @@ module Uploadcare
63
69
  UploaderClient.new.get_upload_from_url_status(token)
64
70
  end
65
71
 
72
+ # Get information about an uploaded file (without the secret key)
73
+ # @param uuid [String]
74
+ def self.file_info(uuid)
75
+ UploaderClient.new.file_info(uuid)
76
+ end
77
+
66
78
  class << self
67
79
  private
68
80
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Uploadcare
4
- VERSION = '4.3.2'
4
+ VERSION = '4.3.4'
5
5
  end
@@ -47,11 +47,4 @@ Gem::Specification.new do |spec|
47
47
  spec.add_dependency 'parallel', '~> 1.22'
48
48
  spec.add_dependency 'retries', '~> 0.0'
49
49
  spec.add_dependency 'uploadcare-api_struct', '>= 1.1', '< 2'
50
-
51
- spec.add_development_dependency 'byebug', '~> 11.1'
52
- spec.add_development_dependency 'rake', '~> 13.0'
53
- spec.add_development_dependency 'rspec', '~> 3.0'
54
- spec.add_development_dependency 'rubocop', '~> 1.48'
55
- spec.add_development_dependency 'vcr', '~> 6.1'
56
- spec.add_development_dependency 'webmock', '~> 3.18'
57
50
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uploadcare-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.2
4
+ version: 4.3.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - "@dmitrijivanchenko (Dmitrij Ivanchenko), @T0mbery (Andrey Aksenov)"
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2023-03-28 00:00:00.000000000 Z
12
+ date: 2023-05-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mimemagic
@@ -73,90 +73,6 @@ dependencies:
73
73
  - - "<"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '2'
76
- - !ruby/object:Gem::Dependency
77
- name: byebug
78
- requirement: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '11.1'
83
- type: :development
84
- prerelease: false
85
- version_requirements: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '11.1'
90
- - !ruby/object:Gem::Dependency
91
- name: rake
92
- requirement: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '13.0'
97
- type: :development
98
- prerelease: false
99
- version_requirements: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '13.0'
104
- - !ruby/object:Gem::Dependency
105
- name: rspec
106
- requirement: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '3.0'
111
- type: :development
112
- prerelease: false
113
- version_requirements: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '3.0'
118
- - !ruby/object:Gem::Dependency
119
- name: rubocop
120
- requirement: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: '1.48'
125
- type: :development
126
- prerelease: false
127
- version_requirements: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: '1.48'
132
- - !ruby/object:Gem::Dependency
133
- name: vcr
134
- requirement: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: '6.1'
139
- type: :development
140
- prerelease: false
141
- version_requirements: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - "~>"
144
- - !ruby/object:Gem::Version
145
- version: '6.1'
146
- - !ruby/object:Gem::Dependency
147
- name: webmock
148
- requirement: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - "~>"
151
- - !ruby/object:Gem::Version
152
- version: '3.18'
153
- type: :development
154
- prerelease: false
155
- version_requirements: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - "~>"
158
- - !ruby/object:Gem::Version
159
- version: '3.18'
160
76
  description: Ruby API client that handles uploads and further operations with files
161
77
  by wrapping Uploadcare Upload and REST APIs.
162
78
  email:
@@ -259,7 +175,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
259
175
  - !ruby/object:Gem::Version
260
176
  version: '0'
261
177
  requirements: []
262
- rubygems_version: 3.4.6
178
+ rubygems_version: 3.4.10
263
179
  signing_key:
264
180
  specification_version: 4
265
181
  summary: Ruby wrapper for uploadcare API