yadisk-client 1.10.2 → 1.11.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +14 -0
  3. data/.github/workflows/CI.yml +50 -0
  4. data/Gemfile +0 -9
  5. data/Gemfile.lock +18 -38
  6. data/README.md +12 -3
  7. data/lib/yadisk/resources/disk.rb +5 -6
  8. data/lib/yadisk/version.rb +1 -1
  9. data/yadisk.gemspec +9 -1
  10. metadata +112 -35
  11. data/spec/lib/yadisk/client_spec.rb +0 -19
  12. data/spec/lib/yadisk/disk_spec.rb +0 -226
  13. data/spec/lib/yadisk/errors_spec.rb +0 -16
  14. data/spec/lib/yadisk/operations_spec.rb +0 -23
  15. data/spec/lib/yadisk/public_spec.rb +0 -51
  16. data/spec/lib/yadisk/trash_spec.rb +0 -72
  17. data/spec/spec_helper.rb +0 -24
  18. data/spec/support/cassette_helpers.rb +0 -23
  19. data/spec/test_data/test_file.txt +0 -1
  20. data/spec/vcr/disk/DELETE_delete.yml +0 -50
  21. data/spec/vcr/disk/ERROR_info.yml +0 -48
  22. data/spec/vcr/disk/GET_download.yml +0 -52
  23. data/spec/vcr/disk/GET_get_meta.yml +0 -52
  24. data/spec/vcr/disk/GET_info.yml +0 -52
  25. data/spec/vcr/disk/GET_list_public.yml +0 -52
  26. data/spec/vcr/disk/GET_upload.yml +0 -48
  27. data/spec/vcr/disk/PATCH_update_meta.yml +0 -54
  28. data/spec/vcr/disk/POST_copy.yml +0 -50
  29. data/spec/vcr/disk/POST_move.yml +0 -50
  30. data/spec/vcr/disk/POST_upload_by_url.yml +0 -52
  31. data/spec/vcr/disk/PUT_create_dir.yml +0 -50
  32. data/spec/vcr/disk/PUT_publish.yml +0 -54
  33. data/spec/vcr/disk/PUT_unpublish.yml +0 -54
  34. data/spec/vcr/operations/GET_status.yml +0 -52
  35. data/spec/vcr/trash/DELETE_delete.yml +0 -50
  36. data/spec/vcr/trash/DELETE_delete_error.yml +0 -49
  37. data/spec/vcr/trash/GET_list.yml +0 -51
  38. data/spec/vcr/trash/PUT_restore.yml +0 -51
  39. data/spec/vcr_setup.rb +0 -35
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 773e6386c0a726ce03bab8d09c68fde2d11aaad6ba41fa68d6088724ca47f9de
4
- data.tar.gz: cf5fb42c245ba1649b3327f576003511852ac21f272c7b0d83e24fda8de988d8
3
+ metadata.gz: 8591ed6b7cbc602c1ad8475a25475d59ea3c2524fd307bb2e940fc9eafdf1423
4
+ data.tar.gz: bdfcc362b932f717d72bfeadbb0f0a81a1014183a6853e8f95f4de29c78be1b7
5
5
  SHA512:
6
- metadata.gz: 11149f7f6bcab071cf404c12606617c3a2e6421103ad92b2629e9c737be9a3d67d5b118cfeb968b2cde0766fc97a2187bd6c9b60e044dd8824656efbd5012cd1
7
- data.tar.gz: 01526162c291d8ad551288e0a81a71ec5d137e475b5b44548060495d4003eb2be7187b1935a17b4e9c77ca8851bcf9fe86dc80170fa677be2197354aa7800de3
6
+ metadata.gz: e15c2ab52db5ecc807ccd9eb26d35cf11699ec8aa969cf46ad3a0cd183cb163ea60ac767562720e9fa17faa0bec447aa8e7b5b54cc528c0b92ede34f6e5add97
7
+ data.tar.gz: ccadc6a7e8cccfd550ceaf78172d77482010018268c0a4e24338ee45ab679502596d8a8bf2716243d7e1e5dc3a6d48b8d7ddb1acdb7482826005db123f440b89
@@ -0,0 +1,14 @@
1
+ version: 2
2
+
3
+ updates:
4
+ - package-ecosystem: bundler
5
+ directory: /
6
+ schedule:
7
+ interval: daily
8
+ open-pull-requests-limit: 20
9
+
10
+ - package-ecosystem: "github-actions"
11
+ directory: "/"
12
+ schedule:
13
+ interval: "weekly"
14
+ open-pull-requests-limit: 20
@@ -0,0 +1,50 @@
1
+ name: Ruby specs
2
+ on: [push, pull_request]
3
+ jobs:
4
+ test:
5
+ name: tests
6
+ strategy:
7
+ fail-fast: false
8
+ matrix:
9
+ os: [ubuntu-latest, macos-latest]
10
+ ruby: ['2.6', '2.7', '3.0', '3.1', head, truffleruby, truffleruby-head]
11
+ runs-on: ${{ matrix.os }}
12
+ continue-on-error: true
13
+ steps:
14
+ - uses: actions/checkout@v3
15
+ - uses: ruby/setup-ruby@v1
16
+ with:
17
+ ruby-version: ${{ matrix.ruby }}
18
+
19
+ - name: Get the newest rubygems version to rid ourselves of warnings
20
+ run: gem update --system --no-document
21
+
22
+ - name: Install bundler
23
+ run: gem i bundler --no-document
24
+
25
+ - name: Install dependencies
26
+ run: |
27
+ bundle config set --local without benchmark
28
+ bundle install --jobs=3
29
+ - name: RSpec testing
30
+ run: |
31
+ JRUBY_OPTS="--dev --debug" bundle exec rspec --color --format documentation
32
+ - name: Coveralls Parallel
33
+ uses: coverallsapp/github-action@1.1.3
34
+ with:
35
+ github-token: ${{ secrets.github_token }}
36
+ flag-name: run-${{ matrix.ruby-version }}
37
+ path-to-lcov: ./coverage/lcov/yadisk.lcov
38
+ parallel: true
39
+
40
+ coverage:
41
+ name: Coverage
42
+ needs: test
43
+ runs-on: ubuntu-latest
44
+ steps:
45
+ - name: Coveralls Finished
46
+ uses: coverallsapp/github-action@1.1.3
47
+ with:
48
+ github-token: ${{ secrets.github_token }}
49
+ path-to-lcov: ${{ github.workspace }}/coverage/lcov.info
50
+ parallel-finished: true
data/Gemfile CHANGED
@@ -5,12 +5,3 @@ source "https://rubygems.org"
5
5
  # gem "yadisk-client", path: "./" # dev mode
6
6
 
7
7
  gemspec
8
-
9
- gem "addressable", "~> 2.3", ">= 2.3.7"
10
- gem "minitest", ">= 5.0.5"
11
- gem "rake"
12
- gem "standard"
13
-
14
- gem "rspec"
15
- gem "vcr"
16
- gem "webmock"
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- yadisk-client (1.10.2)
4
+ yadisk-client (1.11.2)
5
5
  addressable (~> 2.3, >= 2.3.7)
6
6
  faraday (~> 1.7)
7
7
  faraday_middleware (~> 1.1)
@@ -11,10 +11,10 @@ GEM
11
11
  specs:
12
12
  addressable (2.8.1)
13
13
  public_suffix (>= 2.0.2, < 6.0)
14
- ast (2.4.2)
15
14
  crack (0.4.5)
16
15
  rexml
17
16
  diff-lcs (1.5.0)
17
+ docile (1.4.0)
18
18
  faraday (1.10.2)
19
19
  faraday-em_http (~> 1.0)
20
20
  faraday-em_synchrony (~> 1.0)
@@ -41,16 +41,9 @@ GEM
41
41
  faraday_middleware (1.2.0)
42
42
  faraday (~> 1.0)
43
43
  hashdiff (1.0.1)
44
- json (2.6.2)
45
- minitest (5.16.3)
46
44
  multipart-post (2.2.3)
47
- parallel (1.22.1)
48
- parser (3.1.2.1)
49
- ast (~> 2.4.1)
50
45
  public_suffix (5.0.0)
51
- rainbow (3.1.1)
52
- rake (13.0.6)
53
- regexp_parser (2.5.0)
46
+ rake (12.3.3)
54
47
  rexml (3.2.5)
55
48
  rspec (3.11.0)
56
49
  rspec-core (~> 3.11.0)
@@ -65,27 +58,14 @@ GEM
65
58
  diff-lcs (>= 1.2.0, < 2.0)
66
59
  rspec-support (~> 3.11.0)
67
60
  rspec-support (3.11.1)
68
- rubocop (1.35.1)
69
- json (~> 2.3)
70
- parallel (~> 1.10)
71
- parser (>= 3.1.2.1)
72
- rainbow (>= 2.2.2, < 4.0)
73
- regexp_parser (>= 1.8, < 3.0)
74
- rexml (>= 3.2.5, < 4.0)
75
- rubocop-ast (>= 1.20.1, < 2.0)
76
- ruby-progressbar (~> 1.7)
77
- unicode-display_width (>= 1.4.0, < 3.0)
78
- rubocop-ast (1.21.0)
79
- parser (>= 3.1.1.0)
80
- rubocop-performance (1.14.3)
81
- rubocop (>= 1.7.0, < 2.0)
82
- rubocop-ast (>= 0.4.0)
83
- ruby-progressbar (1.11.0)
84
61
  ruby2_keywords (0.0.5)
85
- standard (1.16.1)
86
- rubocop (= 1.35.1)
87
- rubocop-performance (= 1.14.3)
88
- unicode-display_width (2.3.0)
62
+ simplecov (0.21.2)
63
+ docile (~> 1.1)
64
+ simplecov-html (~> 0.11)
65
+ simplecov_json_formatter (~> 0.1)
66
+ simplecov-html (0.12.3)
67
+ simplecov-lcov (0.8.0)
68
+ simplecov_json_formatter (0.1.4)
89
69
  vcr (6.1.0)
90
70
  webmock (3.18.1)
91
71
  addressable (>= 2.8.0)
@@ -93,17 +73,17 @@ GEM
93
73
  hashdiff (>= 0.4.0, < 2.0.0)
94
74
 
95
75
  PLATFORMS
96
- universal-darwin-21
97
76
  x86_64-darwin-17
77
+ x86_64-linux
98
78
 
99
79
  DEPENDENCIES
100
- addressable (~> 2.3, >= 2.3.7)
101
- minitest (>= 5.0.5)
102
- rake
103
- rspec
104
- standard
105
- vcr
106
- webmock
80
+ bundler
81
+ rake (~> 12.3.3)
82
+ rspec (~> 3.0)
83
+ simplecov (~> 0.9)
84
+ simplecov-lcov (~> 0.7.0)
85
+ vcr (~> 6.1)
86
+ webmock (~> 3.18, >= 3.18.1)
107
87
  yadisk-client!
108
88
 
109
89
  BUNDLED WITH
data/README.md CHANGED
@@ -1,6 +1,9 @@
1
1
  # Yadisk - Yandex.Disk API client (ruby gem)
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/yadisk-client.svg)](https://badge.fury.io/rb/yadisk-client)
4
+ ![Gem](https://img.shields.io/gem/dt/yadisk-client)
5
+ [![Ruby specs](https://github.com/Smolget/yadisk/actions/workflows/CI.yml/badge.svg)](https://github.com/Smolget/yadisk/actions/workflows/CI.yml)
6
+ [![Coverage Status](https://coveralls.io/repos/github/Smolget/yadisk/badge.svg?branch=master)](https://coveralls.io/github/Smolget/yadisk?branch=master)
4
7
 
5
8
  ## Install
6
9
 
@@ -8,10 +11,16 @@
8
11
  gem install yadisk-client
9
12
  ```
10
13
 
14
+ Gemfile
15
+
16
+ ```gemfile
17
+ gem 'yadisk-client', '~> 1.11', '>= 1.11.2'
18
+ ```
19
+
11
20
  ## Development
12
21
 
13
22
  ```sh
14
- gem build yadisk.gemspec && gem install yadisk-client && bundle exec rake console
23
+ rake console
15
24
  ```
16
25
 
17
26
  ## Available methods
@@ -56,6 +65,6 @@ client.trash.restore(path:)
56
65
 
57
66
  ## TODOs
58
67
 
59
- - tests
68
+ - ~~tests~~
60
69
  - examples
61
- - readme
70
+ - ~~readme~~
@@ -6,7 +6,6 @@ module Yadisk
6
6
  Disk.new get_request("disk").body
7
7
  end
8
8
 
9
- # TOOO: more test cases
10
9
  def upload(path:)
11
10
  path = Addressable::URI.parse(path).normalize
12
11
  ResourceUploadLink.new get_request("disk/resources/upload?path=#{path}").body
@@ -24,7 +23,7 @@ module Yadisk
24
23
 
25
24
  def delete(path:)
26
25
  path = Addressable::URI.parse(path).normalize
27
- delete_request("disk/resources?path=#{path}")
26
+ Object.new delete_request("disk/resources?path=#{path}").body
28
27
  end
29
28
 
30
29
  def get_meta(path:, **params)
@@ -55,13 +54,13 @@ module Yadisk
55
54
  end
56
55
 
57
56
  def list_files(**params)
58
- resp = get_request("disk/resources/files", params: params).body
59
- Collection.from_response(resp, key: "items", type: FilesResourceList)
57
+ resp = get_request("disk/resources/files", params: params)
58
+ Collection.from_response(resp, key: "items", type: Resource)
60
59
  end
61
60
 
62
61
  def last_uploaded(**params)
63
62
  resp = get_request("disk/resources/last-uploaded", params: params)
64
- Collection.from_response(resp, key: "items", type: LastUploadedResourceList)
63
+ Collection.from_response(resp, key: "items", type: Resource)
65
64
  end
66
65
 
67
66
  def move(from:, to:)
@@ -72,7 +71,7 @@ module Yadisk
72
71
 
73
72
  def list_public(**params)
74
73
  resp = get_request("disk/resources/public", params: params)
75
- Collection.from_response(resp, key: "items", type: PublicResourcesList)
74
+ Collection.from_response(resp, key: "items", type: PublicResource)
76
75
  end
77
76
 
78
77
  def publish(path:)
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Yadisk
4
4
  major = 1 # supported API version
5
- minor = 10 # gem release version
5
+ minor = 11 # gem release version
6
6
  patch = 2
7
7
 
8
8
  VERSION = "#{major}.#{minor}.#{patch}"
data/yadisk.gemspec CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |s|
11
11
  s.description = "Yandex.Disk API wrapper written in Ruby"
12
12
  s.authors = ["Ilya Brin"]
13
13
  s.email = "ilya@codeplay.ru"
14
- s.files = `git ls-files -z`.split("\x0")
14
+ s.files = `git ls-files`.split($RS).reject {|fn| fn.start_with? "spec" }
15
15
  s.executables = s.files.grep(%r{^bin/}) {|f| File.basename(f) }
16
16
  s.require_paths = ["lib"]
17
17
  s.homepage = "https://github.com/Smolget/yadisk"
@@ -23,4 +23,12 @@ Gem::Specification.new do |s|
23
23
  s.add_dependency "addressable", "~> 2.3", ">= 2.3.7"
24
24
  s.add_dependency "faraday", "~> 1.7"
25
25
  s.add_dependency "faraday_middleware", "~> 1.1"
26
+
27
+ s.add_development_dependency "bundler"
28
+ s.add_development_dependency "rake", "~> 12.3.3"
29
+ s.add_development_dependency "rspec", "~> 3.0"
30
+ s.add_development_dependency "simplecov", "~> 0.9"
31
+ s.add_development_dependency "simplecov-lcov", "~> 0.8.0"
32
+ s.add_development_dependency "vcr", "~> 6.1"
33
+ s.add_development_dependency "webmock", "~> 3.18", ">= 3.18.1"
26
34
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yadisk-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.2
4
+ version: 1.11.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ilya Brin
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-05 00:00:00.000000000 Z
11
+ date: 2022-10-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -58,12 +58,118 @@ dependencies:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '1.1'
61
+ - !ruby/object:Gem::Dependency
62
+ name: bundler
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ - !ruby/object:Gem::Dependency
76
+ name: rake
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: 12.3.3
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: 12.3.3
89
+ - !ruby/object:Gem::Dependency
90
+ name: rspec
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '3.0'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '3.0'
103
+ - !ruby/object:Gem::Dependency
104
+ name: simplecov
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '0.9'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '0.9'
117
+ - !ruby/object:Gem::Dependency
118
+ name: simplecov-lcov
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: 0.8.0
124
+ type: :development
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: 0.8.0
131
+ - !ruby/object:Gem::Dependency
132
+ name: vcr
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '6.1'
138
+ type: :development
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '6.1'
145
+ - !ruby/object:Gem::Dependency
146
+ name: webmock
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: '3.18'
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ version: 3.18.1
155
+ type: :development
156
+ prerelease: false
157
+ version_requirements: !ruby/object:Gem::Requirement
158
+ requirements:
159
+ - - "~>"
160
+ - !ruby/object:Gem::Version
161
+ version: '3.18'
162
+ - - ">="
163
+ - !ruby/object:Gem::Version
164
+ version: 3.18.1
61
165
  description: Yandex.Disk API wrapper written in Ruby
62
166
  email: ilya@codeplay.ru
63
167
  executables: []
64
168
  extensions: []
65
169
  extra_rdoc_files: []
66
170
  files:
171
+ - ".github/dependabot.yml"
172
+ - ".github/workflows/CI.yml"
67
173
  - ".gitignore"
68
174
  - ".rspec"
69
175
  - ".rubocop.yml"
@@ -89,42 +195,13 @@ files:
89
195
  - lib/yadisk/resources/trash.rb
90
196
  - lib/yadisk/rest.rb
91
197
  - lib/yadisk/version.rb
92
- - spec/lib/yadisk/client_spec.rb
93
- - spec/lib/yadisk/disk_spec.rb
94
- - spec/lib/yadisk/errors_spec.rb
95
- - spec/lib/yadisk/operations_spec.rb
96
- - spec/lib/yadisk/public_spec.rb
97
- - spec/lib/yadisk/trash_spec.rb
98
- - spec/spec_helper.rb
99
- - spec/support/cassette_helpers.rb
100
- - spec/test_data/test_file.txt
101
- - spec/vcr/disk/DELETE_delete.yml
102
- - spec/vcr/disk/ERROR_info.yml
103
- - spec/vcr/disk/GET_download.yml
104
- - spec/vcr/disk/GET_get_meta.yml
105
- - spec/vcr/disk/GET_info.yml
106
- - spec/vcr/disk/GET_list_public.yml
107
- - spec/vcr/disk/GET_upload.yml
108
- - spec/vcr/disk/PATCH_update_meta.yml
109
- - spec/vcr/disk/POST_copy.yml
110
- - spec/vcr/disk/POST_move.yml
111
- - spec/vcr/disk/POST_upload_by_url.yml
112
- - spec/vcr/disk/PUT_create_dir.yml
113
- - spec/vcr/disk/PUT_publish.yml
114
- - spec/vcr/disk/PUT_unpublish.yml
115
- - spec/vcr/operations/GET_status.yml
116
- - spec/vcr/trash/DELETE_delete.yml
117
- - spec/vcr/trash/DELETE_delete_error.yml
118
- - spec/vcr/trash/GET_list.yml
119
- - spec/vcr/trash/PUT_restore.yml
120
- - spec/vcr_setup.rb
121
198
  - yadisk.gemspec
122
199
  homepage: https://github.com/Smolget/yadisk
123
200
  licenses:
124
201
  - MIT
125
202
  metadata:
126
203
  rubygems_mfa_required: 'true'
127
- post_install_message:
204
+ post_install_message:
128
205
  rdoc_options: []
129
206
  require_paths:
130
207
  - lib
@@ -139,8 +216,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
139
216
  - !ruby/object:Gem::Version
140
217
  version: '0'
141
218
  requirements: []
142
- rubygems_version: 3.0.3.1
143
- signing_key:
219
+ rubygems_version: 3.2.3
220
+ signing_key:
144
221
  specification_version: 4
145
222
  summary: Yandex.Disk API client
146
223
  test_files: []
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "spec_helper"
4
-
5
- describe Yadisk::Client do
6
- context "client with token: test" do
7
- it "returns correct instance of Yadisk::Client" do
8
- expect(@yandex).to be_kind_of(Yadisk::Client)
9
- end
10
- end
11
-
12
- context "client without token" do
13
- let(:client) { Yadisk::Client.new }
14
- it "returns nil" do
15
- expect { client }.to raise_error(ArgumentError)
16
- .with_message("missing keyword: token")
17
- end
18
- end
19
- end