5 个版本

新增 0.1.39 2024年8月20日
0.1.38 2024年6月29日
0.1.37 2024年6月2日
0.1.36 2023年9月11日
0.1.35 2023年5月23日

#206 in 开发工具

Download history 132/week @ 2024-05-30 25/week @ 2024-06-06 3/week @ 2024-06-13 235/week @ 2024-06-27 33/week @ 2024-07-04 12/week @ 2024-07-25 2/week @ 2024-08-01 152/week @ 2024-08-15

166 每月下载量

GPL-2.0+

540KB
13K SLoC

包含 (autotools obfuscated code, 1KB) testdata/native/configure, (autotools obfuscated code, 1KB) testdata/configure/configure

上游本体学家

上游本体学家为查找上游软件项目的元数据提供了一个通用接口。

它将从任何可用的来源收集信息,优先考虑它更有信心的数据,并为每条元数据报告置信度。

本体学家起源于 Debian,目前报告的元数据字段是基于 DEP-12,但它旨在不受发行版限制。

提供字段

标准字段

  • Homepage: 主页 URL
  • Name: 上游项目的名称
  • Contact: 上游的某种联系方式(电子邮件、邮件列表 URL)
  • Repository: 版本控制系统 URL
  • Repository-Browse: 查看 VCS 的 Web URL
  • Bug-Database: 故障数据库 URL(通常是 Web 查看)
  • Bug-Submit: 提交新故障的 URL(可以是 Web 或电子邮件地址)
  • Screenshots: 包含截图的 URL 列表
  • Archive: 使用的存档 - 例如 SourceForge
  • Security-Contact: 报告安全问题的电子邮件或 URL(包含说明)
  • Documentation: 指向 Web 上的文档的链接

upstream-ontologist 的扩展,未定义在 DEP-12 中

  • SourceForge-Project: sourceforge 项目名称
  • Wiki: Wiki URL
  • Summary: 项目的单行描述
  • Description: 项目的更长描述
  • License: 单行许可证(例如“GPL 2.0”)
  • Copyright: 版权所有者列表
  • Version: 当前上游版本
  • 安全-MD:安全策略的markdown文件URL
  • 作者:为项目做出贡献的人员名单
  • 维护者:项目的维护者
  • 资助:更多资助信息的URL

支持的数据源

目前,本体论者可以读取以下上游数据源中的元数据

它还会扫描README和INSTALL以查找可能的上游存储库URL(并尝试验证这些URL与本地存储库匹配)。

除了本地文件外,它还可以使用它们的API咨询外部目录

示例用法

使用上游本体论最简单的方法是在软件项目中调用guess-upstream-metadata命令

$ guess-upstream-metadata ~/src/dulwich
Security-MD: https://github.com/dulwich/dulwich/tree/HEAD/SECURITY.md
Name: dulwich
Version: 0.20.15
Bug-Database: https://github.com/dulwich/dulwich/issues
Repository: https://www.dulwich.io/code/
Summary: Python Git Library
Bug-Submit: https://github.com/dulwich/dulwich/issues/new

或者,还有一个Python API。还有autocodemetaautodoap命令,分别可以生成codemetaDOAP格式的输出。

依赖关系

~29–50MB
~1M SLoC