Make low-level Requester and GitHubClient APIs public
For being able to use missing API functionality it would be nice if the Requester would be accessible, so that the low-level requests can be done manually or e. g. with Kotlin extension functions, but still having the lib do rate limiting and so on.
@Vampire
Seems easy enough (public in a few places). I'm a little concerned though, as then then we'd be committed to the API of the Requester and supporting it.
This can be done in Groovy already, but isn't possible in Java. Probably not in Kotlin either:
GHRepository deleteSecret(GHRepository repo, String key) {
// must use the raw request because kohsuke doesn't have a secret delete yet.
repo.getRoot()
.createRequest() // thank you Groovy for allowing this.
.method("DELETE")
.withUrlPath("/repos/${repo.getFullName()}/actions/secrets/${key}")
.send()
return repo
}
Of course, with Groovy you can even access private stuff easily. And you can do it in Java or Kotlin too with using reflection. But whether you should do it, is a different question, and a stable public API would be preferable