Skip to content

Conversation

pull[bot]
Copy link

@pull pull bot commented Oct 3, 2019

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

@pull pull bot added the ⤵️ pull label Oct 3, 2019
@dingelish dingelish force-pushed the master branch 2 times, most recently from bdfc1ca to 6447161 Compare October 5, 2019 19:19
@pull pull bot added the merge-conflict Resolve conflicts manually label Feb 28, 2020
tarcieri and others added 24 commits July 26, 2024 13:54
Due to circular dependencies, it was necessary to temporarily split
`elliptic-curve` out of the workspace. It also can't currently resolve a
solution for `elliptic-curve`'s Cargo.lock due to `digest`. Excluding
`elliptic-curve`, all of the other crates work.

The main causes of this are crates like `sha2` and `sha3` which are
circular `dev-dependencies` (i.e. between traits and hashes).

This will temporarily break the `elliptic-curve` build until we can do
new releases of `sha2` and `sha3` as well as crates like `hmac` and
`hkdf`. Once these have been released, we can put everything back into a
single workspace.
The `block_cipher_test!` macro was using deprecated APIs in
`hybrid-array` (i.e. `clone_from_slice`)
Re-unifies the workspace now that the circular dev-dependencies have
been updated
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.6.1 to 1.7.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/bytes/releases">bytes's
releases</a>.</em></p>
<blockquote>
<h2>Bytes 1.7.0</h2>
<h1>1.7.0 (July 31, 2024)</h1>
<h3>Added</h3>
<ul>
<li>Add conversion from <code>Bytes</code> to <code>BytesMut</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/695">#695</a>,
<a
href="https://redirect.github.com/tokio-rs/bytes/issues/710">#710</a>)</li>
<li>Add reclaim method without additional allocation (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/686">#686</a>)</li>
</ul>
<h3>Documented</h3>
<ul>
<li>Clarify how <code>BytesMut::zeroed</code> works (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/714">#714</a>)</li>
<li>Clarify the behavior of <code>Buf::chunk</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/717">#717</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Change length condition of <code>BytesMut::truncate</code></li>
<li>Reuse capacity when possible in <code>&lt;BytesMut as
Buf&gt;::advance</code> impl (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/698">#698</a>)</li>
<li>Improve <code>must_use</code> suggestion of
<code>BytesMut::split</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/699">#699</a>)</li>
</ul>
<h3>Internal changes</h3>
<ul>
<li>Use <code>ManuallyDrop</code> instead of <code>mem::forget</code>
(<a
href="https://redirect.github.com/tokio-rs/bytes/issues/678">#678</a>)</li>
<li>Don't set <code>len</code> in <code>BytesMut::reserve</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/682">#682</a>)</li>
<li>Optimize <code>Bytes::copy_to_bytes</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/688">#688</a>)</li>
<li>Refactor <code>BytesMut::truncate</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/694">#694</a>)</li>
<li>Refactor <code>BytesMut::resize</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/696">#696</a>)</li>
<li>Reorder assertion in <code>Bytes::split_to</code>,
<code>Bytes::split_off</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/689">#689</a>,
<a
href="https://redirect.github.com/tokio-rs/bytes/issues/693">#693</a>)</li>
<li>Use <code>offset_from</code> in more places (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/705">#705</a>)</li>
<li>Correct the wrong usage of <code>IntoIter</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/707">#707</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md">bytes's
changelog</a>.</em></p>
<blockquote>
<h1>1.7.0 (July 31, 2024)</h1>
<h3>Added</h3>
<ul>
<li>Add conversion from <code>Bytes</code> to <code>BytesMut</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/695">#695</a>,
<a
href="https://redirect.github.com/tokio-rs/bytes/issues/710">#710</a>)</li>
<li>Add reclaim method without additional allocation (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/686">#686</a>)</li>
</ul>
<h3>Documented</h3>
<ul>
<li>Clarify how <code>BytesMut::zeroed</code> works (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/714">#714</a>)</li>
<li>Clarify the behavior of <code>Buf::chunk</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/717">#717</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Change length condition of <code>BytesMut::truncate</code></li>
<li>Reuse capacity when possible in <code>&lt;BytesMut as
Buf&gt;::advance</code> impl (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/698">#698</a>)</li>
<li>Improve <code>must_use</code> suggestion of
<code>BytesMut::split</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/699">#699</a>)</li>
</ul>
<h3>Internal changes</h3>
<ul>
<li>Use <code>ManuallyDrop</code> instead of <code>mem::forget</code>
(<a
href="https://redirect.github.com/tokio-rs/bytes/issues/678">#678</a>)</li>
<li>Don't set <code>len</code> in <code>BytesMut::reserve</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/682">#682</a>)</li>
<li>Optimize <code>Bytes::copy_to_bytes</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/688">#688</a>)</li>
<li>Refactor <code>BytesMut::truncate</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/694">#694</a>)</li>
<li>Refactor <code>BytesMut::resize</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/696">#696</a>)</li>
<li>Reorder assertion in <code>Bytes::split_to</code>,
<code>Bytes::split_off</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/689">#689</a>,
<a
href="https://redirect.github.com/tokio-rs/bytes/issues/693">#693</a>)</li>
<li>Use <code>offset_from</code> in more places (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/705">#705</a>)</li>
<li>Correct the wrong usage of <code>IntoIter</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/707">#707</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/tokio-rs/bytes/commit/03fdde9dcfe69caf681ecaa1d97f8105a9c9a6c1"><code>03fdde9</code></a>
chore: prepare v1.7.0 (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/724">#724</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/f8c7b574c0ef0c3cb097d29a08e53b15b4e4a522"><code>f8c7b57</code></a>
Merge 'v1.6.1' into 'master' (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/721">#721</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/9965a04b5684079bb614addd750340ffc165a9f5"><code>9965a04</code></a>
Remove unnecessary file (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/719">#719</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/3443ca5a0be21cdb2424bd20d49746bd622ed195"><code>3443ca5</code></a>
docs: clarify the behavior of <code>Buf::chunk</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/717">#717</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/8cc940779fd6a489a2d7ca53fbbc44f84210083e"><code>8cc9407</code></a>
Allow reclaiming the current allocation (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/686">#686</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/7a5154ba8b54970b7bb07c4902bc8a7981f4e57c"><code>7a5154b</code></a>
Clarify how <code>BytesMut::zeroed</code> works and advantages to manual
impl (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/714">#714</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/fa1daac3ae1dcb07dffe3a41a041dffd6edf177b"><code>fa1daac</code></a>
Change Bytes::make_mut to impl From&lt;Bytes&gt; for BytesMut (closes <a
href="https://redirect.github.com/tokio-rs/bytes/issues/709">#709</a>)
(<a
href="https://redirect.github.com/tokio-rs/bytes/issues/710">#710</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/caf520ac7f2c466d26bd88eca33ddc53c408e17e"><code>caf520a</code></a>
Fix iter tests to use the actual bytes IntoIter instead of std (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/707">#707</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/4950c503768fcebce6f9ab9dbaac2a7da30b35ba"><code>4950c50</code></a>
Offset from (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/705">#705</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/86694b05649c0c1666044b2ba5c386c2328aac18"><code>86694b0</code></a>
Add zero-copy make_mut (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/695">#695</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tokio-rs/bytes/compare/v1.6.1...v1.7.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=bytes&package-manager=cargo&previous-version=1.6.1&new-version=1.7.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This PR splits `BlockBackend` traits into 4 specific traits:
`BlockCipherEncBackend`, `BlockCipherDecBackend`, `BlockModeEncBackend`,
and `BlockModeDecBackend`. Same for `BlockClosure`. This allows for
cipher backends to remove awkard `&mut &backend` juggling (see
RustCrypto/block-ciphers#442), makes code a bit
easier to read (i.e. `encrypt_blocks` instead of `proc_blocks`), and
allows for one backend type to be used for both encryption and
decryption.

The `impl_simple_block_encdec` macro is removed since we now can
implement the backend traits directly on cipher types, which should make
implementation crates slightly easier to understand.

Additionally, it moves traits to the `block` and `cipher` modules to
reduce clutter in the crate root. Later we can add docs to each module
to describe the traits in detail.
Allows `Display`/`Debug` printing `Output` with a specific `Encoding`
without needing to go through `encode`/`b64_encode`, if e.g. it was
created using `init_with`.

Maybe a version of `init_with` that allows specifying an encoding
(similar to `new_with_encoding`) would be better, I'm not sure. This is
a smaller, more general change.
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.7.1 to 1.7.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/bytes/releases">bytes's
releases</a>.</em></p>
<blockquote>
<h2>Bytes 1.7.2</h2>
<h1>1.7.2 (September 17, 2024)</h1>
<h3>Fixed</h3>
<ul>
<li>Fix default impl of <code>Buf::{get_int, get_int_le}</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/732">#732</a>)</li>
</ul>
<h3>Documented</h3>
<ul>
<li>Fix double spaces in comments and doc comments (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/731">#731</a>)</li>
</ul>
<h3>Internal changes</h3>
<ul>
<li>Ensure BytesMut::advance reduces capacity (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/728">#728</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md">bytes's
changelog</a>.</em></p>
<blockquote>
<h1>1.7.2 (September 17, 2024)</h1>
<h3>Fixed</h3>
<ul>
<li>Fix default impl of <code>Buf::{get_int, get_int_le}</code> (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/732">#732</a>)</li>
</ul>
<h3>Documented</h3>
<ul>
<li>Fix double spaces in comments and doc comments (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/731">#731</a>)</li>
</ul>
<h3>Internal changes</h3>
<ul>
<li>Ensure BytesMut::advance reduces capacity (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/728">#728</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/tokio-rs/bytes/commit/d7c1d658d90c922eeee1dbc29bc6f6fd9a1a1a66"><code>d7c1d65</code></a>
chore: prepare bytes v1.7.2 (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/736">#736</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/ac46ebdd464144cecd7463a96ca9eb347458ae94"><code>ac46ebd</code></a>
ci: update nightly to nightly-2024-09-15 (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/734">#734</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/79fb85323cf4cf14d9b85f487b65fc147030cf4b"><code>79fb853</code></a>
fix: apply sign extension when decoding int (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/732">#732</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/291df5acc94b82a48765e67eeb1c1a2074539e68"><code>291df5a</code></a>
Fix double spaces in comments and doc comments (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/731">#731</a>)</li>
<li><a
href="https://github.com/tokio-rs/bytes/commit/ed7d5ff39e39c2802c0fa9e2fc308f6a3e0beda7"><code>ed7d5ff</code></a>
test: ensure BytesMut::advance reduces capacity (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/728">#728</a>)</li>
<li>See full diff in <a
href="https://github.com/tokio-rs/bytes/compare/v1.7.1...v1.7.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=bytes&package-manager=cargo&previous-version=1.7.1&new-version=1.7.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
tarcieri and others added 30 commits August 1, 2025 07:57
Breaks out a more extensive list of supported crates
This is a little hack I make use of in my projects and found a bit
annoying when opening PRs here. When successive commits are made to a
PR, cancels CI workflows that are not ran on the latest commit - saving
CI time and making things quicker.

I can also make this PR to other RustCrpyto repos if this is something
we want.
I noticed that this was missing.
Previously we were using block size + 1 byte to serialize eager block
buffers while block size is sufficient. It resulted in odd serialization
state sizes. The `SerializableState` impl also a bit convoluted.

The new implementation results in more efficient serialization and more
straightforward code. The main drawback is that it inevitably involves a
breaking change in the serialization format.
Names of test functions and names of associated KAT file usually match,
so it's worth to simplify the macro to reduce amount of duplication at
call sites.
…1959)

This simplifies the wrapper code and allows to mark the `cipher` crate
with `#![forbid(unsafe_code)]`.
These methods were deprecated in the v0.5 release
This isn't ideal but gets the crate upgraded.

I would like to experiment with changing `Curve::ORDER` to `NonZero` or
`Odd` as a better solution
After RustCrypto/crypto-bigint#917 it's much more ergonomic to have the
order be `NonZero`.

We could also consider making it `Odd`, although `NonZero` is the
immediate need so this is the most straightforward transition.
v0.4.0 was the last thing depending on `base16ct` v0.2
Enable `alloc` support for `hybrid-array` when the `alloc` crate feature
of `elliptic-curve` is enabled
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⤵️ pull merge-conflict Resolve conflicts manually
Projects
None yet
Development

Successfully merging this pull request may close these issues.