Package-level declarations

Types

Link copied to clipboard
class GithubApi(apiKey: String, baseUrl: String = GithubApi.baseUrl, client: HttpClient = httpClient, objectMapper: ObjectMapper = GithubApi.objectMapper)

Functions

Link copied to clipboard
fun GithubApi.commitsAsFlow(repositoryName: String, concurrency: Int = 1, filter: CommitQuery.() -> Unit = {}): Flow<Commit>

Retrieves a flow of all commits for the specified GitHub repository, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.downloadRepositoryArchive(repositoryName: String, compressionType: CompressionType = CompressionType.ZIP, ref: String = "main"): Flow<ByteBuffer>

Downloads the archive of the specified GitHub repository.

Link copied to clipboard
fun GithubApi.issuesAsFlow(repositoryName: String, concurrency: Int = 1, filter: RepositoryIssueQuery.() -> Unit = {}): Flow<Issue>

Retrieves a flow of all issues for the specified GitHub repository, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.pullRequestsAsFlow(repositoryName: String, concurrency: Int = 1, filter: PullRequestQuery.() -> Unit = {}): Flow<PullRequest>

Retrieves a flow of all pull requests for the specified GitHub repository, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.repositoriesAsFlow(username: String, concurrency: Int = 1, filter: RepositoryQuery.() -> Unit = {}): Flow<Repository>

Retrieves a flow of all repositories for the specified GitHub user, filtered by the given criteria.

Link copied to clipboard
fun GithubApi.treeAsFlow(repositoryName: String, fileExtensions: List<String> = emptyList(), skipFolders: List<String> = emptyList(), sha: String? = null, concurrency: Int = 100): Flow<TreeRef.TreeEntry>

Retrieves a flow of tree entries for the specified GitHub repository, filtered by file extensions and skipped folders.