7 个版本
0.2.0 | 2024年4月1日 |
---|---|
0.1.9 | 2024年3月29日 |
0.1.8 | 2023年12月22日 |
0.1.1 | 2023年10月27日 |
#1582 in 网络编程
每月72次下载
用于 disperse
470KB
1.5K SLoC
Launchpad API 的 Rust 绑定
示例
use launchpadlib::Resource;
use launchpadlib::v1_0::ServiceRoot;
fn main() {
use url::Url;
let client = launchpadlib::Client::anonymous("just+testing");
let service_root = launchpadlib::v1_0::service_root(&client).unwrap();
let people = service_root.people().unwrap();
let person = people.get_by_email(&client, "[email protected]").unwrap();
let ssh_keys = person.sshkeys(&client).unwrap().map(|k| k.keytext).collect::<Vec<_>>();
println!("SSH Keys: {:?}", ssh_keys);
}
绑定是从 Launchpad 发布的 wadl 生成的。
限制和错误
-
目前只提供阻塞式 API
-
虽然绑定是从整个 WADL 文件生成的,但我只使用了一小部分。如果在运行时遇到问题,请报告错误。
-
Launchpad 的 WADL 在某些地方是不正确的,例如,声称某些字段是可选的,而实际上它们会被设置为 null。WADL 中的任何问题都会影响 rust 绑定的可用性。
请参阅 fixup.xsl 以查看已应用的手动补丁;此文件几乎肯定是不完整的。
依赖项
~8–24MB
~321K SLoC