B2 SDK docs: add a practical v0-v3 interface compatibility and migration matrix

Offen
#594 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
42/100
Issue-Typ
Dokumentation
Klarheit
Größtenteils klar
Aktivitätsstatus
Ruhig
Tech-Stack
python
Bereich
documentation

Rechercherichtung

Start with doc/source/api_types.rst, which explains numbered interfaces but has no support table. Compare the b2sdk.v1 and b2sdk.v3 imports from the steps to reproduce, and find the compatibility adapters and the tests that preserve v0 to v3 behavior. Done means a matrix plus before-and-after examples for each transition, covering the v1 raw_api argument, the v2 worker defaults and the v0 raw list/delete responses.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Description

doc/source/api_types.rst explains why numbered interfaces exist, but it does not distinguish the installed package version from the imported interface version with a concrete support table. It also does not show how v0, v1, v2, and v3 differ or how to migrate between them. Users must inspect compatibility adapters and release history to discover differences such as v2 worker defaults, v1's legacy raw_api constructor argument and return types, and v0's raw list/delete responses.

Steps to reproduce

from b2sdk.v1 import B2Api as V1B2Api
from b2sdk.v3 import B2Api as V3B2Api

# The documentation does not provide a migration checklist between these APIs.

Expected behavior

Documentation should distinguish package versions such as 2.12.0 from interface imports such as b2sdk.v3. It should provide a support matrix and migration notes for each transition, organized around changed imports, constructor and method signatures, defaults, return values, exception types, and removed or renamed helpers. Each transition should include a minimal before-and-after example and point to the tests that preserve the old behavior.

Actual behavior

The compatibility concept is documented, but users cannot answer practical questions such as "what must change when moving from v1 to v3?" or "can I upgrade the installed package while retaining a v1 import?" from a single authoritative page. That increases migration risk and encourages indefinite use of older interfaces.

Environment

  • Python version: Any supported version
  • b2sdk version: master at f3ab7b71
  • OS: Any

Vorherrschende Sprache
Python
Sterne
214
Forks
68
Ø Merge
51 Min.
Gemergte PRs (30 T.)
6

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus Backblaze/b2-sdk-python

Alle Issues in Backblaze/b2-sdk-python

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.