# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

PYTHON_COMPAT=( python3_{12..14} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 pypi

MYPN="${PN/_/-}"
MYP="${MYPN}-${PV}"

DESCRIPTION="Artist for matplotlib to display a scale bar"
HOMEPAGE="https://github.com/ppinard/matplotlib-scalebar"
SRC_URI="$(pypi_sdist_url --no-normalize "${MYPN}" "${PV}")"
S=${WORKDIR}/${MYP}

LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="test"
RESTRICT="!test? ( test )"

RDEPEND="
	dev-python/matplotlib[${PYTHON_USEDEP}]
"

DEPEND="${RDEPEND}
	test? ( dev-python/pytest[${PYTHON_USEDEP}]
		dev-python/pytest-cov[${PYTHON_USEDEP}]
		dev-util/ruff
	)
"

src_prepare() {
	# versioneer.py uses two APIs removed in Python 3.12: SafeConfigParser (a
	# deprecated alias of ConfigParser since 3.2) and ConfigParser.readfp
	# (renamed to read_file). Restore the build on 3.12+.
	sed -i -e 's/SafeConfigParser/ConfigParser/g' \
		-e 's/\.readfp(/.read_file(/g' versioneer.py || die
	distutils-r1_src_prepare
}