diff --git a/.gitignore b/.gitignore index db7d9d0..8979e87 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,20 @@ /hatchling-0.22.0.tar.gz /hatchling-0.24.0.tar.gz /hatchling-0.25.0.tar.gz +/hatchling-1.0.0.tar.gz +/hatchling-1.1.0.tar.gz +/hatchling-1.2.0.tar.gz +/hatchling-1.3.0.tar.gz +/hatchling-1.3.1.tar.gz +/hatchling-1.4.1.tar.gz +/hatchling-1.5.0.tar.gz +/hatchling-1.6.0.tar.gz +/hatchling-1.8.0.tar.gz +/hatchling-1.8.1.tar.gz +/hatchling-1.9.0.tar.gz +/hatchling-1.10.0.tar.gz +/hatchling-1.11.0.tar.gz +/hatchling-1.11.1.tar.gz +/hatchling-1.12.1.tar.gz +/hatchling-1.12.2.tar.gz +/hatchling-1.13.0.tar.gz diff --git a/0001-Downstream-only-loosen-dependency-versions-for-EPEL9.patch b/0001-Downstream-only-loosen-dependency-versions-for-EPEL9.patch new file mode 100644 index 0000000..7687abe --- /dev/null +++ b/0001-Downstream-only-loosen-dependency-versions-for-EPEL9.patch @@ -0,0 +1,29 @@ +From f80ce20f38f90d356fa5e7a986059b36853c5310 Mon Sep 17 00:00:00 2001 +From: "Benjamin A. Beasley" +Date: Mon, 24 Jul 2023 11:30:02 -0400 +Subject: [PATCH] Downstream-only: loosen dependency versions for EPEL9 + +See discussion in https://bugzilla.redhat.com/show_bug.cgi?id=2158497. +--- + backend/pyproject.toml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/backend/pyproject.toml b/backend/pyproject.toml +index 5b3e42f6..cca9f2dc 100644 +--- a/backend/pyproject.toml ++++ b/backend/pyproject.toml +@@ -37,9 +37,9 @@ classifiers = [ + dependencies = [ + "editables>=0.3", + "importlib-metadata; python_version < '3.8'", +- "packaging>=21.3", ++ "packaging>=20.9", + "pathspec>=0.10.1", +- "pluggy>=1.0.0", ++ "pluggy>=0.13.1", + "tomli>=1.2.2; python_version < '3.11'", + ] + +-- +2.41.0 + diff --git a/hatchling-build.1 b/hatchling-build.1 new file mode 100644 index 0000000..943805f --- /dev/null +++ b/hatchling-build.1 @@ -0,0 +1,40 @@ +.TH HATCHLING\-BUILD "1" "October 2022" "" "User Commands" +.SH NAME +.B hatchling\ build +.SH SYNOPSIS +.B hatchling\ build +.RB [ \-h ] +.RB [ \-d ] +.RB [ \-t ] +.RB [ \-\-hooks\-only ] +.RB [ \-\-no\-hooks ] +.RB [ \-c ] +.RB [ \-\-clean\-hooks\-after ] +.RB [ \-\-clean\-only ] +.SH OPTIONS +.SS "OPTIONAL\ ARGUMENTS" +.TP +.B \-h\fR,\ \fB\-\-help +Show a help message and exit +.TP +.B \-d\fR,\ \fB\-\-directory +The directory in which to build artifacts +.TP +.B \-t\fR,\ \fB\-\-targets +Comma-separated list of targets to build, overriding project defaults +.TP +.B \-\-hooks\-only +.TP +.B \-\-no\-hooks +.TP +.B \-c\fR,\ \fB\-\-clean +.TP +.B \-\-clean\-hooks\-after +.TP +.B \-\-clean\-only +.SH "SEE\ ALSO" +.BR hatchling\-dep (1), +.BR hatchling\-metadata (1), +.BR hatchling\-version (1) +.P +.BR hatchling (1) diff --git a/hatchling-dep-synced.1 b/hatchling-dep-synced.1 new file mode 100644 index 0000000..7199db2 --- /dev/null +++ b/hatchling-dep-synced.1 @@ -0,0 +1,22 @@ +.TH HATCHLING\-DEP\-SYNCED "1" "October 2022" "" "User Commands" +.SH NAME +.B hatchling\ dep\ synced +.SH SYNOPSIS +.B hatchling\ dep\ synced +.RB [ \-h ] +.RB [ \-p ] +.I dependencies +.RI [ dependencies \ ...] +.SH OPTIONS +.SS "POSITIONAL\ ARGUMENTS" +.TP +.I dependencies +.SS "OPTIONAL\ ARGUMENTS" +.TP +.B \-h\fR,\ \fB\-\-help +Show a help message and exit +.TP +.B \-p\fR,\ \fB\-\-python +.SH "SEE\ ALSO" +.BR hatchling\-dep (1), +.BR hatchling (1) diff --git a/hatchling-dep.1 b/hatchling-dep.1 new file mode 100644 index 0000000..419824f --- /dev/null +++ b/hatchling-dep.1 @@ -0,0 +1,25 @@ +.TH HATCHLING\-DEP "1" "October 2022" "" "User Commands" +.SH NAME +.B hatchling\ dep +.SH SYNOPSIS +.B hatchling\ dep +.RB [ \-h ] +.RB { synced }\ ... +.SH OPTIONS +.SS "COMMANDS" +.TP +.B synced +See +.BR hatchling\-dep\-synced (1). +.SS "OPTIONAL\ ARGUMENTS" +.TP +.B \-h\fR,\ \fB\-\-help +Show a help message and exit +.SH "SEE\ ALSO" +.BR hatchling\-dep\-synced (1) +.P +.BR hatchling\-build (1), +.BR hatchling\-metadata (1), +.BR hatchling\-version (1) +.P +.BR hatchling (1) diff --git a/hatchling-metadata.1 b/hatchling-metadata.1 new file mode 100644 index 0000000..bdd98a1 --- /dev/null +++ b/hatchling-metadata.1 @@ -0,0 +1,24 @@ +.TH HATCHLING\-METADATA "1" "October 2022" "" "User Commands" +.SH NAME +.B hatchling\ metadata +.SH SYNOPSIS +.B hatchling\ metadata +.RB [ \-h ] +.RB [ \-c ] +.RI [ field ] +.SH OPTIONS +.SS "POSITIONAL\ ARGUMENTS" +.TP +.I field +.SS "OPTIONAL\ ARGUMENTS" +.TP +.B \-h\fR,\ \fB\-\-help +Show a help message and exit +.TP +.B \-c\fR,\ \fB\-\-compact +.SH "SEE\ ALSO" +.BR hatchling\-build (1), +.BR hatchling\-dep (1), +.BR hatchling\-version (1) +.P +.BR hatchling (1) diff --git a/hatchling-version.1 b/hatchling-version.1 new file mode 100644 index 0000000..df0607e --- /dev/null +++ b/hatchling-version.1 @@ -0,0 +1,18 @@ +.TH HATCHLING\-VERSION "1" "October 2022" "" "User Commands" +.SH NAME +.B hatchling\ version +.SH SYNOPSIS +.B hatchling\ version +.RB [ \-h ] +.SH OPTIONS +.\" .SS "POSITIONAL\ ARGUMENTS" +.SS "OPTIONAL\ ARGUMENTS" +.TP +.B \-h\fR,\ \fB\-\-help +Show a help message and exit +.SH "SEE\ ALSO" +.BR hatchling\-build (1), +.BR hatchling\-dep (1), +.BR hatchling\-metadata (1) +.P +.BR hatchling (1) diff --git a/hatchling.1 b/hatchling.1 index 64f24ef..91c5d25 100644 --- a/hatchling.1 +++ b/hatchling.1 @@ -1,24 +1,39 @@ -.TH HATCHLING "1" "February 2022" "" "User Commands" +.TH HATCHLING "1" "October 2022" "" "User Commands" .SH NAME .B hatchling \(en the build backend used by Hatch .SH SYNOPSIS .B hatchling .RB [ \-h ] -.RB { build , dep , version }\ ... +.RB { build , dep , metadata , version }\ ... .SH DESCRIPTION This is the extensible, standards compliant build backend used by Hatch. .SH OPTIONS -.SS "POSITIONAL\ ARGUMENTS" +.SS "COMMANDS" .TP .B build +See +.BR hatchling\-build (1). .TP .B dep +See +.BR hatchling\-dep (1). +.TP +.B metadata +See +.BR hatchling\-metadata (1). .TP .B version +See +.BR hatchling\-version (1). .SS "OPTIONAL\ ARGUMENTS" .TP .B \-h\fR,\ \fB\-\-help -show a help message and exit +Show a help message and exit .SH "SEE\ ALSO" +.BR hatchling\-build (1), +.BR hatchling\-dep (1), +.BR hatchling\-metadata (1), +.BR hatchling\-version (1) +.P .BR hatch (1) diff --git a/python-hatchling.spec b/python-hatchling.spec index 5a6f66a..4e46dd0 100644 --- a/python-hatchling.spec +++ b/python-hatchling.spec @@ -1,18 +1,27 @@ Name: python-hatchling -Version: 0.25.0 +Version: 1.13.0 Release: %autorelease Summary: The build backend used by Hatch +# SPDX License: MIT URL: https://pypi.org/project/hatchling Source0: %{pypi_source hatchling} -# Man page in groff_man(7) format, hand-written for Fedora based on package -# metadata and --help output -Source1: hatchling.1 +# Written for Fedora in groff_man(7) format based on --help output +Source100: hatchling.1 +Source200: hatchling-build.1 +Source300: hatchling-dep.1 +Source310: hatchling-dep-synced.1 +Source400: hatchling-metadata.1 +Source500: hatchling-version.1 + +Patch: 0001-Downstream-only-loosen-dependency-versions-for-EPEL9.patch BuildArch: noarch BuildRequires: python3-devel +# RHBZ#1985340, RHBZ#2076994 +BuildRequires: pyproject-rpm-macros >= 1.2.0 %global common_description %{expand: This is the extensible, standards compliant build backend used by Hatch.} @@ -27,31 +36,11 @@ Summary: %{summary} %prep -%autosetup -n hatchling-%{version} - -# F35, EPEL9, and older: -# The changes between pluggy 0.13.1 and 1.0.0 should not be significant, so we -# loosen the minimum version. -sed -r -i 's/(pluggy>=)1\.0\.0/\10.13.1/' src/hatchling/ouroboros.py -# EPEL9: -# Since hatchling uses packaging 20.9 for Python 2, we hope and expect it can -# work for Python 3 as well. -sed -r -i 's/(packaging>=)21\.3/\120.9/' src/hatchling/ouroboros.py +%autosetup -n hatchling-%{version} -p2 %generate_buildrequires -# Cannot use -r (the default) with hatchling: “ValueError: build backend cannot -# provide build metadata (incl. runtime requirements) before build”. We work -# around this by writing the dependencies from src/hatchling/ourobororos.py -# into a text file. -PYTHONPATH="${PWD}/src" '%{python3}' <