Crates.io | bugzilla_query |
lib.rs | bugzilla_query |
version | 1.1.0 |
source | src |
created_at | 2022-06-06 19:27:21.483131 |
updated_at | 2023-11-13 19:47:54.632504 |
description | Access bugs on a remote Bugzilla instance. |
homepage | https://github.com/msuchane/bugzilla_query |
repository | https://github.com/msuchane/bugzilla_query |
max_upload_size | |
id | 600927 |
size | 39,291 |
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]
async fn main() -> Result<(), Box<dyn Error>> {
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]
async fn main() -> Result<(), Box<dyn Error>> {
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