Struct octocrab::repos::releases::ReleasesHandler
source · pub struct ReleasesHandler<'octo, 'r> { /* private fields */ }
Expand description
Handler for GitHub’s releases API.
Created with RepoHandler::releases
.
Implementations§
source§impl<'octo, 'r> ReleasesHandler<'octo, 'r>
impl<'octo, 'r> ReleasesHandler<'octo, 'r>
sourcepub fn list(&self) -> ListReleasesBuilder<'_, '_, '_>
pub fn list(&self) -> ListReleasesBuilder<'_, '_, '_>
Creates a new ListReleasesBuilder
that can be configured to filter
listing releases.
let page = octocrab.repos("owner", "repo")
.releases()
.list()
// Optional Parameters
.per_page(100)
.page(5u32)
// Send the request
.send()
.await?;
sourcepub fn create<'t>(
&self,
tag_name: &'t (impl AsRef<str> + ?Sized)
) -> CreateReleaseBuilder<'_, '_, '_, 't, '_, '_, '_>
pub fn create<'t>( &self, tag_name: &'t (impl AsRef<str> + ?Sized) ) -> CreateReleaseBuilder<'_, '_, '_, 't, '_, '_, '_>
Creates a new CreateReleaseBuilder
with tag_name
.
let page = octocrab.repos("owner", "repo")
.releases()
.create("v1.0.0")
// Optional Parameters
.target_commitish("main")
.name("Version 1.0.0")
.body("Announcing 1.0.0!")
.draft(false)
.prerelease(false)
// Send the request
.send()
.await?;
sourcepub fn update(
&self,
release_id: u64
) -> UpdateReleaseBuilder<'_, '_, '_, '_, '_, '_, '_>
pub fn update( &self, release_id: u64 ) -> UpdateReleaseBuilder<'_, '_, '_, '_, '_, '_, '_>
Creates a new UpdateReleaseBuilder
with release_id
.
let release = octocrab.repos("owner", "repo")
.releases()
.update(1)
// Optional Parameters
.tag_name("v1.0.0")
.target_commitish("main")
.name("Version 1.0.0")
.body("Announcing 1.0.0!")
.draft(false)
.prerelease(false)
// Send the request
.send()
.await?;
sourcepub async fn get_asset(&self, asset_id: AssetId) -> Result<Asset>
pub async fn get_asset(&self, asset_id: AssetId) -> Result<Asset>
Fetches a single asset by its ID.
let asset = octocrab::instance()
.repos("owner", "repo")
.releases()
.get_asset(42u64.into())
.await?;
sourcepub async fn get_latest(&self) -> Result<Release>
pub async fn get_latest(&self) -> Result<Release>
Gets the latest release.
let release = octocrab::instance()
.repos("owner", "repo")
.releases()
.get_latest()
.await?;
sourcepub async fn get_by_tag(&self, tag: &str) -> Result<Release>
pub async fn get_by_tag(&self, tag: &str) -> Result<Release>
Gets the release using its tag.
let release = octocrab::instance()
.repos("owner", "repo")
.releases()
.get_by_tag("v1.0.0")
.await?;
sourcepub fn generate_release_notes<'tag_name>(
&self,
tag_name: &'tag_name (impl AsRef<str> + ?Sized)
) -> GenerateReleaseNotesBuilder<'_, '_, '_, 'tag_name, '_, '_, '_>
pub fn generate_release_notes<'tag_name>( &self, tag_name: &'tag_name (impl AsRef<str> + ?Sized) ) -> GenerateReleaseNotesBuilder<'_, '_, '_, 'tag_name, '_, '_, '_>
Generates crate::models::repos::ReleaseNotes
which describe
a crate::models::repos::Release
let release_notes = octocrab::instance()
.repos("owner", "repo")
.releases()
.generate_release_notes("0.1.0")
.send()
.await?;
Auto Trait Implementations§
impl<'octo, 'r> Freeze for ReleasesHandler<'octo, 'r>
impl<'octo, 'r> !RefUnwindSafe for ReleasesHandler<'octo, 'r>
impl<'octo, 'r> Send for ReleasesHandler<'octo, 'r>
impl<'octo, 'r> Sync for ReleasesHandler<'octo, 'r>
impl<'octo, 'r> Unpin for ReleasesHandler<'octo, 'r>
impl<'octo, 'r> !UnwindSafe for ReleasesHandler<'octo, 'r>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more