Thanks to visit codestin.com
Credit goes to github.com

Skip to content

parquet: No method named to_ne_bytes found for struct bloom_filter::Block for target s390x-unknown-linux-gnu #8207

@kylebarron

Description

@kylebarron

Describe the bug

When publishing Python wheels on CI for the latest version of arro3-io, which uses the parquet crate, it no longer builds for parquet v56 on the s390x-unknown-linux-gnu target. (It built fine for parquet v55).

error[E0599]: no method named `to_ne_bytes` found for struct `bloom_filter::Block` in the current scope
   --> /root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parquet-56.0.0/src/bloom_filter/mod.rs:125:27
    |
105 | struct Block([u32; 8]);
    | ------------ method `to_ne_bytes` not found for this struct
...
125 |         self.swap_bytes().to_ne_bytes()
    |                           ^^^^^^^^^^^
    |
    = help: items from traits can only be used if the trait is implemented and in scope
    = note: the following trait defines an item `to_ne_bytes`, perhaps you need to implement it:
            candidate #1: `num::traits::ToBytes`
help: there is a method `to_le_bytes` with a similar name
    |
125 -         self.swap_bytes().to_ne_bytes()
125 +         self.swap_bytes().to_le_bytes()
    |

To Reproduce

I'm not exactly sure how to reproduce this outside of CI. On my mac, I can't reproduce for that target; it succeeds for cargo build -p parquet --target s390x-unknown-linux-gnu and fails for a different reason (with ring) when --all-features is passed.

Expected behavior

Should compile.

Additional context

I'm not sure if there are specific targets that are supported/unsupported? If s390x-unknown-linux-gnu is not supported, I can close this issue and just not build Python wheels for that target.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions