Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pin and bump bls12_381_plus dependency #1378

Merged
merged 3 commits into from
Jun 12, 2024

Conversation

wulfraem
Copy link
Contributor

Description of change

The most recent version of bls12_381_plus introduces adds changes to type conversion that may break builds due to conflicting implementations of From trait.

error[E0119]: conflicting implementations of trait `From<bls12_381_plus::scalar::Scalar>` for type `Issuer`
  --> /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/identity_credential-1.3.0/src/credential/issuer.rs:43:1
   |
43 | / impl<T> From<T> for Issuer
44 | | where
45 | |   T: Into<Url>,
   | |_______________^
   |
   = note: conflicting implementation in crate `bls12_381_plus`:
           - impl From<bls12_381_plus::scalar::Scalar> for <bls12_381_plus::scalar::Scalar as ark_ff::fields::prime::PrimeField>::BigInt;

Pinning this dependency to the previous version hotfixes build issues when used as an indirect dependency here (via zkryptium).

Version should be able to opened up in the future, but for now we should stick to the 0.8.15.

Type of change

Add an x to the boxes that are relevant to your changes.

  • Bug fix (a non-breaking change which fixes an issue)
  • Enhancement (a non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation Fix

How the change has been tested

cargo clean, deleting the Cargo.lock file, and running cargo build on the main branch produces the error described above. Doing the same on the PR's branch completes the build successfully.

Change checklist

Add an x to the boxes that are relevant to your changes.

  • I have followed the contribution guidelines for this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

@wulfraem wulfraem added Bug Something isn't working. Rust Related to the core Rust code. Becomes part of the Rust changelog. labels Jun 11, 2024
@wulfraem wulfraem requested a review from a team as a code owner June 11, 2024 15:21
@wulfraem wulfraem added Patch Change without affecting the API that requires a patch release. Part of "Patch" section in changelog and removed Bug Something isn't working. labels Jun 11, 2024
wulfraem added 2 commits June 11, 2024 17:24
- additional crates that use `zkryptium`
- crates that use `json-proof-token`
frederikrothenberger pushed a commit to dfinity/verifiable-credentials-sdk that referenced this pull request Jun 12, 2024
In preparation of moving `vc_util` to this repository, the following
changes are made:
* switch to DFINITY iota fork
  * adjust alias parsing to new library
* move issuer dependencies to workspace Cargo.toml
* pin bls12_381_plus as a workaround for iotaledger/identity.rs#1378
frederikrothenberger pushed a commit to dfinity/verifiable-credentials-sdk that referenced this pull request Jun 12, 2024
In preparation of moving `vc_util` to this repository, the following
changes are made:
* switch to DFINITY iota fork
  * adjust alias parsing to new library
* move issuer dependencies to workspace Cargo.toml
* pin bls12_381_plus as a workaround for iotaledger/identity.rs#1378
frederikrothenberger pushed a commit to dfinity/verifiable-credentials-sdk that referenced this pull request Jun 12, 2024
In preparation of moving `vc_util` to this repository, the following
changes are made:
* switch to DFINITY iota fork
  * adjust alias parsing to new library
* move issuer dependencies to workspace Cargo.toml
* pin bls12_381_plus as a workaround for iotaledger/identity.rs#1378
frederikrothenberger pushed a commit to dfinity/verifiable-credentials-sdk that referenced this pull request Jun 12, 2024
In preparation of moving `vc_util` to this repository, the following
changes are made:
* switch to DFINITY iota fork
  * adjust alias parsing to new library
* move issuer dependencies to workspace Cargo.toml
* pin bls12_381_plus as a workaround for iotaledger/identity.rs#1378
frederikrothenberger pushed a commit to dfinity/verifiable-credentials-sdk that referenced this pull request Jun 12, 2024
In preparation of moving `vc_util` to this repository, the following
changes are made:
* switch to DFINITY iota fork
  * adjust alias parsing to new library
* move issuer dependencies to workspace Cargo.toml
* pin bls12_381_plus as a workaround for iotaledger/identity.rs#1378
@itsyaasir itsyaasir self-requested a review June 12, 2024 12:39
@eike-hass eike-hass merged commit 29d29b7 into main Jun 12, 2024
13 checks passed
@eike-hass eike-hass deleted the fix/pin-bls12_381_plus-dependency branch June 12, 2024 12:42
frederikrothenberger pushed a commit to dfinity/verifiable-credentials-sdk that referenced this pull request Jun 12, 2024
In preparation of moving `vc_util` to this repository, the following
changes are made:
* switch to DFINITY iota fork
  * adjust alias parsing to new library
* move issuer dependencies to workspace Cargo.toml
* pin bls12_381_plus as a workaround for iotaledger/identity.rs#1378
frederikrothenberger pushed a commit to dfinity/verifiable-credentials-sdk that referenced this pull request Jun 12, 2024
In preparation of moving `vc_util` to this repository, the following
changes are made:
* switch to DFINITY iota fork
  * adjust alias parsing to new library
* move issuer dependencies to workspace Cargo.toml
* pin bls12_381_plus as a workaround for iotaledger/identity.rs#1378
frederikrothenberger pushed a commit to dfinity/identity.rs that referenced this pull request Jun 12, 2024
frederikrothenberger pushed a commit to dfinity/identity.rs that referenced this pull request Jun 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Patch Change without affecting the API that requires a patch release. Part of "Patch" section in changelog Rust Related to the core Rust code. Becomes part of the Rust changelog.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants