aboutcode-org / aboutcode-org/skeleton

Use correct PEP 440 fallback version

未关闭
#86 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Python
星标
9
派生
9
PR 合并指标
30 天内没有已合并 PR

描述

The current fallback version generates an incorrect result when git `export-subst` is applied to replace the placeholders; and pip and setuptools complain with this error message (when using fetchcode@0.3.0 to explore the process):

```
setuptools.extern.packaging.version.InvalidVersion: Invalid version: '9999.d0a3fa9-2023-12-19'
```

We should instead use this modified fallback version:

```
fallback_version = "9999+$Format:%h$"
```

See, e.g.,
- https://peps.python.org/pep-0440/
- https://packaging.python.org/en/latest/specifications/version-specifiers/#local-version-identifiers
- https://git-scm.com/docs/gitattributes#_creating_an_archive

and
- https://github.com/nexB/fetchcode/blob/v0.3.0/pyproject.toml#L8 (example of our current fallback version syntax -- this generated the `InvalidVersion` error noted above)

```
[tool.setuptools_scm]
# this is used populated when creating a git archive
# and when there is .git dir and/or there is no git installed
fallback_version = "9999.$Format:%h-%cs$"
```

- https://github.com/nexB/fetchcode/blob/v0.3.0/.gitattributes

```
# Ignore all Git auto CR/LF line endings conversions
* -text
pyproject.toml export-subst
```

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。