Skip to content

feat(mint): remove deprecated v0 HTTP API#957

Open
b-l-u-e wants to merge 1 commit intocashubtc:mainfrom
b-l-u-e:feat/mint-remove-deprecated-v0-HTTP-API
Open

feat(mint): remove deprecated v0 HTTP API#957
b-l-u-e wants to merge 1 commit intocashubtc:mainfrom
b-l-u-e:feat/mint-remove-deprecated-v0-HTTP-API

Conversation

@b-l-u-e
Copy link
Copy Markdown
Contributor

@b-l-u-e b-l-u-e commented Mar 30, 2026

Here is what was done for #953 - remove deprecated mint v0 API:

Removed

  • cashu/mint/router_deprecated.py - root-level routes (/info, /keys, /mint, /melt, /split, /check, /restore, etc.) that duplicated the old pre-v1 surface.
  • tests/mint/test_mint_api_deprecated.py - already fully skipped; removed.
  • tests/fuzz/test_fuzz_mint_api_deprecated.py - fuzzing only the removed routes; removed.

Mint app

  • cashu/mint/app.py - mounts only the v1 router (no deprecated router). The file on disk already matched this after the edits.

Settings

  • debug_mint_only_deprecated removed from cashu/core/settings.py. It only toggled “deprecated-only” vs “v1 + deprecated”; with v0 gone it has no use.

Tests & helpers

  • tests/helpers.py - dropped is_deprecated_api_only.
  • All tests that branched on debug_mint_only_deprecated / is_deprecated_api_only were simplified (always exercise v1 behavior, or drop obsolete skipif / pytest.skip).
  • tests/mint/test_mint_melt.py - skip reason is now “only FakeWallet”; condition is not is_fake only.

CI / docs

  • .github/workflows/tests.yml, ci.yml, tests_redis_cache.yml - removed mint-only-deprecated input, matrix dimension, and DEBUG_MINT_ONLY_DEPRECATED env.
  • CONTRIBUTING.md - removed the “V0 API only” / DEBUG_MINT_ONLY_DEPRECATED subsection.

Not removed

  • Pydantic *_deprecated models in cashu/core/models.py and PostMeltResponse_deprecated usage in cashu/wallet/v1_api.py stay for interoperability with older mint JSON, not for serving the removed routes.

@github-project-automation github-project-automation bot moved this to Backlog in nutshell Mar 30, 2026
@b-l-u-e b-l-u-e marked this pull request as draft March 30, 2026 06:07
@codecov
Copy link
Copy Markdown

codecov bot commented Mar 30, 2026

❌ 1 Tests Failed:

Tests completed Failed Passed Skipped
202 1 201 21
View the top 1 failed test(s) by shortest run time
::tests.mint.test_mint_melt
Stack Traces | 0s run time
tests/mint/test_mint_melt.py:779: in <module>
    @pytest.mark.skipif(is_deprecated_api_only, reason="Can't run on the deprecated API")
E   NameError: name 'is_deprecated_api_only' is not defined

To view more test analytics, go to the Test Analytics Dashboard
📋 Got 3 mins? Take this short survey to help us improve Test Analytics.

@b-l-u-e b-l-u-e closed this Mar 31, 2026
@github-project-automation github-project-automation bot moved this from Backlog to Done in nutshell Mar 31, 2026
@b-l-u-e
Copy link
Copy Markdown
Contributor Author

b-l-u-e commented Mar 31, 2026

CI failed tests shows error

tests/mint/test_mint_melt.py:779: in <module>
    @pytest.mark.skipif(is_deprecated_api_only, reason="Can't run on the deprecated API")
E   NameError: name 'is_deprecated_api_only' is not defined

current workspace file ends at line 767 and has no line 779

@b-l-u-e b-l-u-e reopened this Mar 31, 2026
@b-l-u-e b-l-u-e marked this pull request as ready for review March 31, 2026 11:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant