Skip to content

Commit

Permalink
feat: supports socket address as --rpc-url input (#7389)
Browse files Browse the repository at this point in the history
* feat: supports socket address

* cargo fmt and clippy
  • Loading branch information
kamuik16 authored Mar 13, 2024
1 parent b2f9346 commit ed8dec5
Showing 1 changed file with 11 additions and 5 deletions.
16 changes: 11 additions & 5 deletions crates/common/src/provider/alloy.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ use foundry_common::types::ToAlloy;
use foundry_config::NamedChain;
use reqwest::Url;
use std::{
net::SocketAddr,
path::{Path, PathBuf},
str::FromStr,
time::Duration,
};
use url::ParseError;
Expand Down Expand Up @@ -93,12 +95,16 @@ impl ProviderBuilder {
let url = Url::parse(url_str)
.or_else(|err| match err {
ParseError::RelativeUrlWithoutBase => {
let path = Path::new(url_str);

if let Ok(path) = resolve_path(path) {
Url::parse(&format!("file://{}", path.display()))
if SocketAddr::from_str(url_str).is_ok() {
Url::parse(&format!("http://{}", url_str))
} else {
Err(err)
let path = Path::new(url_str);

if let Ok(path) = resolve_path(path) {
Url::parse(&format!("file://{}", path.display()))
} else {
Err(err)
}
}
}
_ => Err(err),
Expand Down

0 comments on commit ed8dec5

Please sign in to comment.