blob: 5cf52cc8c8415d5b5a586f0334fd1575d6b25082 [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
[build-system]
requires = ["setuptools>=61.0", "wheel"]
build-backend = "setuptools.build_meta"
[tool.setuptools.packages.find]
where = ["."] # list of folders that contain the packages (["."] by default)
include = ["plc4py*"] # package names should match these glob patterns (["*"] by default)
#exclude = ["my_package.tests*"] # exclude packages matching these glob patterns (empty by default)
namespaces = false # to disable scanning PEP 420 namespaces (true by default)
[project]
name = "plc4py"
description = "Plc4Py The Python Industrial IOT Adapter"
version = "0.13"
readme = "README.md"
dependencies = [
"aenum>=3.1.15",
"bitarray",
"typing_extensions",
"pluggy",
"xsdata",
]
classifiers = [
"Development Status :: 3 - Alpha",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator",
]
keywords=["modbus", "plc4x"]
authors=[
{name='"Apache PLC4X <>"', email="dev@plc4x.apache.org"}
]
[project.urls]
HomePage="https://plc4x.apache.org"
Repository="https://github.com/apache/plc4x"
Documentation = "https://plc4x.apache.org/users/getting-started/plc4py.html"
[project.optional-dependencies]
dev = [
"pytest-asyncio>=0.18.3",
"pip-tools",
"black",
"pip",
"deptry",
"requires",
"pre-commit>=2.6.0",
"pytest-mock>=3.8.1",
"mock>=4.0.2",
"mypy>=0.942",
"flake8>=4.0.1",
"pytest-asyncio",
"xsdata",
]
[project.entry-points."plc4py.drivers"]
mock = "plc4py.drivers.mock.MockConnection:MockDriverLoader"
modbus = "plc4py.drivers.modbus.ModbusConnection:ModbusDriverLoader"
umas = "plc4py.drivers.umas.UmasConnection:UmasDriverLoader"
[project.entry-points."plc4py.transports"]
tcp = "plc4py.spi.transport.TCPTransport:TCPTransportLoader"
mock = "plc4py.spi.transport.MockTransport:MockTransportLoader"
[tool.pytest.ini_options]
minversion = "6.0"
addopts = "-ra -q"
testpaths = [
"tests",
]
asyncio_mode = "auto"
log_cli = "true"