开发#

入门#

贡献#

建筑#

数据模型和规范#

教程#

路线图#

系统管理#

  • 网络基础设施

  • 描述了解什么是软件遗产镜像以及如何设置

  • 钥匙斗篷学习如何使用钥匙斗篷,使用的身份验证系统软件遗产的web界面和公共API

组件#

以下是软件中最相关软件组件的简要概述传统堆栈,按字母顺序排列。有关架构的更好介绍,请参阅软件体系结构概述,它以说教的顺序呈现了他们每一个人。

每个组件名称都链接到开发文档对应Python模块的。

swh.alter(开关更改)

档案更改设施

swh.auth认证

需要密钥斗篷身份验证的模块使用的低级库

开关磁芯

中几乎所有其他模块使用的低级实用程序和帮助程序堆栈

开关量计数器

为SWH档案中的对象数量提供有效估计的服务,使用Redis的Hyperloglog

swh.数据集

软件发布的存档的公共数据集和定期数据转储遗产

swh.存款

基于推送的软件工件存档

swh.docs软件

开发人员文档(用于生成您正在阅读的文档)

开关保险丝

用于浏览Software Heritage存档的虚拟文件系统,基于保险丝

swh.图形

存档的快速、压缩、内存中表示,使用工具生成并查询它。

swh.graphql

GraphQL API用于请求存档数据,提供更精确、更灵活的查询而不是REST API。

swh.索引器

用于抓取归档和提取内容的工具和工作人员从存储在其中的任何工件派生的信息

swh.日志

存档更改的持久记录器,支持发布订阅

swh.lister(交换机列表器)

各种源代码托管和分发的列表器集合位置(伪造、分发、包管理器等)

swh.装载机核心

所有其他加载程序使用的低级加载实用程序和帮助程序

swh.装载机-bzr

的加载器集市呼吸急促存储库

swh.loader-位

装载机吉特存储库

swh.装载机-水银

的加载器Mercurial公司存储库

swh.loader-元数据

伪加载程序,它获取外部元数据取而代之的是伪造品软件工件的

swh.loader-svn软件

装载机颠覆存储库

swh.loader-cvs装载机

装载机并行版本系统存储库

swh.型号

实施数据模型归档源代码工件

swh.obj存储

内容可寻址对象存储

swh.objstorage.replayer软件

对象存储复制工具

swh.perfecthash码

只读内容可寻址对象存储的低级管理用完美的哈希表索引

swh.扫描仪

源代码扫描程序,用于分析代码库并将其与源代码进行比较软件遗产归档的工件

swh.调度器

用于异步/延迟任务的任务管理器,用于重复(例如。,列出锻造、从Git存储库加载新内容)和一次性活动(例如,加载源包的特定版本)

swh.洗涤器

用于检查各种数据存储完整性的工具(swh.joard、swh.objstorage、,存储)并修复其中包含的损坏对象。

swh.搜索

档案搜索引擎

swh.存储

存档上的抽象层,允许访问所有存储的源代码工件及其元数据

swh.vault软件

vault服务的实现,允许检索将其归档为自包含的捆绑包(例如,单个发布、整个存储库快照等)

swh.web网站

用于浏览存档的Web应用程序,两者都是交互式的(HTML UI)和机械化(REST API)使用

swh.web.客户端

Python客户端swh.web

依赖关系#

各模块之间的依赖关系如下所示。

../_images/py-deps-swh.svg

顶级Python模块之间的依赖关系(单击可缩放)。#

档案文件#