@@ -7,7 +7,7 @@ use alloy_json_abi::JsonAbi;
7
7
use alloy_primitives:: { B256 , Selector , map:: HashMap } ;
8
8
use eyre:: Context ;
9
9
use itertools:: Itertools ;
10
- use serde:: { Deserialize , Serialize , de :: DeserializeOwned } ;
10
+ use serde:: { Deserialize , Serialize } ;
11
11
use std:: {
12
12
fmt,
13
13
sync:: {
@@ -19,7 +19,6 @@ use std::{
19
19
20
20
const BASE_URL : & str = "https://sourcify.dev/server" ;
21
21
const SELECTOR_LOOKUP_URL : & str = "https://sourcify.dev/server/signature-database/v1/lookup" ;
22
- const SELECTOR_IMPORT_URL : & str = "https://sourcify.dev/server/signature-database/v1/import" ;
23
22
24
23
/// The standard request timeout for API requests.
25
24
const REQ_TIMEOUT : Duration = Duration :: from_secs ( 15 ) ;
@@ -70,24 +69,6 @@ impl SourcifyClient {
70
69
. inspect_err ( |err| self . on_reqwest_err ( err) )
71
70
}
72
71
73
- /// Sends a new post request
74
- async fn post_json < T : Serialize + std:: fmt:: Debug , R : DeserializeOwned > (
75
- & self ,
76
- url : & str ,
77
- body : & T ,
78
- ) -> reqwest:: Result < R > {
79
- trace ! ( %url, body=?serde_json:: to_string( body) , "POST" ) ;
80
- self . inner
81
- . post ( url)
82
- . json ( body)
83
- . send ( )
84
- . await
85
- . inspect_err ( |err| self . on_reqwest_err ( err) ) ?
86
- . json ( )
87
- . await
88
- . inspect_err ( |err| self . on_reqwest_err ( err) )
89
- }
90
-
91
72
fn on_reqwest_err ( & self , err : & reqwest:: Error ) {
92
73
fn is_connectivity_err ( err : & reqwest:: Error ) -> bool {
93
74
if err. is_timeout ( ) || err. is_connect ( ) {
@@ -280,42 +261,6 @@ impl SourcifyClient {
280
261
}
281
262
Ok ( possible_info)
282
263
}
283
-
284
- /// uploads selectors to Sourcify using the given data
285
- pub async fn import_selectors (
286
- & self ,
287
- data : SelectorImportData ,
288
- ) -> eyre:: Result < SelectorImportResponse > {
289
- self . ensure_not_spurious ( ) ?;
290
-
291
- let request = match data {
292
- SelectorImportData :: Abi ( abis) => {
293
- let functions_and_errors: SourcifySignatures = abis
294
- . iter ( )
295
- . flat_map ( |abi| {
296
- abi. functions ( )
297
- . map ( |func| func. signature ( ) )
298
- . chain ( abi. errors ( ) . map ( |error| error. signature ( ) ) )
299
- . collect :: < Vec < _ > > ( )
300
- } )
301
- . collect ( ) ;
302
-
303
- let events = abis
304
- . iter ( )
305
- . flat_map ( |abi| abi. events ( ) . map ( |event| event. signature ( ) ) )
306
- . collect :: < Vec < _ > > ( ) ;
307
-
308
- SelectorImportRequest { function : functions_and_errors, event : events }
309
- }
310
- SelectorImportData :: Raw ( raw) => {
311
- let function_and_error =
312
- raw. function . iter ( ) . chain ( raw. error . iter ( ) ) . cloned ( ) . collect :: < Vec < _ > > ( ) ;
313
- SelectorImportRequest { function : function_and_error, event : raw. event }
314
- }
315
- } ;
316
-
317
- Ok ( self . post_json ( SELECTOR_IMPORT_URL , & request) . await ?)
318
- }
319
264
}
320
265
321
266
pub enum SelectorOrSig {
@@ -447,61 +392,6 @@ impl RawSelectorImportData {
447
392
}
448
393
}
449
394
450
- #[ derive( Serialize ) ]
451
- #[ serde( untagged) ]
452
- pub enum SelectorImportData {
453
- Abi ( Vec < JsonAbi > ) ,
454
- Raw ( RawSelectorImportData ) ,
455
- }
456
-
457
- #[ derive( Debug , Default , Serialize ) ]
458
- struct SelectorImportRequest {
459
- function : SourcifySignatures ,
460
- event : SourcifySignatures ,
461
- }
462
-
463
- #[ derive( Debug , Deserialize ) ]
464
- struct SelectorImportEffect {
465
- imported : HashMap < String , String > ,
466
- duplicated : HashMap < String , String > ,
467
- }
468
-
469
- #[ derive( Debug , Deserialize ) ]
470
- struct SelectorImportResult {
471
- function : SelectorImportEffect ,
472
- event : SelectorImportEffect ,
473
- }
474
-
475
- #[ derive( Debug , Deserialize ) ]
476
- pub struct SelectorImportResponse {
477
- result : SelectorImportResult ,
478
- }
479
-
480
- impl SelectorImportResponse {
481
- /// Print info about the functions which were uploaded or already known
482
- pub fn describe ( & self ) {
483
- self . result . function . imported . iter ( ) . for_each ( |( k, v) | {
484
- let _ = sh_println ! ( "Imported: Function {k}: {v}" ) ;
485
- } ) ;
486
- self . result . event . imported . iter ( ) . for_each ( |( k, v) | {
487
- let _ = sh_println ! ( "Imported: Event {k}: {v}" ) ;
488
- } ) ;
489
- self . result . function . duplicated . iter ( ) . for_each ( |( k, v) | {
490
- let _ = sh_println ! ( "Duplicated: Function {k}: {v}" ) ;
491
- } ) ;
492
- self . result . event . duplicated . iter ( ) . for_each ( |( k, v) | {
493
- let _ = sh_println ! ( "Duplicated: Event {k}: {v}" ) ;
494
- } ) ;
495
-
496
- let _ = sh_println ! ( "Selectors successfully uploaded to Sourcify" ) ;
497
- }
498
- }
499
-
500
- /// uploads selectors to Sourcify using the given data
501
- pub async fn import_selectors ( data : SelectorImportData ) -> eyre:: Result < SelectorImportResponse > {
502
- SourcifyClient :: new ( ) ?. import_selectors ( data) . await
503
- }
504
-
505
395
#[ derive( Debug , Default , PartialEq , Eq ) ]
506
396
pub struct ParsedSignatures {
507
397
pub signatures : RawSelectorImportData ,
0 commit comments