Skip to content

feat: Re-spill sort stream if unable to reserve for 2 streams#22945

Open
EmilyMatt wants to merge 2 commits into
apache:mainfrom
EmilyMatt:sort-skew-resilience
Open

feat: Re-spill sort stream if unable to reserve for 2 streams#22945
EmilyMatt wants to merge 2 commits into
apache:mainfrom
EmilyMatt:sort-skew-resilience

Conversation

@EmilyMatt

Copy link
Copy Markdown
Contributor

Rationale for this change

I've encountered several cases where the merge reservation cannot acquire the minimum reservation needed(2 streams, with a buffer size of 1), we currently error in these cases but that's not a necessity.
I've implemented a simple re-spill mechanism for when the first 2 streams cannot be reserved: we take the larger of those streams, and we re-spill it with all its batches split in half(done using slice() so no copying happens at that stage and we'll have a smaller memory peak)
This converges until we have enough memory to perform the merge(because max_record_batch_size is halved, ideally)
I've encountered this in situations where there is heavy skew, so maybe in the future might be worth it running this in general whenever one stream has a max_record_batch_size that is far above the other streams, could greatly improve performance of the entire merge stream at the cost of re-spilling once.

What changes are included in this PR?

Aforementioned implementation

Are these changes tested?

Yes

Are there any user-facing changes?

No

@github-actions github-actions Bot added the physical-plan Changes to the physical-plan crate label Jun 14, 2026
@rluvaton

Copy link
Copy Markdown
Member

Could you please add a test in memory constraint env fuzz testing we have?

@github-actions github-actions Bot added the core Core DataFusion crate label Jun 14, 2026
@github-actions

Copy link
Copy Markdown

Thank you for opening this pull request!

Reviewer note: cargo-semver-checks reported the current version number is not SemVer-compatible with the changes in this pull request (compared against the base branch).

Details
     Cloning apache/main
    Building datafusion v54.0.0 (current)
error: running cargo-doc on crate 'datafusion' failed with output:
-----
   Compiling proc-macro2 v1.0.106
   Compiling unicode-ident v1.0.24
   Compiling quote v1.0.45
   Compiling libc v0.2.186
    Checking cfg-if v1.0.4
   Compiling find-msvc-tools v0.1.9
   Compiling shlex v2.0.1
   Compiling autocfg v1.5.1
    Checking memchr v2.8.2
   Compiling libm v0.2.16
   Compiling syn v2.0.117
   Compiling num-traits v0.2.19
   Compiling jobserver v0.1.34
   Compiling version_check v0.9.5
   Compiling cc v1.2.64
   Compiling zerocopy v0.8.52
    Checking bytes v1.11.1
   Compiling serde_core v1.0.228
    Checking allocator-api2 v0.2.21
    Checking itoa v1.0.18
    Checking once_cell v1.21.4
    Checking foldhash v0.2.0
    Checking equivalent v1.0.2
   Compiling getrandom v0.3.4
    Checking hashbrown v0.17.1
   Compiling zmij v1.0.21
    Checking num-integer v0.1.46
    Checking indexmap v2.14.0
   Compiling serde_json v1.0.150
   Compiling serde v1.0.228
    Checking num-bigint v0.4.6
    Checking siphasher v1.0.3
   Compiling pkg-config v0.3.33
    Checking iana-time-zone v0.1.65
    Checking phf_shared v0.12.1
    Checking chrono v0.4.45
   Compiling synstructure v0.13.2
   Compiling ahash v0.8.12
   Compiling chrono-tz v0.10.4
    Checking stable_deref_trait v1.2.1
    Checking phf v0.12.1
    Checking num-complex v0.4.6
   Compiling zstd-sys v2.0.16+zstd.1.5.7
    Checking pin-project-lite v0.2.17
    Checking futures-core v0.3.32
   Compiling object v0.37.3
    Checking lexical-util v1.0.7
    Checking litemap v0.8.2
    Checking futures-sink v0.3.32
   Compiling zerocopy-derive v0.8.52
   Compiling zerofrom-derive v0.1.7
   Compiling serde_derive v1.0.228
    Checking zerofrom v0.1.8
   Compiling yoke-derive v0.8.2
    Checking arrow-schema v59.0.0
    Checking yoke v0.8.3
   Compiling zerovec-derive v0.11.3
    Checking half v2.7.1
   Compiling displaydoc v0.2.6
    Checking arrow-buffer v59.0.0
    Checking zerovec v0.11.6
    Checking smallvec v1.15.2
    Checking arrow-data v59.0.0
   Compiling zstd-safe v7.2.4
    Checking writeable v0.6.3
    Checking zerotrie v0.2.4
    Checking tinystr v0.8.3
    Checking icu_locale_core v2.2.0
    Checking potential_utf v0.1.5
    Checking arrow-array v59.0.0
   Compiling icu_properties_data v2.2.0
    Checking utf8_iter v1.0.4
   Compiling icu_normalizer_data v2.2.0
    Checking icu_collections v2.2.0
    Checking icu_provider v2.2.0
   Compiling tokio-macros v2.7.0
   Compiling crc32fast v1.5.0
   Compiling semver v1.0.28
    Checking arrow-select v59.0.0
   Compiling rustc_version v0.4.1
    Checking tokio v1.52.3
    Checking futures-channel v0.3.32
   Compiling futures-macro v0.3.32
    Checking lexical-write-integer v1.0.6
    Checking lexical-parse-integer v1.0.6
    Checking simd-adler32 v0.3.9
    Checking futures-task v0.3.32
   Compiling parking_lot_core v0.9.12
   Compiling ar_archive_writer v0.5.2
    Checking bitflags v2.13.0
    Checking adler2 v2.0.1
    Checking slab v0.4.12
    Checking futures-io v0.3.32
    Checking miniz_oxide v0.8.9
    Checking futures-util v0.3.32
    Checking lexical-parse-float v1.0.6
   Compiling psm v0.1.31
    Checking lexical-write-float v1.0.6
    Checking icu_normalizer v2.2.0
    Checking icu_properties v2.2.0
   Compiling flatbuffers v25.12.19
    Checking aho-corasick v1.1.4
    Checking scopeguard v1.2.0
    Checking regex-syntax v0.8.11
    Checking unicode-width v0.2.2
    Checking unicode-segmentation v1.13.3
    Checking base64 v0.22.1
    Checking zlib-rs v0.6.3
   Compiling getrandom v0.4.2
    Checking ryu v1.0.23
    Checking comfy-table v7.2.2
    Checking lock_api v0.4.14
    Checking regex-automata v0.4.14
    Checking idna_adapter v1.2.2
    Checking lexical-core v1.0.6
    Checking flate2 v1.1.9
    Checking arrow-ord v59.0.0
   Compiling stacker v0.1.24
    Checking atoi v2.0.0
    Checking twox-hash v2.1.2
   Compiling snap v1.1.1
    Checking percent-encoding v2.3.2
    Checking alloc-no-stdlib v3.0.0
   Compiling thiserror v2.0.18
    Checking alloc-stdlib v0.2.3
    Checking form_urlencoded v1.2.2
    Checking regex v1.12.4
    Checking lz4_flex v0.13.1
    Checking arrow-cast v59.0.0
    Checking idna v1.1.0
    Checking futures-executor v0.3.32
   Compiling thiserror-impl v2.0.18
   Compiling tracing-attributes v0.1.31
   Compiling ring v0.17.14
    Checking tracing-core v0.1.36
    Checking csv-core v0.1.13
    Checking simdutf8 v0.1.5
    Checking either v1.16.0
   Compiling paste v1.0.15
    Checking same-file v1.0.6
    Checking itertools v0.14.0
    Checking walkdir v2.5.0
    Checking tracing v0.1.44
    Checking csv v1.4.0
    Checking futures v0.3.32
    Checking url v2.5.8
    Checking brotli-decompressor v5.0.2
    Checking parking_lot v0.12.5
   Compiling async-trait v0.1.89
   Compiling recursive-proc-macro-impl v0.1.1
    Checking http v1.4.2
    Checking getrandom v0.2.17
    Checking humantime v2.3.0
    Checking log v0.4.32
    Checking alloc-no-stdlib v2.0.4
    Checking untrusted v0.9.0
    Checking brotli v8.0.3
error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<ZopfliNode>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<ZopfliNode>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<ZopfliNode>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
516 | / implement_allocator!(
517 | |     AllocZopfliNode,
518 | |     ZopfliNode,
519 | |     AllocZopfliNode::AllocatedMemory,
520 | |     alloc_zn
521 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:51:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 51 |     + Allocator<ZopfliNode>
    |       ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<HuffmanTree>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<HuffmanTree>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<HuffmanTree>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
510 | / implement_allocator!(
511 | |     AllocHuffmanTree,
512 | |     HuffmanTree,
513 | |     AllocHuffmanTree::AllocatedMemory,
514 | |     alloc_ht
515 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:50:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 50 |     + Allocator<HuffmanTree>
    |       ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<ContextType>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<ContextType>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<ContextType>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
504 | / implement_allocator!(
505 | |     AllocContextType,
506 | |     ContextType,
507 | |     AllocContextType::AllocatedMemory,
508 | |     alloc_ct
509 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:49:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 49 |     + Allocator<ContextType>
    |       ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<HistogramPair>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<HistogramPair>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<HistogramPair>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
498 | / implement_allocator!(
499 | |     AllocHistogramPair,
500 | |     HistogramPair,
501 | |     AllocHistogramPair::AllocatedMemory,
502 | |     alloc_hp
503 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:48:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 48 |     + Allocator<HistogramPair>
    |       ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<HistogramDistance>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<HistogramDistance>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<HistogramDistance>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
492 | / implement_allocator!(
493 | |     AllocHistogramDistance,
494 | |     HistogramDistance,
495 | |     AllocHistogramDistance::AllocatedMemory,
496 | |     alloc_hd
497 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:47:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 47 |     + Allocator<HistogramDistance>
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<HistogramCommand>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<HistogramCommand>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<HistogramCommand>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
486 | / implement_allocator!(
487 | |     AllocHistogramCommand,
488 | |     HistogramCommand,
489 | |     AllocHistogramCommand::AllocatedMemory,
490 | |     alloc_hc
491 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:46:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 46 |     + Allocator<HistogramCommand>
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<HistogramLiteral>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<HistogramLiteral>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<HistogramLiteral>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
480 | / implement_allocator!(
481 | |     AllocHistogramLiteral,
482 | |     HistogramLiteral,
483 | |     AllocHistogramLiteral::AllocatedMemory,
484 | |     alloc_hl
485 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:45:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 45 |     + Allocator<HistogramLiteral>
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<interface::Command<SliceOffset>>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<interface::Command<SliceOffset>>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<interface::Command<SliceOffset>>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
474 | / implement_allocator!(
475 | |     AllocStaticCommand,
476 | |     StaticCommand,
477 | |     AllocStaticCommand::AllocatedMemory,
478 | |     alloc_sc
479 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:44:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 44 |     + Allocator<StaticCommand>
    |       ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<PDF>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<PDF>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<PDF>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
473 |   implement_allocator!(AllocPDF, PDF, AllocPDF::AllocatedMemory, alloc_pdf);
    |   ------------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:43:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 43 |     + Allocator<PDF>
    |       ^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<Compat16x16>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<Compat16x16>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<Compat16x16>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
472 |   implement_allocator!(AllocS16, s16, AllocS16::AllocatedMemory, alloc_i16x16);
    |   ---------------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:42:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 42 |     + Allocator<s16>
    |       ^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<CompatF8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<CompatF8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<CompatF8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
471 |   implement_allocator!(AllocV8, v8, AllocV8::AllocatedMemory, alloc_f32x8);
    |   ------------------------------------------------------------------------ in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:41:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 41 |     + Allocator<v8>
    |       ^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<f32>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<f32>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<f32>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
470 |   implement_allocator!(AllocFloatX, floatX, AllocFloatX::AllocatedMemory, alloc_f);
    |   -------------------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:40:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 40 |     + Allocator<super::util::floatX>
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<command::Command>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<command::Command>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<command::Command>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
464 | / implement_allocator!(
465 | |     AllocCommand,
466 | |     Command,
467 | |     AllocCommand::AllocatedMemory,
468 | |     alloc_c
469 | | );
    | |_- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:39:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 39 |     + Allocator<Command>
    |       ^^^^^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u64>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<u64>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u64>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
463 |   implement_allocator!(AllocU64, u64, AllocU64::AllocatedMemory, alloc_u64);
    |   ------------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:38:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 38 |     + Allocator<u64>
    |       ^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u32>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<u32>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u32>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
462 |   implement_allocator!(AllocU32, u32, AllocU32::AllocatedMemory, alloc_u32);
    |   ------------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:37:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 37 |     + Allocator<u32>
    |       ^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<i32>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<i32>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<i32>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
461 |   implement_allocator!(AllocI32, i32, AllocI32::AllocatedMemory, alloc_i32);
    |   ------------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:36:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
...
 36 |     + Allocator<i32>
    |       ^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u16>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<u16>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u16>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
459 |   implement_allocator!(AllocU16, u16, AllocU16::AllocatedMemory, alloc_u16);
    |   ------------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:35:7
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
 34 |     Allocator<u8>
 35 |     + Allocator<u16>
    |       ^^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:56:22
    |
 56 | impl BrotliAlloc for StandardAlloc {}
    |                      ^^^^^^^^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
note: required by a bound in `BrotliAlloc`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:34:5
    |
 33 | pub trait BrotliAlloc:
    |           ----------- required by a bound in this trait
 34 |     Allocator<u8>
    |     ^^^^^^^^^^^^^ required by this bound in `BrotliAlloc`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:66:5
    |
 66 | /     CompressorReaderCustomAlloc<
 67 | |         R,
 68 | |         <StandardAlloc as Allocator<u8>>::AllocatedMemory,
 69 | |         StandardAlloc,
 70 | |     >,
    | |_____^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:75:5
    |
 75 | /     CompressorWriterCustomAlloc<
 76 | |         W,
 77 | |         <StandardAlloc as Allocator<u8>>::AllocatedMemory,
 78 | |         StandardAlloc,
 79 | |     >,
    | |_____^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:77:37
    |
 77 |         let buffer = allocate::<u8, _>(
    |                                     ^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
note: required by a bound in `combined_alloc::allocate`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:524:30
    |
524 | pub(crate) fn allocate<T, A: Allocator<T>>(alloc: &mut A, len: usize) -> A::AllocatedMemory {
    |                              ^^^^^^^^^^^^ required by this bound in `allocate`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:81:9
    |
 81 |         CompressorReader::<R>(CompressorReaderCustomAlloc::new(r, buffer, alloc, q, lgwin))
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:77:22
    |
 77 |           let buffer = allocate::<u8, _>(
    |  ______________________^
 78 | |             &mut alloc,
 79 | |             if buffer_size == 0 { 4096 } else { buffer_size },
 80 | |         );
    | |_________^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:86:9
    |
 86 |         (reader.0).0.state.0.params = params.clone();
    |         ^^^^^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:91:9
    |
 91 |         self.0.get_ref()
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:94:9
    |
 94 |         self.0.into_inner()
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/reader.rs:101:9
    |
101 |         self.0.read(buf)
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:86:37
    |
 86 |         let buffer = allocate::<u8, _>(
    |                                     ^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
note: required by a bound in `combined_alloc::allocate`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:524:30
    |
524 | pub(crate) fn allocate<T, A: Allocator<T>>(alloc: &mut A, len: usize) -> A::AllocatedMemory {
    |                              ^^^^^^^^^^^^ required by this bound in `allocate`
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:90:9
    |
 90 |         CompressorWriter::<W>(CompressorWriterCustomAlloc::new(w, buffer, alloc, q, lgwin))
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:86:22
    |
 86 |           let buffer = allocate::<u8, _>(
    |  ______________________^
 87 | |             &mut alloc,
 88 | |             if buffer_size == 0 { 4096 } else { buffer_size },
 89 | |         );
    | |_________^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:95:9
    |
 95 |         (writer.0).0.state.params = params.clone();
    |         ^^^^^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:100:9
    |
100 |         self.0.get_ref()
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:103:9
    |
103 |         self.0.get_mut()
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:106:9
    |
106 |         self.0.into_inner()
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:113:9
    |
113 |         self.0.write(buf)
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `StandardAlloc: alloc::Allocator<u8>` is not satisfied
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/writer.rs:116:9
    |
116 |         self.0.flush()
    |         ^^^^^^ the trait `alloc::Allocator<u8>` is not implemented for `StandardAlloc`
    |
note: there are multiple different versions of crate `alloc_no_stdlib` in the dependency graph
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-2.0.4/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ^^^^^^^^^^^^^^^^^^^^^^ this is the expected trait
    |
   ::: /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/alloc-no-stdlib-3.0.0/src/stack_allocator.rs:6:1
    |
  6 | pub trait Allocator<T> {
    | ---------------------- this is the found trait
    = help: you can use `cargo tree` to explore your dependency tree
help: the trait `alloc::Allocator<u8>` is implemented for `CombiningAllocator<..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...>`
   --> /home/runner/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/brotli-8.0.3/src/enc/combined_alloc.rs:403:9
    |
403 | /         impl<
404 | |                 AllocU8: Allocator<u8>,
405 | |                 AllocU16: Allocator<u16>,
406 | |                 AllocI32: Allocator<i32>,
...   |
441 | |                 AllocZopfliNode,
442 | |             >
    | |_____________^
...
458 |   implement_allocator!(AllocU8, u8, AllocU8::AllocatedMemory, alloc_u8);
    |   --------------------------------------------------------------------- in this macro invocation
    = note: the full name for the type has been written to '/home/runner/work/datafusion/datafusion/target/semver-checks/local-datafusion-54_0_0-x86_64_unknown_linux_gnu-b870d5604f72f9ae/target/debug/deps/brotli-86ad4b051debf436.long-type-12423882807053207412.txt'
    = note: consider using `--verbose` to print the full type name to the console
    = note: this error originates in the macro `implement_allocator` (in Nightly builds, run with -Z macro-backtrace for more info)

    Checking recursive v0.1.1
    Checking object_store v0.13.2
For more information about this error, try `rustc --explain E0277`.
error: could not compile `brotli` (lib) due to 36 previous errors
warning: build failed, waiting for other jobs to finish...

-----

error: failed to build rustdoc for crate datafusion v54.0.0
note: this is usually due to a compilation error in the crate,
      and is unlikely to be a bug in cargo-semver-checks
note: the following command can be used to reproduce the error:
      cargo new --lib example &&
          cd example &&
          echo '[workspace]' >> Cargo.toml &&
          cargo add --path /home/runner/work/datafusion/datafusion/datafusion/core --features array_expressions,avro,backtrace,bzip2,compression,crypto_expressions,datafusion-datasource-avro,datafusion-datasource-parquet,datafusion-functions-nested,datafusion-sql,datetime_expressions,default,encoding_expressions,extended_tests,flate2,force_hash_collisions,liblzma,math_expressions,nested_expressions,parquet,parquet_encryption,recursive_protection,regex_expressions,serde,sql,sqlparser,string_expressions,unicode_expressions,zstd &&
          cargo check &&
          cargo doc

    Building datafusion-physical-plan v54.0.0 (current)
       Built [  38.226s] (current)
     Parsing datafusion-physical-plan v54.0.0 (current)
      Parsed [   0.130s] (current)
    Building datafusion-physical-plan v54.0.0 (baseline)
       Built [  36.863s] (baseline)
     Parsing datafusion-physical-plan v54.0.0 (baseline)
      Parsed [   0.141s] (baseline)
    Checking datafusion-physical-plan v54.0.0 -> v54.0.0 (no change; assume patch)
     Checked [   0.620s] 223 checks: 223 pass, 30 skip
     Summary no semver update required
    Finished [  78.057s] datafusion-physical-plan
error: aborting due to failure to build rustdoc for crate datafusion v54.0.0

@github-actions github-actions Bot added the auto detected api change Auto detected API change label Jun 14, 2026
@EmilyMatt

Copy link
Copy Markdown
Contributor Author

I'm not sure what the supposed API change is, as all the functions I've modified are private 🤔 and the "details" tab shows unrelated stuff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto detected api change Auto detected API change core Core DataFusion crate physical-plan Changes to the physical-plan crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants