diff options
Diffstat (limited to 'dev-python/watchfiles/watchfiles-0.24.0.ebuild')
-rw-r--r-- | dev-python/watchfiles/watchfiles-0.24.0.ebuild | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/dev-python/watchfiles/watchfiles-0.24.0.ebuild b/dev-python/watchfiles/watchfiles-0.24.0.ebuild new file mode 100644 index 000000000000..d11306fff855 --- /dev/null +++ b/dev-python/watchfiles/watchfiles-0.24.0.ebuild @@ -0,0 +1,134 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=maturin +PYTHON_COMPAT=( python3_{10..13} pypy3 ) + +CRATES=" + autocfg@1.3.0 + bitflags@1.3.2 + bitflags@2.6.0 + cc@1.0.96 + cfg-if@1.0.0 + crossbeam-channel@0.5.12 + crossbeam-utils@0.8.19 + filetime@0.2.24 + fsevent-sys@4.1.0 + heck@0.5.0 + indoc@2.0.5 + inotify-sys@0.1.5 + inotify@0.10.2 + instant@0.1.13 + kqueue-sys@1.0.4 + kqueue@1.0.8 + libc@0.2.154 + libredox@0.1.3 + log@0.4.22 + memoffset@0.9.1 + mio@0.8.11 + once_cell@1.19.0 + portable-atomic@1.6.0 + proc-macro2@1.0.81 + pyo3-build-config@0.22.2 + pyo3-ffi@0.22.2 + pyo3-macros-backend@0.22.2 + pyo3-macros@0.22.2 + pyo3@0.22.2 + python3-dll-a@0.2.10 + quote@1.0.36 + redox_syscall@0.5.3 + same-file@1.0.6 + syn@2.0.60 + target-lexicon@0.12.14 + unicode-ident@1.0.12 + unindent@0.2.3 + walkdir@2.5.0 + wasi@0.11.0+wasi-snapshot-preview1 + winapi-util@0.1.9 + windows-sys@0.48.0 + windows-sys@0.52.0 + windows-sys@0.59.0 + windows-targets@0.48.5 + windows-targets@0.52.6 + windows_aarch64_gnullvm@0.48.5 + windows_aarch64_gnullvm@0.52.6 + windows_aarch64_msvc@0.48.5 + windows_aarch64_msvc@0.52.6 + windows_i686_gnu@0.48.5 + windows_i686_gnu@0.52.6 + windows_i686_gnullvm@0.52.6 + windows_i686_msvc@0.48.5 + windows_i686_msvc@0.52.6 + windows_x86_64_gnu@0.48.5 + windows_x86_64_gnu@0.52.6 + windows_x86_64_gnullvm@0.48.5 + windows_x86_64_gnullvm@0.52.6 + windows_x86_64_msvc@0.48.5 + windows_x86_64_msvc@0.52.6 +" + +declare -A GIT_CRATES=( + [notify-types]='https://github.com/samuelcolvin/notify;0f87ab12707d231fa44180454d59478d3992eb59;notify-%commit%/notify-types' + [notify]='https://github.com/samuelcolvin/notify;0f87ab12707d231fa44180454d59478d3992eb59;notify-%commit%/notify' +) + +inherit cargo distutils-r1 + +DESCRIPTION="Simple, modern file watching and code reload in Python" +HOMEPAGE=" + https://pypi.org/project/watchfiles/ + https://github.com/samuelcolvin/watchfiles/ +" +SRC_URI=" + https://github.com/samuelcolvin/watchfiles/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz + ${CARGO_CRATE_URIS} +" + +LICENSE="MIT" +# Dependent crate licenses +LICENSE+=" + Apache-2.0-with-LLVM-exceptions BSD CC0-1.0 ISC MIT Unicode-DFS-2016 +" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/anyio-4.0.0[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/setuptools-rust[${PYTHON_USEDEP}] + test? ( + dev-python/dirty-equals[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + ) +" + +# enjoy Rust +QA_FLAGS_IGNORED=".*/_rust_notify.*" + +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # fix version number + sed -i -e "/^version/s:0\.0\.0:${PV}:" Cargo.toml || die + + export UNSAFE_PYO3_SKIP_VERSION_CHECK=1 +} + +python_test() { + local EPYTEST_DESELECT=( + # test broken with new anyio + # https://github.com/samuelcolvin/watchfiles/issues/254 + tests/test_watch.py::test_awatch_interrupt_raise + ) + + rm -rf watchfiles || die + epytest +} |