Skip to content

Commit 3b231b5

Browse files
authored
create_repo: params should be a keyword argument (#219)
This patch deprecates `params` as a positional argument and replace it with a keyword argument (like for all other API functions). I noticed this when the `params` I passed as keyword argument were overriding the `params` created with the `name` positional argument.
1 parent f794531 commit 3b231b5

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ GitHub.jl implements a bunch of methods that make REST requests to GitHub's API.
9696
| method | return type | documentation |
9797
|----------------------------------------------------------|--------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|
9898
| `repo(repo)` | `Repo` | [get `repo`](https://developer.github.com/v3/repos/#get) |
99-
| `create_repo(owner, name, params=Dict{String,String}())` | `Repo` | [create a repository of the given `name` in the given `owner`'s account](https://developer.github.com/v3/repos/#create) |
99+
| `create_repo(owner, name)` | `Repo` | [create a repository of the given `name` in the given `owner`'s account](https://developer.github.com/v3/repos/#create) |
100100
| `create_fork(repo)` | `Repo` | [create a fork of `repo`](https://developer.github.com/v3/repos/forks/#create-a-fork) |
101101
| `forks(repo)` | `Tuple{Vector{Repo}, Dict}` | [get `repo`'s forks](https://developer.github.com/v3/repos/forks/#list-forks) |
102102
| `contributors(repo)` | `Dict` | [get `repo`'s contributors](https://developer.github.com/v3/repos/#list-contributors) |

src/repositories/repositories.jl

+7-2
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ namefield(repo::Repo) = repo.full_name
5252
return Repo(result)
5353
end
5454

55-
@api_default function create_repo(api::GitHubAPI, owner, repo_name::String, params=Dict{String,Any}(); options...)
56-
params["name"] = repo_name
55+
@api_default function create_repo(api::GitHubAPI, owner, repo_name::String; params=Dict(), options...)
56+
params = merge(params, Dict("name" => repo_name))
5757
if isorg(owner)
5858
result = gh_post_json(api, "/orgs/$(name(owner))/repos"; params=params, options...)
5959
else
@@ -62,6 +62,11 @@ end
6262
return Repo(result)
6363
end
6464

65+
@api_default function create_repo(api::GitHubAPI, owner, repo_name::String, params; options...)
66+
Base.depwarn("params should be passed as a keyword argument instead of a positional argument", :create_repo)
67+
return create_repo(api, owner, repo_name; params=params, options...)
68+
end
69+
6570
@api_default function delete_repo(api::GitHubAPI, repo; options...)
6671
return gh_delete(api, "/repos/$(name(repo))"; options...)
6772
end

0 commit comments

Comments
 (0)