Pre-release tasks

  • Add rust (and other) deps to the xfce-build container (probably will install rustup so I can install exactly the rust version I want). This includes rustfmt, clippy, and cargo-deny. Depends on xfce/xfce4-dev-tools!172
  • Move xfwl4 to use the xfce-build container and the default CI template. This will work since xfwl4's cargo build is wrapped by meson; however, I'll want to add something custom that runs cargo-fmt and cargo-clippy. Depends on xfce/xfce4-dev-tools!172
  • Move xfce4-rs to use the xfce-build container (it has to use the custom CI config for now, because the CI template doesn't yet support cargo-only projects).
  • Decide on a xfce4-rs version scheme. The rust/crates.io ecosystem expects semver, so our 4.y.z scheme doesn't really work there. The gtk-rs folks went with a version scheme completely independent of the underlying GTK (GDK, GSK, pango, etc.) versions, and are still on 0.y.z, so maybe that's fine. A user of the crates can pick the max C library supported through features (e.g. enabling v4_21_3 on one of the crates will require at least 4.21.3 for the underlying C library).
  • Do a xfce4-rs release, publishing to crates.io. Look into publishing a tarball via releases.xfce.org (git archive might actually be the best way to do this).
  • Add more owners to the various xfce4-rs crates after publishing, including a github group.
  • Update xfwl4's gitlab issue template to be useful and not push people away.
  • Create a CONTRIBUTING.md doc.
  • Move xfwl4 to the xfce namespace.
  • Add xfwl4 to transifex.
  • Update xfce-do-release to handle Cargo.toml version bumps.
Edited by Brian Tarricone