eitsupi opened a new issue, #3149: URL: https://github.com/apache/arrow-adbc/issues/3149
### What happened? As reported by #3148, the build now seems to fail with the following error. ``` Checking adbc_core v0.20.0 (D:\a\arrow-adbc\arrow-adbc\rust\core) error[E0433]: failed to resolve: use of unresolved module or unlinked crate `windows` --> core\src\driver_manager.rs:1686:27 | 1686 | let len = windows::Win32::Globalization::lstrlenW(path_ptr) as usize; | ^^^^^^^ use of unresolved module or unlinked crate `windows` | = help: if you wanted to use a crate named `windows`, use `cargo add windows` to add it to your `Cargo.toml` error[E0433]: failed to resolve: use of unresolved module or unlinked crate `windows` --> core\src\driver_manager.rs:1689:17 | 1689 | windows::Win32::System::Com::CoTaskMemFree(path_ptr as *const c_void); | ^^^^^^^ use of unresolved module or unlinked crate `windows` | = help: if you wanted to use a crate named `windows`, use `cargo add windows` to add it to your `Cargo.toml` error[E0433]: failed to resolve: use of unresolved module or unlinked crate `windows` --> core\src\driver_manager.rs:1692:17 | 1692 | windows::Win32::System::Com::CoTaskMemFree(path_ptr as *const c_void); | ^^^^^^^ use of unresolved module or unlinked crate `windows` | = help: if you wanted to use a crate named `windows`, use `cargo add windows` to add it to your `Cargo.toml` error[E0433]: failed to resolve: use of unresolved module or unlinked crate `windows` --> core\src\driver_manager.rs:1677:31 | 1677 | let mut path_ptr: windows::core::PWSTR = std::ptr::null_mut(); | ^^^^^^^ use of unresolved module or unlinked crate `windows` | = help: if you wanted to use a crate named `windows`, use `cargo add windows` to add it to your `Cargo.toml` error[E0603]: function `user_config_dir` is private --> core\src\driver_manager.rs:1702:29 | 1702 | use target_windows::user_config_dir; | ^^^^^^^^^^^^^^^ private function | note: the function `user_config_dir` is defined here --> core\src\driver_manager.rs:1675:5 | 1675 | fn user_config_dir() -> Option<PathBuf> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error[E0308]: mismatched types --> core\src\driver_manager.rs:495:53 | 495 | Self::search_path_list(driver_path, LOAD_FLAG_SEARCH_ENV, entrypoint, version) | ---------------------- ^^^^^^^^^^^^^^^^^^^^ expected `Vec<PathBuf>`, found `u32` | | | arguments to this function are incorrect | = note: expected struct `std::vec::Vec<std::path::PathBuf>` found type `u32` note: associated function defined here --> core\src\driver_manager.rs:459:8 | 459 | fn search_path_list( | ^^^^^^^^^^^^^^^^ 460 | driver_path: &Path, 461 | path_list: Vec<PathBuf>, | ----------------------- error[E0308]: mismatched types --> core\src\driver_manager.rs:512:53 | 512 | Self::search_path_list(driver_path, LOAD_FLAG_SEARCH_USER, entrypoint, version) | ---------------------- ^^^^^^^^^^^^^^^^^^^^^ expected `Vec<PathBuf>`, found `u32` | | | arguments to this function are incorrect | = note: expected struct `std::vec::Vec<std::path::PathBuf>` found type `u32` note: associated function defined here --> core\src\driver_manager.rs:459:8 | 459 | fn search_path_list( | ^^^^^^^^^^^^^^^^ 460 | driver_path: &Path, 461 | path_list: Vec<PathBuf>, | ----------------------- error[E0308]: mismatched types --> core\src\driver_manager.rs:528:53 | 528 | Self::search_path_list(driver_path, LOAD_FLAG_SEARCH_SYSTEM, entrypoint, version) | ---------------------- ^^^^^^^^^^^^^^^^^^^^^^^ expected `Vec<PathBuf>`, found `u32` | | | arguments to this function are incorrect | = note: expected struct `std::vec::Vec<std::path::PathBuf>` found type `u32` note: associated function defined here --> core\src\driver_manager.rs:459:8 | 459 | fn search_path_list( | ^^^^^^^^^^^^^^^^ 460 | driver_path: &Path, 461 | path_list: Vec<PathBuf>, | ----------------------- error[E0277]: `?` couldn't convert the error to `error::Error` --> core\src\driver_manager.rs:612:54 | 610 | ) -> Result<DriverInfo> { | ------------------ expected `error::Error` because of this 611 | const ADBC_DRIVER_REGISTRY: &str = "SOFTWARE\\ADBC\\Drivers"; 612 | let drivers_key = root.open(ADBC_DRIVER_REGISTRY)?; | --------------------------^ the trait `std::convert::From<windows_result::error::Error>` is not implemented for `error::Error` | | | this can't be annotated with `?` because it has type `Result<_, windows_result::error::Error>` | note: `error::Error` needs to implement `From<windows_result::error::Error>` --> core\src\error.rs:71:1 | 71 | pub struct Error { | ^^^^^^^^^^^^^^^^ = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait = help: the following other types implement trait `std::convert::From<T>`: `error::Error` implements `std::convert::From<arrow_schema::ArrowError>` `error::Error` implements `std::convert::From<libloading::Error>` `error::Error` implements `std::convert::From<std::ffi::IntoStringError>` `error::Error` implements `std::convert::From<std::ffi::NulError>` `error::Error` implements `std::convert::From<std::str::Utf8Error>` error[E0560]: struct `driver_manager::DriverInfo` has no field named `driver_name` --> core\src\driver_manager.rs:615:9 | 615 | driver_name: drivers_key.get_string("name").unwrap_or_default(), | ^^^^^^^^^^^ `driver_manager::DriverInfo` does not have this field | = note: all struct fields are already assigned error[E0308]: mismatched types --> core\src\driver_manager.rs:617:25 | 617 | .or_else(|| drivers_key.get_string("entrypoint").map(|e| e.into_bytes())), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option<&[u8]>`, found `Result<Vec<u8>, Error>` | = note: expected enum `std::option::Option<&[u8]>` found enum `std::result::Result<std::vec::Vec<u8>, windows_result::error::Error>` error[E0308]: mismatched types --> core\src\driver_manager.rs:616:21 | 616 | entrypoint: entrypoint | _____________________^ 617 | | .or_else(|| drivers_key.get_string("entrypoint").map(|e| e.into_bytes())), | |_____________________________________________________________________________________^ expected `Option<Vec<u8>>`, found `Option<&[u8]>` | = note: expected enum `std::option::Option<std::vec::Vec<u8>>` found enum `std::option::Option<&[u8]>` error[E0560]: struct `driver_manager::DriverInfo` has no field named `version` --> core\src\driver_manager.rs:618:9 | 618 | version: drivers_key.get_string("version").unwrap_or_default(), | ^^^^^^^ `driver_manager::DriverInfo` does not have this field | = note: all struct fields are already assigned error[E0560]: struct `driver_manager::DriverInfo` has no field named `source` --> core\src\driver_manager.rs:619:9 | 619 | source: drivers_key.get_string("source").unwrap_or_default(), | ^^^^^^ `driver_manager::DriverInfo` does not have this field | = note: all struct fields are already assigned error[E0308]: mismatched types --> core\src\driver_manager.rs:1679:17 | 1678 | let result = Shell::SHGetKnownFolderPath( | --------------------------- arguments to this function are incorrect 1679 | Shell::FOLDERID_LocalAppData, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `*const GUID`, found `GUID` | = note: expected raw pointer `*const windows_sys::core::GUID` found struct `windows_sys::core::GUID` note: function defined here --> C:\Users\runneradmin\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-sys-0.60.2\src\Windows\Win32\UI\Shell\mod.rs:573:50 | 573 | windows_targets::link!("shell32.dll" "system" fn SHGetKnownFolderPath(rfid : *const windows_sys::core::GUID, dwflags : u32, htoken : supe... | ^^^^^^^^^^^^^^^^^^^^ Some errors have detailed explanations: E0277, E0308, E0433, E0560, E0603. For more information about an error, try `rustc --explain E0277`. Compiling regress v0.10.3 error: could not compile `adbc_core` (lib) due to 15 previous errors ``` ### Stack Trace _No response_ ### How can we reproduce the bug? _No response_ ### Environment/Setup _No response_ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@arrow.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org