Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Rust] Current MSRV is 1.73 (polars-lazy) #12112

Open
eitsupi opened this issue Oct 30, 2023 · 5 comments
Open

[Rust] Current MSRV is 1.73 (polars-lazy) #12112

eitsupi opened this issue Oct 30, 2023 · 5 comments
Labels
accepted Ready for implementation build Changes that affect the build system or external dependencies documentation Improvements or additions to documentation rust Related to Rust Polars

Comments

@eitsupi
Copy link
Contributor

eitsupi commented Oct 30, 2023

Required Rust version `>=1.71`.

README says that current MSRV is 1.71, but it seems 1.73.
See pola-rs/r-polars#442 (comment)

I recommend testing MSRV on CI like apache/arrow-rs#4490

@stinodego
Copy link
Member

Good suggestion, thanks!

@stinodego stinodego added bug Something isn't working rust Related to Rust Polars accepted Ready for implementation labels Oct 30, 2023
@stinodego stinodego self-assigned this Oct 30, 2023
@stinodego
Copy link
Member

stinodego commented Oct 30, 2023

I checked out cargo-msrv. Unfortunately, it does not have workspace support.

When checking only the polars package, it passes when rust-version = "1.71". So maybe your report is inaccurate?
Or maybe it's not checking all features?

@stinodego stinodego removed their assignment Oct 30, 2023
@eitsupi
Copy link
Contributor Author

eitsupi commented Oct 30, 2023

It seems that the problem is polars-lazy. (As you expected, cargo-msrv haven't checked all the features, so it seems like we need to look at the MSRV of each individual crate.)
I saw this on a366bc9

Details
$ pushd crates/polars-lazy/
$ cargo msrv
Fetching index
Determining the Minimum Supported Rust Version (MSRV) for toolchain x86_64-unknown-linux-gnu
Using check command cargo check

Check for toolchain '1.36.0-x86_64-unknown-linux-gnu' failed with:
┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ error: failed to parse manifest at `/workspaces/polars/crates/polars-lazy/Cargo.toml`                                 │
│                                                                                                                       │
│ Caused by:                                                                                                            │
│   invalid type: map, expected a sequence for key `package.authors`                                                    │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Check for toolchain '1.55.0-x86_64-unknown-linux-gnu' failed with:
┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ error: failed to parse manifest at `/workspaces/polars/crates/polars-lazy/Cargo.toml`                                 │
│                                                                                                                       │
│ Caused by:                                                                                                            │
│   invalid type: map, expected a sequence for key `package.authors`                                                    │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Check for toolchain '1.64.0-x86_64-unknown-linux-gnu' failed with:
┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Downloading crates ...                                                                                                │
│   Downloaded glob v0.3.1                                                                                              │
│ error: package `regex-automata v0.4.3` cannot be built because it requires rustc 1.65 or newer, while the currently   │
│ active rustc version is 1.64.0                                                                                        │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Check for toolchain '1.69.0-x86_64-unknown-linux-gnu' failed with:
┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Compiling multiversion-macros v0.7.1                                                                                  │
│    Compiling polars-lazy v0.34.2 (/workspaces/polars/crates/polars-lazy)                                              │
│     Checking glob v0.3.1                                                                                              │
│     Checking polars-utils v0.34.2 (/workspaces/polars/crates/polars-utils)                                            │
│ error[E0658]: use of unstable library feature 'build_hasher_simple_hash_one'                                          │
│   --> crates/polars-utils/src/functions.rs:23:8                                                                       │
│    |                                                                                                                  │
│ 23 |     hb.hash_one(value)                                                                                           │
│    |        ^^^^^^^^                                                                                                  │
│    |                                                                                                                  │
│    = note: see issue #86161 <https://github.com/rust-lang/rust/issues/86161> for more information                     │
│                                                                                                                       │
│ For more information about this error, try `rustc --explain E0658`.                                                   │
│ error: could not compile `polars-utils` due to previous error                                                         │
│ warning: build failed, waiting for other jobs to finish...                                                            │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Check for toolchain '1.71.1-x86_64-unknown-linux-gnu' failed with:
┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Compiling polars-lazy v0.34.2 (/workspaces/polars/crates/polars-lazy)                                                 │
│     Checking glob v0.3.1                                                                                              │
│ warning: unused import: `crate::prelude::DataType::Datetime`                                                          │
│   --> crates/polars-core/src/chunked_array/cast.rs:10:5                                                               │
│    |                                                                                                                  │
│ 10 | use crate::prelude::DataType::Datetime;                                                                          │
│    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                           │
│    |                                                                                                                  │
│    = note: `#[warn(unused_imports)]` on by default                                                                    │
│                                                                                                                       │
│ warning: unused imports: `timestamp_ms_to_datetime`, `timestamp_ns_to_datetime`, `timestamp_us_to_datetime`           │
│  --> crates/polars-core/src/datatypes/any_value.rs:4:5                                                                │
│   |                                                                                                                   │
│ 4 |     timestamp_ms_to_datetime, timestamp_ns_to_datetime, timestamp_us_to_datetime,                                 │
│   |     ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^                                  │
│                                                                                                                       │
│ warning: unreachable pattern                                                                                          │
│    --> crates/polars-core/src/datatypes/any_value.rs:739:13                                                           │
│     |                                                                                                                 │
│ 739 |             dt => polars_bail!(ComputeError: "cannot get static any-value from {}", dt),                        │
│     |             ^^                                                                                                  │
│     |                                                                                                                 │
│     = note: `#[warn(unreachable_patterns)]` on by default                                                             │
│                                                                                                                       │
│ warning: unused variable: `timeunit`                                                                                  │
│    --> crates/polars-core/src/series/mod.rs:719:39                                                                    │
│     |                                                                                                                 │
│ 719 |     pub(crate) fn into_datetime(self, timeunit: TimeUnit, tz: Option<TimeZone>) -> Series {                     │
│ |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore:          │
│ `_timeunit`                                                                                                           │
│     |                                                                                                                 │
│     = note: `#[warn(unused_variables)]` on by default                                                                 │
│                                                                                                                       │
│ warning: unused variable: `tz`                                                                                        │
│    --> crates/polars-core/src/series/mod.rs:719:59                                                                    │
│     |                                                                                                                 │
│ 719 |     pub(crate) fn into_datetime(self, timeunit: TimeUnit, tz: Option<TimeZone>) -> Series {                     │
│ |                                                           ^^ help: if this is intentional, prefix it with an        │
│ underscore: `_tz`                                                                                                     │
│                                                                                                                       │
│ warning: unused variable: `timeunit`                                                                                  │
│    --> crates/polars-core/src/series/mod.rs:744:39                                                                    │
│     |                                                                                                                 │
│ 744 |     pub(crate) fn into_duration(self, timeunit: TimeUnit) -> Series {                                           │
│ |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore:          │
│ `_timeunit`                                                                                                           │
│                                                                                                                       │
│ warning: constant `FMT_MAX_COLS` is never used                                                                        │
│  --> crates/polars-core/src/config.rs:2:18                                                                            │
│   |                                                                                                                   │
│ 2 | pub(crate) const FMT_MAX_COLS: &str = "POLARS_FMT_MAX_COLS";                                                      │
│   |                  ^^^^^^^^^^^^                                                                                     │
│   |                                                                                                                   │
│   = note: `#[warn(dead_code)]` on by default                                                                          │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_CELL_ALIGNMENT` is never used                                                            │
│  --> crates/polars-core/src/config.rs:5:18                                                                            │
│   |                                                                                                                   │
│ 5 | pub(crate) const FMT_TABLE_CELL_ALIGNMENT: &str = "POLARS_FMT_TABLE_CELL_ALIGNMENT";                              │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^                                                                         │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_CELL_NUMERIC_ALIGNMENT` is never used                                                    │
│  --> crates/polars-core/src/config.rs:6:18                                                                            │
│   |                                                                                                                   │
│ 6 | pub(crate) const FMT_TABLE_CELL_NUMERIC_ALIGNMENT: &str = "POLARS_FMT_TABLE_CELL_NUMERIC_ALIGNMENT";              │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                 │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_DATAFRAME_SHAPE_BELOW` is never used                                                     │
│  --> crates/polars-core/src/config.rs:7:18                                                                            │
│   |                                                                                                                   │
│ 7 | pub(crate) const FMT_TABLE_DATAFRAME_SHAPE_BELOW: &str = "POLARS_FMT_TABLE_DATAFRAME_SHAPE_BELOW";                │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                  │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_FORMATTING` is never used                                                                │
│  --> crates/polars-core/src/config.rs:8:18                                                                            │
│   |                                                                                                                   │
│ 8 | pub(crate) const FMT_TABLE_FORMATTING: &str = "POLARS_FMT_TABLE_FORMATTING";                                      │
│   |                  ^^^^^^^^^^^^^^^^^^^^                                                                             │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_HIDE_COLUMN_DATA_TYPES` is never used                                                    │
│  --> crates/polars-core/src/config.rs:9:18                                                                            │
│   |                                                                                                                   │
│ 9 | pub(crate) const FMT_TABLE_HIDE_COLUMN_DATA_TYPES: &str = "POLARS_FMT_TABLE_HIDE_COLUMN_DATA_TYPES";              │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                 │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_HIDE_COLUMN_NAMES` is never used                                                         │
│   --> crates/polars-core/src/config.rs:10:18                                                                          │
│    |                                                                                                                  │
│ 10 | pub(crate) const FMT_TABLE_HIDE_COLUMN_NAMES: &str = "POLARS_FMT_TABLE_HIDE_COLUMN_NAMES";                       │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                     │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_HIDE_COLUMN_SEPARATOR` is never used                                                     │
│   --> crates/polars-core/src/config.rs:11:18                                                                          │
│    |                                                                                                                  │
│ 11 | pub(crate) const FMT_TABLE_HIDE_COLUMN_SEPARATOR: &str = "POLARS_FMT_TABLE_HIDE_COLUMN_SEPARATOR";               │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                 │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_HIDE_DATAFRAME_SHAPE_INFORMATION` is never used                                          │
│   --> crates/polars-core/src/config.rs:12:18                                                                          │
│    |                                                                                                                  │
│ 12 | pub(crate) const FMT_TABLE_HIDE_DATAFRAME_SHAPE_INFORMATION: &str =                                              │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                      │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_INLINE_COLUMN_DATA_TYPE` is never used                                                   │
│   --> crates/polars-core/src/config.rs:14:18                                                                          │
│    |                                                                                                                  │
│ 14 | pub(crate) const FMT_TABLE_INLINE_COLUMN_DATA_TYPE: &str =                                                       │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                               │
│                                                                                                                       │
│ warning: constant `FMT_TABLE_ROUNDED_CORNERS` is never used                                                           │
│   --> crates/polars-core/src/config.rs:16:18                                                                          │
│    |                                                                                                                  │
│ 16 | pub(crate) const FMT_TABLE_ROUNDED_CORNERS: &str = "POLARS_FMT_TABLE_ROUNDED_CORNERS";                           │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                       │
│                                                                                                                       │
│ warning: function `convert_time_units` is never used                                                                  │
│   --> crates/polars-core/src/datatypes/time_unit.rs:62:15                                                             │
│    |                                                                                                                  │
│ 62 | pub(crate) fn convert_time_units(v: i64, tu_l: TimeUnit, tu_r: TimeUnit) -> i64 {                                │
│    |               ^^^^^^^^^^^^^^^^^^                                                                                 │
│                                                                                                                       │
│ warning: function `env_is_true` is never used                                                                         │
│    --> crates/polars-core/src/fmt.rs:441:4                                                                            │
│     |                                                                                                                 │
│ 441 | fn env_is_true(varname: &str) -> bool {                                                                         │
│     |    ^^^^^^^^^^^                                                                                                  │
│                                                                                                                       │
│ warning: function `fmt_df_shape` is never used                                                                        │
│    --> crates/polars-core/src/fmt.rs:458:4                                                                            │
│     |                                                                                                                 │
│ 458 | fn fmt_df_shape((shape0, shape1): &(usize, usize)) -> String {                                                  │
│     |    ^^^^^^^^^^^^                                                                                                 │
│                                                                                                                       │
│ warning: constant `SIZES_NS` is never used                                                                            │
│    --> crates/polars-core/src/fmt.rs:780:7                                                                            │
│     |                                                                                                                 │
│ 780 | const SIZES_NS: [i64; 4] = [                                                                                    │
│     |       ^^^^^^^^                                                                                                  │
│                                                                                                                       │
│ warning: constant `NAMES` is never used                                                                               │
│    --> crates/polars-core/src/fmt.rs:786:7                                                                            │
│     |                                                                                                                 │
│ 786 | const NAMES: [&str; 4] = ["d", "h", "m", "s"];                                                                  │
│     |       ^^^^^                                                                                                     │
│                                                                                                                       │
│ warning: constant `SIZES_US` is never used                                                                            │
│    --> crates/polars-core/src/fmt.rs:787:7                                                                            │
│     |                                                                                                                 │
│ 787 | const SIZES_US: [i64; 4] = [86_400_000_000, 3_600_000_000, 60_000_000, 1_000_000];                              │
│     |       ^^^^^^^^                                                                                                  │
│                                                                                                                       │
│ warning: constant `SIZES_MS` is never used                                                                            │
│    --> crates/polars-core/src/fmt.rs:788:7                                                                            │
│     |                                                                                                                 │
│ 788 | const SIZES_MS: [i64; 4] = [86_400_000, 3_600_000, 60_000, 1_000];                                              │
│     |       ^^^^^^^^                                                                                                  │
│                                                                                                                       │
│ warning: function `fmt_duration_ns` is never used                                                                     │
│    --> crates/polars-core/src/fmt.rs:790:4                                                                            │
│     |                                                                                                                 │
│ 790 | fn fmt_duration_ns(f: &mut Formatter<'_>, v: i64) -> fmt::Result {                                              │
│     |    ^^^^^^^^^^^^^^^                                                                                              │
│                                                                                                                       │
│ warning: function `fmt_duration_us` is never used                                                                     │
│    --> crates/polars-core/src/fmt.rs:805:4                                                                            │
│     |                                                                                                                 │
│ 805 | fn fmt_duration_us(f: &mut Formatter<'_>, v: i64) -> fmt::Result {                                              │
│     |    ^^^^^^^^^^^^^^^                                                                                              │
│                                                                                                                       │
│ warning: function `fmt_duration_ms` is never used                                                                     │
│    --> crates/polars-core/src/fmt.rs:818:4                                                                            │
│     |                                                                                                                 │
│ 818 | fn fmt_duration_ms(f: &mut Formatter<'_>, v: i64) -> fmt::Result {                                              │
│     |    ^^^^^^^^^^^^^^^                                                                                              │
│                                                                                                                       │
│ warning: function `format_duration` is never used                                                                     │
│    --> crates/polars-core/src/fmt.rs:829:4                                                                            │
│     |                                                                                                                 │
│ 829 | fn format_duration(f: &mut Formatter, v: i64, sizes: &[i64], names: &[&str]) -> fmt::Result {                   │
│     |    ^^^^^^^^^^^^^^^                                                                                              │
│                                                                                                                       │
│ warning: `polars-core` (lib) generated 28 warnings (run `cargo fix --lib -p polars-core` to apply 5 suggestions)      │
│ warning: function `update_row_counts` is never used                                                                   │
│    --> crates/polars-io/src/utils.rs:116:15                                                                           │
│     |                                                                                                                 │
│ 116 | pub(crate) fn update_row_counts(dfs: &mut [(DataFrame, IdxSize)], offset: IdxSize) {                            │
│     |               ^^^^^^^^^^^^^^^^^                                                                                 │
│     |                                                                                                                 │
│     = note: `#[warn(dead_code)]` on by default                                                                        │
│                                                                                                                       │
│ warning: function `update_row_counts2` is never used                                                                  │
│    --> crates/polars-io/src/utils.rs:130:15                                                                           │
│     |                                                                                                                 │
│ 130 | pub(crate) fn update_row_counts2(dfs: &mut [DataFrame], offset: IdxSize) {                                      │
│     |               ^^^^^^^^^^^^^^^^^^                                                                                │
│                                                                                                                       │
│ warning: `polars-io` (lib) generated 2 warnings                                                                       │
│ warning: unused import: `wrap`                                                                                        │
│  --> crates/polars-plan/src/dsl/function_expr/boolean.rs:4:32                                                         │
│   |                                                                                                                   │
│ 4 | use crate::{map, map_as_slice, wrap};                                                                             │
│   |                                ^^^^                                                                               │
│   |                                                                                                                   │
│   = note: `#[warn(unused_imports)]` on by default                                                                     │
│                                                                                                                       │
│ warning: unused import: `polars_core::prelude::*`                                                                     │
│  --> crates/polars-plan/src/dsl/function_expr/coerce.rs:1:5                                                           │
│   |                                                                                                                   │
│ 1 | use polars_core::prelude::*;                                                                                      │
│   |     ^^^^^^^^^^^^^^^^^^^^^^^                                                                                       │
│                                                                                                                       │
│ warning: unused import: `polars_ops::prelude::*`                                                                      │
│  --> crates/polars-plan/src/dsl/list.rs:7:5                                                                           │
│   |                                                                                                                   │
│ 7 | use polars_ops::prelude::*;                                                                                       │
│   |     ^^^^^^^^^^^^^^^^^^^^^^                                                                                        │
│                                                                                                                       │
│ warning: unreachable pattern                                                                                          │
│    --> crates/polars-plan/src/logical_plan/optimizer/predicate_pushdown/mod.rs:281:21                                 │
│     |                                                                                                                 │
│ 281 |                     _ => true                                                                                   │
│     |                     ^                                                                                           │
│     |                                                                                                                 │
│     = note: `#[warn(unreachable_patterns)]` on by default                                                             │
│                                                                                                                       │
│ warning: irrefutable `if let` pattern                                                                                 │
│    --> crates/polars-plan/src/logical_plan/optimizer/projection_pushdown/mod.rs:388:20                                │
│     |                                                                                                                 │
│ 388 |                 if let FileScan::Anonymous { ref function, .. } = scan_type {                                   │
│     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                     │
│     |                                                                                                                 │
│     = note: this pattern will always match, so the `if let` is useless                                                │
│     = help: consider replacing the `if let` with a `let`                                                              │
│     = note: `#[warn(irrefutable_let_patterns)]` on by default                                                         │
│                                                                                                                       │
│ warning: unused variable: `schema`                                                                                    │
│    --> crates/polars-plan/src/logical_plan/projection.rs:178:5                                                        │
│     |                                                                                                                 │
│ 178 |     schema: &Schema,                                                                                            │
│     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema`                                │
│     |                                                                                                                 │
│     = note: `#[warn(unused_variables)]` on by default                                                                 │
│                                                                                                                       │
│ warning: associated function `new` is never used                                                                      │
│   --> crates/polars-plan/src/dsl/selector.rs:18:19                                                                    │
│    |                                                                                                                  │
│ 17 | impl Selector {                                                                                                  │
│    | ------------- associated function in this implementation                                                         │
│ 18 |     pub(crate) fn new(e: Expr) -> Self {                                                                         │
│    |                   ^^^                                                                                            │
│    |                                                                                                                  │
│    = note: `#[warn(dead_code)]` on by default                                                                         │
│                                                                                                                       │
│ warning: method `skip_rows` is never used                                                                             │
│   --> crates/polars-plan/src/logical_plan/file_scan.rs:63:19                                                          │
│    |                                                                                                                  │
│ 52 | impl FileScan {                                                                                                  │
│    | ------------- method in this implementation                                                                      │
│ ...                                                                                                                   │
│ 63 |     pub(crate) fn skip_rows(&self) -> usize {                                                                    │
│    |                   ^^^^^^^^^                                                                                      │
│                                                                                                                       │
│ warning: function `remove_exclude` is never used                                                                      │
│   --> crates/polars-plan/src/logical_plan/projection.rs:28:8                                                          │
│    |                                                                                                                  │
│ 28 | pub fn remove_exclude(mut expr: Expr) -> Expr {                                                                  │
│    |        ^^^^^^^^^^^^^^                                                                                            │
│                                                                                                                       │
│ warning: function `aexpr_is_simple_projection` is never used                                                          │
│   --> crates/polars-plan/src/utils.rs:91:15                                                                           │
│    |                                                                                                                  │
│ 91 | pub(crate) fn aexpr_is_simple_projection(current_node: Node, arena: &Arena<AExpr>) -> bool {                     │
│    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                         │
│                                                                                                                       │
│ warning: `polars-plan` (lib) generated 10 warnings (run `cargo fix --lib -p polars-plan` to apply 4 suggestions)      │
│ error[E0432]: unresolved import `polars_plan::dsl::all_horizontal`                                                    │
│   --> crates/polars-lazy/src/frame/mod.rs:28:5                                                                        │
│    |                                                                                                                  │
│ 28 | use polars_plan::dsl::all_horizontal;                                                                            │
│    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `all_horizontal` in `dsl`                                                │
│                                                                                                                       │
│ warning: unused import: `std::ops::Deref`                                                                             │
│   --> crates/polars-lazy/src/physical_plan/executors/scan/mod.rs:11:5                                                 │
│    |                                                                                                                  │
│ 11 | use std::ops::Deref;                                                                                             │
│    |     ^^^^^^^^^^^^^^^                                                                                              │
│    |                                                                                                                  │
│    = note: `#[warn(unused_imports)]` on by default                                                                    │
│                                                                                                                       │
│ warning: unused import: `polars_io::prelude::*`                                                                       │
│   --> crates/polars-lazy/src/physical_plan/executors/scan/mod.rs:21:5                                                 │
│    |                                                                                                                  │
│ 21 | use polars_io::prelude::*;                                                                                       │
│    |     ^^^^^^^^^^^^^^^^^^^^^                                                                                        │
│                                                                                                                       │
│ warning: unused import: `crate::physical_plan::expressions::phys_expr_to_io_expr`                                     │
│   --> crates/polars-lazy/src/physical_plan/executors/scan/mod.rs:27:5                                                 │
│    |                                                                                                                  │
│ 27 | use crate::physical_plan::expressions::phys_expr_to_io_expr;                                                     │
│    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                      │
│                                                                                                                       │
│ warning: unused import: `file_list_reader::*`                                                                         │
│   --> crates/polars-lazy/src/scan/mod.rs:12:5                                                                         │
│    |                                                                                                                  │
│ 12 | use file_list_reader::*;                                                                                         │
│    |     ^^^^^^^^^^^^^^^^^^^                                                                                          │
│                                                                                                                       │
│ For more information about this error, try `rustc --explain E0432`.                                                   │
│ warning: `polars-lazy` (lib) generated 4 warnings                                                                     │
│ error: could not compile `polars-lazy` (lib) due to previous error; 4 warnings emitted                                │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Check for toolchain '1.72.1-x86_64-unknown-linux-gnu' failed with:
┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Compiling autocfg v1.1.0                                                                                                                       │
│    Compiling version_check v0.9.4                                                                                                              │
│     Checking cfg-if v1.0.0                                                                                                                     │
│    Compiling proc-macro2 v1.0.69                                                                                                               │
│    Compiling unicode-ident v1.0.8                                                                                                              │
│    Compiling libc v0.2.149                                                                                                                     │
│    Compiling crossbeam-utils v0.8.15                                                                                                           │
│     Checking static_assertions v1.1.0                                                                                                          │
│     Checking scopeguard v1.1.0                                                                                                                 │
│    Compiling libm v0.2.6                                                                                                                       │
│    Compiling rayon-core v1.12.0                                                                                                                │
│    Compiling target-features v0.1.3                                                                                                            │
│    Compiling syn v1.0.109                                                                                                                      │
│     Checking once_cell v1.17.1                                                                                                                 │
│     Checking either v1.9.0                                                                                                                     │
│    Compiling thiserror v1.0.40                                                                                                                 │
│     Checking zerocopy v0.7.20                                                                                                                  │
│     Checking lexical-util v0.8.5                                                                                                               │
│     Checking allocator-api2 v0.2.16                                                                                                            │
│     Checking simdutf8 v0.1.4                                                                                                                   │
│     Checking ppv-lite86 v0.2.17                                                                                                                │
│     Checking equivalent v1.0.1                                                                                                                 │
│     Checking ethnum v1.3.2                                                                                                                     │
│     Checking memchr v2.6.4                                                                                                                     │
│     Checking dyn-clone v1.0.11                                                                                                                 │
│    Compiling ahash v0.8.6                                                                                                                      │
│    Compiling polars-utils v0.34.2 (/workspaces/polars/crates/polars-utils)                                                                     │
│     Checking streaming-iterator v0.1.9                                                                                                         │
│    Compiling memoffset v0.8.0                                                                                                                  │
│    Compiling crossbeam-epoch v0.9.14                                                                                                           │
│    Compiling num-traits v0.2.15                                                                                                                │
│    Compiling smartstring v1.0.1                                                                                                                │
│     Checking lexical-parse-integer v0.8.6                                                                                                      │
│     Checking lexical-write-integer v0.8.5                                                                                                      │
│     Checking foreign_vec v0.1.0                                                                                                                │
│     Checking strength_reduce v0.2.4                                                                                                            │
│    Compiling polars-core v0.34.2 (/workspaces/polars/crates/polars-core)                                                                       │
│     Checking regex-syntax v0.8.2                                                                                                               │
│     Checking bitflags v2.4.1                                                                                                                   │
│     Checking lexical-write-float v0.8.5                                                                                                        │
│     Checking lexical-parse-float v0.8.5                                                                                                        │
│     Checking xxhash-rust v0.8.6                                                                                                                │
│    Compiling rustversion v1.0.12                                                                                                               │
│     Checking aho-corasick v1.1.2                                                                                                               │
│    Compiling polars-ops v0.34.2 (/workspaces/polars/crates/polars-ops)                                                                         │
│    Compiling polars-plan v0.34.2 (/workspaces/polars/crates/polars-plan)                                                                       │
│    Compiling quote v1.0.33                                                                                                                     │
│     Checking crossbeam-deque v0.8.3                                                                                                            │
│     Checking home v0.5.5                                                                                                                       │
│     Checking bytes v1.4.0                                                                                                                      │
│     Checking percent-encoding v2.3.0                                                                                                           │
│    Compiling heck v0.4.1                                                                                                                       │
│    Compiling polars-lazy v0.34.2 (/workspaces/polars/crates/polars-lazy)                                                                       │
│     Checking glob v0.3.1                                                                                                                       │
│     Checking getrandom v0.2.9                                                                                                                  │
│     Checking memmap2 v0.7.1                                                                                                                    │
│    Compiling syn v2.0.38                                                                                                                       │
│     Checking rand_core v0.6.4                                                                                                                  │
│     Checking lexical-core v0.8.5                                                                                                               │
│     Checking rand_chacha v0.3.1                                                                                                                │
│     Checking rayon v1.8.0                                                                                                                      │
│     Checking rand v0.8.5                                                                                                                       │
│     Checking chrono v0.4.31                                                                                                                    │
│     Checking argminmax v0.6.1                                                                                                                  │
│     Checking rand_distr v0.4.3                                                                                                                 │
│     Checking regex-automata v0.4.3                                                                                                             │
│     Checking hashbrown v0.14.2                                                                                                                 │
│    Compiling thiserror-impl v1.0.40                                                                                                            │
│    Compiling bytemuck_derive v1.4.1                                                                                                            │
│    Compiling strum_macros v0.25.3                                                                                                              │
│     Checking indexmap v2.0.2                                                                                                                   │
│     Checking bytemuck v1.13.1                                                                                                                  │
│     Checking regex v1.10.2                                                                                                                     │
│     Checking polars-error v0.34.2 (/workspaces/polars/crates/polars-error)                                                                     │
│    Compiling multiversion-macros v0.7.1                                                                                                        │
│     Checking multiversion v0.7.1                                                                                                               │
│     Checking polars-arrow v0.34.2 (/workspaces/polars/crates/polars-arrow)                                                                     │
│     Checking polars-row v0.34.2 (/workspaces/polars/crates/polars-row)                                                                         │
│ warning: unused import: `crate::prelude::DataType::Datetime`                                                                                   │
│   --> crates/polars-core/src/chunked_array/cast.rs:10:5                                                                                        │
│    |                                                                                                                                           │
│ 10 | use crate::prelude::DataType::Datetime;                                                                                                   │
│    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                    │
│    |                                                                                                                                           │
│    = note: `#[warn(unused_imports)]` on by default                                                                                             │
│                                                                                                                                                │
│ warning: unused imports: `timestamp_ms_to_datetime`, `timestamp_ns_to_datetime`, `timestamp_us_to_datetime`                                    │
│  --> crates/polars-core/src/datatypes/any_value.rs:4:5                                                                                         │
│   |                                                                                                                                            │
│ 4 |     timestamp_ms_to_datetime, timestamp_ns_to_datetime, timestamp_us_to_datetime,                                                          │
│   |     ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^                                                           │
│                                                                                                                                                │
│ warning: unreachable pattern                                                                                                                   │
│    --> crates/polars-core/src/datatypes/any_value.rs:739:13                                                                                    │
│     |                                                                                                                                          │
│ 739 |             dt => polars_bail!(ComputeError: "cannot get static any-value from {}", dt),                                                 │
│     |             ^^                                                                                                                           │
│     |                                                                                                                                          │
│     = note: `#[warn(unreachable_patterns)]` on by default                                                                                      │
│                                                                                                                                                │
│ warning: unused variable: `timeunit`                                                                                                           │
│    --> crates/polars-core/src/series/mod.rs:719:39                                                                                             │
│     |                                                                                                                                          │
│ 719 |     pub(crate) fn into_datetime(self, timeunit: TimeUnit, tz: Option<TimeZone>) -> Series {                                              │
│     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeunit`                   │
│     |                                                                                                                                          │
│     = note: `#[warn(unused_variables)]` on by default                                                                                          │
│                                                                                                                                                │
│ warning: unused variable: `tz`                                                                                                                 │
│    --> crates/polars-core/src/series/mod.rs:719:59                                                                                             │
│     |                                                                                                                                          │
│ 719 |     pub(crate) fn into_datetime(self, timeunit: TimeUnit, tz: Option<TimeZone>) -> Series {                                              │
│     |                                                           ^^ help: if this is intentional, prefix it with an underscore: `_tz`           │
│                                                                                                                                                │
│ warning: unused variable: `timeunit`                                                                                                           │
│    --> crates/polars-core/src/series/mod.rs:744:39                                                                                             │
│     |                                                                                                                                          │
│ 744 |     pub(crate) fn into_duration(self, timeunit: TimeUnit) -> Series {                                                                    │
│     |                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeunit`                   │
│                                                                                                                                                │
│ warning: constant `FMT_MAX_COLS` is never used                                                                                                 │
│  --> crates/polars-core/src/config.rs:2:18                                                                                                     │
│   |                                                                                                                                            │
│ 2 | pub(crate) const FMT_MAX_COLS: &str = "POLARS_FMT_MAX_COLS";                                                                               │
│   |                  ^^^^^^^^^^^^                                                                                                              │
│   |                                                                                                                                            │
│   = note: `#[warn(dead_code)]` on by default                                                                                                   │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_CELL_ALIGNMENT` is never used                                                                                     │
│  --> crates/polars-core/src/config.rs:5:18                                                                                                     │
│   |                                                                                                                                            │
│ 5 | pub(crate) const FMT_TABLE_CELL_ALIGNMENT: &str = "POLARS_FMT_TABLE_CELL_ALIGNMENT";                                                       │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                  │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_CELL_NUMERIC_ALIGNMENT` is never used                                                                             │
│  --> crates/polars-core/src/config.rs:6:18                                                                                                     │
│   |                                                                                                                                            │
│ 6 | pub(crate) const FMT_TABLE_CELL_NUMERIC_ALIGNMENT: &str = "POLARS_FMT_TABLE_CELL_NUMERIC_ALIGNMENT";                                       │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                          │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_DATAFRAME_SHAPE_BELOW` is never used                                                                              │
│  --> crates/polars-core/src/config.rs:7:18                                                                                                     │
│   |                                                                                                                                            │
│ 7 | pub(crate) const FMT_TABLE_DATAFRAME_SHAPE_BELOW: &str = "POLARS_FMT_TABLE_DATAFRAME_SHAPE_BELOW";                                         │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                           │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_FORMATTING` is never used                                                                                         │
│  --> crates/polars-core/src/config.rs:8:18                                                                                                     │
│   |                                                                                                                                            │
│ 8 | pub(crate) const FMT_TABLE_FORMATTING: &str = "POLARS_FMT_TABLE_FORMATTING";                                                               │
│   |                  ^^^^^^^^^^^^^^^^^^^^                                                                                                      │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_HIDE_COLUMN_DATA_TYPES` is never used                                                                             │
│  --> crates/polars-core/src/config.rs:9:18                                                                                                     │
│   |                                                                                                                                            │
│ 9 | pub(crate) const FMT_TABLE_HIDE_COLUMN_DATA_TYPES: &str = "POLARS_FMT_TABLE_HIDE_COLUMN_DATA_TYPES";                                       │
│   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                          │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_HIDE_COLUMN_NAMES` is never used                                                                                  │
│   --> crates/polars-core/src/config.rs:10:18                                                                                                   │
│    |                                                                                                                                           │
│ 10 | pub(crate) const FMT_TABLE_HIDE_COLUMN_NAMES: &str = "POLARS_FMT_TABLE_HIDE_COLUMN_NAMES";                                                │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                              │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_HIDE_COLUMN_SEPARATOR` is never used                                                                              │
│   --> crates/polars-core/src/config.rs:11:18                                                                                                   │
│    |                                                                                                                                           │
│ 11 | pub(crate) const FMT_TABLE_HIDE_COLUMN_SEPARATOR: &str = "POLARS_FMT_TABLE_HIDE_COLUMN_SEPARATOR";                                        │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                          │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_HIDE_DATAFRAME_SHAPE_INFORMATION` is never used                                                                   │
│   --> crates/polars-core/src/config.rs:12:18                                                                                                   │
│    |                                                                                                                                           │
│ 12 | pub(crate) const FMT_TABLE_HIDE_DATAFRAME_SHAPE_INFORMATION: &str =                                                                       │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                               │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_INLINE_COLUMN_DATA_TYPE` is never used                                                                            │
│   --> crates/polars-core/src/config.rs:14:18                                                                                                   │
│    |                                                                                                                                           │
│ 14 | pub(crate) const FMT_TABLE_INLINE_COLUMN_DATA_TYPE: &str =                                                                                │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                        │
│                                                                                                                                                │
│ warning: constant `FMT_TABLE_ROUNDED_CORNERS` is never used                                                                                    │
│   --> crates/polars-core/src/config.rs:16:18                                                                                                   │
│    |                                                                                                                                           │
│ 16 | pub(crate) const FMT_TABLE_ROUNDED_CORNERS: &str = "POLARS_FMT_TABLE_ROUNDED_CORNERS";                                                    │
│    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                │
│                                                                                                                                                │
│ warning: function `convert_time_units` is never used                                                                                           │
│   --> crates/polars-core/src/datatypes/time_unit.rs:62:15                                                                                      │
│    |                                                                                                                                           │
│ 62 | pub(crate) fn convert_time_units(v: i64, tu_l: TimeUnit, tu_r: TimeUnit) -> i64 {                                                         │
│    |               ^^^^^^^^^^^^^^^^^^                                                                                                          │
│                                                                                                                                                │
│ warning: function `env_is_true` is never used                                                                                                  │
│    --> crates/polars-core/src/fmt.rs:441:4                                                                                                     │
│     |                                                                                                                                          │
│ 441 | fn env_is_true(varname: &str) -> bool {                                                                                                  │
│     |    ^^^^^^^^^^^                                                                                                                           │
│                                                                                                                                                │
│ warning: function `fmt_df_shape` is never used                                                                                                 │
│    --> crates/polars-core/src/fmt.rs:458:4                                                                                                     │
│     |                                                                                                                                          │
│ 458 | fn fmt_df_shape((shape0, shape1): &(usize, usize)) -> String {                                                                           │
│     |    ^^^^^^^^^^^^                                                                                                                          │
│                                                                                                                                                │
│ warning: constant `SIZES_NS` is never used                                                                                                     │
│    --> crates/polars-core/src/fmt.rs:780:7                                                                                                     │
│     |                                                                                                                                          │
│ 780 | const SIZES_NS: [i64; 4] = [                                                                                                             │
│     |       ^^^^^^^^                                                                                                                           │
│                                                                                                                                                │
│ warning: constant `NAMES` is never used                                                                                                        │
│    --> crates/polars-core/src/fmt.rs:786:7                                                                                                     │
│     |                                                                                                                                          │
│ 786 | const NAMES: [&str; 4] = ["d", "h", "m", "s"];                                                                                           │
│     |       ^^^^^                                                                                                                              │
│                                                                                                                                                │
│ warning: constant `SIZES_US` is never used                                                                                                     │
│    --> crates/polars-core/src/fmt.rs:787:7                                                                                                     │
│     |                                                                                                                                          │
│ 787 | const SIZES_US: [i64; 4] = [86_400_000_000, 3_600_000_000, 60_000_000, 1_000_000];                                                       │
│     |       ^^^^^^^^                                                                                                                           │
│                                                                                                                                                │
│ warning: constant `SIZES_MS` is never used                                                                                                     │
│    --> crates/polars-core/src/fmt.rs:788:7                                                                                                     │
│     |                                                                                                                                          │
│ 788 | const SIZES_MS: [i64; 4] = [86_400_000, 3_600_000, 60_000, 1_000];                                                                       │
│     |       ^^^^^^^^                                                                                                                           │
│                                                                                                                                                │
│ warning: function `fmt_duration_ns` is never used                                                                                              │
│    --> crates/polars-core/src/fmt.rs:790:4                                                                                                     │
│     |                                                                                                                                          │
│ 790 | fn fmt_duration_ns(f: &mut Formatter<'_>, v: i64) -> fmt::Result {                                                                       │
│     |    ^^^^^^^^^^^^^^^                                                                                                                       │
│                                                                                                                                                │
│ warning: function `fmt_duration_us` is never used                                                                                              │
│    --> crates/polars-core/src/fmt.rs:805:4                                                                                                     │
│     |                                                                                                                                          │
│ 805 | fn fmt_duration_us(f: &mut Formatter<'_>, v: i64) -> fmt::Result {                                                                       │
│     |    ^^^^^^^^^^^^^^^                                                                                                                       │
│                                                                                                                                                │
│ warning: function `fmt_duration_ms` is never used                                                                                              │
│    --> crates/polars-core/src/fmt.rs:818:4                                                                                                     │
│     |                                                                                                                                          │
│ 818 | fn fmt_duration_ms(f: &mut Formatter<'_>, v: i64) -> fmt::Result {                                                                       │
│     |    ^^^^^^^^^^^^^^^                                                                                                                       │
│                                                                                                                                                │
│ warning: function `format_duration` is never used                                                                                              │
│    --> crates/polars-core/src/fmt.rs:829:4                                                                                                     │
│     |                                                                                                                                          │
│ 829 | fn format_duration(f: &mut Formatter, v: i64, sizes: &[i64], names: &[&str]) -> fmt::Result {                                            │
│     |    ^^^^^^^^^^^^^^^                                                                                                                       │
│                                                                                                                                                │
│ warning: `polars-core` (lib) generated 28 warnings (run `cargo fix --lib -p polars-core` to apply 5 suggestions)                               │
│     Checking polars-io v0.34.2 (/workspaces/polars/crates/polars-io)                                                                           │
│ warning: function `update_row_counts` is never used                                                                                            │
│    --> crates/polars-io/src/utils.rs:116:15                                                                                                    │
│     |                                                                                                                                          │
│ 116 | pub(crate) fn update_row_counts(dfs: &mut [(DataFrame, IdxSize)], offset: IdxSize) {                                                     │
│     |               ^^^^^^^^^^^^^^^^^                                                                                                          │
│     |                                                                                                                                          │
│     = note: `#[warn(dead_code)]` on by default                                                                                                 │
│                                                                                                                                                │
│ warning: function `update_row_counts2` is never used                                                                                           │
│    --> crates/polars-io/src/utils.rs:130:15                                                                                                    │
│     |                                                                                                                                          │
│ 130 | pub(crate) fn update_row_counts2(dfs: &mut [DataFrame], offset: IdxSize) {                                                               │
│     |               ^^^^^^^^^^^^^^^^^^                                                                                                         │
│                                                                                                                                                │
│ warning: `polars-io` (lib) generated 2 warnings                                                                                                │
│ warning: unused import: `wrap`                                                                                                                 │
│  --> crates/polars-plan/src/dsl/function_expr/boolean.rs:4:32                                                                                  │
│   |                                                                                                                                            │
│ 4 | use crate::{map, map_as_slice, wrap};                                                                                                      │
│   |                                ^^^^                                                                                                        │
│   |                                                                                                                                            │
│   = note: `#[warn(unused_imports)]` on by default                                                                                              │
│                                                                                                                                                │
│ warning: unused import: `polars_core::prelude::*`                                                                                              │
│  --> crates/polars-plan/src/dsl/function_expr/coerce.rs:1:5                                                                                    │
│   |                                                                                                                                            │
│ 1 | use polars_core::prelude::*;                                                                                                               │
│   |     ^^^^^^^^^^^^^^^^^^^^^^^                                                                                                                │
│                                                                                                                                                │
│ warning: unused import: `polars_ops::prelude::*`                                                                                               │
│  --> crates/polars-plan/src/dsl/list.rs:7:5                                                                                                    │
│   |                                                                                                                                            │
│ 7 | use polars_ops::prelude::*;                                                                                                                │
│   |     ^^^^^^^^^^^^^^^^^^^^^^                                                                                                                 │
│                                                                                                                                                │
│ warning: unreachable pattern                                                                                                                   │
│    --> crates/polars-plan/src/logical_plan/optimizer/predicate_pushdown/mod.rs:281:21                                                          │
│     |                                                                                                                                          │
│ 281 |                     _ => true                                                                                                            │
│     |                     ^                                                                                                                    │
│     |                                                                                                                                          │
│     = note: `#[warn(unreachable_patterns)]` on by default                                                                                      │
│                                                                                                                                                │
│ warning: irrefutable `if let` pattern                                                                                                          │
│    --> crates/polars-plan/src/logical_plan/optimizer/projection_pushdown/mod.rs:388:20                                                         │
│     |                                                                                                                                          │
│ 388 |                 if let FileScan::Anonymous { ref function, .. } = scan_type {                                                            │
│     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                              │
│     |                                                                                                                                          │
│     = note: this pattern will always match, so the `if let` is useless                                                                         │
│     = help: consider replacing the `if let` with a `let`                                                                                       │
│     = note: `#[warn(irrefutable_let_patterns)]` on by default                                                                                  │
│                                                                                                                                                │
│ warning: unused variable: `schema`                                                                                                             │
│    --> crates/polars-plan/src/logical_plan/projection.rs:178:5                                                                                 │
│     |                                                                                                                                          │
│ 178 |     schema: &Schema,                                                                                                                     │
│     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema`                                                         │
│     |                                                                                                                                          │
│     = note: `#[warn(unused_variables)]` on by default                                                                                          │
│                                                                                                                                                │
│ warning: associated function `new` is never used                                                                                               │
│   --> crates/polars-plan/src/dsl/selector.rs:18:19                                                                                             │
│    |                                                                                                                                           │
│ 17 | impl Selector {                                                                                                                           │
│    | ------------- associated function in this implementation                                                                                  │
│ 18 |     pub(crate) fn new(e: Expr) -> Self {                                                                                                  │
│    |                   ^^^                                                                                                                     │
│    |                                                                                                                                           │
│    = note: `#[warn(dead_code)]` on by default                                                                                                  │
│                                                                                                                                                │
│ warning: method `skip_rows` is never used                                                                                                      │
│   --> crates/polars-plan/src/logical_plan/file_scan.rs:63:19                                                                                   │
│    |                                                                                                                                           │
│ 52 | impl FileScan {                                                                                                                           │
│    | ------------- method in this implementation                                                                                               │
│ ...                                                                                                                                            │
│ 63 |     pub(crate) fn skip_rows(&self) -> usize {                                                                                             │
│    |                   ^^^^^^^^^                                                                                                               │
│                                                                                                                                                │
│ warning: function `remove_exclude` is never used                                                                                               │
│   --> crates/polars-plan/src/logical_plan/projection.rs:28:8                                                                                   │
│    |                                                                                                                                           │
│ 28 | pub fn remove_exclude(mut expr: Expr) -> Expr {                                                                                           │
│    |        ^^^^^^^^^^^^^^                                                                                                                     │
│                                                                                                                                                │
│ warning: function `aexpr_is_simple_projection` is never used                                                                                   │
│   --> crates/polars-plan/src/utils.rs:91:15                                                                                                    │
│    |                                                                                                                                           │
│ 91 | pub(crate) fn aexpr_is_simple_projection(current_node: Node, arena: &Arena<AExpr>) -> bool {                                              │
│    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                  │
│                                                                                                                                                │
│ warning: `polars-plan` (lib) generated 10 warnings (run `cargo fix --lib -p polars-plan` to apply 4 suggestions)                               │
│ error[E0432]: unresolved import `polars_plan::dsl::all_horizontal`                                                                             │
│   --> crates/polars-lazy/src/frame/mod.rs:28:5                                                                                                 │
│    |                                                                                                                                           │
│ 28 | use polars_plan::dsl::all_horizontal;                                                                                                     │
│    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `all_horizontal` in `dsl`                                                                         │
│                                                                                                                                                │
│ warning: unused import: `std::ops::Deref`                                                                                                      │
│   --> crates/polars-lazy/src/physical_plan/executors/scan/mod.rs:11:5                                                                          │
│    |                                                                                                                                           │
│ 11 | use std::ops::Deref;                                                                                                                      │
│    |     ^^^^^^^^^^^^^^^                                                                                                                       │
│    |                                                                                                                                           │
│    = note: `#[warn(unused_imports)]` on by default                                                                                             │
│                                                                                                                                                │
│ warning: unused import: `polars_io::prelude::*`                                                                                                │
│   --> crates/polars-lazy/src/physical_plan/executors/scan/mod.rs:21:5                                                                          │
│    |                                                                                                                                           │
│ 21 | use polars_io::prelude::*;                                                                                                                │
│    |     ^^^^^^^^^^^^^^^^^^^^^                                                                                                                 │
│                                                                                                                                                │
│ warning: unused import: `crate::physical_plan::expressions::phys_expr_to_io_expr`                                                              │
│   --> crates/polars-lazy/src/physical_plan/executors/scan/mod.rs:27:5                                                                          │
│    |                                                                                                                                           │
│ 27 | use crate::physical_plan::expressions::phys_expr_to_io_expr;                                                                              │
│    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                               │
│                                                                                                                                                │
│ warning: unused import: `file_list_reader::*`                                                                                                  │
│   --> crates/polars-lazy/src/scan/mod.rs:12:5                                                                                                  │
│    |                                                                                                                                           │
│ 12 | use file_list_reader::*;                                                                                                                  │
│    |     ^^^^^^^^^^^^^^^^^^^                                                                                                                   │
│                                                                                                                                                │
│ For more information about this error, try `rustc --explain E0432`.                                                                            │
│ warning: `polars-lazy` (lib) generated 4 warnings                                                                                              │
│ error: could not compile `polars-lazy` (lib) due to previous error; 4 warnings emitted                                                         │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
Check for toolchain '1.73.0-x86_64-unknown-linux-gnu' succeeded
   Finished The MSRV is: 1.73.0   ███████████████████████████████████████████████████████████████████████████████████████████████████████ 00:01:34

@eitsupi eitsupi changed the title [Rust] Current MSRV is 1.73 [Rust] Current MSRV is 1.73 (polars-lazy) Oct 30, 2023
@stinodego
Copy link
Member

stinodego commented Oct 31, 2023

Running on all crates seems a bit cumbersome.

We can do cargo msrv verify -- cargo check --features lazy, this will indicate a MSRV of 1.73.
Passing --all-features fails, I guess due to the "nightly" feature.

But that begs the question - if polars compiles fine on 1.71 with default features, but requires 1.73 for the "lazy" feature, what is really the MSRV?

@orlp
Copy link
Collaborator

orlp commented Oct 31, 2023

At this point I wonder if it's useful to document Polars' MSRV anyway, since we'll happily adopt any features available in the stable compiler and no longer make any attempts at staying at a lower stable version.

@stinodego stinodego added build Changes that affect the build system or external dependencies P-low Priority: low documentation Improvements or additions to documentation accepted Ready for implementation and removed accepted Ready for implementation bug Something isn't working P-low Priority: low labels Jan 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted Ready for implementation build Changes that affect the build system or external dependencies documentation Improvements or additions to documentation rust Related to Rust Polars
Projects
Status: Ready
Development

No branches or pull requests

3 participants