[pbs-devel] applied-series: [PATCH 0/7] apt: add changelog API and fix #2934 (list new packages)
Fabian Grünbichler
f.gruenbichler at proxmox.com
Thu Oct 22 17:20:24 CEST 2020
I dropped the apt-pkg-native version bump (both from this series, and
the patches to the binding crate) since I dislike bumping versions
before upstream those (it's very confusing down the line).
added the following as follow-up as well:
diff --git a/src/api2/node/apt.rs b/src/api2/node/apt.rs
index 1c5b7db9..e8d4094b 100644
--- a/src/api2/node/apt.rs
+++ b/src/api2/node/apt.rs
@@ -42,7 +42,7 @@ fn get_changelog_url(
let output = match output.splitn(2, ' ').next() {
Some(output) => {
if output.len() < 2 {
- bail!("invalid output (URI part too short) from 'apt-get changelog --print-uris: {}", output)
+ bail!("invalid output (URI part too short) from 'apt-get changelog --print-uris': {}", output)
}
output[1..output.len()-1].to_owned()
},
@@ -421,7 +421,7 @@ fn apt_get_changelog(
// FIXME: use 'apt-get changelog' for proxmox packages as well, once repo supports it
if changelog_url.starts_with("http://download.proxmox.com/") {
let changelog = crate::tools::runtime::block_on(http::get_string(changelog_url))
- .map_err(|err| format_err!("Error downloading changelog: {}", err))?;
+ .map_err(|err| format_err!("Error downloading changelog from '{}': {}", changelog_url, err))?;
return Ok(json!(changelog));
} else {
let mut command = std::process::Command::new("apt-get");
On October 21, 2020 11:41 am, Stefan Reiter wrote:
> (Note: This is technically a successor to this series [0], but since I changed a
> lot around and also added onto it, this is not a v2 but a seperate series
> entirely.)
>
> Bring the "Updates" panel up to par with PVE by adding two features:
> * A /changelog API call
> * A fix for #2934, so new packages that will be installed on upgrade are
> shown too (i.e. new kernels)
>
> The former also requires extracting a new 'http' module out of 'api', so we can
> make simple HTTP requests from 'tools'.
>
> Before that, some cleanup is done. Even with that, the code is not quite a prime
> example of readability, but with the weirdness that is the libapt-pkg lib and
> binding, this was the best I could manage.
>
> Patch 4 is a dependency bump on a new version of my forked libapt-pkg binding
> (apt-pkg-native(-rs)). As before, the changes I made to that can be found on
> GitHub [1]. Patches 5 and later require the new version to compile.
>
>
> [0] https://lists.proxmox.com/pipermail/pbs-devel/2020-July/000045.html
> [1] https://github.com/PiMaker/apt-pkg-native-rs/
>
>
> proxmox-backup: Stefan Reiter (7):
> apt: allow filter to select different package version
> add tools::http for generic HTTP GET and move HttpsConnector there
> apt: use 'apt-get changelog --print-uris' in get_changelog_url
> bump apt-pkg-native dependency to 0.3.2
> apt: refactor package detail reading into function
> fix #2934: list to-be-installed packages in updates
> apt: add /changelog API call similar to PVE
>
> Cargo.toml | 2 +-
> src/api2/node/apt.rs | 384 ++++++++++++++++++++++++++++----------
> src/client/http_client.rs | 75 +-------
> src/tools.rs | 1 +
> src/tools/http.rs | 100 ++++++++++
> 5 files changed, 386 insertions(+), 176 deletions(-)
> create mode 100644 src/tools/http.rs
>
> --
> 2.20.1
>
>
> _______________________________________________
> pbs-devel mailing list
> pbs-devel at lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
>
>
>
More information about the pbs-devel
mailing list