Function: ghub-repository-id
ghub-repository-id is a byte-compiled function defined in ghub.el.
Signature
(ghub-repository-id OWNER NAME &key USERNAME AUTH HOST FORGE NOERROR)
Documentation
Return the id of the specified repository.
Signal an error if the id cannot be determined.
Source Code
;; Defined in ~/.emacs.d/elpa/ghub-20260401.1239/ghub.el
(cl-defun ghub-repository-id (owner name &key username auth host forge noerror)
"Return the id of the specified repository.
Signal an error if the id cannot be determined."
(or (pcase forge
((or 'nil 'github)
(let-alist (ghub-query
'(query (repository [(owner $owner String!)
(name $name String!)]
id))
`((owner . ,owner)
(name . ,name))
:synchronous t
:username username :auth auth :host host)
.repository.id))
('gitlab
(number-to-string
(alist-get
'id (ghub-get (format "/projects/%s%%2F%s"
(string-replace "/" "%2F" owner)
name)
nil :forge 'gitlab
:username username :auth auth :host host))))
((or 'forgejo 'gitea 'gogs)
(number-to-string
(alist-get
'id (ghub-get (format "/repos/%s/%s" owner name)
nil :forge forge
:username username :auth auth :host host))))
('bitbucket
(substring
(alist-get 'uuid
(ghub-get (format "/repositories/%s/%s" owner name)
nil :forge 'bitbucket
:username username :auth auth :host host))
1 -1))
(_ (error "ghub-repository-id: Forge type `%s' is unknown" forge)))
(and (not noerror)
(error "Repository %S does not exist on %S.\n%s%S?"
(concat owner "/" name)
(or host (ghub--host forge))
"Maybe it was renamed and you have to update "
"remote.<remote>.url"))))