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

未關閉
#594 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 1 天內回覆

還沒有人認領這個 Issue。

評估

難度
4/5
預估耗時
3-5 天
新手友好度
42/100
Issue 類型
文件
描述清晰度
基本清楚
活躍度
冷清
技術堆疊
python
領域
documentation

研究方向

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.

由索引模型根據 Issue 內容生成。

描述

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

主要語言
Python
星號
214
分支
68
平均合併
51 分鐘
30 天內合併 PR
6

環境準備

  • 沒有 Dockerfile 或 Docker Compose 檔案
  • 沒有 Pull Request 範本
  • 閱讀貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

Backblaze/b2-sdk-python 的其他 Issue

查看 Backblaze/b2-sdk-python 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。