upleb.uk

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

summaryrefslogtreecommitdiff
path: root/src/client.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/client.rs')
-rw-r--r--src/client.rs26
1 files changed, 11 insertions, 15 deletions
diff --git a/src/client.rs b/src/client.rs
index 29d390f..5603014 100644
--- a/src/client.rs
+++ b/src/client.rs
@@ -36,10 +36,10 @@ use nostr_sqlite::SQLiteDatabase;
36use crate::{ 36use crate::{
37 config::get_dirs, 37 config::get_dirs,
38 login::{get_logged_in_user, get_user_ref_from_cache}, 38 login::{get_logged_in_user, get_user_ref_from_cache},
39 repo_ref::{RepoRef, REPO_REF_KIND}, 39 repo_ref::RepoRef,
40 sub_commands::{ 40 sub_commands::{
41 list::status_kinds, 41 list::status_kinds,
42 send::{event_is_patch_set_root, event_is_revision_root, PATCH_KIND}, 42 send::{event_is_patch_set_root, event_is_revision_root},
43 }, 43 },
44}; 44};
45 45
@@ -212,7 +212,7 @@ impl Connect for Client {
212 }); 212 });
213 } 213 }
214 save_event_in_cache(git_repo_path, &event).await?; 214 save_event_in_cache(git_repo_path, &event).await?;
215 if event.kind().eq(&Kind::Custom(REPO_REF_KIND)) { 215 if event.kind().eq(&Kind::GitRepoAnnouncement) {
216 save_event_in_global_cache(git_repo_path, &event).await?; 216 save_event_in_global_cache(git_repo_path, &event).await?;
217 } 217 }
218 Ok(event.id()) 218 Ok(event.id())
@@ -895,7 +895,7 @@ async fn create_relays_request(
895 git_repo_path, 895 git_repo_path,
896 vec![ 896 vec![
897 nostr::Filter::default() 897 nostr::Filter::default()
898 .kinds(vec![Kind::Custom(PATCH_KIND)]) 898 .kinds(vec![Kind::GitPatch])
899 .custom_tag( 899 .custom_tag(
900 SingleLetterTag::lowercase(nostr_sdk::Alphabet::A), 900 SingleLetterTag::lowercase(nostr_sdk::Alphabet::A),
901 repo_coordinates_without_relays 901 repo_coordinates_without_relays
@@ -1070,7 +1070,7 @@ async fn process_fetched_events(
1070 for event in &events { 1070 for event in &events {
1071 if !request.existing_events.contains(&event.id) { 1071 if !request.existing_events.contains(&event.id) {
1072 save_event_in_cache(git_repo_path, event).await?; 1072 save_event_in_cache(git_repo_path, event).await?;
1073 if event.kind().as_u16().eq(&REPO_REF_KIND) { 1073 if event.kind().eq(&Kind::GitRepoAnnouncement) {
1074 save_event_in_global_cache(git_repo_path, event).await?; 1074 save_event_in_global_cache(git_repo_path, event).await?;
1075 let new_coordinate = !request 1075 let new_coordinate = !request
1076 .repo_coordinates_without_relays 1076 .repo_coordinates_without_relays
@@ -1172,7 +1172,7 @@ async fn process_fetched_events(
1172 if !request.existing_events.contains(&event.id) 1172 if !request.existing_events.contains(&event.id)
1173 && !event.event_ids().any(|id| report.proposals.contains(id)) 1173 && !event.event_ids().any(|id| report.proposals.contains(id))
1174 { 1174 {
1175 if event.kind().as_u16() == PATCH_KIND && !event_is_patch_set_root(event) { 1175 if event.kind().eq(&Kind::GitPatch) && !event_is_patch_set_root(event) {
1176 report.commits.insert(event.id); 1176 report.commits.insert(event.id);
1177 } else if status_kinds().contains(&event.kind()) { 1177 } else if status_kinds().contains(&event.kind()) {
1178 report.statuses.insert(event.id); 1178 report.statuses.insert(event.id);
@@ -1238,7 +1238,7 @@ pub fn get_fetch_filters(
1238 vec![ 1238 vec![
1239 get_filter_repo_events(repo_coordinates), 1239 get_filter_repo_events(repo_coordinates),
1240 nostr::Filter::default() 1240 nostr::Filter::default()
1241 .kinds(vec![Kind::Custom(PATCH_KIND), Kind::EventDeletion]) 1241 .kinds(vec![Kind::GitPatch, Kind::EventDeletion])
1242 .custom_tag( 1242 .custom_tag(
1243 SingleLetterTag::lowercase(nostr_sdk::Alphabet::A), 1243 SingleLetterTag::lowercase(nostr_sdk::Alphabet::A),
1244 repo_coordinates 1244 repo_coordinates
@@ -1252,13 +1252,9 @@ pub fn get_fetch_filters(
1252 vec![] 1252 vec![]
1253 } else { 1253 } else {
1254 vec![ 1254 vec![
1255 nostr::Filter::default().events(proposal_ids.clone()).kinds( 1255 nostr::Filter::default()
1256 [ 1256 .events(proposal_ids.clone())
1257 vec![Kind::Custom(PATCH_KIND), Kind::EventDeletion], 1257 .kinds([vec![Kind::GitPatch, Kind::EventDeletion], status_kinds()].concat()),
1258 status_kinds(),
1259 ]
1260 .concat(),
1261 ),
1262 ] 1258 ]
1263 }, 1259 },
1264 if required_profiles.is_empty() { 1260 if required_profiles.is_empty() {
@@ -1272,7 +1268,7 @@ pub fn get_fetch_filters(
1272 1268
1273pub fn get_filter_repo_events(repo_coordinates: &HashSet<Coordinate>) -> nostr::Filter { 1269pub fn get_filter_repo_events(repo_coordinates: &HashSet<Coordinate>) -> nostr::Filter {
1274 nostr::Filter::default() 1270 nostr::Filter::default()
1275 .kind(Kind::Custom(REPO_REF_KIND)) 1271 .kind(Kind::GitRepoAnnouncement)
1276 .identifiers( 1272 .identifiers(
1277 repo_coordinates 1273 repo_coordinates
1278 .iter() 1274 .iter()