目录要求
目录要求
查找和安装包需要几个步骤
- 发现:哪个模块能满足我的需求?
- 下载:我在哪里可以获取一份副本?
- 安全:这真的是来自包作者的吗,而不是木马?
- 安装:我如何编译、安装和设置这个包?
- 更新:包的最新版本是什么?我需要为我的系统获取一个更新版本吗?
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.)