A collection of JWT utilities.
This repository is part of the source code of Wire. You can find more information at wire.com or by contacting [email protected].
You can find the published source code at github.com/wireapp/wire.
For licensing information, see the attached LICENSE file and the list of third-party licenses at wire.com/legal/licenses/.
No license is granted to the Wire trademark and its associated logos, all of which will continue to be owned exclusively by Wire Swiss GmbH. Any use of the Wire trademark and/or its associated logos is expressly prohibited without the express prior written consent of Wire Swiss GmbH.
- ffi: Haskell bindings for rusty-jwt-tools, only used by wire-server
- jwt: a collection of JWT utilities
For the build requirements, look at the information in core-crypto repo.
Note
Building rusty-jwt-tools independently of core-crypto for Android targets is currently not supported due to missing configuration bits. However, the necessary bits are in core-crypto so one can build rusty-jwt-tools for Android targets as part of a core-crypto build.
Building is as simple as
cargo buildInstall cargo-nextest to allow running tests in parallel:
cargo install cargo-nextestand then just run
cargo nextest run --lockedMake sure you have Cabal installed.
Then run:
cd ffi
make hs-testNo crates are published on crates.io or any other Rust crate registry. The only release artifacts are source archives on github.
The versioning scheme used is SemVer AKA Semantic Versioning.
- Make a branch based on
mainto prepare for release (git checkout -b prepare-release/X.Y.Z) - Update the version of all workspace members to
X.Y.Z, including places that refer to them. - Generate a fresh
e2e-identity/README.md.test:If there are non-trivial differences betweencargo test --package wire-e2e-identity --test e2e demo_should_succeede2e-identity/README.mdand the generated file, updatee2e-identity/README.mdand commit the changes. - Generate the relevant changelog section:
and add it to the top of
git cliff --bump --unreleasedCHANGELOG.md. Make sure the version number generated bygit cliffmatches the release version. - If there are any release highlights, add them as the first subsection below release title:
## v0.10.0 - 2024-05-02 ### Highlights - foo - bar - baz
- Push your
prepare-release/X.Y.Zbranch and create a PR for it - Get it reviewed, then merge it into
mainand remove theprepare-release/X.Y.Zbranch from the remote - Now, pull your local
main:git checkout main && git pull - Create the release tag:
git tag -s vX.Y.Z - Push the new tag:
git push origin tag vX.Y.Z - Create a new release on github, copying the relevant section from
CHANGELOG.md - Voilà!