Skip to content

Commit

Permalink
fix: hide non-working core plugins on windows
Browse files Browse the repository at this point in the history
  • Loading branch information
jdx committed Aug 18, 2024
1 parent 1206497 commit 16a08fc
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 5 deletions.
4 changes: 0 additions & 4 deletions build.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
fn main() {
cfg_aliases::cfg_aliases! {
linux: { target_os = "linux" },
macos: { target_os = "macos" },
windows: { target_os = "windows" },

vfox: { any(feature = "vfox", target_os = "windows") },
asdf: { any(feature = "asdf", not(target_os = "windows")) },
}
Expand Down
29 changes: 28 additions & 1 deletion src/plugins/core/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,29 +13,45 @@ use crate::config::Settings;
use crate::env;
use crate::env::PATH_KEY;
use crate::http::HTTP_FETCH;
#[cfg(unix)]
use crate::plugins::core::bun::BunPlugin;
#[cfg(unix)]
use crate::plugins::core::deno::DenoPlugin;
#[cfg(unix)]
use crate::plugins::core::erlang::ErlangPlugin;
#[cfg(unix)]
use crate::plugins::core::go::GoPlugin;
#[cfg(unix)]
use crate::plugins::core::java::JavaPlugin;
use crate::plugins::core::node::NodePlugin;
#[cfg(unix)]
use crate::plugins::core::ruby::RubyPlugin;
#[cfg(unix)]
use crate::plugins::core::zig::ZigPlugin;
use crate::plugins::{Plugin, PluginList, PluginType};
use crate::timeout::run_with_timeout;
use crate::toolset::ToolVersion;

#[cfg(unix)]
mod bun;
#[cfg(unix)]
mod deno;
#[cfg(unix)]
mod erlang;
#[cfg(unix)]
mod go;
#[cfg(unix)]
mod java;
mod node;
#[cfg(unix)]
mod python;
#[cfg(unix)]
mod ruby;
#[cfg(unix)]
mod zig;

pub static CORE_PLUGINS: Lazy<BackendMap> = Lazy::new(|| {
#[cfg(unix)]
let mut plugins: Vec<Arc<dyn Backend>> = vec![
Arc::new(BunPlugin::new()),
Arc::new(DenoPlugin::new()),
Expand All @@ -46,8 +62,19 @@ pub static CORE_PLUGINS: Lazy<BackendMap> = Lazy::new(|| {
Arc::new(PythonPlugin::new()),
Arc::new(RubyPlugin::new()),
];
#[cfg(windows)]
let mut plugins: Vec<Arc<dyn Backend>> = vec![
// Arc::new(BunPlugin::new()),
// Arc::new(DenoPlugin::new()),
// Arc::new(ErlangPlugin::new()),
// Arc::new(GoPlugin::new()),
// Arc::new(JavaPlugin::new()),
Arc::new(NodePlugin::new()),
// Arc::new(PythonPlugin::new()),
// Arc::new(RubyPlugin::new()),
];
let settings = Settings::get();
if settings.experimental {
if cfg!(unix) && settings.experimental {
plugins.push(Arc::new(ZigPlugin::new()));
}
plugins
Expand Down

0 comments on commit 16a08fc

Please sign in to comment.