resizing 1.0.0.pre → 1.1.0.pre
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 +4 -4
- data/.github/workflows/test.yml +56 -0
- data/lib/resizing/client.rb +4 -22
- data/lib/resizing/version.rb +1 -1
- data/lib/resizing.rb +1 -0
- data/resizing.gemspec +6 -2
- data/test/test_helper.rb +18 -0
- metadata +63 -7
- data/.circleci/config.yml +0 -73
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2d601d6b8f87f6440de0c1c4d4dcbb74e7bc386dd3e217b66b8ac259d35939f0
|
4
|
+
data.tar.gz: 3f2ce39dcb8879dee7a9717142bfa794e6cad5671e19cdd01afbb5f7dacc6787
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c221c9290ccf562d804bb9f5dca6657568c891ce4c14d825fb8a19627feec1982c09773bfb55304cd5a13b8c4bb786a57d1abe3589684da312fd0167ecfc9a28
|
7
|
+
data.tar.gz: ee2dde3b29accd86dae059daf0e164fef634476886fb254b2145e3be33764d3a81308d9eea382a557817951714cbc8d4e98b02318417042a38590a4109334630
|
@@ -0,0 +1,56 @@
|
|
1
|
+
name: test
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request:
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- master
|
8
|
+
|
9
|
+
permissions:
|
10
|
+
id-token: write # This is required for requesting the JWT
|
11
|
+
contents: read # This is required for actions/checkout
|
12
|
+
|
13
|
+
jobs:
|
14
|
+
test:
|
15
|
+
strategy:
|
16
|
+
fail-fast: false
|
17
|
+
matrix:
|
18
|
+
ruby: ['2.7.6', '3.1', '3.2','3.3']
|
19
|
+
|
20
|
+
runs-on: ubuntu-22.04
|
21
|
+
|
22
|
+
steps:
|
23
|
+
- uses: actions/checkout@v4
|
24
|
+
|
25
|
+
- uses: mirromutth/mysql-action@v1.1
|
26
|
+
with:
|
27
|
+
host port: 3306
|
28
|
+
container port: 3306
|
29
|
+
character set server: 'utf8mb4'
|
30
|
+
collation server: 'utf8mb4_general_ci'
|
31
|
+
mysql version: '5.7'
|
32
|
+
mysql database: 'resizing_gem_test'
|
33
|
+
mysql root password: secret
|
34
|
+
|
35
|
+
- name: "Install ruby dependencies"
|
36
|
+
run: |
|
37
|
+
sudo apt update
|
38
|
+
sudo apt install -y libyaml-dev curl libmysqlclient-dev
|
39
|
+
|
40
|
+
- uses: ruby/setup-ruby@v1
|
41
|
+
with:
|
42
|
+
ruby-version: ${{ matrix.ruby }}
|
43
|
+
bundler-cache: false
|
44
|
+
|
45
|
+
- name: bundle install
|
46
|
+
run: |
|
47
|
+
bundle install
|
48
|
+
|
49
|
+
- name: Run test
|
50
|
+
run: |
|
51
|
+
bundle exec rake test
|
52
|
+
|
53
|
+
- name: Upload coverage reports to Codecov
|
54
|
+
uses: codecov/codecov-action@v3
|
55
|
+
env:
|
56
|
+
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
data/lib/resizing/client.rb
CHANGED
@@ -39,14 +39,11 @@ module Resizing
|
|
39
39
|
|
40
40
|
def post(file_or_binary, options = {})
|
41
41
|
ensure_content_type(options)
|
42
|
-
|
43
|
-
url = build_post_url
|
44
|
-
|
45
42
|
filename = gather_filename file_or_binary, options
|
46
43
|
|
47
|
-
|
44
|
+
url = build_post_url
|
48
45
|
params = {
|
49
|
-
image: Faraday::
|
46
|
+
image: Faraday::Multipart::FilePart.new(file_or_binary, options[:content_type], filename)
|
50
47
|
}
|
51
48
|
|
52
49
|
response = handle_faraday_error do
|
@@ -61,14 +58,11 @@ module Resizing
|
|
61
58
|
|
62
59
|
def put(image_id, file_or_binary, options)
|
63
60
|
ensure_content_type(options)
|
64
|
-
|
65
|
-
url = build_put_url(image_id)
|
66
|
-
|
67
61
|
filename = gather_filename file_or_binary, options
|
68
62
|
|
69
|
-
|
63
|
+
url = build_put_url(image_id)
|
70
64
|
params = {
|
71
|
-
image: Faraday::
|
65
|
+
image: Faraday::Multipart::FilePart.new(file_or_binary, options[:content_type], filename)
|
72
66
|
}
|
73
67
|
|
74
68
|
response = handle_faraday_error do
|
@@ -134,18 +128,6 @@ module Resizing
|
|
134
128
|
"#{config.image_host}/projects/#{config.project_id}/upload/images/#{image_id}/metadata"
|
135
129
|
end
|
136
130
|
|
137
|
-
|
138
|
-
def to_io(data)
|
139
|
-
return data.to_io if data.respond_to? :to_io
|
140
|
-
|
141
|
-
case data
|
142
|
-
when String
|
143
|
-
StringIO.new(data)
|
144
|
-
else
|
145
|
-
raise ArgumentError, "file_or_binary is required IO class or String:#{data.class}"
|
146
|
-
end
|
147
|
-
end
|
148
|
-
|
149
131
|
def ensure_content_type(options)
|
150
132
|
raise ArgumentError, "need options[:content_type] for #{options.inspect}" unless options[:content_type]
|
151
133
|
end
|
data/lib/resizing/version.rb
CHANGED
data/lib/resizing.rb
CHANGED
data/resizing.gemspec
CHANGED
@@ -28,13 +28,17 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.bindir = 'exe'
|
29
29
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
30
30
|
spec.require_paths = ['lib']
|
31
|
-
spec.add_runtime_dependency 'faraday', '~>
|
31
|
+
spec.add_runtime_dependency 'faraday', '~> 2.3'
|
32
|
+
spec.add_runtime_dependency 'faraday-multipart'
|
32
33
|
spec.add_development_dependency 'rails', '~> 6.0'
|
33
|
-
spec.add_development_dependency 'carrierwave', '~>
|
34
|
+
spec.add_development_dependency 'carrierwave', '~> 2.2.5'
|
34
35
|
spec.add_development_dependency 'fog-aws'
|
35
36
|
spec.add_development_dependency 'minitest'
|
36
37
|
spec.add_development_dependency 'minitest-ci'
|
37
38
|
spec.add_development_dependency 'rubocop'
|
38
39
|
spec.add_development_dependency 'timecop'
|
39
40
|
spec.add_development_dependency 'vcr'
|
41
|
+
spec.add_development_dependency 'mysql2'
|
42
|
+
spec.add_development_dependency 'simplecov'
|
43
|
+
spec.add_development_dependency 'simplecov-cobertura'
|
40
44
|
end
|
data/test/test_helper.rb
CHANGED
@@ -1,4 +1,22 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
+
require 'simplecov'
|
3
|
+
require 'simplecov-cobertura'
|
4
|
+
|
5
|
+
SimpleCov.start do
|
6
|
+
add_filter "/test/"
|
7
|
+
|
8
|
+
if ENV['CI']
|
9
|
+
formatter SimpleCov::Formatter::CoberturaFormatter
|
10
|
+
else
|
11
|
+
formatter SimpleCov::Formatter::MultiFormatter.new([
|
12
|
+
SimpleCov::Formatter::SimpleFormatter,
|
13
|
+
SimpleCov::Formatter::HTMLFormatter
|
14
|
+
])
|
15
|
+
end
|
16
|
+
|
17
|
+
enable_coverage :branch
|
18
|
+
primary_coverage :branch
|
19
|
+
end
|
2
20
|
|
3
21
|
$LOAD_PATH.unshift File.expand_path('../lib', __dir__)
|
4
22
|
require 'time'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: resizing
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Junichiro Kasuya
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-08-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -16,14 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '2.3'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '2.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: faraday-multipart
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: rails
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,14 +58,14 @@ dependencies:
|
|
44
58
|
requirements:
|
45
59
|
- - "~>"
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
61
|
+
version: 2.2.5
|
48
62
|
type: :development
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
66
|
- - "~>"
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
68
|
+
version: 2.2.5
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: fog-aws
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,6 +150,48 @@ dependencies:
|
|
136
150
|
- - ">="
|
137
151
|
- !ruby/object:Gem::Version
|
138
152
|
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: mysql2
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ">="
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: simplecov
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - ">="
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0'
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - ">="
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0'
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: simplecov-cobertura
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - ">="
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '0'
|
188
|
+
type: :development
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - ">="
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: '0'
|
139
195
|
description: 'Client and utilities for Resizing '
|
140
196
|
email:
|
141
197
|
- junichiro.kasuya@gmail.com
|
@@ -146,7 +202,7 @@ executables:
|
|
146
202
|
extensions: []
|
147
203
|
extra_rdoc_files: []
|
148
204
|
files:
|
149
|
-
- ".
|
205
|
+
- ".github/workflows/test.yml"
|
150
206
|
- ".gitignore"
|
151
207
|
- ".rubocop.yml"
|
152
208
|
- CHANGELOG.md
|
data/.circleci/config.yml
DELETED
@@ -1,73 +0,0 @@
|
|
1
|
-
version: 2
|
2
|
-
|
3
|
-
jobs:
|
4
|
-
build:
|
5
|
-
docker:
|
6
|
-
- image: circleci/ruby:2.6.2-node
|
7
|
-
environment:
|
8
|
-
BUNDLE_JOBS: 4
|
9
|
-
BUNDLE_RETRY: 3
|
10
|
-
BUNDLE_PATH: vendor/bundle
|
11
|
-
BUNDLE_APP_CONFIG: "./.bundle"
|
12
|
-
TZ: /usr/share/zoneinfo/Asia/Tokyo
|
13
|
-
LANG: ja_JP.UTF8
|
14
|
-
- image: circleci/mysql:5.7
|
15
|
-
environment:
|
16
|
-
MYSQL_ROOT_PASSWORD: secret
|
17
|
-
MYSQL_DATABASE: resizing_gem_test
|
18
|
-
MYSQL_USER: resizing_gem
|
19
|
-
MYSQL_PASSWORD: secret
|
20
|
-
TZ: /usr/share/zoneinfo/Asia/Tokyo
|
21
|
-
LANG: ja_JP.UTF8
|
22
|
-
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_bin
|
23
|
-
|
24
|
-
steps:
|
25
|
-
- checkout
|
26
|
-
- run:
|
27
|
-
name: Which bundler?
|
28
|
-
command: |
|
29
|
-
bundle -v
|
30
|
-
bundle config
|
31
|
-
|
32
|
-
- restore_cache:
|
33
|
-
keys:
|
34
|
-
- v2-{{ .Environment.CACHE_KEY }}-gem-cache-{{ arch }}-{{ .Branch }}
|
35
|
-
- v2-{{ .Environment.CACHE_KEY }}-gem-cache
|
36
|
-
|
37
|
-
- run:
|
38
|
-
name: reinstall rake && bundle install
|
39
|
-
command: |
|
40
|
-
sudo gem install bundler
|
41
|
-
sudo gem uninstall -x rake
|
42
|
-
echo "install: --no-document" >> ~/.gemrc
|
43
|
-
bundle config set --local path vendor/bundle
|
44
|
-
bundle config set --local clean true
|
45
|
-
bundle check || bundle install
|
46
|
-
|
47
|
-
- save_cache:
|
48
|
-
key: v2-{{ .Environment.CACHE_KEY }}-gem-cache-{{ arch }}-{{ .Branch }}
|
49
|
-
paths:
|
50
|
-
- vendor/bundle
|
51
|
-
|
52
|
-
- run:
|
53
|
-
name: connectable MySQL?
|
54
|
-
command: |
|
55
|
-
dockerize -wait tcp://127.0.0.1:3306 -timeout 1m
|
56
|
-
|
57
|
-
# - run:
|
58
|
-
# name: rubocop
|
59
|
-
# command: bundle exec rubocop --parallel
|
60
|
-
# - run:
|
61
|
-
# name: brakeman
|
62
|
-
# command: bundle exec brakeman --no-exit-on-error -w 1 -z
|
63
|
-
- run:
|
64
|
-
command: bundle exec rake test
|
65
|
-
when: always
|
66
|
-
- store_test_results:
|
67
|
-
path: test/reports
|
68
|
-
|
69
|
-
workflows:
|
70
|
-
version: 2
|
71
|
-
build-deploy:
|
72
|
-
jobs:
|
73
|
-
- build
|