Lift the empty-body string outside the let-if

Patch the string reference lifetime issue, and rediff the other patch
while we're at it.
This commit is contained in:
2025-07-04 09:56:37 -05:00
parent c0a0181074
commit cfaa0ceb3f
3 changed files with 43 additions and 3 deletions

View File

@@ -2,20 +2,20 @@ From: Robert Garrett <robertgarrett404@gmail.com>
Date: Sun, 1 Jun 2025 17:59:20 -0500 Date: Sun, 1 Jun 2025 17:59:20 -0500
Subject: Rust edition downgrade to 2021 Subject: Rust edition downgrade to 2021
Debian Bookworm uses Rust 1.64 which only supports up to the 2021 Debian Bookworm uses Rust 1.63 which only supports up to the 2021
edition. edition.
--- ---
Cargo.toml | 2 +- Cargo.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-) 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Cargo.toml b/Cargo.toml diff --git a/Cargo.toml b/Cargo.toml
index febccc4..cf52754 100644 index 4fd569c..8b67a52 100644
--- a/Cargo.toml --- a/Cargo.toml
+++ b/Cargo.toml +++ b/Cargo.toml
@@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
[package] [package]
name = "gt-tool" name = "gt-tool"
version = "1.0.0" version = "2.2.0"
-edition = "2024" -edition = "2024"
+edition = "2021" +edition = "2021"

View File

@@ -0,0 +1,39 @@
From: Robert Garrett <robertgarrett404@gmail.com>
Date: Fri, 4 Jul 2025 09:36:52 -0500
Subject: Lift the empty-body string outside the let-if
The if-else block that selects between the body of the Release or a
placeholder is returning references to variables that only exist
*inside* the body of the if-else blocks. Newer Rust versions seem to
understand the intent and do The Right Thing anyway (or they have some
other rule for how if-else block scopes work).
Manually lifting the variable to an outer scope resolves the problem.
---
src/structs/release.rs | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/structs/release.rs b/src/structs/release.rs
index 9ed537e..3c4a434 100644
--- a/src/structs/release.rs
+++ b/src/structs/release.rs
@@ -1,3 +1,5 @@
+use std::io::empty;
+
use colored::Colorize;
use serde::{Deserialize, Serialize};
@@ -27,10 +29,11 @@ impl Release {
let published = "Published:".bright_green();
let created = "Created:".green().dimmed();
let author = "Author:".blue();
+ let empty_body = String::from("(empty body)").dimmed();
let body = if !self.body.is_empty() {
- &self.body.white()
+ self.body.white()
} else {
- &String::from("(empty body)").dimmed()
+ empty_body
};
format!(

View File

@@ -1 +1,2 @@
0001-Rust-edition-downgrade-to-2021.patch 0001-Rust-edition-downgrade-to-2021.patch
0002-Lift-the-empty-body-string-outside-the-let-if.patch