Install this version:
emerge -a =dev-python/pymodbus-3.12.1
If this version is masked, you can unmask it using the autounmask tool or standard emerge options:
autounmask =dev-python/pymodbus-3.12.1
Or alternatively:
emerge --autounmask-write -a =dev-python/pymodbus-3.12.1
# Copyright 1999-2025 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
DESCRIPTION="A fully featured modbus protocol stack in python"
HOMEPAGE="https://github.com/riptideio/pymodbus/ https://pypi.org/project/pymodbus/"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm arm64 x86"
IUSE="serial test repl simulator"
RESTRICT="!test? ( test )"
DOCS="README.rst"
RDEPEND="
serial? (
>=dev-python/pyserial-3.5[${PYTHON_USEDEP}]
)
simulator? (
>=dev-python/aiohttp-3.13.2[${PYTHON_USEDEP}]
)
repl? (
>=dev-python/pymodbus-repl-2.0.4[${PYTHON_USEDEP}]
)"
BDEPEND="
test? (
dev-python/mock[${PYTHON_USEDEP}]
dev-python/coverage[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-asyncio[${PYTHON_USEDEP}]
dev-python/pytest-cov[${PYTHON_USEDEP}]
dev-python/pytest-timeout[${PYTHON_USEDEP}]
)"
src_prepare() {
# remove dynamic-versioning
sed 's/dynamic = \["version"\]/version = \"'${PV}'\"/g' -i pyproject.toml || die
eapply_user
}
distutils_enable_tests pytest
Manage flags for this package:
euse -i <flag> -p dev-python/pymodbus |
euse -E <flag> -p dev-python/pymodbus |
euse -D <flag> -p dev-python/pymodbus
serial? ( >=dev-python/pyserial-3.5[] ) simulator? ( >=dev-python/aiohttp-3.13.2[] ) repl? ( >=dev-python/pymodbus-repl-2.0.4[] )
test? ( dev-python/mock[] dev-python/coverage[] dev-python/pytest[] dev-python/pytest-asyncio[] dev-python/pytest-cov[] dev-python/pytest-timeout[] )