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

Reply via email to