octokit 3.1.2 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/octokit/client.rb +2 -0
- data/lib/octokit/client/commit_comments.rb +12 -12
- data/lib/octokit/client/commits.rb +21 -21
- data/lib/octokit/client/contents.rb +11 -11
- data/lib/octokit/client/deployments.rb +4 -4
- data/lib/octokit/client/downloads.rb +6 -6
- data/lib/octokit/client/events.rb +18 -15
- data/lib/octokit/client/gists.rb +4 -4
- data/lib/octokit/client/issues.rb +26 -30
- data/lib/octokit/client/labels.rb +22 -22
- data/lib/octokit/client/notifications.rb +4 -4
- data/lib/octokit/client/objects.rb +12 -12
- data/lib/octokit/client/organizations.rb +26 -28
- data/lib/octokit/client/pages.rb +6 -6
- data/lib/octokit/client/pull_requests.rb +36 -36
- data/lib/octokit/client/refs.rb +12 -12
- data/lib/octokit/client/releases.rb +4 -4
- data/lib/octokit/client/repositories.rb +79 -80
- data/lib/octokit/client/stats.rb +7 -7
- data/lib/octokit/client/statuses.rb +6 -6
- data/lib/octokit/client/users.rb +26 -28
- data/lib/octokit/error.rb +4 -0
- data/lib/octokit/organization.rb +17 -0
- data/lib/octokit/repository.rb +26 -1
- data/lib/octokit/user.rb +19 -0
- data/lib/octokit/version.rb +1 -1
- metadata +4 -2
data/lib/octokit/client/refs.rb
CHANGED
@@ -8,14 +8,14 @@ module Octokit
|
|
8
8
|
|
9
9
|
# List all refs for a given user and repo
|
10
10
|
#
|
11
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
11
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
12
12
|
# @param namespace [String] The ref namespace, e.g. <tt>tag</tt> or <tt>heads</tt>
|
13
13
|
# @return [Array<Sawyer::Resource>] A list of references matching the repo and the namespace
|
14
14
|
# @see https://developer.github.com/v3/git/refs/#get-all-references
|
15
15
|
# @example Fetch all refs for sferik/rails_admin
|
16
16
|
# Octokit.refs("sferik/rails_admin")
|
17
17
|
def refs(repo, namespace = nil, options = {})
|
18
|
-
path = "
|
18
|
+
path = "#{Repository.path repo}/git/refs"
|
19
19
|
path += "/#{namespace}" unless namespace.nil?
|
20
20
|
paginate path, options
|
21
21
|
end
|
@@ -25,20 +25,20 @@ module Octokit
|
|
25
25
|
|
26
26
|
# Fetch a given reference
|
27
27
|
#
|
28
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
28
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
29
29
|
# @param ref [String] The ref, e.g. <tt>tags/v0.0.3</tt>
|
30
30
|
# @return [Sawyer::Resource] The reference matching the given repo and the ref id
|
31
31
|
# @see https://developer.github.com/v3/git/refs/#get-a-reference
|
32
32
|
# @example Fetch tags/v0.0.3 for sferik/rails_admin
|
33
33
|
# Octokit.ref("sferik/rails_admin","tags/v0.0.3")
|
34
34
|
def ref(repo, ref, options = {})
|
35
|
-
get "
|
35
|
+
get "#{Repository.path repo}/git/refs/#{ref}", options
|
36
36
|
end
|
37
37
|
alias :reference :ref
|
38
38
|
|
39
39
|
# Create a reference
|
40
40
|
#
|
41
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
41
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
42
42
|
# @param ref [String] The ref, e.g. <tt>tags/v0.0.3</tt>
|
43
43
|
# @param sha [String] A SHA, e.g. <tt>827efc6d56897b048c772eb4087f854f46256132</tt>
|
44
44
|
# @return [Array<Sawyer::Resource>] The list of references, already containing the new one
|
@@ -50,13 +50,13 @@ module Octokit
|
|
50
50
|
:ref => "refs/#{ref}",
|
51
51
|
:sha => sha
|
52
52
|
}
|
53
|
-
post "
|
53
|
+
post "#{Repository.path repo}/git/refs", options.merge(parameters)
|
54
54
|
end
|
55
55
|
alias :create_reference :create_ref
|
56
56
|
|
57
57
|
# Update a reference
|
58
58
|
#
|
59
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
59
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
60
60
|
# @param ref [String] The ref, e.g. <tt>tags/v0.0.3</tt>
|
61
61
|
# @param sha [String] A SHA, e.g. <tt>827efc6d56897b048c772eb4087f854f46256132</tt>
|
62
62
|
# @param force [Boolean] A flag indicating one wants to force the update to make sure the update is a fast-forward update.
|
@@ -69,13 +69,13 @@ module Octokit
|
|
69
69
|
:sha => sha,
|
70
70
|
:force => force
|
71
71
|
}
|
72
|
-
patch "
|
72
|
+
patch "#{Repository.path repo}/git/refs/#{ref}", options.merge(parameters)
|
73
73
|
end
|
74
74
|
alias :update_reference :update_ref
|
75
75
|
|
76
76
|
# Update a branch
|
77
77
|
#
|
78
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
78
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
79
79
|
# @param branch [String] The ref, e.g. <tt>feature/new-shiny</tt>
|
80
80
|
# @param sha [String] A SHA, e.g. <tt>827efc6d56897b048c772eb4087f854f46256132</tt>
|
81
81
|
# @param force [Boolean] A flag indicating one wants to force the update to make sure the update is a fast-forward update.
|
@@ -89,7 +89,7 @@ module Octokit
|
|
89
89
|
|
90
90
|
# Delete a single branch
|
91
91
|
#
|
92
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
92
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
93
93
|
# @param branch [String] The branch, e.g. <tt>fix-refs</tt>
|
94
94
|
# @return [Boolean] Success
|
95
95
|
# @see https://developer.github.com/v3/git/refs/#delete-a-reference
|
@@ -101,14 +101,14 @@ module Octokit
|
|
101
101
|
|
102
102
|
# Delete a single reference
|
103
103
|
#
|
104
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
104
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
105
105
|
# @param ref [String] The ref, e.g. <tt>tags/v0.0.3</tt>
|
106
106
|
# @return [Boolean] Success
|
107
107
|
# @see https://developer.github.com/v3/git/refs/#delete-a-reference
|
108
108
|
# @example Delete tags/v0.0.3 for sferik/rails_admin
|
109
109
|
# Octokit.delete_ref("sferik/rails_admin","tags/v0.0.3")
|
110
110
|
def delete_ref(repo, ref, options = {})
|
111
|
-
boolean_from_response :delete, "
|
111
|
+
boolean_from_response :delete, "#{Repository.path repo}/git/refs/#{ref}", options
|
112
112
|
end
|
113
113
|
alias :delete_reference :delete_ref
|
114
114
|
|
@@ -8,17 +8,17 @@ module Octokit
|
|
8
8
|
|
9
9
|
# List releases for a repository
|
10
10
|
#
|
11
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
11
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
12
12
|
# @return [Array<Sawyer::Resource>] A list of releases
|
13
13
|
# @see https://developer.github.com/v3/repos/releases/#list-releases-for-a-repository
|
14
14
|
def releases(repo, options = {})
|
15
|
-
paginate "
|
15
|
+
paginate "#{Repository.path repo}/releases", options
|
16
16
|
end
|
17
17
|
alias :list_releases :releases
|
18
18
|
|
19
19
|
# Create a release
|
20
20
|
#
|
21
|
-
# @param repo [String, Repository, Hash] A GitHub repository
|
21
|
+
# @param repo [Integer, String, Repository, Hash] A GitHub repository
|
22
22
|
# @param tag_name [String] Git tag from which to create release
|
23
23
|
# @option options [String] :target_commitish Specifies the commitish value that determines where the Git tag is created from.
|
24
24
|
# @option options [String] :name Name for the release
|
@@ -29,7 +29,7 @@ module Octokit
|
|
29
29
|
# @see https://developer.github.com/v3/repos/releases/#create-a-release
|
30
30
|
def create_release(repo, tag_name, options = {})
|
31
31
|
opts = options.merge(:tag_name => tag_name)
|
32
|
-
post "
|
32
|
+
post "#{Repository.path repo}/releases", opts
|
33
33
|
end
|
34
34
|
|
35
35
|
# Get a release
|
@@ -9,7 +9,7 @@ module Octokit
|
|
9
9
|
# Check if a repository exists
|
10
10
|
#
|
11
11
|
# @see https://developer.github.com/v3/repos/#get
|
12
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
12
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository
|
13
13
|
# @return [Sawyer::Resource] if a repository exists, false otherwise
|
14
14
|
def repository?(repo, options = {})
|
15
15
|
!!repository(repo, options)
|
@@ -20,10 +20,10 @@ module Octokit
|
|
20
20
|
# Get a single repository
|
21
21
|
#
|
22
22
|
# @see https://developer.github.com/v3/repos/#get
|
23
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
23
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository
|
24
24
|
# @return [Sawyer::Resource] Repository information
|
25
25
|
def repository(repo, options = {})
|
26
|
-
get
|
26
|
+
get Repository.path(repo), options
|
27
27
|
end
|
28
28
|
alias :repo :repository
|
29
29
|
|
@@ -52,23 +52,20 @@ module Octokit
|
|
52
52
|
|
53
53
|
# List user repositories
|
54
54
|
#
|
55
|
-
# If
|
55
|
+
# If user is not supplied, repositories for the current
|
56
56
|
# authenticated user are returned.
|
57
57
|
#
|
58
|
-
# @note If the
|
58
|
+
# @note If the user provided is a GitHub organization, only the
|
59
59
|
# organization's public repositories will be listed. For retrieving
|
60
60
|
# organization repositories the {Organizations#organization_repositories}
|
61
61
|
# method should be used instead.
|
62
62
|
# @see https://developer.github.com/v3/repos/#list-your-repositories
|
63
63
|
# @see https://developer.github.com/v3/repos/#list-user-repositories
|
64
|
-
# @param
|
64
|
+
# @param user [Integer, String] Optional GitHub user login or id for which
|
65
|
+
# to list repos.
|
65
66
|
# @return [Array<Sawyer::Resource>] List of repositories
|
66
|
-
def repositories(
|
67
|
-
|
68
|
-
paginate 'user/repos', options
|
69
|
-
else
|
70
|
-
paginate "users/#{username}/repos", options
|
71
|
-
end
|
67
|
+
def repositories(user=nil, options = {})
|
68
|
+
paginate "#{User.path user}/repos", options
|
72
69
|
end
|
73
70
|
alias :list_repositories :repositories
|
74
71
|
alias :list_repos :repositories
|
@@ -129,11 +126,11 @@ module Octokit
|
|
129
126
|
|
130
127
|
# Fork a repository
|
131
128
|
#
|
132
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
129
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository
|
133
130
|
# @return [Sawyer::Resource] Repository info for the new fork
|
134
131
|
# @see https://developer.github.com/v3/repos/forks/#create-a-fork
|
135
132
|
def fork(repo, options = {})
|
136
|
-
post "
|
133
|
+
post "#{Repository.path repo}/forks", options
|
137
134
|
end
|
138
135
|
|
139
136
|
# Create a repository for a user or organization
|
@@ -169,16 +166,16 @@ module Octokit
|
|
169
166
|
# Note: If OAuth is used, 'delete_repo' scope is required
|
170
167
|
#
|
171
168
|
# @see https://developer.github.com/v3/repos/#delete-a-repository
|
172
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
169
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository
|
173
170
|
# @return [Boolean] `true` if repository was deleted
|
174
171
|
def delete_repository(repo, options = {})
|
175
|
-
boolean_from_response :delete,
|
172
|
+
boolean_from_response :delete, Repository.path(repo), options
|
176
173
|
end
|
177
174
|
alias :delete_repo :delete_repository
|
178
175
|
|
179
176
|
# Hide a public repository
|
180
177
|
#
|
181
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
178
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository
|
182
179
|
# @return [Sawyer::Resource] Updated repository info
|
183
180
|
def set_private(repo, options = {})
|
184
181
|
# GitHub Api for setting private updated to use private attr, rather than public
|
@@ -187,7 +184,7 @@ module Octokit
|
|
187
184
|
|
188
185
|
# Unhide a private repository
|
189
186
|
#
|
190
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
187
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository
|
191
188
|
# @return [Sawyer::Resource] Updated repository info
|
192
189
|
def set_public(repo, options = {})
|
193
190
|
# GitHub Api for setting private updated to use private attr, rather than public
|
@@ -198,7 +195,7 @@ module Octokit
|
|
198
195
|
#
|
199
196
|
# Requires authenticated client.
|
200
197
|
#
|
201
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
198
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository
|
202
199
|
# @return [Array<Sawyer::Resource>] Array of hashes representing deploy keys.
|
203
200
|
# @see https://developer.github.com/v3/repos/keys/#list
|
204
201
|
# @example
|
@@ -206,27 +203,27 @@ module Octokit
|
|
206
203
|
# @example
|
207
204
|
# @client.list_deploy_keys('octokit/octokit.rb')
|
208
205
|
def deploy_keys(repo, options = {})
|
209
|
-
paginate "
|
206
|
+
paginate "#{Repository.path repo}/keys", options
|
210
207
|
end
|
211
208
|
alias :list_deploy_keys :deploy_keys
|
212
209
|
|
213
210
|
# Get a single deploy key for a repo
|
214
211
|
#
|
215
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
212
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
216
213
|
# @param id [Integer] Deploy key ID.
|
217
214
|
# @return [Sawyer::Resource] Deploy key.
|
218
215
|
# @see https://developer.github.com/v3/repos/keys/#get
|
219
216
|
# @example
|
220
217
|
# @client.deploy_key('octokit/octokit.rb', 8675309)
|
221
218
|
def deploy_key(repo, id, options={})
|
222
|
-
get "
|
219
|
+
get "#{Repository.path repo}/keys/#{id}", options
|
223
220
|
end
|
224
221
|
|
225
222
|
# Add deploy key to a repo
|
226
223
|
#
|
227
224
|
# Requires authenticated client.
|
228
225
|
#
|
229
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
226
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
230
227
|
# @param title [String] Title reference for the deploy key.
|
231
228
|
# @param key [String] Public key.
|
232
229
|
# @return [Sawyer::Resource] Hash representing newly added key.
|
@@ -234,24 +231,26 @@ module Octokit
|
|
234
231
|
# @example
|
235
232
|
# @client.add_deploy_key('octokit/octokit.rb', 'Staging server', 'ssh-rsa AAA...')
|
236
233
|
def add_deploy_key(repo, title, key, options = {})
|
237
|
-
post "
|
234
|
+
post "#{Repository.path repo}/keys", options.merge(:title => title, :key => key)
|
238
235
|
end
|
239
236
|
|
240
237
|
# Edit a deploy key
|
241
238
|
#
|
242
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
239
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
243
240
|
# @param id [Integer] Deploy key ID.
|
244
241
|
# @param options [Hash] Attributes to edit.
|
245
242
|
# @option title [String] Key title.
|
246
243
|
# @option key [String] Public key.
|
247
244
|
# @return [Sawyer::Resource] Updated deploy key.
|
245
|
+
# @deprecated This method is no longer supported in the API
|
246
|
+
# @see https://developer.github.com/changes/2014-02-24-finer-grained-scopes-for-ssh-keys/
|
248
247
|
# @see https://developer.github.com/v3/repos/keys/#edit
|
249
248
|
# @example Update the key for a deploy key.
|
250
249
|
# @client.edit_deploy_key('octokit/octokit.rb', 8675309, :key => 'ssh-rsa BBB...')
|
251
250
|
# @example
|
252
251
|
# @client.update_deploy_key('octokit/octokit.rb', 8675309, :title => 'Uber', :key => 'ssh-rsa BBB...'))
|
253
252
|
def edit_deploy_key(repo, id, options)
|
254
|
-
patch "
|
253
|
+
patch "#{Repository.path repo}/keys/#{id}", options
|
255
254
|
end
|
256
255
|
alias :update_deploy_key :edit_deploy_key
|
257
256
|
|
@@ -259,21 +258,21 @@ module Octokit
|
|
259
258
|
#
|
260
259
|
# Requires authenticated client.
|
261
260
|
#
|
262
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
261
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
263
262
|
# @param id [Integer] Id of the deploy key to remove.
|
264
263
|
# @return [Boolean] True if key removed, false otherwise.
|
265
264
|
# @see https://developer.github.com/v3/repos/keys/#delete
|
266
265
|
# @example
|
267
266
|
# @client.remove_deploy_key('octokit/octokit.rb', 100000)
|
268
267
|
def remove_deploy_key(repo, id, options = {})
|
269
|
-
boolean_from_response :delete, "
|
268
|
+
boolean_from_response :delete, "#{Repository.path repo}/keys/#{id}", options
|
270
269
|
end
|
271
270
|
|
272
271
|
# List collaborators
|
273
272
|
#
|
274
273
|
# Requires authenticated client for private repos.
|
275
274
|
#
|
276
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
275
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
277
276
|
# @return [Array<Sawyer::Resource>] Array of hashes representing collaborating users.
|
278
277
|
# @see https://developer.github.com/v3/repos/collaborators/#list
|
279
278
|
# @example
|
@@ -283,7 +282,7 @@ module Octokit
|
|
283
282
|
# @example
|
284
283
|
# @client.collabs('octokit/octokit.rb')
|
285
284
|
def collaborators(repo, options = {})
|
286
|
-
paginate "
|
285
|
+
paginate "#{Repository.path repo}/collaborators", options
|
287
286
|
end
|
288
287
|
alias :collabs :collaborators
|
289
288
|
|
@@ -291,7 +290,7 @@ module Octokit
|
|
291
290
|
#
|
292
291
|
# Requires authenticated client.
|
293
292
|
#
|
294
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
293
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
295
294
|
# @param collaborator [String] Collaborator GitHub username to add.
|
296
295
|
# @return [Boolean] True if collaborator added, false otherwise.
|
297
296
|
# @see https://developer.github.com/v3/repos/collaborators/#add-collaborator
|
@@ -300,7 +299,7 @@ module Octokit
|
|
300
299
|
# @example
|
301
300
|
# @client.add_collab('octokit/octokit.rb', 'holman')
|
302
301
|
def add_collaborator(repo, collaborator, options = {})
|
303
|
-
boolean_from_response :put, "
|
302
|
+
boolean_from_response :put, "#{Repository.path repo}/collaborators/#{collaborator}", options
|
304
303
|
end
|
305
304
|
alias :add_collab :add_collaborator
|
306
305
|
|
@@ -308,7 +307,7 @@ module Octokit
|
|
308
307
|
#
|
309
308
|
# Requires authenticated client.
|
310
309
|
#
|
311
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
310
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
312
311
|
# @param collaborator [String] Collaborator GitHub username to remove.
|
313
312
|
# @return [Boolean] True if collaborator removed, false otherwise.
|
314
313
|
# @see https://developer.github.com/v3/repos/collaborators/#remove-collaborator
|
@@ -317,7 +316,7 @@ module Octokit
|
|
317
316
|
# @example
|
318
317
|
# @client.remove_collab('octokit/octokit.rb', 'holman')
|
319
318
|
def remove_collaborator(repo, collaborator, options = {})
|
320
|
-
boolean_from_response :delete, "
|
319
|
+
boolean_from_response :delete, "#{Repository.path repo}/collaborators/#{collaborator}", options
|
321
320
|
end
|
322
321
|
alias :remove_collab :remove_collaborator
|
323
322
|
|
@@ -325,21 +324,21 @@ module Octokit
|
|
325
324
|
#
|
326
325
|
# Requires authenticated client.
|
327
326
|
#
|
328
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
327
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
329
328
|
# @param collaborator [String] Collaborator GitHub username to check.
|
330
329
|
# @return [Boolean] True if user is a collaborator, false otherwise.
|
331
330
|
# @see https://developer.github.com/v3/repos/collaborators/#get
|
332
331
|
# @example
|
333
332
|
# @client.collaborator?('octokit/octokit.rb', 'holman')
|
334
333
|
def collaborator?(repo, collaborator, options={})
|
335
|
-
boolean_from_response :get, "
|
334
|
+
boolean_from_response :get, "#{Repository.path repo}/collaborators/#{collaborator}", options
|
336
335
|
end
|
337
336
|
|
338
337
|
# List teams for a repo
|
339
338
|
#
|
340
339
|
# Requires authenticated client that is an owner or collaborator of the repo.
|
341
340
|
#
|
342
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
341
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
343
342
|
# @return [Array<Sawyer::Resource>] Array of hashes representing teams.
|
344
343
|
# @see https://developer.github.com/v3/repos/#list-teams
|
345
344
|
# @example
|
@@ -349,7 +348,7 @@ module Octokit
|
|
349
348
|
# @example
|
350
349
|
# @client.teams('octokit/pengwynn')
|
351
350
|
def repository_teams(repo, options = {})
|
352
|
-
paginate "
|
351
|
+
paginate "#{Repository.path repo}/teams", options
|
353
352
|
end
|
354
353
|
alias :repo_teams :repository_teams
|
355
354
|
alias :teams :repository_teams
|
@@ -358,8 +357,8 @@ module Octokit
|
|
358
357
|
#
|
359
358
|
# Requires authenticated client for private repos.
|
360
359
|
#
|
361
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
362
|
-
# @param anon [Boolean] Set true to include
|
360
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
361
|
+
# @param anon [Boolean] Set true to include anonymous contributors.
|
363
362
|
# @return [Array<Sawyer::Resource>] Array of hashes representing users.
|
364
363
|
# @see https://developer.github.com/v3/repos/#list-contributors
|
365
364
|
# @example
|
@@ -370,7 +369,7 @@ module Octokit
|
|
370
369
|
# @client.contribs('octokit/octokit.rb')
|
371
370
|
def contributors(repo, anon = nil, options = {})
|
372
371
|
options[:anon] = 1 if anon.to_s[/1|true/]
|
373
|
-
paginate "
|
372
|
+
paginate "#{Repository.path repo}/contributors", options
|
374
373
|
end
|
375
374
|
alias :contribs :contributors
|
376
375
|
|
@@ -378,7 +377,7 @@ module Octokit
|
|
378
377
|
#
|
379
378
|
# Requires authenticated client for private repos.
|
380
379
|
#
|
381
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
380
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
382
381
|
# @return [Array<Sawyer::Resource>] Array of hashes representing users.
|
383
382
|
# @see https://developer.github.com/v3/activity/starring/#list-stargazers
|
384
383
|
# @example
|
@@ -386,7 +385,7 @@ module Octokit
|
|
386
385
|
# @example
|
387
386
|
# @client.stargazers('octokit/octokit.rb')
|
388
387
|
def stargazers(repo, options = {})
|
389
|
-
paginate "
|
388
|
+
paginate "#{Repository.path repo}/stargazers", options
|
390
389
|
end
|
391
390
|
|
392
391
|
# @deprecated Use {#stargazers} instead
|
@@ -395,7 +394,7 @@ module Octokit
|
|
395
394
|
#
|
396
395
|
# Requires authenticated client for private repos.
|
397
396
|
#
|
398
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
397
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
399
398
|
# @return [Array<Sawyer::Resource>] Array of hashes representing users.
|
400
399
|
# @see https://developer.github.com/v3/repos/watching/#list-watchers
|
401
400
|
# @example
|
@@ -403,14 +402,14 @@ module Octokit
|
|
403
402
|
# @example
|
404
403
|
# @client.watchers('octokit/octokit.rb')
|
405
404
|
def watchers(repo, options = {})
|
406
|
-
paginate "
|
405
|
+
paginate "#{Repository.path repo}/watchers", options
|
407
406
|
end
|
408
407
|
|
409
408
|
# List forks
|
410
409
|
#
|
411
410
|
# Requires authenticated client for private repos.
|
412
411
|
#
|
413
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
412
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
414
413
|
# @return [Array<Sawyer::Resource>] Array of hashes representing repos.
|
415
414
|
# @see https://developer.github.com/v3/repos/forks/#list-forks
|
416
415
|
# @example
|
@@ -420,7 +419,7 @@ module Octokit
|
|
420
419
|
# @example
|
421
420
|
# @client.forks('octokit/octokit.rb')
|
422
421
|
def forks(repo, options = {})
|
423
|
-
paginate "
|
422
|
+
paginate "#{Repository.path repo}/forks", options
|
424
423
|
end
|
425
424
|
alias :network :forks
|
426
425
|
|
@@ -428,22 +427,22 @@ module Octokit
|
|
428
427
|
#
|
429
428
|
# Requires authenticated client for private repos.
|
430
429
|
#
|
431
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
430
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
432
431
|
# @return [Array<Sawyer::Resource>] Array of Hashes representing languages.
|
433
432
|
# @see https://developer.github.com/v3/repos/#list-languages
|
434
433
|
# @example
|
435
|
-
# Octokit.
|
434
|
+
# Octokit.languages('octokit/octokit.rb')
|
436
435
|
# @example
|
437
436
|
# @client.languages('octokit/octokit.rb')
|
438
437
|
def languages(repo, options = {})
|
439
|
-
paginate "
|
438
|
+
paginate "#{Repository.path repo}/languages", options
|
440
439
|
end
|
441
440
|
|
442
441
|
# List tags
|
443
442
|
#
|
444
443
|
# Requires authenticated client for private repos.
|
445
444
|
#
|
446
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
445
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
447
446
|
# @return [Array<Sawyer::Resource>] Array of hashes representing tags.
|
448
447
|
# @see https://developer.github.com/v3/repos/#list-tags
|
449
448
|
# @example
|
@@ -451,14 +450,14 @@ module Octokit
|
|
451
450
|
# @example
|
452
451
|
# @client.tags('octokit/octokit.rb')
|
453
452
|
def tags(repo, options = {})
|
454
|
-
paginate "
|
453
|
+
paginate "#{Repository.path repo}/tags", options
|
455
454
|
end
|
456
455
|
|
457
456
|
# List branches
|
458
457
|
#
|
459
458
|
# Requires authenticated client for private repos.
|
460
459
|
#
|
461
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
460
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
462
461
|
# @return [Array<Sawyer::Resource>] Array of hashes representing branches.
|
463
462
|
# @see https://developer.github.com/v3/repos/#list-branches
|
464
463
|
# @example
|
@@ -466,19 +465,19 @@ module Octokit
|
|
466
465
|
# @example
|
467
466
|
# @client.branches('octokit/octokit.rb')
|
468
467
|
def branches(repo, options = {})
|
469
|
-
paginate "
|
468
|
+
paginate "#{Repository.path repo}/branches", options
|
470
469
|
end
|
471
470
|
|
472
471
|
# Get a single branch from a repository
|
473
472
|
#
|
474
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
473
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
475
474
|
# @param branch [String] Branch name
|
476
475
|
# @return [Sawyer::Resource] The branch requested, if it exists
|
477
476
|
# @see https://developer.github.com/v3/repos/#get-branch
|
478
477
|
# @example Get branch 'master` from octokit/octokit.rb
|
479
478
|
# Octokit.branch("octokit/octokit.rb", "master")
|
480
479
|
def branch(repo, branch, options = {})
|
481
|
-
get "
|
480
|
+
get "#{Repository.path repo}/branches/#{branch}", options
|
482
481
|
end
|
483
482
|
alias :get_branch :branch
|
484
483
|
|
@@ -486,34 +485,34 @@ module Octokit
|
|
486
485
|
#
|
487
486
|
# Requires authenticated client.
|
488
487
|
#
|
489
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
488
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
490
489
|
# @return [Array<Sawyer::Resource>] Array of hashes representing hooks.
|
491
490
|
# @see https://developer.github.com/v3/repos/hooks/#list-hooks
|
492
491
|
# @example
|
493
492
|
# @client.hooks('octokit/octokit.rb')
|
494
493
|
def hooks(repo, options = {})
|
495
|
-
paginate "
|
494
|
+
paginate "#{Repository.path repo}/hooks", options
|
496
495
|
end
|
497
496
|
|
498
497
|
# Get single hook
|
499
498
|
#
|
500
499
|
# Requires authenticated client.
|
501
500
|
#
|
502
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
501
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
503
502
|
# @param id [Integer] Id of the hook to get.
|
504
503
|
# @return [Sawyer::Resource] Hash representing hook.
|
505
504
|
# @see https://developer.github.com/v3/repos/hooks/#get-single-hook
|
506
505
|
# @example
|
507
506
|
# @client.hook('octokit/octokit.rb', 100000)
|
508
507
|
def hook(repo, id, options = {})
|
509
|
-
get "
|
508
|
+
get "#{Repository.path repo}/hooks/#{id}", options
|
510
509
|
end
|
511
510
|
|
512
511
|
# Create a hook
|
513
512
|
#
|
514
513
|
# Requires authenticated client.
|
515
514
|
#
|
516
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
515
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
517
516
|
# @param name [String] The name of the service that is being called. See
|
518
517
|
# {https://api.github.com/hooks Hooks} for the possible names.
|
519
518
|
# @param config [Hash] A Hash containing key/value pairs to provide
|
@@ -542,14 +541,14 @@ module Octokit
|
|
542
541
|
# )
|
543
542
|
def create_hook(repo, name, config, options = {})
|
544
543
|
options = {:name => name, :config => config, :events => ["push"], :active => true}.merge(options)
|
545
|
-
post "
|
544
|
+
post "#{Repository.path repo}/hooks", options
|
546
545
|
end
|
547
546
|
|
548
547
|
# Edit a hook
|
549
548
|
#
|
550
549
|
# Requires authenticated client.
|
551
550
|
#
|
552
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
551
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
553
552
|
# @param id [Integer] Id of the hook being updated.
|
554
553
|
# @param name [String] The name of the service that is being called. See
|
555
554
|
# {https://api.github.com/hooks Hooks} for the possible names.
|
@@ -585,42 +584,42 @@ module Octokit
|
|
585
584
|
# )
|
586
585
|
def edit_hook(repo, id, name, config, options = {})
|
587
586
|
options = {:name => name, :config => config, :events => ["push"], :active => true}.merge(options)
|
588
|
-
patch "
|
587
|
+
patch "#{Repository.path repo}/hooks/#{id}", options
|
589
588
|
end
|
590
589
|
|
591
590
|
# Delete hook
|
592
591
|
#
|
593
592
|
# Requires authenticated client.
|
594
593
|
#
|
595
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
594
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
596
595
|
# @param id [Integer] Id of the hook to remove.
|
597
596
|
# @return [Boolean] True if hook removed, false otherwise.
|
598
597
|
# @see https://developer.github.com/v3/repos/hooks/#delete-a-hook
|
599
598
|
# @example
|
600
599
|
# @client.remove_hook('octokit/octokit.rb', 1000000)
|
601
600
|
def remove_hook(repo, id, options = {})
|
602
|
-
boolean_from_response :delete, "
|
601
|
+
boolean_from_response :delete, "#{Repository.path repo}/hooks/#{id}", options
|
603
602
|
end
|
604
603
|
|
605
604
|
# Test hook
|
606
605
|
#
|
607
606
|
# Requires authenticated client.
|
608
607
|
#
|
609
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
608
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
610
609
|
# @param id [Integer] Id of the hook to test.
|
611
610
|
# @return [Boolean] Success
|
612
611
|
# @see https://developer.github.com/v3/repos/hooks/#test-a-push-hook
|
613
612
|
# @example
|
614
613
|
# @client.test_hook('octokit/octokit.rb', 1000000)
|
615
614
|
def test_hook(repo, id, options = {})
|
616
|
-
boolean_from_response :post, "
|
615
|
+
boolean_from_response :post, "#{Repository.path repo}/hooks/#{id}/tests", options
|
617
616
|
end
|
618
617
|
|
619
618
|
# List users available for assigning to issues.
|
620
619
|
#
|
621
620
|
# Requires authenticated client for private repos.
|
622
621
|
#
|
623
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
622
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
624
623
|
# @return [Array<Sawyer::Resource>] Array of hashes representing users.
|
625
624
|
# @see https://developer.github.com/v3/issues/assignees/#list-assignees
|
626
625
|
# @example
|
@@ -630,47 +629,47 @@ module Octokit
|
|
630
629
|
# @example
|
631
630
|
# @client.repository_assignees('octokit/octokit.rb')
|
632
631
|
def repository_assignees(repo, options = {})
|
633
|
-
paginate "
|
632
|
+
paginate "#{Repository.path repo}/assignees", options
|
634
633
|
end
|
635
634
|
alias :repo_assignees :repository_assignees
|
636
635
|
|
637
636
|
# Check to see if a particular user is an assignee for a repository.
|
638
637
|
#
|
639
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
638
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
640
639
|
# @param assignee [String] User login to check
|
641
640
|
# @return [Boolean] True if assignable on project, false otherwise.
|
642
641
|
# @see https://developer.github.com/v3/issues/assignees/#check-assignee
|
643
642
|
# @example
|
644
643
|
# Octokit.check_assignee('octokit/octokit.rb', 'andrew')
|
645
644
|
def check_assignee(repo, assignee, options = {})
|
646
|
-
boolean_from_response :get, "
|
645
|
+
boolean_from_response :get, "#{Repository.path repo}/assignees/#{assignee}", options
|
647
646
|
end
|
648
647
|
|
649
648
|
# List watchers subscribing to notifications for a repo
|
650
649
|
#
|
651
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
650
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
652
651
|
# @return [Array<Sawyer::Resource>] Array of users watching.
|
653
652
|
# @see https://developer.github.com/v3/activity/watching/#list-watchers
|
654
653
|
# @example
|
655
654
|
# @client.subscribers("octokit/octokit.rb")
|
656
655
|
def subscribers(repo, options = {})
|
657
|
-
paginate "
|
656
|
+
paginate "#{Repository.path repo}/subscribers", options
|
658
657
|
end
|
659
658
|
|
660
659
|
# Get a repository subscription
|
661
660
|
#
|
662
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
661
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
663
662
|
# @return [Sawyer::Resource] Repository subscription.
|
664
663
|
# @see https://developer.github.com/v3/activity/watching/#get-a-repository-subscription
|
665
664
|
# @example
|
666
665
|
# @client.subscription("octokit/octokit.rb")
|
667
666
|
def subscription(repo, options = {})
|
668
|
-
get "
|
667
|
+
get "#{Repository.path repo}/subscription", options
|
669
668
|
end
|
670
669
|
|
671
670
|
# Update repository subscription
|
672
671
|
#
|
673
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
672
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
674
673
|
# @param options [Hash]
|
675
674
|
#
|
676
675
|
# @option options [Boolean] :subscribed Determines if notifications
|
@@ -682,19 +681,19 @@ module Octokit
|
|
682
681
|
# @example Subscribe to notifications for a repository
|
683
682
|
# @client.update_subscription("octokit/octokit.rb", {subscribed: true})
|
684
683
|
def update_subscription(repo, options = {})
|
685
|
-
put "
|
684
|
+
put "#{Repository.path repo}/subscription", options
|
686
685
|
end
|
687
686
|
|
688
687
|
# Delete a repository subscription
|
689
688
|
#
|
690
|
-
# @param repo [String, Hash, Repository] A GitHub repository.
|
689
|
+
# @param repo [Integer, String, Hash, Repository] A GitHub repository.
|
691
690
|
# @return [Boolean] True if subscription deleted, false otherwise.
|
692
691
|
# @see https://developer.github.com/v3/activity/watching/#delete-a-repository-subscription
|
693
692
|
#
|
694
693
|
# @example
|
695
694
|
# @client.delete_subscription("octokit/octokit.rb")
|
696
695
|
def delete_subscription(repo, options = {})
|
697
|
-
boolean_from_response :delete, "
|
696
|
+
boolean_from_response :delete, "#{Repository.path repo}/subscription", options
|
698
697
|
end
|
699
698
|
end
|
700
699
|
end
|