7 Commits

Author SHA1 Message Date
c5c5598fb7 Mark v3.0.1 patch
All checks were successful
/ Compile and upload a release build (release) Successful in 54s
Barely anything has changed, but the package *is* different. v3 is from
months back and is missing information that Crates.io kinda wants.
2025-11-13 16:55:12 -06:00
9e47cb72d5 Remove the comments tracking Debian-specific deps
The Debian 12 dependency versions can go away since I'm no longer
targetting it. The Debian Sid versions haven't been checked in months,
and I'm not actually targetting it *either* (never have been). They can
both go away.
2025-11-13 16:40:01 -06:00
ff2286f44b Add metadata required for publishing to crates.io
I'm not sure they're required. I sure hope not because I don't have a
homepage, and the guide says not to reuse the repo URL there.
2025-11-13 16:36:54 -06:00
d982f42ae7 Update dependency versions for Debian 13 "Trixie"
I'm deciding that I'll only support the latest stable release of
Debian. Somehow I doubt anyone is using this tool, and those who do are
unlikely to need an even longer support window than Debian's stable
release period.

This change bumps the dependencies to match those available in Debian
13. Some upgrades would have already happened, while others are blocked
by the SemVer rules.

For example, Clap 4.0 to 4.5 would happen automatically, but TOML 0.5 to
0.8 would not.
2025-09-11 14:12:12 -05:00
641efc3bf7 Update automation workflow with new CLI args
All checks were successful
/ Compile and upload a release build (release) Successful in 1m10s
2025-07-22 09:41:54 -05:00
144fba5373 Bump crate version to v3.0.0
Some checks failed
/ Compile and upload a release build (release) Failing after 49s
2025-07-21 16:37:37 -05:00
7f35b808e5 Lint and format 2025-07-21 16:37:14 -05:00
3 changed files with 21 additions and 22 deletions

View File

@@ -22,7 +22,9 @@ jobs:
- name: Upload the program (using itself!) - name: Upload the program (using itself!)
run: > run: >
target/release/gt-tool-${{ github.ref_name }}-$(arch) target/release/gt-tool-${{ github.ref_name }}-$(arch)
-u ${{ vars.DEST_GITEA }} -r ${{ vars.DEST_REPO }} -u ${{ vars.DEST_GITEA }}
-o ${{ vars.DEST_OWNER }}
-r ${{ vars.DEST_REPO }}
upload-release upload-release
"${{ github.ref_name }}" "${{ github.ref_name }}"
target/release/gt-tool-${{ github.ref_name }}-$(arch) target/release/gt-tool-${{ github.ref_name }}-$(arch)

View File

@@ -1,23 +1,18 @@
[package] [package]
name = "gt-tool" name = "gt-tool"
version = "3.0.0-alpha.1" version = "3.0.1"
edition = "2024" edition = "2024"
license = "GPL-3.0-only"
description = "CLI tools for interacting with the Gitea API. Mainly for attaching files to releases."
# homepage = "" I have no website for a project home page :(
repository = "https://git.gelvin.dev/robert/gt-tool"
readme = "README.md"
[dependencies] [dependencies]
clap = { version = "4.0.7", features = ["derive", "env"] } clap = { version = "4.5.23", features = ["derive", "env"] }
colored = "2.0.0" colored = "2.2.0"
itertools = "0.10.0" itertools = "0.13.0"
reqwest = { version = "0.11.13", features = ["json", "stream", "multipart"] } reqwest = { version = "0.12.15", features = ["json", "stream", "multipart"] }
serde = { version = "1.0.152", features = ["derive"] } serde = { version = "1.0.217", features = ["derive"] }
tokio = { version = "1.24.2", features = ["macros", "rt-multi-thread"] } tokio = { version = "1.43.1", features = ["macros", "rt-multi-thread"] }
toml = "0.5" toml = "0.8.19"
# Packages available in Debian (Sid)
# clap = "4.5.23"
# reqwest = "0.12.15"
# tokio = "1.43.1"
# Debian (Bookworm)
# clap = "4.0.32"
# reqwest = "0.11.13"
# tokio = "1.24.2"

View File

@@ -31,16 +31,18 @@ async fn main() -> Result<(), gt_tool::Error> {
.or(config.gitea_url) .or(config.gitea_url)
.ok_or(gt_tool::Error::MissingGiteaUrl)?; .ok_or(gt_tool::Error::MissingGiteaUrl)?;
let owner = args.owner let owner = args
.owner
.or(config.owner) .or(config.owner)
.ok_or(gt_tool::Error::MissingRepoOwner)?; .ok_or(gt_tool::Error::MissingRepoOwner)?;
let repo = args.repo let repo = args
.repo
.or(config.repo) .or(config.repo)
.or_else(infer_repo) .or_else(infer_repo)
.ok_or(gt_tool::Error::MissingRepoName)?; .ok_or(gt_tool::Error::MissingRepoName)?;
let repo_fqrn = String::from(format!("{owner}/{repo}")); let repo_fqrn = format!("{owner}/{repo}");
let mut headers = reqwest::header::HeaderMap::new(); let mut headers = reqwest::header::HeaderMap::new();
headers.append(ACCEPT, header::HeaderValue::from_static("application/json")); headers.append(ACCEPT, header::HeaderValue::from_static("application/json"));