注意

目前文件中的此節已過時。

pip 開發人員歡迎您的協助更新此文件。如果您有興趣提供協助,請讓我們在 追蹤問題 中知道,或提交拉取請求並在追蹤問題中提及。

持續整合

支援的詮譯器

pip 支援各種 Python 詮譯器

  • CPython 3.8

  • CPython 3.9

  • CPython 3.10

  • CPython 3.11

  • CPython 3.12

  • 最新的 PyPy3

在不同的作業系統中

  • Linux

  • Windows

  • macOS

以及不同的架構

  • x64

  • x86

因此有 42 個假設的詮譯器。

檢查

pip CI 執行不同類型的測試

  • linter (定義於 .pre-commit-config.yaml 中)

  • 文件

  • 打包 (是否整潔打包 src/_internal/_vendor 目錄)

  • 單元測試 (出現在 tests/unit 中)

  • 「整合」測試 (大多出現在 tests/functional 中)

  • 套件 (測試封裝步驟)

由於 linter、文件、打包和套件測試只需在 pip 開發人員/貢獻者的電腦中執行,因此它們只需要在 3 個不同作業系統的 x64 版本中進行測試,而且當需要指定詮譯器時,要求採用最新的 CPython 詮譯器即可。

因此,只有單元測試和整合測試需要使用不同的詮譯器執行。

服務

pip 測試套件和檢查分佈在 GitHub Actions 上,它為開放原始碼套件提供免費執行器。

目前執行的測試

開發人員任務

OS

文件

linter

打包

封裝

Linux

GitHub

GitHub

GitHub

GitHub

Windows

GitHub

GitHub

GitHub

GitHub

macOS

GitHub

GitHub

GitHub

GitHub

實際測試

詮譯器

單元

整合

Windows

x86

CP3.8

CP3.9

CP3.10

CP3.11

CP3.12

PyPy3

x64

CP3.8

GitHub

GitHub

CP3.9

CP3.10

CP3.11

GitHub

GitHub

CP3.12

PyPy3

Linux

x86

CP3.8

CP3.9

CP3.10

CP3.11

CP3.12

PyPy3

x64

CP3.8

GitHub

GitHub

CP3.9

GitHub

GitHub

CP3.10

GitHub

GitHub

CP3.11

GitHub

GitHub

CP3.12

GitHub

GitHub

PyPy3

macOS

arm64

CP3.8

CP3.9

CP3.10

CP3.11

CP3.12

PyPy3

x64

CP3.8

GitHub

GitHub

CP3.9

GitHub

GitHub

CP3.10

GitHub

GitHub

CP3.11

GitHub

GitHub

CP3.12

GitHub

GitHub

PyPy3