renovate
Version:
Automated dependency updates. Flexible so you don't need to be.
32 lines (31 loc) • 1.2 kB
TypeScript
import type { GithubHttp } from '../../../util/http/github';
import type { GhPr } from './types';
/**
* Fetch and return Pull Requests from GitHub repository:
*
* 1. Synchronize long-term cache.
*
* 2. Store items in raw format, i.e. exactly what
* has been returned by GitHub REST API.
*
* 3. Convert items to the Renovate format and return.
*
* In order synchronize ApiCache properly, we handle 3 cases:
*
* a. We never fetched PR list for this repo before.
* If cached PR list is empty, we assume it's the case.
*
* In this case, we're falling back to quick fetch via
* `paginate=true` option (see `util/http/github.ts`).
*
* b. Some of PRs had changed since last run.
*
* In this case, we sequentially fetch page by page
* until `ApiCache.coerce` function indicates that
* no more fresh items can be found in the next page.
*
* We expect to fetch just one page per run in average,
* since it's rare to have more than 100 updated PRs.
*/
export declare function getPrCache(http: GithubHttp, repo: string, username: string | null): Promise<Record<number, GhPr>>;
export declare function updatePrCache(pr: GhPr): void;