Using Plotly.rs in CI with `static_export_wd_download` fails
還沒有人認領這個 Issue。
評估
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 新手友好度
- 35/100
- Issue 類型
- 缺陷
- 描述清晰度
- 需要釐清
- 活躍度
- 停滯
- 技術堆疊
- github-actions, rust
研究方向
先從 plotly_static 建置腳本以及 static_export_geckodriver/static_export_wd_download 功能設定著手,然後在通用 Ubuntu GitHub Actions runner 上重現該失敗。將瀏覽器與驅動程式的偵測路徑與成功的本機建置進行比較;完成的標準是,文件中所述的 CI 設定能夠完成靜態匯出,且不再出現回報的建置腳本錯誤。
由索引模型根據 Issue 內容生成。
描述
I have a GitHub Actions CI that has been building with plotly.rs fine for a year, but started failing today. I was building with this:
plotly = { version = "0.13.5", features = ["kaleido", "kaleido_download"] }
which failed due to errors like this:
error[E0412]: cannot find type `Table` in crate `crc`
--> /Users/bart/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lzma-rust2-0.15.3/src/xz.rs:33:33
|
33 | const CRC32: crc::Crc<u32, crc::Table<16>> =
| ^^^^^ not found in `crc`
It turns out that under my project I have two versions of crc being used, and somehow (because plotly_kaleido uses it as a build-dependency? Shouldn't cargo handle this fine?) they are colliding:
❯ cargo tree -p [email protected] -i
crc v2.1.0
└── lzma-rust2 v0.15.3
└── zip v7.1.0
[build-dependencies]
└── plotly_kaleido v0.13.6
└── plotly v0.13.5
My project uses sqlx:
❯ cargo tree -p [email protected] -i
crc v3.4.0
└── sqlx-core v0.8.6
├── sqlx v0.8.6
So instead of fighting plotly_kaleido, it being deprecated, I switched to this:
plotly = { version = "0.14", features = ["static_export_geckodriver", "static_export_wd_download"] }
Which works fine on my local machine, but when I build in GitHub actions on the generic ubuntu runner, I get this
warning: [email protected]: You can specify WEBDRIVER_PATH to an existing chromedriver/geckodriver installation to avoid downloads.
warning: [email protected]: You can override browser detection using BROWSER_PATH environment variable.
warning: [email protected]: geckodriver selected but not installed, will be downloaded ...
error: failed to run custom build command for `plotly_static v0.1.0`
Caused by:
process didn't exit successfully: `/__w/foo/bar/target/debug/build/plotly_static-60b220e432895492/build-script-build` (exit status: 1)
--- stdout
cargo:rerun-if-changed=src/lib.rs
cargo::rerun-if-changed=/github/home/.local/bin
cargo::warning=You can specify WEBDRIVER_PATH to an existing chromedriver/geckodriver installation to avoid downloads.
cargo::warning=You can override browser detection using BROWSER_PATH environment variable.
cargo::warning=geckodriver selected but not installed, will be downloaded ...
--- stderr
Error: Failed to detect browser path for geckodriver
Caused by:
0: Failed to run command
1: cannot find binary path
warning: build failed, waiting for other jobs to finish...
My assumption would be that static_export_wd_download takes care of downloading whatever rendering engine I'd need. Maybe I'm misunderstanding the requirements for not using kaleido, but seems like some sort of bug.
- 主要語言
- Rust
- 星號
- 1.5k
- 分支
- 130
- PR 合併指標
- 30 天內沒有已合併 PR
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 沒有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
plotly/plotly.rs 的其他 Issue
-
Surface::surface_color has the wrong type: it should be a 2D numeric array, not Vec<Box<dyn Color>>未關閉
難度 3/5 1-2 天 新手友好度 68/100
-
難度 3/5 1-2 天 新手友好度 62/100
-
難度 4/5 3-5 天 新手友好度 62/100
-
難度 5/5 一週以上 新手友好度 38/100
-
Support Plotly Express color sequences可能已有人在做 @iynehz 於 41 天前認領。 未關閉enhancement
難度 5/5 一週以上 新手友好度 35/100
相似的 Issue
-
Perl - Readme Drift可能已有人在做 @Omnideth 今天認領。 未關閉
難度 2/5 1-3 小時 新手友好度 76/100
CommunityToolkit/Aspire#2375 ·
維護者通常 2 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 72/100
維護者通常 1 天內回覆
-
難度 1/5 1 小時以內 新手友好度 86/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 72/100
維護者通常 1 天內回覆