Access bugs on a remote Bugzilla instance.
The bugzilla_query crate is a Rust library that can query a Bugzilla instance using its REST API. It returns a strongly typed representation of the requested bugs.
This library provides no functionality to create or modify bugs. The access is read-only.
Without logging in, search for a single bug and check for its assignee:
use tokio;use bugzilla_query::BzInstance;#[tokio::main]asyncfnmain() -> Result<(),Box<dynError>>{let bugzilla = BzInstance::at("https://bugzilla.redhat.com".to_string())?;let bug = bugzilla.bug("1906883").await?;assert_eq!(bug.assigned_to,"Marek Suchánek");Ok(())}Use an API key to log into Bugzilla. Search for all bugs on Fedora 36 that belong to the rust component. Check that there is more than one bug:
use tokio;use bugzilla_query::{Auth,BzInstance,Pagination};#[tokio::main]asyncfnmain() -> Result<(),Box<dynError>>{let bugzilla = BzInstance::at("https://bugzilla.redhat.com".to_string())?
.authenticate(Auth::ApiKey("My API Key".to_string())).paginate(Pagination::Unlimited);let query = "component=rust&product=Fedora&version=36";let bugs = bugzilla.search(query).await?;assert!(bugs.len() > 1);Ok(())}jira_query, a similar interface to Jira