注意: 雖然 JavaScript 對於本網站不是必需的,但您與內容的互動將受到限制。請開啟 JavaScript 以獲得完整的體驗。

目錄要求

目錄要求

查詢和安裝包需要幾個步驟

  1. 發現:哪個模組能滿足我的需求?
  2. 下載:我在哪裡可以獲取一份副本?
  3. 安全:這真的是來自包作者的嗎,而不是木馬?
  4. 安裝:我如何編譯、安裝和設定這個包?
  5. 更新:包的最新版本是什麼?我需要為我的系統獲取一個更新版本嗎?

Distutils SIG 專注於最困難和最複雜的第4步,因此 Catalog SIG 不需要真正關心這個問題。

來自#1的要求

1.1) 使用者可以瀏覽可用包的列表,瀏覽像 Parnassus 這樣的層次結構,或者進行關鍵字搜尋。

1.2) 包也按作者和日期索引,因此您可以檢視 Moshe 的所有包,或最近更改的10個包。

1.3) 對於每個作者,其姓名、電子郵件和主頁URL都會被儲存。

1.4) 包的資訊只從包的 setup.py 檔案中包含的元資料中提取。這確保了資訊是最新的,省去了使用者輸入資料的麻煩,並鼓勵人們使用 Distutils。

來自#2的要求

2.1) 給定一個包名,軟體可以檢索該包的一個或多個下載URL。

2.2) 目錄應該保留程式碼副本,而不僅僅是指向遠端站點,以防止災難發生。

2.3) 使用常規的FTP或HTTP映象指令碼,應該可以輕鬆映象目錄。

來自#3的要求

3.1) 使用者可以使用外部工具(如 GnuPG)檢查下載包上的簽名。

3.2) 檢查簽名是可選的,如果外部工具不可用,則可以跳過。(我們可以用 Python 程式碼實現自己的簽名方案,但那是個壞主意;安全性很難,而且很少有人會費心生成僅對分發 Python 模組有用的金鑰。)

相關要求:Distutils 的 sdist 和 bdist_* 命令應該有一個 --sign 開關來簽署生成的 .tgz、.rpm 或其他檔案。

來自#4的要求

來自#5的要求

此頁面未涵蓋。這包括檢查更新版本、跟蹤Python包之間以及Python包與系統庫之間的依賴關係。這些似乎是需要系統上安裝的Python包資料庫的難題。

Information about a package
===========================
Name
Version
Supported Platforms
Description
Keywords
Homepage URL
Author IDs
License
Download link
Date of release

Left out for now:
Dependency information 

Information about an author
===========================
Name
Home page
GnuPG/PGP key (both the actual key, and just the ID)
E-mail address (used as ID?)
E-mail address public: y/n

Information about a document
============================
Name
Author
Description
URL of HTML version
URL of printable version
URL and format of downloadable version
  (Any of these URLs can be omitted if not applicable.)