Skip to content

docs: add v0.7.x to v0.8.0 crate-surface migration guide#603

Merged
EffortlessSteven merged 1 commit into
mainfrom
docs/migrate-v0.7-to-v0.8
May 12, 2026
Merged

docs: add v0.7.x to v0.8.0 crate-surface migration guide#603
EffortlessSteven merged 1 commit into
mainfrom
docs/migrate-v0.7-to-v0.8

Conversation

@EffortlessSteven

Copy link
Copy Markdown
Member

Pure docs PR. v0.7.x to v0.8.0 migration guide for the shim removal in #602.

Summary

This is PR-5 of the v0.8.0 SRP collapse lane.

Why this lands separately

Test plan

  • cargo xtask docs-sync --check passes
  • cargo xtask typos passes
  • git diff --check clean (no whitespace errors)
  • One new file only; no edits to existing docs, CHANGELOG, or docs/architecture/public-surface.md
  • Manual read of rendered markdown on GitHub PR diff view

Maps each of the 29 removed shim/conditional crates to its owner-
crate srp::* replacement. Leads with "most users do not need to
migrate" since only direct consumers of published-internal crates
are affected; the facade, fixture families, adapters, test
infrastructure, and CLI APIs are unchanged.
@gemini-code-assist

Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@coderabbitai

coderabbitai Bot commented May 12, 2026

Copy link
Copy Markdown

Review Change Stack
No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: fe037f7b-63de-4a6d-8a91-c7494d7a7179

📥 Commits

Reviewing files that changed from the base of the PR and between 80bc1fc and 22e1254.

📒 Files selected for processing (1)
  • docs/how-to/migrate-to-v0.8.md

Summary by CodeRabbit

Release Notes

  • Documentation
    • Added comprehensive migration guide for upgrading to v0.8.0, covering dependency updates, import path changes, feature configuration, and validation steps to ensure a smooth transition from previous versions.

Walkthrough

This PR adds a comprehensive migration guide for uselesskey v0.8.0, documenting how internal published-shim crates were removed and consolidated under owner crates' srp::* modules. The guide includes mapping tables, step-by-step migration instructions, feature flag handling, and reference links.

Changes

v0.8.0 Migration Guide

Layer / File(s) Summary
Migration context and crate-to-module mapping
docs/how-to/migrate-to-v0.8.md
Introduces the v0.8.0 consolidation, clarifies that most public API users can simply bump the version, and provides detailed mapping tables translating v0.7.x crate names to v0.8.0 replacement module paths and types. Includes special handling for the removed uselesskey-jose-openid duplicate crate.
Step-by-step migration procedure
docs/how-to/migrate-to-v0.8.md
Documents the concrete migration steps: updating Cargo.toml dependencies, replacing use import paths from the mapping reference, enabling the uselesskey-pgp feature flag, handling the jose-openid trait switch, and running validation commands to verify the migration and find remaining old references.
Rationale, crate availability, and references
docs/how-to/migrate-to-v0.8.md
Explains why the workspace and public crate surface were consolidated in v0.8.0, clarifies that removed v0.7.x crates remain published on crates.io for existing version locks, lists the intended v0.8.0 public surface items, and provides links to the canonical mapping and issue reporting.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 A guide for migrations, bundled with care,
Old crates consolidated, new paths everywhere,
Srp modules consolidated with flair,
Hop to v0.8.0 without despair! 🎯

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: adding a v0.7.x to v0.8.0 migration guide for crate surface changes.
Description check ✅ Passed The description is comprehensive and directly related to the changeset, detailing the migration guide content, scope, and context.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/migrate-v0.7-to-v0.8

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 22e12545ac

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

uselesskey-jose-openid = "0.7"

# after
uselesskey-jsonwebtoken = "0.8"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Add jsonwebtoken features for jose-openid migrations

For users migrating from uselesskey-jose-openid with its default features, this replacement dependency drops all key-family impls because uselesskey-jose-openid defaults to all while uselesskey-jsonwebtoken has default = [] in its Cargo manifest. In that common case the following use uselesskey_jsonwebtoken::JwtKeyExt; key.encoding_key(); example will not compile for RSA/ECDSA/Ed25519/HMAC fixtures unless the guide tells them to enable the matching features (or features = ["all"]).

Useful? React with 👍 / 👎.

@EffortlessSteven EffortlessSteven merged commit 7ff0a91 into main May 12, 2026
5 checks passed
@EffortlessSteven EffortlessSteven mentioned this pull request May 12, 2026
4 tasks
EffortlessSteven added a commit that referenced this pull request May 12, 2026
TLS contract-pack and public crate-surface cleanup release. Bumps
workspace to 0.8.0. CHANGELOG entry curated from merged PRs:
#485-#605 (TLS lane #585/#587/#588/#589, task-first how-tos
#590-#594, SRP collapse #595/#598/#599/#602, migration guide #603,
Clippy ratchets #505, dep bumps #484-#491).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant