diff --git a/NEWS.md b/NEWS.md index c975240..fd988a0 100644 --- a/NEWS.md +++ b/NEWS.md @@ -12,4 +12,7 @@ ### Fixed +- Use Octokit's `add_label` instead of the nonexistent `create_label` when + creating missing labels, which raised `NoMethodError` with Octokit v10. + ### Security diff --git a/lib/github_client.rb b/lib/github_client.rb index 79ef91f..82d889e 100644 --- a/lib/github_client.rb +++ b/lib/github_client.rb @@ -55,7 +55,7 @@ def ensure_labels(labels) existing = list_label_names labels.each do |label| next if existing.include?(label) - @client.create_label(@repo, label, "0075ca") + @client.add_label(@repo, label, "0075ca") end end diff --git a/test/github_client_test.rb b/test/github_client_test.rb index aa156aa..eebcae7 100644 --- a/test/github_client_test.rb +++ b/test/github_client_test.rb @@ -88,19 +88,19 @@ def test_ensure_labels_is_a_no_op_when_labels_is_empty def test_ensure_labels_creates_missing_labels @octokit.expect(:labels, [label_stub("dependencies")], [REPO]) - @octokit.expect(:create_label, nil, [REPO, "javascript", "0075ca"]) + @octokit.expect(:add_label, nil, [REPO, "javascript", "0075ca"]) @client.ensure_labels(%w[dependencies javascript]) end def test_ensure_labels_skips_labels_that_already_exist @octokit.expect(:labels, [label_stub("dependencies"), label_stub("javascript")], [REPO]) - # No create_label calls expected. + # No add_label calls expected. @client.ensure_labels(%w[dependencies javascript]) end def test_ensure_labels_tolerates_labels_list_failure @octokit.expect(:labels, nil) { |_repo| raise Octokit::Error } - @octokit.expect(:create_label, nil, [REPO, "dependencies", "0075ca"]) + @octokit.expect(:add_label, nil, [REPO, "dependencies", "0075ca"]) @client.ensure_labels(%w[dependencies]) end