public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/lxml/
Date: Wed, 20 Dec 2023 08:29:17 +0000 (UTC)	[thread overview]
Message-ID: <1703060952.ac323b3271e81e81f38b97338690ab9a19b59b07.mgorny@gentoo> (raw)

commit:     ac323b3271e81e81f38b97338690ab9a19b59b07
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 20 07:27:03 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Dec 20 08:29:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac323b32

dev-python/lxml: Bump to 4.9.4

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/lxml/Manifest          |   1 +
 dev-python/lxml/lxml-4.9.4.ebuild | 118 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 119 insertions(+)

diff --git a/dev-python/lxml/Manifest b/dev-python/lxml/Manifest
index a697a511ea4f..b4b0fb7d9d74 100644
--- a/dev-python/lxml/Manifest
+++ b/dev-python/lxml/Manifest
@@ -1,2 +1,3 @@
 DIST lxml-4.9.3-patches-2.tar.xz 24288 BLAKE2B 47b7c486a1c1616c875111bd53b14d4211a1eee3f412985f4022e71b85b087abd71d36919fb025257f17de404329284898ddc639f85e8b15ade21778fa218d98 SHA512 713172b4c907db6479a0a803a842824825b212a9b645c1ca356f793658bd6c63113ea248278e7c46b512e22e3130696e9fc5127fea82a67372d920733fc160b0
 DIST lxml-4.9.3.gh.tar.gz 958628 BLAKE2B ffdf3fe781a03815f7c026229d313721c93375ebafad9b4a20c5d8a380a631401e546d8701a94d8c49615fb6a71e84940d8ca0299b47a37c1c9596db36659113 SHA512 903bd4935c7708b459aee9befcf3f6e3e3aaa9adc122591ea923b6e3d8fd288f07cab3f5f0edb08e3bf9db80414324f0a1a8e5a5089f9cda82f6c50f5df59423
+DIST lxml-4.9.4.gh.tar.gz 960009 BLAKE2B 7d31095dcf1f73c1026e7378e6adb19a053edc116b119ae415c3324134d3700822bf4611dc3cbf7c216d396e1404b143c8ebfdfb7e5a71b9ef6ec187898cc699 SHA512 528ef4ae057a7ee54d3193a042a6db500ada883d1d506829b6824d91ec979feb69ec79239420112eae0e08a437b2e5da8efc35feb5d04d119bfae2679e918d29

diff --git a/dev-python/lxml/lxml-4.9.4.ebuild b/dev-python/lxml/lxml-4.9.4.ebuild
new file mode 100644
index 000000000000..2219b76e7dc6
--- /dev/null
+++ b/dev-python/lxml/lxml-4.9.4.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 optfeature toolchain-funcs
+
+DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries"
+HOMEPAGE="
+	https://lxml.de/
+	https://pypi.org/project/lxml/
+	https://github.com/lxml/lxml/
+"
+SRC_URI="
+	https://github.com/lxml/lxml/archive/${P}.tar.gz
+		-> ${P}.gh.tar.gz
+	https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.9.3-patches-2.tar.xz
+"
+S=${WORKDIR}/lxml-${P}
+
+LICENSE="BSD ElementTree GPL-2 PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc examples +threads test"
+RESTRICT="!test? ( test )"
+
+# Note: lib{xml2,xslt} are used as C libraries, not Python modules.
+DEPEND="
+	>=dev-libs/libxml2-2.10.3
+	>=dev-libs/libxslt-1.1.38
+"
+RDEPEND="
+	${DEPEND}
+"
+BDEPEND="
+	virtual/pkgconfig
+	>=dev-python/cython-0.29.35[${PYTHON_USEDEP}]
+	doc? (
+		$(python_gen_any_dep '
+			dev-python/docutils[${PYTHON_USEDEP}]
+			dev-python/pygments[${PYTHON_USEDEP}]
+			dev-python/sphinx[${PYTHON_USEDEP}]
+			dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
+		')
+	)
+	test? (
+		dev-python/cssselect[${PYTHON_USEDEP}]
+	)
+"
+
+PATCHES=(
+	"${WORKDIR}"/${PN}-4.9.3-patches-2
+)
+
+python_check_deps() {
+	use doc || return 0
+	python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
+}
+
+python_prepare_all() {
+	# avoid replacing PYTHONPATH in tests.
+	sed -i -e '/sys\.path/d' test.py || die
+
+	# don't use some random SDK on Darwin
+	sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
+		setupinfo.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	local DISTUTILS_ARGS=(
+		# by default it adds -w to CFLAGS
+		--warnings
+	)
+	tc-export PKG_CONFIG
+	distutils-r1_python_compile
+}
+
+python_compile_all() {
+	use doc && emake html
+}
+
+python_test() {
+	local dir=${BUILD_DIR}/test$(python_get_sitedir)/lxml
+	local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
+
+	cp -al "${BUILD_DIR}"/{install,test} || die
+	cp -al src/lxml/tests "${dir}/" || die
+	cp -al src/lxml/html/tests "${dir}/html/" || die
+	ln -rs "${S}"/doc "${dir}"/../../ || die
+
+	"${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}"
+}
+
+python_install_all() {
+	if use doc; then
+		local DOCS=( README.rst *.txt doc/*.txt )
+		local HTML_DOCS=( doc/html/. )
+	fi
+	if use examples; then
+		dodoc -r samples
+	fi
+
+	distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+	optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4
+	optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect
+}


             reply	other threads:[~2023-12-20  8:29 UTC|newest]

Thread overview: 335+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-20  8:29 Michał Górny [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-10-13 18:32 [gentoo-commits] repo/gentoo:master commit in: dev-python/lxml/ Sam James
2024-09-14 12:26 Arthur Zamarin
2024-09-14 12:12 Arthur Zamarin
2024-09-14 12:06 Arthur Zamarin
2024-09-14 12:06 Arthur Zamarin
2024-09-14 11:35 Arthur Zamarin
2024-09-14 11:31 Arthur Zamarin
2024-09-14 11:31 Arthur Zamarin
2024-07-02  3:56 Ionen Wolkens
2024-06-07 13:51 Arthur Zamarin
2024-06-06  1:58 Sam James
2024-06-06  1:58 Sam James
2024-06-05 19:59 Arthur Zamarin
2024-05-28 13:24 Sam James
2024-05-28 12:04 Michał Górny
2024-05-13 14:03 Michał Górny
2024-05-09 18:52 Michał Górny
2024-04-26 12:50 Sam James
2024-04-20 13:20 Sam James
2024-04-20 13:20 Sam James
2024-04-13 19:03 Arthur Zamarin
2024-04-13 18:45 Arthur Zamarin
2024-04-13 17:36 Sam James
2024-04-13 16:01 Arthur Zamarin
2024-04-13 16:01 Arthur Zamarin
2024-04-13 16:01 Arthur Zamarin
2024-04-03  6:02 Michał Górny
2024-04-01 10:26 Michał Górny
2024-03-29 20:09 Michał Górny
2024-03-29 15:28 Michał Górny
2024-03-27  3:37 Michał Górny
2024-03-26 20:17 Ionen Wolkens
2024-03-10 12:03 Arthur Zamarin
2024-03-10  9:16 Arthur Zamarin
2024-03-10  9:16 Arthur Zamarin
2024-02-14 16:48 Sam James
2024-01-06 11:54 Sam James
2024-01-06 11:07 Sam James
2024-01-06 10:27 Michał Górny
2024-01-06 10:08 Michał Górny
2024-01-06  9:54 Michał Górny
2024-01-06  9:50 Michał Górny
2024-01-06  9:50 Michał Górny
2024-01-06  6:31 Michał Górny
2023-12-30  5:00 Michał Górny
2023-11-19  6:34 Michał Górny
2023-11-16 16:22 Sam James
2023-11-11 20:17 Arthur Zamarin
2023-11-11 20:17 Arthur Zamarin
2023-11-11 20:02 Sam James
2023-11-11 20:02 Sam James
2023-11-11 19:22 Sam James
2023-11-11 19:21 Sam James
2023-11-11 19:21 Sam James
2023-10-24 19:50 Arthur Zamarin
2023-10-24 19:50 Arthur Zamarin
2023-10-08  4:48 Sam James
2023-10-06 14:49 Sam James
2023-10-03  1:51 Sam James
2023-10-03  1:51 Sam James
2023-09-28  4:21 Sam James
2023-09-21 20:11 Sam James
2023-08-26 17:24 Sam James
2023-07-26  3:11 Benda XU
2023-07-15  8:49 Arthur Zamarin
2023-07-13  9:54 Sam James
2023-05-24 19:03 Michał Górny
2023-05-04 16:17 Michał Górny
2023-01-14 17:25 Michał Górny
2023-01-14  8:07 Arthur Zamarin
2023-01-13 19:57 Sam James
2023-01-13 19:03 Arthur Zamarin
2023-01-13 19:03 Arthur Zamarin
2023-01-13 16:31 Arthur Zamarin
2023-01-13 14:50 Sam James
2023-01-13 14:50 Sam James
2023-01-13 14:50 Sam James
2022-12-14 10:58 Michał Górny
2022-10-15  3:11 Sam James
2022-07-07 19:06 Michał Górny
2022-07-07 17:05 Arthur Zamarin
2022-07-06  6:40 Agostino Sarubbo
2022-07-06  6:39 Agostino Sarubbo
2022-07-06  6:39 Agostino Sarubbo
2022-07-06  6:39 Agostino Sarubbo
2022-07-06  6:38 Agostino Sarubbo
2022-07-06  6:38 Agostino Sarubbo
2022-07-06  6:38 Agostino Sarubbo
2022-07-03 10:52 Agostino Sarubbo
2022-07-03 10:50 Agostino Sarubbo
2022-07-03 10:50 Agostino Sarubbo
2022-07-03 10:49 Agostino Sarubbo
2022-07-03 10:48 Agostino Sarubbo
2022-07-03  8:49 Agostino Sarubbo
2022-07-03  8:48 Agostino Sarubbo
2022-07-02  4:47 Michał Górny
2022-06-03  6:44 Sam James
2022-06-01  5:06 Sam James
2022-05-31  7:19 Sam James
2022-05-11 11:47 Michał Górny
2022-04-29  7:59 WANG Xuerui
2022-03-26 18:05 Arthur Zamarin
2022-03-26 18:05 Arthur Zamarin
2022-03-26 17:52 Arthur Zamarin
2022-03-21  9:18 Jakov Smolić
2022-03-21  7:50 Agostino Sarubbo
2022-03-21  7:48 Agostino Sarubbo
2022-03-21  7:47 Agostino Sarubbo
2022-03-20 20:31 Arthur Zamarin
2022-03-20 18:34 Sam James
2022-03-20 18:34 Sam James
2022-02-23 10:34 Michał Górny
2022-02-17 19:03 Michał Górny
2022-01-14 12:49 Michał Górny
2022-01-14 11:26 Arthur Zamarin
2022-01-14 11:25 Arthur Zamarin
2022-01-13 23:06 Jakov Smolić
2022-01-13 23:06 Jakov Smolić
2022-01-13 18:54 Arthur Zamarin
2022-01-13 18:46 Arthur Zamarin
2022-01-13 18:40 Arthur Zamarin
2022-01-13 18:40 Arthur Zamarin
2021-12-14 10:21 Michał Górny
2021-12-13 15:33 Arthur Zamarin
2021-12-13 15:33 Arthur Zamarin
2021-12-13  9:34 Arthur Zamarin
2021-12-13  9:34 Arthur Zamarin
2021-12-13  9:34 Arthur Zamarin
2021-12-13  9:34 Arthur Zamarin
2021-12-13  9:34 Arthur Zamarin
2021-12-13  9:34 Arthur Zamarin
2021-12-13  9:34 Arthur Zamarin
2021-12-11  8:00 Arthur Zamarin
2021-12-10  7:39 Agostino Sarubbo
2021-12-10  7:37 Agostino Sarubbo
2021-12-10  4:40 Sam James
2021-12-10  0:27 Sam James
2021-12-09 22:14 Arthur Zamarin
2021-12-09 21:53 Arthur Zamarin
2021-12-09 21:35 Arthur Zamarin
2021-11-02 22:59 Michał Górny
2021-10-29 14:13 David Seifert
2021-09-27  8:40 James Le Cuirot
2021-08-21 22:15 James Le Cuirot
2021-06-13  6:04 Sam James
2021-06-13  6:04 Sam James
2021-06-03 16:34 Sam James
2021-06-03 15:52 Sergei Trofimovich
2021-06-03  0:43 Sam James
2021-06-01  0:46 Sam James
2021-05-31 17:43 Sergei Trofimovich
2021-05-31 11:40 Sam James
2021-05-28  3:23 Sam James
2021-05-20  1:46 Sam James
2021-05-18 12:51 Michał Górny
2021-05-18 12:51 Michał Górny
2021-05-18 12:51 Michał Górny
2021-03-27 16:04 Sam James
2021-03-26 11:50 Agostino Sarubbo
2021-03-26  0:22 Sam James
2021-03-25 23:20 Sam James
2021-03-25 23:20 Sam James
2021-03-25 23:13 Sam James
2021-03-25 18:12 Agostino Sarubbo
2021-03-24 21:12 Sergei Trofimovich
2021-03-24 19:42 Sam James
2021-03-21 20:07 Michał Górny
2021-02-06 22:34 Sam James
2021-01-05 21:27 Michał Górny
2021-01-05 20:51 Sam James
2021-01-03 12:10 Sergei Trofimovich
2021-01-03 11:51 Sergei Trofimovich
2021-01-03  9:14 Sam James
2020-12-29 22:28 Sam James
2020-12-29 19:50 Sergei Trofimovich
2020-12-29  9:47 Sam James
2020-12-28  8:18 Sam James
2020-12-27 18:36 Sam James
2020-12-27  9:16 Michał Górny
2020-12-15 20:22 Michał Górny
2020-12-12 21:25 Sergei Trofimovich
2020-12-02 22:58 Sam James
2020-12-02 10:23 Sam James
2020-11-29  8:24 Agostino Sarubbo
2020-11-29  8:22 Agostino Sarubbo
2020-11-29  8:20 Agostino Sarubbo
2020-11-29  8:16 Agostino Sarubbo
2020-11-29  0:13 Sergei Trofimovich
2020-11-27 16:49 Thomas Deutschmann
2020-11-27  9:20 Michał Górny
2020-11-27  8:07 Agostino Sarubbo
2020-11-26 23:04 Sergei Trofimovich
2020-11-26 22:59 Sergei Trofimovich
2020-11-26 10:48 Sam James
2020-11-26  8:24 Sam James
2020-11-26  8:14 Sam James
2020-11-26  6:56 Agostino Sarubbo
2020-11-25 23:09 Thomas Deutschmann
2020-11-25 22:38 Sergei Trofimovich
2020-10-19  6:37 Michał Górny
2020-09-26 16:21 Michał Górny
2020-09-18 15:19 Michał Górny
2020-09-03 23:57 Sam James
2020-09-02 21:03 Sergei Trofimovich
2020-08-21 15:36 Agostino Sarubbo
2020-08-21 15:31 Agostino Sarubbo
2020-08-21 15:30 Agostino Sarubbo
2020-08-21 15:27 Agostino Sarubbo
2020-08-19  9:03 Sam James
2020-07-17 10:42 Sam James
2020-07-11  7:04 Michał Górny
2020-07-09 12:20 Michał Górny
2020-07-09  8:41 Agostino Sarubbo
2020-07-09  8:34 Agostino Sarubbo
2020-05-20  7:18 Michał Górny
2020-05-04 11:21 Michał Górny
2020-04-14  7:28 Sergei Trofimovich
2020-04-12  8:18 Mart Raudsepp
2020-03-08 10:48 Agostino Sarubbo
2020-03-08 10:47 Agostino Sarubbo
2020-03-08 10:46 Agostino Sarubbo
2020-03-08 10:42 Agostino Sarubbo
2020-03-08 10:37 Agostino Sarubbo
2020-03-08 10:25 Agostino Sarubbo
2020-03-08 10:23 Agostino Sarubbo
2020-03-08  9:56 Agostino Sarubbo
2020-03-07 15:45 Michał Górny
2020-03-07 15:11 Michał Górny
2020-02-13 14:40 Agostino Sarubbo
2020-02-06  7:51 Sergei Trofimovich
2020-01-30 12:55 Agostino Sarubbo
2020-01-30 12:11 Agostino Sarubbo
2020-01-30 11:06 Agostino Sarubbo
2020-01-30 11:05 Agostino Sarubbo
2020-01-30 11:00 Agostino Sarubbo
2020-01-30 10:17 Agostino Sarubbo
2020-01-29 15:01 Michał Górny
2020-01-29 10:17 Agostino Sarubbo
2020-01-29  8:12 Michał Górny
2020-01-29  7:23 Michał Górny
2019-11-23 15:38 Michał Górny
2019-11-23 14:34 Michał Górny
2019-11-20 13:00 Michał Górny
2019-11-20 13:00 Michał Górny
2019-08-12 13:21 Michał Górny
2019-08-07 15:41 Michał Górny
2019-07-14  0:52 Tim Harder
2019-05-11 19:25 Matthew Thode
2019-05-04 19:20 Andreas K. Hüttel
2019-04-06 21:47 Virgil Dupras
2019-03-01 16:37 Virgil Dupras
2019-03-01 16:37 Virgil Dupras
2019-02-10  8:44 Tim Harder
2019-01-07 20:44 Virgil Dupras
2019-01-06 12:45 Mart Raudsepp
2019-01-05 14:19 Virgil Dupras
2019-01-04 22:41 Mikle Kolyada
2019-01-02 12:18 Markus Meier
2018-12-22 18:16 Matt Turner
2018-12-15 22:39 Sergei Trofimovich
2018-12-13 15:31 Mikle Kolyada
2018-12-13 12:48 Thomas Deutschmann
2018-12-12 19:51 Sergei Trofimovich
2018-12-11 23:32 Sergei Trofimovich
2018-12-11 23:27 Sergei Trofimovich
2018-12-11 23:24 Sergei Trofimovich
2018-09-15 18:51 Virgil Dupras
2018-09-15 18:51 Virgil Dupras
2018-07-19 15:31 Fabian Groffen
2018-07-17  8:32 Michał Górny
2018-07-17  8:02 Michał Górny
2018-07-10 21:47 Michał Górny
2018-06-26  3:39 Tim Harder
2018-06-03 10:34 Mikle Kolyada
2018-03-21 14:32 Michał Górny
2018-03-21 14:32 Michał Górny
2018-01-05  9:36 Michał Górny
2017-11-06 16:51 Tim Harder
2017-10-17  0:35 Tim Harder
2017-10-17  0:35 Tim Harder
2017-09-18  2:34 Tim Harder
2017-06-23 12:21 Manuel Rüger
2017-06-23 12:19 Manuel Rüger
2017-06-15 18:19 Markus Meier
2017-05-22 16:48 Tobias Klausmann
2017-05-22 11:40 Agostino Sarubbo
2017-05-19 21:44 Michael Weber
2017-05-19 13:37 Michael Weber
2017-05-06 11:13 Jeroen Roovers
2017-05-03  6:15 Michał Górny
2017-03-26  4:16 Matt Thode
2017-03-09 15:54 Michael Haubenwallner
2017-02-24 10:35 Lars Wendler
2017-02-24 10:35 Lars Wendler
2017-02-12 22:39 Zac Medico
2017-01-23  6:19 Jeroen Roovers
2016-12-30 19:27 Lars Wendler
2016-12-24 10:25 Agostino Sarubbo
2016-12-22 22:46 Lars Wendler
2016-12-19 14:35 Agostino Sarubbo
2016-12-18 16:30 Agostino Sarubbo
2016-12-18 16:25 Agostino Sarubbo
2016-12-14  9:14 Tobias Klausmann
2016-11-12  4:29 Mike Frysinger
2016-10-15  9:52 Pacho Ramos
2016-10-14 21:30 David Seifert
2016-10-14 21:30 David Seifert
2016-10-14 21:30 David Seifert
2016-10-14 21:30 David Seifert
2016-10-14 21:30 David Seifert
2016-10-14 10:33 Agostino Sarubbo
2016-09-04 10:21 Tobias Klausmann
2016-09-01 11:22 Manuel Rüger
2016-08-14 19:24 Markus Meier
2016-08-13 11:33 Jeroen Roovers
2016-05-31  5:37 Jeroen Roovers
2016-05-27 12:44 Tobias Klausmann
2016-04-01 19:12 Markus Meier
2016-03-19 16:32 Agostino Sarubbo
2016-03-17 21:56 Dirkjan Ochtman
2016-03-17 20:50 Dirkjan Ochtman
2015-11-18 15:41 Justin Lecher
2015-11-18 15:41 Justin Lecher
2015-11-16 14:19 Agostino Sarubbo
2015-10-17 10:59 Markus Meier
2015-10-11 12:12 Mikle Kolyada
2015-10-06  9:12 Patrice Clement
2015-10-04  8:03 Jeroen Roovers
2015-10-01 13:17 Tobias Klausmann
2015-09-27  5:25 Jeroen Roovers
2015-09-25 14:13 Agostino Sarubbo
2015-09-25 10:42 Agostino Sarubbo
2015-09-25  7:59 Justin Lecher
2015-09-25  7:11 Justin Lecher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1703060952.ac323b3271e81e81f38b97338690ab9a19b59b07.mgorny@gentoo \
    --to=mgorny@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox