Ensure ExtensionBuilder
respects the proxy settings (#14899)
Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
This commit is contained in:
parent
0a9d50bf01
commit
9c26d07f7a
5 changed files with 13 additions and 5 deletions
1
Cargo.lock
generated
1
Cargo.lock
generated
|
@ -4013,6 +4013,7 @@ dependencies = [
|
||||||
"env_logger",
|
"env_logger",
|
||||||
"extension",
|
"extension",
|
||||||
"fs",
|
"fs",
|
||||||
|
"http 0.1.0",
|
||||||
"language",
|
"language",
|
||||||
"log",
|
"log",
|
||||||
"rpc",
|
"rpc",
|
||||||
|
|
|
@ -64,10 +64,10 @@ struct CargoTomlPackage {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl ExtensionBuilder {
|
impl ExtensionBuilder {
|
||||||
pub fn new(cache_dir: PathBuf) -> Self {
|
pub fn new(http_client: Arc<dyn HttpClient>, cache_dir: PathBuf) -> Self {
|
||||||
Self {
|
Self {
|
||||||
cache_dir,
|
cache_dir,
|
||||||
http: http::client(None),
|
http: http_client,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -243,7 +243,10 @@ impl ExtensionStore {
|
||||||
extension_index: Default::default(),
|
extension_index: Default::default(),
|
||||||
installed_dir,
|
installed_dir,
|
||||||
index_path,
|
index_path,
|
||||||
builder: Arc::new(ExtensionBuilder::new(build_dir)),
|
builder: Arc::new(ExtensionBuilder::new(
|
||||||
|
http::client(http_client.proxy().cloned()),
|
||||||
|
build_dir,
|
||||||
|
)),
|
||||||
outstanding_operations: Default::default(),
|
outstanding_operations: Default::default(),
|
||||||
modified_extensions: Default::default(),
|
modified_extensions: Default::default(),
|
||||||
reload_complete_senders: Vec::new(),
|
reload_complete_senders: Vec::new(),
|
||||||
|
|
|
@ -16,8 +16,9 @@ path = "src/main.rs"
|
||||||
anyhow.workspace = true
|
anyhow.workspace = true
|
||||||
clap = { workspace = true, features = ["derive"] }
|
clap = { workspace = true, features = ["derive"] }
|
||||||
env_logger.workspace = true
|
env_logger.workspace = true
|
||||||
fs.workspace = true
|
|
||||||
extension = { workspace = true, features = ["no-webrtc"] }
|
extension = { workspace = true, features = ["no-webrtc"] }
|
||||||
|
fs.workspace = true
|
||||||
|
http.workspace = true
|
||||||
language.workspace = true
|
language.workspace = true
|
||||||
log.workspace = true
|
log.workspace = true
|
||||||
rpc.workspace = true
|
rpc.workspace = true
|
||||||
|
|
|
@ -13,6 +13,7 @@ use extension::{
|
||||||
extension_builder::{CompileExtensionOptions, ExtensionBuilder},
|
extension_builder::{CompileExtensionOptions, ExtensionBuilder},
|
||||||
ExtensionManifest,
|
ExtensionManifest,
|
||||||
};
|
};
|
||||||
|
use http::HttpClientWithProxy;
|
||||||
use language::LanguageConfig;
|
use language::LanguageConfig;
|
||||||
use theme::ThemeRegistry;
|
use theme::ThemeRegistry;
|
||||||
use tree_sitter::{Language, Query, WasmStore};
|
use tree_sitter::{Language, Query, WasmStore};
|
||||||
|
@ -58,7 +59,9 @@ async fn main() -> Result<()> {
|
||||||
let mut manifest = ExtensionManifest::load(fs.clone(), &extension_path).await?;
|
let mut manifest = ExtensionManifest::load(fs.clone(), &extension_path).await?;
|
||||||
|
|
||||||
log::info!("compiling extension");
|
log::info!("compiling extension");
|
||||||
let builder = ExtensionBuilder::new(scratch_dir);
|
|
||||||
|
let http_client = Arc::new(HttpClientWithProxy::new(None));
|
||||||
|
let builder = ExtensionBuilder::new(http_client, scratch_dir);
|
||||||
builder
|
builder
|
||||||
.compile_extension(
|
.compile_extension(
|
||||||
&extension_path,
|
&extension_path,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue