Apocrypha

mocpy-0.20.0benzene-overlay

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

# Autogenerated by pycargoebuild 0.15.0

EAPI=8

DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=maturin
PYTHON_COMPAT=( python3_{11..13} )

CRATES="
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
"

#declare -A GIT_CRATES=(
#	[moc]='https://github.com/cds-astro/cds-moc-rust;8d2d57a1883d54bd3d7df677908cbcf577a0703c;cds-moc-rust-%commit%'
#)

inherit cargo distutils-r1

DESCRIPTION="MOC parsing and manipulation in Python"
HOMEPAGE="https://cds-astro.github.io/mocpy"
SRC_URI="https://github.com/cds-astro/mocpy/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz
	${CARGO_CRATE_URIS}
	doc? (
		http://alasky.u-strasbg.fr/hips-image-services/hips2fits?hips=CDS%2FP%2F2MASS%2FK&width=1200&height=700&fov=30&projection=TAN&coordsys=galactic&rotation_angle=0.0&object=gal%20center&format=fits -> cutout-CDS_P_2MASS_K.fits
		http://skies.esac.esa.int/Spitzer/IRAC1_bright_ISM/Moc.fits
	)
"
LICENSE="BSD"
# Dependent crate licenses
LICENSE+=" Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 MIT Unicode-3.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="astropy_regions doc examples intersphinx plots query_fits"
PROPERTIES="test_network"
RESTRICT="test
	intersphinx? ( network-sandbox )"
REQUIRED_USE="intersphinx? ( doc )"

RDEPEND="dev-python/astropy[${PYTHON_USEDEP}]
	astropy_regions? ( dev-python/regions[${PYTHON_USEDEP}] )
	plots? (
		>=dev-python/cdshealpix-0.6.4[${PYTHON_USEDEP}]
		dev-python/matplotlib[${PYTHON_USEDEP}]
		>=dev-python/networkx-2.5[${PYTHON_USEDEP}]
	)
	query_fits? ( dev-python/requests[${PYTHON_USEDEP}] )
"
BDEPEND="doc? (
		${RDEPEND}
		dev-python/sphinx-astropy[${PYTHON_USEDEP}]
		dev-python/sphinx-collections[${PYTHON_USEDEP}]
		dev-python/sphinx-copybutton[${PYTHON_USEDEP}]
		dev-python/sphinxcontrib-bibtex[${PYTHON_USEDEP}]
		dev-python/nbsphinx[${PYTHON_USEDEP}]
		dev-python/astropy-healpix[${PYTHON_USEDEP}]
		dev-python/cdshealpix[${PYTHON_USEDEP}]
		dev-python/matplotlib[${PYTHON_USEDEP}]
		dev-python/networkx[${PYTHON_USEDEP}]
		dev-python/toml[${PYTHON_USEDEP}]
		virtual/pandoc
	)
	test? (
		dev-python/cdshealpix[${PYTHON_USEDEP}]
		dev-python/matplotlib[${PYTHON_USEDEP}]
		dev-python/regions[${PYTHON_USEDEP}]
		dev-python/requests[${PYTHON_USEDEP}]
	)
"
#BDEPEND="doc? ( virtual/pandoc )

EPYTEST_PLUGINS=( pytest-mock )
distutils_enable_tests pytest
#distutils_enable_sphinx docs dev-python/sphinx-astropy \
#	dev-python/sphinx-collections \
#	dev-python/sphinx-copybutton \
#	dev-python/sphinxcontrib-bibtex \
#	dev-python/nbsphinx \
#	dev-python/astropy-healpix

python_prepare_all() {
#	cat > "${S}"/Cargo.lock <<-EOF || die
#		[[package]]
#		name = "moc"
#		version = "0.19.1"
#		source = "git+https://github.com/cds-astro/cds-moc-rust?rev=8d2d57a1883d54bd3d7df677908cbcf577a0703c#8d2d57a1883d54bd3d7df677908cbcf577a0703c"
#	EOF
	use doc && { eapply "${FILESDIR}"/${PN}-0.18.0-doc-use-local-fits.patch ; cp "${DISTDIR}"/*.fits docs/examples || die ; }
#	sed -e '/"source":/s|../||' -e '/"target":/s|note|docs/note|' -i docs/conf.py || die
	use test && { sed -e "/pathlib/a import os" -e "/parent/c \        Path(os.environ['S'])" \
		-i python/mocpy/tests/test_sfmoc.py || die ; }

	distutils-r1_python_prepare_all
}

python_compile_all() {
	if use doc; then
		VARTEXFONTS="${T}"/fonts MPLCONFIGDIR="${T}" PYTHONPATH="${BUILD_DIR}"/install/$(python_get_sitedir) \
			emake "SPHINXOPTS=$(usex intersphinx '' '-D disable_intersphinx=1')" -C docs html
		HTML_DOCS=( docs/_build/html/. )
	fi
}

python_install_all() {
	if use examples; then
		docompress -x "/usr/share/doc/${PF}/notebooks"
		docinto notebooks
		dodoc -r notebooks/.
	fi

	distutils-r1_python_install_all
}

python_test() {
	epytest "${BUILD_DIR}/install/usr"
}