<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/hashx/src/program.rs, branch arti-v2.4.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.4.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.4.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-05-12T20:55:43Z</updated>
<entry>
<title>Upgrade rand crates to 0.10.</title>
<updated>2026-05-12T20:55:43Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2026-05-07T20:06:21Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a18167928901d8c88cd1cdd87346de8ad1ee42a2'/>
<id>urn:sha1:a18167928901d8c88cd1cdd87346de8ad1ee42a2</id>
<content type='text'>
When the circ-padding feature is enabled, we use maybenot, which does
not yet support rand 0.10. In the meantime, enabling this feature pulls
in rand 0.9. This is not ideal, but should be okay as a temporary
situation.

This also replaces the use of ReseedingRng (which was removed in 0.10)
with the reseeding_rng crate. This is somewhat less performant, but it
should be okay.
</content>
</entry>
<entry>
<title>Switch Cargo.toml files to edition 2024.</title>
<updated>2025-08-07T15:28:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-08-06T01:19:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=77b0de43b8c67cdb81befe0680a3df43b6ad37bc'/>
<id>urn:sha1:77b0de43b8c67cdb81befe0680a3df43b6ad37bc</id>
<content type='text'>
First, run

```
git grep -l "^edition =" |
    xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;'
```

Second, manually verify that all Cargo.toml files have changed,
and nothing else has changed.

Third, run cargo fmt again.
</content>
</entry>
<entry>
<title>fix `clippy::unneeded_struct_pattern`</title>
<updated>2025-04-03T17:32:58Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-04-03T17:30:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5395b385584599ee6a0f8fc005ded81910d60f4b'/>
<id>urn:sha1:5395b385584599ee6a0f8fc005ded81910d60f4b</id>
<content type='text'>
Example:

```text
warning: struct pattern is not needed for a unit variant
   --&gt; crates/hashx/src/program.rs:165:32
    |
165 |             Instruction::Target { .. } =&gt; Opcode::Target,
    |                                ^^^^^^^ help: remove the struct pattern
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_struct_pattern
note: the lint level is defined here
   --&gt; crates/hashx/src/lib.rs:9:9
    |
9   | #![warn(clippy::all)]
    |         ^^^^^^^^^^^
    = note: `#[warn(clippy::unneeded_struct_pattern)]` implied by `#[warn(clippy::all)]`
```
</content>
</entry>
<entry>
<title>Resolve nightly clippy errors in hashx.</title>
<updated>2024-04-22T14:22:08Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-22T14:19:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ec07f4f604f372d8d4f970d92be6b41c9d0b5630'/>
<id>urn:sha1:ec07f4f604f372d8d4f970d92be6b41c9d0b5630</id>
<content type='text'>
Nightly clippy doesn't like using "expr as T" when the conversion is
lossless; it prefers "T::from(expr)" so that if we later change the
type of T to something with a lossy conversion, we'll know.
</content>
</entry>
<entry>
<title>Switch to FixedCapacityVec 0.1.0 from crates.io</title>
<updated>2023-09-06T10:21:32Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-09-01T09:17:26Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=63db4c61fa3be9fc36e6b5117fa12edbeff33cd9'/>
<id>urn:sha1:63db4c61fa3be9fc36e6b5117fa12edbeff33cd9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>hashx: Cleanup around Instruction and NUM_INSTRUCTIONS</title>
<updated>2023-08-25T20:14:24Z</updated>
<author>
<name>Micah Elizabeth Scott</name>
<email>beth@torproject.org</email>
</author>
<published>2023-08-25T20:11:47Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2cb50d1be35a4a6623ff318fcf8ac2620521bb1f'/>
<id>urn:sha1:2cb50d1be35a4a6623ff318fcf8ac2620521bb1f</id>
<content type='text'>
This patch tries to make some of the expressions around NUM_INSTRUCTIONS
more convenient. We can import it directly where it's needed, but most
uses are replaced by new type aliases for InstructionArray and
InstructionVec.

No change to any hashx_cachegrind iai benchmarks
</content>
</entry>
<entry>
<title>RFC: hashx: Make Architecture::compile take an array ref</title>
<updated>2023-08-25T17:12:56Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-08-23T10:11:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f789f0914b65391b293aac75ab86720028ffa88f'/>
<id>urn:sha1:f789f0914b65391b293aac75ab86720028ffa88f</id>
<content type='text'>
generate_interp_1000x
  Instructions:           219216169 (No change)
  L1 Accesses:            278017243 (-0.000441%)
  L2 Accesses:                 1257 (+4389.286%)
  RAM Accesses:                 415 (-0.479616%)
  Estimated Cycles:       278038053 (+0.001744%)

generate_interp_1000x_c
  Instructions:           272748034 (No change)
  L1 Accesses:            349932964 (No change)
  L2 Accesses:                   76 (-1.298701%)
  RAM Accesses:                 411 (+0.243902%)
  Estimated Cycles:       349947729 (+0.000009%)

generate_compiled_1000x
  Instructions:           256896028 (+0.175731%)
  L1 Accesses:            342543838 (+0.131802%)
  L2 Accesses:               149273 (-10.34924%)
  RAM Accesses:                 810 (-0.246305%)
  Estimated Cycles:       343318553 (+0.106328%)

generate_compiled_1000x_c
  Instructions:           281855218 (No change)
  L1 Accesses:            362569035 (-0.000001%)
  L2 Accesses:                   88 (+1.149425%)
  RAM Accesses:                 473 (+0.211864%)
  Estimated Cycles:       362586030 (+0.000010%)

interp_u64_hash_1000x
  Instructions:            13450926 (No change)
  L1 Accesses:             16622561 (+0.000024%)
  L2 Accesses:                   28 (No change)
  RAM Accesses:                 390 (-1.015228%)
  Estimated Cycles:        16636351 (-0.000817%)

interp_8b_hash_1000x_c
  Instructions:             8618541 (No change)
  L1 Accesses:             12316160 (-0.000008%)
  L2 Accesses:                   80 (No change)
  RAM Accesses:                 433 (+0.231481%)
  Estimated Cycles:        12331715 (+0.000276%)

compiled_u64_hash_100000x
  Instructions:            87311792 (+0.000520%)
  L1 Accesses:             94396598 (+0.000463%)
  L2 Accesses:                  215 (+2.380952%)
  RAM Accesses:                 774 (-0.641849%)
  Estimated Cycles:        94424763 (+0.000304%)

compiled_8b_hash_100000x_c
  Instructions:            91547640 (No change)
  L1 Accesses:             98838166 (-0.000007%)
  L2 Accesses:                  137 (+3.007519%)
  RAM Accesses:                 488 (+0.618557%)
  Estimated Cycles:        98855931 (+0.000119%)
</content>
</entry>
<entry>
<title>Rustfmt</title>
<updated>2023-08-24T16:01:44Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-08-24T16:01:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b1fd9934a166392e8dc0acada4b5bea376569fb5'/>
<id>urn:sha1:b1fd9934a166392e8dc0acada4b5bea376569fb5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>hashx: FixedCapacityVec: Replace .into_boxed_array method with Try</title>
<updated>2023-08-24T12:50:29Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-08-24T12:30:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=42eea856dd05b82f53e9d71e7ee3225b4f6851a1'/>
<id>urn:sha1:42eea856dd05b82f53e9d71e7ee3225b4f6851a1</id>
<content type='text'>
This version pushes the panic into the call site, which seems much
better.  No change to the iai results.
</content>
</entry>
<entry>
<title>hashx: FixedCapacityVec: Move into its own module</title>
<updated>2023-08-24T12:50:20Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-08-24T12:23:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6529846787aa65dc480edcca4a3e9cab1712e75b'/>
<id>urn:sha1:6529846787aa65dc480edcca4a3e9cab1712e75b</id>
<content type='text'>
</content>
</entry>
</feed>
