This project contains work-in-progress rust bindings for the pagure API as documented at https://pagure.io/api/0/.
Every query implements the common
Query trait, which can be treated like a
generic template. Add the missing return type definitions for
implement the trait methods, and you're done - everything else is handled by the
default method implementations in the
Query trait or in the
that wraps a
reqwest::blocking::Client with the necessary settings.
API query URLs contain both a "path" element and optional query strings - the
path element is simply filled in as a string, and the query string is
x-www-form-urlencoded format from the query struct with
The returned JSON responses are deserialized into native data types with
serde_json (if necessary, with internal wrapper types if the API returns extra
information alongside the result, i.e. pagination or request metadata).
For now, there are only some basic tests for the implemented queries, which
all require an internet connection. Once there are both "offline" and "online"
tests, they will be split into two groups with features, and only offline tests
will be enabled by default (similar to how this is handled in the