Skip to content

PR #2620

PR #2620 #63

Triggered via dynamic April 18, 2025 02:51
Status Success
Total duration 1m 5s
Artifacts

codeql

on: dynamic
Matrix: analyze
Fit to window
Zoom out
Zoom in

Annotations

62 warnings
this `map_or` can be simplified: src/store/reader.rs#L323
warning: this `map_or` can be simplified --> src/store/reader.rs:323:29 | 323 | let alive = alive_bitset.map_or(true, |bitset| bitset.is_alive(doc_id)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or = note: `#[warn(clippy::unnecessary_map_or)]` on by default help: use is_none_or instead | 323 - let alive = alive_bitset.map_or(true, |bitset| bitset.is_alive(doc_id)); 323 + let alive = alive_bitset.is_none_or(|bitset| bitset.is_alive(doc_id)); |
this `repeat().take()` can be written more concisely: src/query/term_query/term_scorer.rs#L307
warning: this `repeat().take()` can be written more concisely --> src/query/term_query/term_scorer.rs:307:36 | 307 | let words: Vec<&str> = std::iter::repeat("bbbb").take(term_freq).collect(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("bbbb", term_freq)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/query/term_query/term_scorer.rs#L241
warning: this `repeat().take()` can be written more concisely --> src/query/term_query/term_scorer.rs:241:36 | 241 | let fieldnorms: Vec<u32> = std::iter::repeat(20u32).take(300).collect(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(20u32, 300)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/query/term_query/term_scorer.rs#L175
warning: this `repeat().take()` can be written more concisely --> src/query/term_query/term_scorer.rs:175:36 | 175 | let fieldnorms: Vec<u32> = std::iter::repeat(10u32).take(3_000).collect(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(10u32, 3_000)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/query/boolean_query/block_wand.rs#L439
warning: this `repeat().take()` can be written more concisely --> src/query/boolean_query/block_wand.rs:439:35 | 439 | .flat_map(|fieldnorm| iter::repeat(fieldnorm).take(REPEAT)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(fieldnorm, REPEAT)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/positions/mod.rs#L209
warning: this `repeat().take()` can be written more concisely --> src/positions/mod.rs:209:41 | 209 | let positions_delta: Vec<u32> = iter::repeat(CONST_VAL).take(2_000_000).collect(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(CONST_VAL, 2_000_000)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/collector/facet_collector.rs#L790
warning: this `repeat().take()` can be written more concisely --> src/collector/facet_collector.rs:790:17 | 790 | iter::repeat(doc).take(count) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(doc, count)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/collector/facet_collector.rs#L742
warning: this `repeat().take()` can be written more concisely --> src/collector/facet_collector.rs:742:21 | 742 | iter::repeat(doc).take(count) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(doc, count)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
using `map` over `inspect`: src/tokenizer/ngram_tokenizer.rs#L290
warning: using `map` over `inspect` --> src/tokenizer/ngram_tokenizer.rs:290:22 | 290 | self.next_el.map(|offset| { | ^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_inspect = note: `#[warn(clippy::manual_inspect)]` on by default help: try | 290 ~ self.next_el.inspect(|&offset| { 291 | if self.s.is_empty() { ... 296 | self.next_el = Some(offset + first_codepoint_width); 297 ~ } |
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1636
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1636:20 | 1636 | vec.extend(iter::repeat("fl").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("fl", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1635
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1635:20 | 1635 | vec.extend(iter::repeat("fi").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("fi", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1634
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1634:20 | 1634 | vec.extend(iter::repeat("y").take(2)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("y", 2)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1633
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1633:20 | 1633 | vec.extend(iter::repeat("u").take(4)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("u", 4)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1632
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1632:20 | 1632 | vec.extend(iter::repeat("th").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("th", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1631
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1631:20 | 1631 | vec.extend(iter::repeat("ss").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("ss", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1630
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1630:20 | 1630 | vec.extend(iter::repeat("oe").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("oe", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1629
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1629:20 | 1629 | vec.extend(iter::repeat("o").take(6)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("o", 6)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1628
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1628:20 | 1628 | vec.extend(iter::repeat("n").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("n", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1627
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1627:20 | 1627 | vec.extend(iter::repeat("d").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("d", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1626
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1626:20 | 1626 | vec.extend(iter::repeat("ij").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("ij", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1625
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1625:20 | 1625 | vec.extend(iter::repeat("i").take(4)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("i", 4)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1624
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1624:20 | 1624 | vec.extend(iter::repeat("e").take(4)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("e", 4)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1623
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1623:20 | 1623 | vec.extend(iter::repeat("c").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("c", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1622
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1622:20 | 1622 | vec.extend(iter::repeat("ae").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("ae", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1621
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1621:20 | 1621 | vec.extend(iter::repeat("a").take(6)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("a", 6)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1620
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1620:20 | 1620 | vec.extend(iter::repeat("Y").take(2)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("Y", 2)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1619
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1619:20 | 1619 | vec.extend(iter::repeat("U").take(4)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("U", 4)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1618
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1618:20 | 1618 | vec.extend(iter::repeat("TH").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("TH", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1617
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1617:20 | 1617 | vec.extend(iter::repeat("OE").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("OE", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1616
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1616:20 | 1616 | vec.extend(iter::repeat("O").take(6)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("O", 6)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1615
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1615:20 | 1615 | vec.extend(iter::repeat("N").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("N", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1614
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1614:20 | 1614 | vec.extend(iter::repeat("D").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("D", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1613
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1613:20 | 1613 | vec.extend(iter::repeat("IJ").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("IJ", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1612
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1612:20 | 1612 | vec.extend(iter::repeat("I").take(4)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("I", 4)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1611
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1611:20 | 1611 | vec.extend(iter::repeat("E").take(4)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("E", 4)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1610
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1610:20 | 1610 | vec.extend(iter::repeat("C").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("C", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1609
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1609:20 | 1609 | vec.extend(iter::repeat("AE").take(1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("AE", 1)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: src/tokenizer/ascii_folding_filter.rs#L1608
warning: this `repeat().take()` can be written more concisely --> src/tokenizer/ascii_folding_filter.rs:1608:20 | 1608 | vec.extend(iter::repeat("A").take(6)); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("A", 6)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n = note: `#[warn(clippy::manual_repeat_n)]` on by default
manually reimplementing `div_ceil`: columnar/src/columnar/writer/column_operation.rs#L247
warning: manually reimplementing `div_ceil` --> columnar/src/columnar/writer/column_operation.rs:247:5 | 247 | (msb + 7) / 8 | ^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `msb.div_ceil(8)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
manually reimplementing `div_ceil`: columnar/src/column_values/u64_based/linear.rs#L120
warning: manually reimplementing `div_ceil` --> columnar/src/column_values/u64_based/linear.rs:120:19 | 120 | + (num_bits as u64 * stats.num_rows as u64 + 7) / 8, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `(num_bits as u64 * stats.num_rows as u64).div_ceil(8)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
manually reimplementing `div_ceil`: columnar/src/column_values/u64_based/bitpacked.rs#L108
warning: manually reimplementing `div_ceil` --> columnar/src/column_values/u64_based/bitpacked.rs:108:34 | 108 | Some(stats.num_bytes() + (stats.num_rows as u64 * (num_bits_per_value as u64) + 7) / 8) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `(stats.num_rows as u64 * (num_bits_per_value as u64)).div_ceil(8)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil = note: `#[warn(clippy::manual_div_ceil)]` on by default
this `repeat().take()` can be written more concisely: columnar/src/column_index/merge/stacked.rs#L110
warning: this `repeat().take()` can be written more concisely --> columnar/src/column_index/merge/stacked.rs:110:22 | 110 | Box::new(std::iter::repeat(1u32).take(optional_index.num_non_nulls() as usize)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(1u32, optional_index.num_non_nulls() as usize)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
this `repeat().take()` can be written more concisely: columnar/src/column_index/merge/stacked.rs#L108
warning: this `repeat().take()` can be written more concisely --> columnar/src/column_index/merge/stacked.rs:108:39 | 108 | ColumnIndex::Full => Box::new(std::iter::repeat(1u32).take(num_docs as usize)), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(1u32, num_docs as usize)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n = note: `#[warn(clippy::manual_repeat_n)]` on by default
manually reimplementing `div_ceil`: sstable/src/sstable_index_v3.rs#L441
warning: manually reimplementing `div_ceil` --> sstable/src/sstable_index_v3.rs:441:12 | 441 | if (range_end_addr + self.range_start_nbits as usize + 7) / 8 > data.len() { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `(range_end_addr + self.range_start_nbits as usize).div_ceil(8)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil = note: `#[warn(clippy::manual_div_ceil)]` on by default
manually reimplementing `div_ceil`: bitpacker/src/bitpacker.rs#L141
warning: manually reimplementing `div_ceil` --> bitpacker/src/bitpacker.rs:141:29 | 141 | let end_byte_read = (end_bit_read + 7) / 8; | ^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `end_bit_read.div_ceil(8)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L95
warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:95:49 | 95 | 255 - std::arch::x86_64::_mm256_movemask_ps(std::mem::transmute::<DataType, __m256>(inside)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_movemask_ps` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L95
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_movemask_ps` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:95:11 | 95 | 255 - std::arch::x86_64::_mm256_movemask_ps(std::mem::transmute::<DataType, __m256>(inside)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_or_si256` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L94
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_or_si256` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:94:18 | 94 | let inside = op_or(too_low, too_high); | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L93
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:93:20 | 93 | let too_high = op_greater(val, *range.end()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L92
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:92:19 | 92 | let too_low = op_greater(*range.start(), val); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior note: an unsafe function restricts its caller, but its body is safe by default --> bitpacker/src/filter_vec/avx2.rs:91:1 | 91 | unsafe fn compute_filter_bitset(val: __m256i, range: std::ops::RangeInclusive<__m256i>) -> u8 { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
call to unsafe function `std::arch::x86_64::_mm256_permutevar8x32_epi32` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L86
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_permutevar8x32_epi32` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:86:5 | 86 | _mm256_permutevar8x32_epi32(data, vperm_mask) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior note: an unsafe function restricts its caller, but its body is safe by default --> bitpacker/src/filter_vec/avx2.rs:84:1 | 84 | unsafe fn compact(data: DataType, mask: u8) -> DataType { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset_from` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L79
warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset_from` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:79:5 | 79 | output_tail.offset_from(output) as usize | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::ptr::const_ptr::<impl *const T>::offset` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L77
warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::offset` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:77:17 | 77 | input = input.offset(1); | ^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_add_epi32` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L76
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_add_epi32` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:76:15 | 76 | ids = op_add(ids, SHIFT); | ^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L75
warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:75:23 | 75 | output_tail = output_tail.offset(added_len as isize); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_storeu_si256` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L74
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_si256` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:74:9 | 74 | store_unaligned(output_tail as *mut __m256i, filtered_doc_ids); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `filter_vec::avx2::compact` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L73
warning[E0133]: call to unsafe function `filter_vec::avx2::compact` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:73:32 | 73 | let filtered_doc_ids = compact(ids, keeper_bitset); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `filter_vec::avx2::compute_filter_bitset` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L71
warning[E0133]: call to unsafe function `filter_vec::avx2::compute_filter_bitset` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:71:29 | 71 | let keeper_bitset = compute_filter_bitset(word, range_simd.clone()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `filter_vec::avx2::u32_to_i32_avx2` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L70
warning[E0133]: call to unsafe function `filter_vec::avx2::u32_to_i32_avx2` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:70:20 | 70 | let word = u32_to_i32_avx2(word); | ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_lddqu_si256` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L69
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_lddqu_si256` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:69:20 | 69 | let word = load_unaligned(input); | ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L56
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:56:45 | 56 | let range_simd = set1(*range.start())..=set1(*range.end()); | ^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior
call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block: bitpacker/src/filter_vec/avx2.rs#L56
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block --> bitpacker/src/filter_vec/avx2.rs:56:22 | 56 | let range_simd = set1(*range.start())..=set1(*range.end()); | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function | = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html> = note: consult the function's documentation for information on how to avoid undefined behavior note: an unsafe function restricts its caller, but its body is safe by default --> bitpacker/src/filter_vec/avx2.rs:48:1 | 48 | / unsafe fn filter_vec_avx2_aux( 49 | | mut input: *const __m256i, 50 | | range: RangeInclusive<i32>, 51 | | output: *mut u32, 52 | | offset: u32, 53 | | num_words: usize, 54 | | ) -> usize { | |__________^