upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanConwayDev <DanConwayDev@protonmail.com>2024-12-02 08:39:25 +0000
committerDanConwayDev <DanConwayDev@protonmail.com>2024-12-02 08:39:25 +0000
commit79f55ad6488ddb628438580acf54a1d23a990cb3 (patch)
tree23986ff0a5642ca18e838163d5424aa53d152880
parenta6a1eebda0ab5e8b34e97799ff7b57ef194261c7 (diff)
feat: limit `pr` branch names to 60 chars
there needs to a limit so the total length of the ref name is < 252 keeping it shorter makes it easier for other contributors to work with
-rw-r--r--src/lib/git_events.rs26
1 files changed, 17 insertions, 9 deletions
diff --git a/src/lib/git_events.rs b/src/lib/git_events.rs
index c4d6770..10194bb 100644
--- a/src/lib/git_events.rs
+++ b/src/lib/git_events.rs
@@ -178,7 +178,7 @@ pub async fn generate_patch_event(
178 if thread_event_id.is_none() { 178 if thread_event_id.is_none() {
179 vec![Tag::custom( 179 vec![Tag::custom(
180 TagKind::Custom(std::borrow::Cow::Borrowed("branch-name")), 180 TagKind::Custom(std::borrow::Cow::Borrowed("branch-name")),
181 vec![branch_name.to_string()], 181 vec![branch_name.chars().take(60).collect::<String>()],
182 )] 182 )]
183 } else { 183 } else {
184 vec![] 184 vec![]
@@ -380,7 +380,7 @@ pub async fn generate_cover_letter_and_patch_events(
380 branch_name.to_string() 380 branch_name.to_string()
381 } else { 381 } else {
382 branch_name 382 branch_name
383 }], 383 }.chars().take(60).collect::<String>()],
384 ), 384 ),
385 ] 385 ]
386 } 386 }
@@ -419,11 +419,16 @@ pub async fn generate_cover_letter_and_patch_events(
419 && !branch_name.eq("origin/main") 419 && !branch_name.eq("origin/main")
420 && !branch_name.eq("origin/master") 420 && !branch_name.eq("origin/master")
421 { 421 {
422 Some(if let Some(branch_name) = branch_name.strip_prefix("pr/") { 422 Some(
423 branch_name.to_string() 423 if let Some(branch_name) = branch_name.strip_prefix("pr/") {
424 } else { 424 branch_name.to_string()
425 branch_name 425 } else {
426 }) 426 branch_name
427 }
428 .chars()
429 .take(60)
430 .collect::<String>(),
431 )
427 } else { 432 } else {
428 None 433 None
429 } 434 }
@@ -514,7 +519,7 @@ pub fn event_to_cover_letter(event: &nostr::Event) -> Result<CoverLetter> {
514 branch_name: if let Ok(name) = match tag_value(event, "branch-name") { 519 branch_name: if let Ok(name) = match tag_value(event, "branch-name") {
515 Ok(name) => { 520 Ok(name) => {
516 if !name.eq("main") && !name.eq("master") { 521 if !name.eq("main") && !name.eq("master") {
517 Ok(name) 522 Ok(name.chars().take(60).collect::<String>())
518 } else { 523 } else {
519 Err(()) 524 Err(())
520 } 525 }
@@ -535,7 +540,10 @@ pub fn event_to_cover_letter(event: &nostr::Event) -> Result<CoverLetter> {
535 }) 540 })
536 .collect(); 541 .collect();
537 s 542 s
538 }, 543 }
544 .chars()
545 .take(60)
546 .collect(),
539 event_id: Some(event.id), 547 event_id: Some(event.id),
540 }) 548 })
541} 549}