windows: Temporarily use preview release of Gemini CLI (#40212)

Workaround for disagreement about line endings that's fixed in the
v0.9.0 series

Release Notes:

- N/A
This commit is contained in:
Cole Miller
2025-10-14 18:07:51 -04:00
committed by GitHub
parent f1786b3b5f
commit 06af052e6d
+24 -5
View File
@@ -577,6 +577,7 @@ fn get_or_npm_install_builtin_agent(
package_name: SharedString,
entrypoint_path: PathBuf,
minimum_version: Option<semver::Version>,
channel: &'static str,
status_tx: Option<watch::Sender<SharedString>>,
new_version_available: Option<watch::Sender<Option<String>>>,
fs: Arc<dyn Fs>,
@@ -648,9 +649,13 @@ fn get_or_npm_install_builtin_agent(
let dir = dir.clone();
let fs = fs.clone();
async move {
let latest_version =
node_runtime.npm_package_latest_version(&package_name).await;
if let Ok(latest_version) = latest_version
// TODO remove the filter
let latest_version = node_runtime
.npm_package_latest_version(&package_name)
.await
.ok()
.filter(|_| channel == "latest");
if let Some(latest_version) = latest_version
&& &latest_version != &file_name.to_string_lossy()
{
let download_result = download_latest_version(
@@ -658,6 +663,7 @@ fn get_or_npm_install_builtin_agent(
dir.clone(),
node_runtime,
package_name.clone(),
channel,
)
.await
.log_err();
@@ -681,6 +687,7 @@ fn get_or_npm_install_builtin_agent(
dir.clone(),
node_runtime,
package_name.clone(),
channel,
))
.await?
.into()
@@ -729,13 +736,14 @@ async fn download_latest_version(
dir: PathBuf,
node_runtime: NodeRuntime,
package_name: SharedString,
channel: &'static str,
) -> Result<String> {
log::debug!("downloading latest version of {package_name}");
let tmp_dir = tempfile::tempdir_in(&dir)?;
node_runtime
.npm_install_packages(tmp_dir.path(), &[(&package_name, "latest")])
.npm_install_packages(tmp_dir.path(), &[(&package_name, channel)])
.await?;
let version = node_runtime
@@ -878,7 +886,17 @@ impl ExternalAgentServer for LocalGemini {
GEMINI_NAME.into(),
"@google/gemini-cli".into(),
"node_modules/@google/gemini-cli/dist/index.js".into(),
Some("0.2.1".parse().unwrap()),
// TODO remove these windows-specific workarounds once v0.9.0 stable is released
if cfg!(windows) {
Some("0.9.0-preview.4".parse().unwrap())
} else {
Some("0.2.1".parse().unwrap())
},
if cfg!(windows) {
"0.9.0-preview.4"
} else {
"latest"
},
status_tx,
new_version_available_tx,
fs,
@@ -962,6 +980,7 @@ impl ExternalAgentServer for LocalClaudeCode {
"@zed-industries/claude-code-acp".into(),
"node_modules/@zed-industries/claude-code-acp/dist/index.js".into(),
Some("0.5.2".parse().unwrap()),
"latest",
status_tx,
new_version_available_tx,
fs,