github_api 0.9.5 → 0.9.6

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.
data/README.md CHANGED
@@ -20,12 +20,12 @@ Supports all the API methods(nearly 200). It's build in a modular way, that is,
20
20
  * Fully customizable including advanced middleware stack construction.
21
21
  * Its comprehensive, you can request all GitHub API resources.
22
22
  * Flexible arguments parsing, you can write expressive and natural queries.
23
- * Requests pagination with convenient DSL.
23
+ * Requests pagination with convenient DSL and automatic option.
24
24
  * Easy error handling split for client and server type errors.
25
25
  * Supports multithreaded environment.
26
26
  * Custom mime types specification (Status: In Progess)
27
27
  * Request results caching (Status: TODO)
28
- * Fully tested with test coverage above 90% with over 1,500 specs and 700 features.
28
+ * Fully tested with test coverage above 90% with over 1,500 specs and 800 features.
29
29
 
30
30
  ## Installation
31
31
 
@@ -2,7 +2,7 @@ Feature: Github API auto pagination
2
2
 
3
3
  The gem permits to auto paginate resources.
4
4
 
5
- Scenario: Passing auto_pagionation param to instances
5
+ Scenario: Passing auto_pagionation param to request
6
6
 
7
7
  Given I have "Github::Repos" instance
8
8
  When I want to list resources
@@ -26,3 +26,14 @@ Feature: Github API auto pagination
26
26
  And the response type should be JSON
27
27
  And the response should have 134 items
28
28
 
29
+ Scenario: Paginating single resource
30
+
31
+ Given I have "Github::Repos" instance
32
+ And I pass the following request options:
33
+ | user | repo | auto_pagination |
34
+ | wycats | thor | true |
35
+ When I want to get resource
36
+ And I make request within a cassette named "auto_pagination/repos/get"
37
+ Then the response status should be 200
38
+ And the response type should be JSON
39
+ And the response body name should be thor
@@ -0,0 +1,86 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://<BASIC_AUTH>@api.github.com/repos/wycats/thor?access_token=<TOKEN>
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/vnd.github.v3.full+json,application/vnd.github.beta.full+json;q=0.7,application/vnd.github+json;q=0.5,application/json;q=0.1
12
+ Accept-Charset:
13
+ - utf-8
14
+ User-Agent:
15
+ - Github Ruby Gem 0.9.5
16
+ Content-Type:
17
+ - application/json
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Server:
26
+ - GitHub.com
27
+ Date:
28
+ - Sat, 06 Apr 2013 19:45:34 GMT
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Transfer-Encoding:
32
+ - chunked
33
+ Connection:
34
+ - keep-alive
35
+ Status:
36
+ - 200 OK
37
+ X-Ratelimit-Limit:
38
+ - '5000'
39
+ X-Ratelimit-Remaining:
40
+ - '4995'
41
+ Vary:
42
+ - Accept, Authorization, Cookie
43
+ Cache-Control:
44
+ - private, max-age=60, s-maxage=60
45
+ Last-Modified:
46
+ - Sat, 06 Apr 2013 17:25:26 GMT
47
+ Etag:
48
+ - ! '"19532db9c9ae7284243986dd05c79ea6"'
49
+ X-Github-Media-Type:
50
+ - github.v3; param=full; format=json
51
+ X-Content-Type-Options:
52
+ - nosniff
53
+ Content-Encoding:
54
+ - gzip
55
+ body:
56
+ encoding: ASCII-8BIT
57
+ string: !binary |-
58
+ H4sIAAAAAAAAA51Yy46rOBD9lQhpVpPEhM6jG2l0ZzbzAaOezWwiBxywGgyy
59
+ TUdp1P8+pwwEOrnqXGeT8KhzfFwuu6poA5kG8WoTbXbzQPFSBHFg80oH8+DY
60
+ FMW+f3Q6J9wa1r+pTkroIG6DosqkAqJ7DQyRrecBf+eW632jC7zMra1NzJgR
61
+ SaPFMtPd22VSlay7ZOvoebXd8SeR7KLoaXPgL7vVahu9ROv1S7QNX36kfwws
62
+ PFo/L8WSv/GSy6USlnFjhDXLTNq8ORDrb9HfsuSZMLgYRpteLxoj9GIdhcta
63
+ ZRA92OxJfXBPCwBf58VrORmcEblhF4/ktiyuHDEqHc2OVVFUJyCvbL8hZxcM
64
+ LZbDS5V544EhH0hjfcZ29i2jP7jtEwwGK65F6jF+j2iZi6fPlmlRV46qOZhE
65
+ y9rKSvmI+oIDT6UzruQH9+UBzgBOcnyGd/bAiXehvJzZAVpWa/nOkzO5QItE
66
+ yHe405vsCgkue65pW/+LwAw+54EbxeLJkRdGzLE/70fosPNTcVkYMP416+9U
67
+ NjtqHB6nSr/NbM7tDL4oeCLMTPM3MeMqnRlcQMwRJpehv91Izp39DhnGJ/Sd
68
+ JbmBYZ8AhKHfxNkbS5iW4beP8gT7jB8qzW11b6/eCvkCbtn0ltbcCl56C3Qg
69
+ gPOq8veMAwEsjWnEL4Xa7aQc1rAhhlVTHrCZf3Eb3NJ1PIDjWJeZEsLbIxdg
70
+ 685iknLQXCW5P9WAa1l35VaJZ96SCNMy/DoxRXXwZkDOYA7YMpNzosGT/SNa
71
+ iKnTMyHS4viQJMJdFFn9wGo5OQS80CAtWCyct54Bx9p+YgVXWUN1wPc56TYG
72
+ L0C4mZJUxj/uZuZblhEJmqRSVstD89ixMWJJUZcdscu8JzaBjkQuzfq6aJpq
73
+ 3fTKUt7Lebcu6mFfYvpBKoqjazq6v5+Kfy6LcC0bT7PuiOwZfb3Vn5GDHtaO
74
+ vBQYj2nscKz9veY2pxMB9DXXwldcD2PtgRvxuVwu21xwV9KVQj+wezoU4Fwn
75
+ OWoYXz3tgEPeLrl1deGR5KSoE4uKp95hfwGCpFsKX00dahoPNbojbyEONGUp
76
+ ZSGMrZT/GTUip3yqsvIo0avdr5xvw/4LuP1hpErEnBfFHFFlZSIRZ2gWaCVQ
77
+ Agn/2XcoyEWl6OJVC9Sh6Z5b1JJRGD4vws0i3L1GYRzu4qfVf7Bp6nRqs3pa
78
+ hOtFuH1d7eJoE0dbsqkbk480vcnmdbWJ12AKyYSSZVds4gq96E0L5gpMauNg
79
+ bEw+Gv85msaTLrg3TQqs3VUwfc/9fn3U/twcMvKqFDXSV99CQ/XpdFqeRd6k
80
+ 6H7tB7W6pFZ+wGS9iebBiVtUOUgLSdUoOHW1XYe0WF0aBM8/zeFMzNzsu4gO
81
+ Yqsb6gHwZNwlk4cn+SYHo6747rmjEH1+KbWu+j5fIbbRctVC9dyDih00dCV4
82
+ 7EATkyCml4PsQXAqjrwp7L6ruSC75Maid8FKC11COAU3fX7gaUmfH/o+hsJg
83
+ clPg2wNNDh0PvhJQZzIIgorP/wHunZF3+BAAAA==
84
+ http_version: !!null
85
+ recorded_at: Sat, 06 Apr 2013 19:45:34 GMT
86
+ recorded_with: VCR 2.4.0
@@ -80,6 +80,10 @@ Then /^the response (.*) link should contain:$/ do |type, table|
80
80
  end
81
81
  end
82
82
 
83
+ Then /^the response body (.*) should be (.*)$/ do |attr, result|
84
+ expect(@response.body[attr]).to eql result
85
+ end
86
+
83
87
  Then /^the response (.*) item (.*) should be (.*)$/ do |action, field, result|
84
88
  if action == 'first'
85
89
  @response.first.send(field).should eql result
@@ -12,20 +12,21 @@ module Github
12
12
  :Milestones => 'milestones'
13
13
 
14
14
  VALID_ISSUE_PARAM_NAMES = %w[
15
+ assignee
16
+ body
17
+ creator
18
+ direction
15
19
  filter
16
- state
17
20
  labels
18
- sort
19
- direction
20
- since
21
21
  milestone
22
- assignee
23
22
  mentioned
24
- title
25
- body
26
- resource
27
23
  mime_type
28
24
  org
25
+ resource
26
+ since
27
+ sort
28
+ state
29
+ title
29
30
  ].freeze
30
31
 
31
32
  VALID_ISSUE_PARAM_VALUES = {
@@ -108,6 +109,7 @@ module Github
108
109
  # * String User login
109
110
  # * <tt>none</tt> for Issues with no assigned User.
110
111
  # * <tt>*</tt> for Issues with any assigned User.
112
+ # <tt>:creator</tt> String User login
111
113
  # <tt>:mentioned</tt> String User login
112
114
  # <tt>:sort</tt> - <tt>created</tt>, <tt>updated</tt>, <tt>comments</tt>,
113
115
  # default: <tt>created</tt>
@@ -23,7 +23,7 @@ module Github
23
23
  # instances or just per given request.
24
24
  #
25
25
  def auto_paginate(auto=false)
26
- if current_api.auto_pagination? || auto
26
+ if (current_api.auto_pagination? || auto) && self.body.is_a?(Array)
27
27
  resources_bodies = []
28
28
  each_page { |resource| resources_bodies += resource.body }
29
29
  self.body = resources_bodies
@@ -25,12 +25,12 @@ module Github
25
25
  # Create a fork for the authenticated user
26
26
  #
27
27
  # = Inputs
28
- # * <tt>:org</tt> - Optional string - the name of the service that is being called.
28
+ # * <tt>:organization</tt> - Optional string - the name of the service that is being called.
29
29
  #
30
30
  # = Examples
31
31
  # github = Github.new
32
32
  # github.repos.forks.create 'user-name', 'repo-name',
33
- # "org" => "github"
33
+ # "organization" => "github"
34
34
  #
35
35
  def create(*args)
36
36
  arguments(args, :required => [:user, :repo])
@@ -56,12 +56,12 @@ module Github
56
56
  #
57
57
  # = Examples
58
58
  # github = Github.new
59
- # github.repos.hooks.get 'user-name', 'repo-name'
59
+ # github.repos.hooks.get 'user-name', 'repo-name', 'hook-id'
60
60
  #
61
61
  def get(*args)
62
- arguments(args, :required => [:user, :repo, :hook_id])
62
+ arguments(args, :required => [:user, :repo, :id])
63
63
 
64
- get_request("/repos/#{user}/#{repo}/hooks/#{hook_id}", arguments.params)
64
+ get_request("/repos/#{user}/#{repo}/hooks/#{id}", arguments.params)
65
65
  end
66
66
  alias :find :get
67
67
 
@@ -104,7 +104,7 @@ module Github
104
104
  #
105
105
  # = Examples
106
106
  # github = Github.new
107
- # github.repos.hooks.edit 'user-name', 'repo-name',
107
+ # github.repos.hooks.edit 'user-name', 'repo-name', 'hook-id',
108
108
  # "name" => "campfire",
109
109
  # "active" => true,
110
110
  # "config" => {
@@ -114,12 +114,12 @@ module Github
114
114
  # }
115
115
  #
116
116
  def edit(*args)
117
- arguments(args, :required => [:user, :repo, :hook_id]) do
117
+ arguments(args, :required => [:user, :repo, :id]) do
118
118
  sift VALID_HOOK_PARAM_NAMES, :recursive => false
119
119
  assert_required REQUIRED_PARAMS
120
120
  end
121
121
 
122
- patch_request("/repos/#{user}/#{repo}/hooks/#{hook_id}", arguments.params)
122
+ patch_request("/repos/#{user}/#{repo}/hooks/#{id}", arguments.params)
123
123
  end
124
124
 
125
125
  # Test a hook
@@ -131,10 +131,10 @@ module Github
131
131
  # github.repos.hooks.test 'user-name', 'repo-name', 'hook-id'
132
132
  #
133
133
  def test(*args)
134
- arguments(args, :required => [:user, :repo, :hook_id])
134
+ arguments(args, :required => [:user, :repo, :id])
135
135
  params = arguments.params
136
136
 
137
- post_request("/repos/#{user}/#{repo}/hooks/#{hook_id}/test", params)
137
+ post_request("/repos/#{user}/#{repo}/hooks/#{id}/test", params)
138
138
  end
139
139
 
140
140
  # Delete a hook
@@ -144,10 +144,10 @@ module Github
144
144
  # github.repos.hooks.delete 'user-name', 'repo-name', 'hook-id'
145
145
  #
146
146
  def delete(*args)
147
- arguments(args, :required => [:user, :repo, :hook_id])
147
+ arguments(args, :required => [:user, :repo, :id])
148
148
  params = arguments.params
149
149
 
150
- delete_request("/repos/#{user}/#{repo}/hooks/#{hook_id}", params)
150
+ delete_request("/repos/#{user}/#{repo}/hooks/#{id}", params)
151
151
  end
152
152
 
153
153
  end # Repos::Hooks
@@ -9,7 +9,7 @@ module Github
9
9
  METHODS_WITH_BODIES = [ :post, :put, :patch ]
10
10
 
11
11
  def get_request(path, params={}, options={})
12
- request(:get, path, params, options)
12
+ request(:get, path, params, options).auto_paginate
13
13
  end
14
14
 
15
15
  def patch_request(path, params={}, options={})
@@ -50,7 +50,7 @@ module Github
50
50
  request.body = extract_data_from_params(params) unless params.empty?
51
51
  end
52
52
  end
53
- ResponseWrapper.new(response, self).auto_paginate
53
+ ResponseWrapper.new(response, self)
54
54
  end
55
55
 
56
56
  private
@@ -4,7 +4,7 @@ module Github
4
4
  module VERSION
5
5
  MAJOR = 0
6
6
  MINOR = 9
7
- PATCH = 5
7
+ PATCH = 6
8
8
  BUILD = nil
9
9
 
10
10
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.');
@@ -2,15 +2,15 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
-
6
5
  describe Github::Request do
7
6
  let(:github) { Github::API.new }
8
7
  let(:path) { 'github.api/repos/users' }
9
8
  let(:params) { {} }
10
9
  let(:options) { {} }
10
+ let(:response) { double('response').as_null_object }
11
11
 
12
12
  it "knows how to make get request" do
13
- github.should_receive(:request).with(:get, path, params, options)
13
+ github.should_receive(:request).with(:get, path, params, options) { response }
14
14
  github.get_request path, params, options
15
15
  end
16
16
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: github_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.5
4
+ version: 0.9.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-01 00:00:00.000000000Z
12
+ date: 2013-04-06 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: hashie
16
- requirement: &2160880680 !ruby/object:Gem::Requirement
16
+ requirement: &2154609900 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '1.2'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2160880680
24
+ version_requirements: *2154609900
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: faraday
27
- requirement: &2160880120 !ruby/object:Gem::Requirement
27
+ requirement: &2154609200 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.8.1
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2160880120
35
+ version_requirements: *2154609200
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: multi_json
38
- requirement: &2160879660 !ruby/object:Gem::Requirement
38
+ requirement: &2154608740 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '1.4'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *2160879660
46
+ version_requirements: *2154608740
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: oauth2
49
- requirement: &2160879260 !ruby/object:Gem::Requirement
49
+ requirement: &2154608360 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *2160879260
57
+ version_requirements: *2154608360
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: nokogiri
60
- requirement: &2160878720 !ruby/object:Gem::Requirement
60
+ requirement: &2154607760 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.5.2
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *2160878720
68
+ version_requirements: *2154607760
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
- requirement: &2160878220 !ruby/object:Gem::Requirement
71
+ requirement: &2154607260 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *2160878220
79
+ version_requirements: *2154607260
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: cucumber
82
- requirement: &2160877760 !ruby/object:Gem::Requirement
82
+ requirement: &2154606800 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *2160877760
90
+ version_requirements: *2154606800
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: webmock
93
- requirement: &2160877300 !ruby/object:Gem::Requirement
93
+ requirement: &2154606340 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ~>
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: 1.9.0
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *2160877300
101
+ version_requirements: *2154606340
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: vcr
104
- requirement: &2160876840 !ruby/object:Gem::Requirement
104
+ requirement: &2154605880 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ~>
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: 2.4.0
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *2160876840
112
+ version_requirements: *2154605880
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: simplecov
115
- requirement: &2160876380 !ruby/object:Gem::Requirement
115
+ requirement: &2154605420 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ~>
@@ -120,10 +120,10 @@ dependencies:
120
120
  version: 0.7.1
121
121
  type: :development
122
122
  prerelease: false
123
- version_requirements: *2160876380
123
+ version_requirements: *2154605420
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: coveralls
126
- requirement: &2160875900 !ruby/object:Gem::Requirement
126
+ requirement: &2154604960 !ruby/object:Gem::Requirement
127
127
  none: false
128
128
  requirements:
129
129
  - - ~>
@@ -131,10 +131,10 @@ dependencies:
131
131
  version: 0.5.8
132
132
  type: :development
133
133
  prerelease: false
134
- version_requirements: *2160875900
134
+ version_requirements: *2154604960
135
135
  - !ruby/object:Gem::Dependency
136
136
  name: guard
137
- requirement: &2160875500 !ruby/object:Gem::Requirement
137
+ requirement: &2154604560 !ruby/object:Gem::Requirement
138
138
  none: false
139
139
  requirements:
140
140
  - - ! '>='
@@ -142,10 +142,10 @@ dependencies:
142
142
  version: '0'
143
143
  type: :development
144
144
  prerelease: false
145
- version_requirements: *2160875500
145
+ version_requirements: *2154604560
146
146
  - !ruby/object:Gem::Dependency
147
147
  name: guard-rspec
148
- requirement: &2160875040 !ruby/object:Gem::Requirement
148
+ requirement: &2154604060 !ruby/object:Gem::Requirement
149
149
  none: false
150
150
  requirements:
151
151
  - - ! '>='
@@ -153,10 +153,10 @@ dependencies:
153
153
  version: '0'
154
154
  type: :development
155
155
  prerelease: false
156
- version_requirements: *2160875040
156
+ version_requirements: *2154604060
157
157
  - !ruby/object:Gem::Dependency
158
158
  name: guard-cucumber
159
- requirement: &2160874620 !ruby/object:Gem::Requirement
159
+ requirement: &2154603540 !ruby/object:Gem::Requirement
160
160
  none: false
161
161
  requirements:
162
162
  - - ! '>='
@@ -164,10 +164,10 @@ dependencies:
164
164
  version: '0'
165
165
  type: :development
166
166
  prerelease: false
167
- version_requirements: *2160874620
167
+ version_requirements: *2154603540
168
168
  - !ruby/object:Gem::Dependency
169
169
  name: rake
170
- requirement: &2160874200 !ruby/object:Gem::Requirement
170
+ requirement: &2154603000 !ruby/object:Gem::Requirement
171
171
  none: false
172
172
  requirements:
173
173
  - - ! '>='
@@ -175,10 +175,10 @@ dependencies:
175
175
  version: '0'
176
176
  type: :development
177
177
  prerelease: false
178
- version_requirements: *2160874200
178
+ version_requirements: *2154603000
179
179
  - !ruby/object:Gem::Dependency
180
180
  name: bundler
181
- requirement: &2160873780 !ruby/object:Gem::Requirement
181
+ requirement: &2154602420 !ruby/object:Gem::Requirement
182
182
  none: false
183
183
  requirements:
184
184
  - - ! '>='
@@ -186,7 +186,7 @@ dependencies:
186
186
  version: '0'
187
187
  type: :development
188
188
  prerelease: false
189
- version_requirements: *2160873780
189
+ version_requirements: *2154602420
190
190
  description: ! ' Ruby wrapper that supports all of the GitHub API v3 methods(nearly
191
191
  200). It''s build in a modular way, that is, you can either instantiate the whole
192
192
  api wrapper Github.new or use parts of it e.i. Github::Repos.new if working solely
@@ -225,6 +225,7 @@ files:
225
225
  - features/cassettes/arguments/orgs/get.yml
226
226
  - features/cassettes/arguments/pulls/get.yml
227
227
  - features/cassettes/arguments/repo_commits/get.yml
228
+ - features/cassettes/auto_pagination/repos/get.yml
228
229
  - features/cassettes/auto_pagination/repos/global_list.yml
229
230
  - features/cassettes/auto_pagination/repos/list.yml
230
231
  - features/cassettes/emojis/list.yml