跳转到主要内容

DKIST数据的机器可读FITS规范。

项目描述

DKIST数据的机器可读FITS规范。

此仓库包含DKIST规范(FITS文件)的机器可读版本。

此仓库与dkist-header-validator一起使用,以验证SPEC122或SPEC214数据是否符合这些DKIST规范。要使用验证器,请点击此处并按照安装说明进行操作。

用法

此仓库包含DKIST规范122(0级FITS文件)、214 l0(数据中心导入文件)和214(1级FITS文件)的机器可读版本。有两个子模块spec122spec214,它们分别提供load_spec122()、load_level0_spec214()和load_spec214()函数,返回每个规范的“简单”模式。spec214模块还提供了一个load_full_spec214()函数,它提供了用于生成214文档的模式的额外元数据。最后,spec122spec214还提供了load_processed_spec[122,214],它根据输入的L1头调整模式。load_processed_spec[122,214]是每个规范的最高级“给我实际的规范”函数。

版本

版本号

此仓库的版本号遵循以下格式

vX.Y.Z

此仓库的版本号不遵循Python包中的语义版本控制,它使用以下解释对规范进行版本控制

  • X:此数字将在任何导致 FITS 头部向后不兼容更改的更改时递增。这可以包括删除键或以任何方式更改键的解释,例如更改单位。任何可能导致脚本(用于处理我们的头部之一)产生不同结果的更改都需要更改此数字。

  • Y:此数字将在对头部的任何向后兼容更改时递增。这意味着任何导致头部中的任何字符更改(除显然的值外)的更改,因此这可以包括更改描述值的注释或向头部添加新键。更改头部中键的顺序或在 COMMENTHISTORY 卡中的字段不需要更改此数字,但更改值注释时需要(因为这些可能被解析以提取单位等)。

  • Z:此数字将在不会导致 FITS 头部更改的任何更改时递增。这意味着任何更改到 Python API、基础设施或其他内容的更改。Python API 不应在此数字递增之间被视为稳定。

变更日志

当你对这个存储库进行任何更改时,它必须附有一个变更日志文件。此存储库的变更日志使用 towncrier 包。下一个版本变更日志的条目作为单独的文件(每个更改一个)添加到 changelog/ 目录中。

编写变更日志条目

伴随更改的变更日志条目应添加到 changelog/ 目录。此目录中文件的名称遵循特定的模板。

<PULL REQUEST NUMBER>.<TYPE>[.<COUNTER>].rst

字段具有以下含义

  • <PULL REQUEST NUMBER>:这是拉取请求的编号,因此人们可以从变更日志条目跳转到 BitBucket 上的 diff。

  • <TYPE>:这是更改的类型,必须是以下描述的值之一。

  • <COUNTER>:这是一个可选字段,如果你对同一种类型的更改进行了多次更改,你可以在后续更改中追加计数器,例如,对于同一 PR 中的两个错误修复更改,可以使用 100.bugfix.rst100.bugfix.1.rst

可能类型的列表定义在 pyproject.toml 的 towncrier 部分,类型如下

  • spec_breaking:这是对 FITS 头部进行向后不兼容更改的更改。如果发布中包含此类更改,则 版本号中的第一个数字必须递增

  • spec_change:这是对 FITS 头部进行向后兼容更改的更改。如果发布中包含此类更改,则 版本号中的第二个数字必须递增

  • code_breaking:这是破坏 Python API 的更改。Python API 的更改仅递增最后一个版本号,因此在变更日志中清晰地记录发布以破坏性方式更改 API 很重要。

  • code_feature:这是一个向后兼容更改,例如新功能。

  • bugfix:这是一个修复 Python API 中错误(但不会导致头部出现结果更改)的更改。

  • doc:文档更改。

  • deprecation:这是一个引入警告,指出 Python API 中的功能将在未来更改的更改。

  • trivial:任何不适合其他地方的微小更改,例如对包基础设施的更改。

发布时渲染更改日志

在您准备标记一个版本时,首先必须运行 towncrier 来渲染更改日志。以下是此步骤:

  • 使用 pip install towncrier 安装 towncrier。

  • 使用您想要标记的版本号运行 towncrier build –version vx.y.z

  • 同意 towncrier 删除片段。

  • 添加并提交您的更改。

  • 标记发布。

文档

请注意,此仓库使用 sphinx-automodapi 而不是 autoapi,因为许多其他 DKIST DC 仓库,以便对有限的 Python API 的渲染有更多的控制。

许可

本项目版权所有(c)AURA/NSO,并依据 BSD 3-Clause 许可条款授权。本软件包基于Openastronomy 打包指南,该指南采用 BSD 3-clause 许可证。有关更多信息,请参阅许可证文件夹。

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载您平台对应的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

dkist_fits_specifications-4.6.0.tar.gz (67.5 kB 查看散列值)

上传时间 源代码

构建分发

dkist_fits_specifications-4.6.0-py3-none-any.whl (72.1 kB 查看散列值)

上传时间 Python 3

支持