Skip to content

Latest commit

 

History

History
41 lines (33 loc) · 1008 Bytes

release.md

File metadata and controls

41 lines (33 loc) · 1008 Bytes

Release

An interface describing the API needed by the SDK when perform a release.

interface Release {
  /**
   * @returns A promise for a changelog of the commits included in the release
   */
  getChangelog(): Promise<string>;

  /**
   * @returns A promise for an array of all the previous released versions
   */
  getVersions(): Promise<string[]>;

  /**
   * @returns A promise for the next version
   */
  getNextVersion(): Promise<string>;

  /**
   * @returns A promise for the previous released version
   */
  getPreviousVersion(): Promise<string>;

  /**
   * @returns A promise for the issues mentiond in the commits included in the release
   */
  getMentionedIssues(): Promise<Set<string>>;

  /**
   * @param version - A previously released version
   *
   * @returns A promise for a changelog of a previously released version
   */
  getChangelogByVersion(version: string): Promise<string>;
}

See gitTagBasedRelease for a reference implementation