| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [build-system] | 
					
						
							| 
									
										
										
										
											2025-05-18 15:12:14 +00:00
										 |  |  | requires = ["hatchling", "hatch-vcs", "uv-dynamic-versioning"] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | build-backend = "hatchling.build" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [project] | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | name = "amqtt" | 
					
						
							| 
									
										
										
										
											2025-06-11 15:51:27 +00:00
										 |  |  | description = "Python's asyncio-native MQTT broker and client." | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | classifiers = [ | 
					
						
							| 
									
										
										
										
											2025-06-11 15:49:09 +00:00
										 |  |  |   "Development Status :: 5 - Production/Stable", | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  |   "Intended Audience :: Developers", | 
					
						
							|  |  |  |   "Operating System :: POSIX", | 
					
						
							|  |  |  |   "Operating System :: MacOS", | 
					
						
							|  |  |  |   "Operating System :: Microsoft :: Windows", | 
					
						
							|  |  |  |   "Topic :: Communications", | 
					
						
							|  |  |  |   "Topic :: Internet", | 
					
						
							| 
									
										
										
										
											2025-06-11 15:49:09 +00:00
										 |  |  |   "Programming Language :: Python :: 3.10", | 
					
						
							|  |  |  |   "Programming Language :: Python :: 3.11", | 
					
						
							|  |  |  |   "Programming Language :: Python :: 3.12", | 
					
						
							|  |  |  |   "Programming Language :: Python :: 3.13" | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-06-11 15:49:09 +00:00
										 |  |  | version = "0.11.0rc1" | 
					
						
							| 
									
										
										
										
											2025-05-16 18:21:16 +00:00
										 |  |  | requires-python = ">=3.10.0" | 
					
						
							| 
									
										
										
										
											2025-05-20 23:40:56 +00:00
										 |  |  | readme = "README.md" | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | license = { text = "MIT" } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | authors = [{ name = "aMQTT Contributors" }] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | dependencies = [ | 
					
						
							| 
									
										
										
										
											2025-04-01 18:07:14 +00:00
										 |  |  |   "transitions==0.9.2", # https://pypi.org/project/transitions | 
					
						
							|  |  |  |   "websockets==15.0.1", # https://pypi.org/project/websockets | 
					
						
							| 
									
										
										
										
											2025-05-29 18:59:39 +00:00
										 |  |  |   "passlib==1.7.4", # https://pypi.org/project/passlib | 
					
						
							|  |  |  |   "PyYAML==6.0.2", # https://pypi.org/project/PyYAML | 
					
						
							| 
									
										
										
										
											2025-06-12 12:37:27 +00:00
										 |  |  |   "typer==0.15.4", | 
					
						
							|  |  |  |   "dacite>=1.9.2", | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | ] | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | [dependency-groups] | 
					
						
							|  |  |  | dev = [ | 
					
						
							| 
									
										
										
										
											2025-05-27 14:37:10 +00:00
										 |  |  |   "hatch>=1.14.1", | 
					
						
							| 
									
										
										
										
											2025-05-29 18:59:39 +00:00
										 |  |  |   "hypothesis>=6.130.8", | 
					
						
							| 
									
										
										
										
											2025-05-30 17:41:10 +00:00
										 |  |  |   "mypy>=1.15.0", | 
					
						
							| 
									
										
										
										
											2025-05-31 16:08:54 +00:00
										 |  |  |   "paho-mqtt>=2.1.0", | 
					
						
							| 
									
										
										
										
											2025-05-27 14:37:10 +00:00
										 |  |  |   "poethepoet>=0.34.0", | 
					
						
							| 
									
										
										
										
											2025-05-20 23:40:56 +00:00
										 |  |  |   "pre-commit>=4.2.0", # https://pypi.org/project/pre-commit | 
					
						
							|  |  |  |   "psutil>=7.0.0", # https://pypi.org/project/psutil | 
					
						
							|  |  |  |   "pylint>=3.3.6", # https://pypi.org/project/pylint | 
					
						
							|  |  |  |   "pytest-asyncio>=0.26.0", # https://pypi.org/project/pytest-asyncio | 
					
						
							|  |  |  |   "pytest-cov>=6.1.0", # https://pypi.org/project/pytest-cov | 
					
						
							|  |  |  |   "pytest-logdog>=0.1.0", # https://pypi.org/project/pytest-logdog | 
					
						
							|  |  |  |   "pytest-timeout>=2.3.1", # https://pypi.org/project/pytest-timeout | 
					
						
							|  |  |  |   "pytest>=8.3.5", # https://pypi.org/project/pytest | 
					
						
							|  |  |  |   "ruff>=0.11.3", # https://pypi.org/project/ruff | 
					
						
							| 
									
										
										
										
											2025-05-21 00:57:08 +00:00
										 |  |  |   "setuptools>=78.1.0", | 
					
						
							| 
									
										
										
										
											2025-05-20 23:40:56 +00:00
										 |  |  |   "types-mock>=5.2.0.20250306", # https://pypi.org/project/types-mock | 
					
						
							|  |  |  |   "types-PyYAML>=6.0.12.20250402", # https://pypi.org/project/types-PyYAML | 
					
						
							| 
									
										
										
										
											2025-04-01 18:07:14 +00:00
										 |  |  |   "types-setuptools>=78.1.0.20250329", # https://pypi.org/project/types-setuptools | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-21 00:57:08 +00:00
										 |  |  | docs = [ | 
					
						
							|  |  |  |     "markdown-callouts>=0.4", | 
					
						
							|  |  |  |     "markdown-exec>=1.8", | 
					
						
							|  |  |  |     "mkdocs>=1.6", | 
					
						
							|  |  |  |     "mkdocs-coverage>=1.0", | 
					
						
							|  |  |  |     "mkdocs-git-revision-date-localized-plugin>=1.2", | 
					
						
							|  |  |  |     "mkdocs-llmstxt>=0.1", | 
					
						
							|  |  |  |     "mkdocs-material>=9.5", | 
					
						
							|  |  |  |     "mkdocs-minify-plugin>=0.8", | 
					
						
							|  |  |  |     "mkdocs-redirects>=1.2.1", | 
					
						
							|  |  |  |     "mkdocs-section-index>=0.3", | 
					
						
							|  |  |  |     "mkdocstrings-python>=1.16.2", | 
					
						
							|  |  |  |     # YORE: EOL 3.10: Remove line. | 
					
						
							|  |  |  |     "tomli>=2.0; python_version < '3.11'", | 
					
						
							| 
									
										
										
										
											2025-06-09 18:32:55 +00:00
										 |  |  |     "mkdocs-typer2>=0.1.4", | 
					
						
							|  |  |  |     "mkdocs-open-in-new-tab>=1.0.8", | 
					
						
							| 
									
										
										
										
											2025-06-11 15:49:09 +00:00
										 |  |  |     "mkdocs-exclude>=1.0.2", | 
					
						
							| 
									
										
										
										
											2025-05-21 00:57:08 +00:00
										 |  |  | ] | 
					
						
							| 
									
										
										
										
											2025-04-04 17:18:17 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [project.optional-dependencies] | 
					
						
							|  |  |  | ci = ["coveralls==4.0.1"] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-21 00:57:08 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [project.scripts] | 
					
						
							| 
									
										
										
										
											2025-04-04 17:18:17 +00:00
										 |  |  | amqtt = "amqtt.scripts.broker_script:main" | 
					
						
							|  |  |  | amqtt_pub = "amqtt.scripts.pub_script:main" | 
					
						
							|  |  |  | amqtt_sub = "amqtt.scripts.sub_script:main" | 
					
						
							| 
									
										
										
										
											2021-04-05 16:05:24 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [tool.hatch.build.targets.sdist] | 
					
						
							|  |  |  | include = ["/amqtt"] | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [tool.hatch.version] | 
					
						
							|  |  |  | source = "vcs" | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-27 14:37:10 +00:00
										 |  |  | [tool.poe.tasks] | 
					
						
							|  |  |  | rtd = "mkdocs serve -f mkdocs.rtd.yml" | 
					
						
							|  |  |  | test = "pytest" | 
					
						
							|  |  |  | docs = "mkdocs build" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | # ___________________________________ PLUGINS __________________________________ | 
					
						
							|  |  |  | [project.entry-points."amqtt.test.plugins"] | 
					
						
							|  |  |  | test_plugin = "tests.plugins.test_manager:EmptyTestPlugin" | 
					
						
							|  |  |  | event_plugin = "tests.plugins.test_manager:EventTestPlugin" | 
					
						
							| 
									
										
										
										
											2025-01-16 19:01:16 +00:00
										 |  |  | packet_logger_plugin = "amqtt.plugins.logging_amqtt:PacketLoggerPlugin" | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-30 22:50:31 +00:00
										 |  |  | # --8<-- [start:included] | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [project.entry-points."amqtt.broker.plugins"] | 
					
						
							| 
									
										
										
										
											2025-01-16 19:01:16 +00:00
										 |  |  | event_logger_plugin = "amqtt.plugins.logging_amqtt:EventLoggerPlugin" | 
					
						
							|  |  |  | packet_logger_plugin = "amqtt.plugins.logging_amqtt:PacketLoggerPlugin" | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | auth_anonymous = "amqtt.plugins.authentication:AnonymousAuthPlugin" | 
					
						
							|  |  |  | auth_file = "amqtt.plugins.authentication:FileAuthPlugin" | 
					
						
							|  |  |  | topic_taboo = "amqtt.plugins.topic_checking:TopicTabooPlugin" | 
					
						
							|  |  |  | topic_acl = "amqtt.plugins.topic_checking:TopicAccessControlListPlugin" | 
					
						
							|  |  |  | broker_sys = "amqtt.plugins.sys.broker:BrokerSysPlugin" | 
					
						
							| 
									
										
										
										
											2025-05-30 22:50:31 +00:00
										 |  |  | # --8<-- [end:included] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-03-27 12:18:13 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [project.entry-points."amqtt.client.plugins"] | 
					
						
							| 
									
										
										
										
											2025-01-16 19:01:16 +00:00
										 |  |  | packet_logger_plugin = "amqtt.plugins.logging_amqtt:PacketLoggerPlugin" | 
					
						
							| 
									
										
										
										
											2021-03-20 07:13:12 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | # ____________________________________ RUFF ____________________________________ | 
					
						
							|  |  |  | # https://docs.astral.sh/ruff/settings/ | 
					
						
							|  |  |  | [tool.ruff] | 
					
						
							|  |  |  | line-length = 130 | 
					
						
							|  |  |  | fix = true | 
					
						
							| 
									
										
										
										
											2024-12-29 18:23:27 +00:00
										 |  |  | extend-exclude = ["docs/", "samples/"] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-17 18:05:30 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | [tool.ruff.format] | 
					
						
							|  |  |  | indent-style = "space" | 
					
						
							|  |  |  | docstring-code-format = true | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint] | 
					
						
							|  |  |  | select = ["ALL"] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | extend-select = [ | 
					
						
							|  |  |  |   "UP", # pyupgrade | 
					
						
							|  |  |  |   "D",  # pydocstyle | 
					
						
							|  |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ignore = [ | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  |   "FBT001", # Checks for the use of boolean positional arguments in function definitions. | 
					
						
							|  |  |  |   "FBT002", # Checks for the use of boolean positional arguments in function definitions. | 
					
						
							|  |  |  |   "G004",   # Logging statement uses f-string | 
					
						
							|  |  |  |   "D100",   # Missing docstring in public module | 
					
						
							|  |  |  |   "D101",   # Missing docstring in public class | 
					
						
							|  |  |  |   "D102",   # Missing docstring in public method | 
					
						
							|  |  |  |   "D107",   # Missing docstring in `__init__` | 
					
						
							| 
									
										
										
										
											2025-05-16 21:31:10 +00:00
										 |  |  |   "D203",   # Incorrect blank line before class (mutually exclusive D211) | 
					
						
							|  |  |  |   "D213",   # Multi-line summary second line (mutually exclusive D212) | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  |   "FIX002", # Checks for "TODO" comments. | 
					
						
							|  |  |  |   "TD002",  # TODO Missing author. | 
					
						
							|  |  |  |   "TD003",  # TODO Missing issue link for this TODO. | 
					
						
							|  |  |  |   "ANN401", # Dynamically typed expressions (typing.Any) are disallowed | 
					
						
							|  |  |  |   "ARG002", # Unused method argument | 
					
						
							| 
									
										
										
										
											2025-05-18 15:12:14 +00:00
										 |  |  |   "PERF203",# try-except penalty within loops (3.10 only), | 
					
						
							|  |  |  |   "COM812"  # rule causes conflicts when used with the formatter | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint.per-file-ignores] | 
					
						
							| 
									
										
										
										
											2025-04-04 17:18:17 +00:00
										 |  |  | "tests/**" = ["ALL"] | 
					
						
							| 
									
										
										
										
											2025-05-29 19:12:43 +00:00
										 |  |  | "amqtt/scripts/*_script.py" = ["FBT003", "E501"] | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint.flake8-pytest-style] | 
					
						
							|  |  |  | fixture-parentheses = false | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint.flake8-quotes] | 
					
						
							|  |  |  | docstring-quotes = "double" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint.isort] | 
					
						
							|  |  |  | combine-as-imports = true | 
					
						
							|  |  |  | force-sort-within-sections = true | 
					
						
							|  |  |  | case-sensitive = true | 
					
						
							|  |  |  | extra-standard-library = ["typing_extensions"] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint.mccabe] | 
					
						
							| 
									
										
										
										
											2025-01-12 19:52:50 +00:00
										 |  |  | max-complexity = 42 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | [tool.ruff.lint.pylint] | 
					
						
							|  |  |  | max-args = 12 | 
					
						
							| 
									
										
										
										
											2025-01-12 19:52:50 +00:00
										 |  |  | max-branches = 42 | 
					
						
							| 
									
										
										
										
											2025-01-12 21:44:19 +00:00
										 |  |  | max-statements = 143 | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | max-returns = 10 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # ----------------------------------- PYTEST ----------------------------------- | 
					
						
							|  |  |  | [tool.pytest.ini_options] | 
					
						
							| 
									
										
										
										
											2025-06-12 23:12:33 +00:00
										 |  |  | addopts = ["--cov=amqtt", "--cov-report=term-missing", "--cov-report=html"] | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | testpaths = ["tests"] | 
					
						
							|  |  |  | asyncio_mode = "auto" | 
					
						
							|  |  |  | timeout = 10 | 
					
						
							| 
									
										
										
										
											2025-05-19 16:45:45 +00:00
										 |  |  | asyncio_default_fixture_loop_scope = "function" | 
					
						
							| 
									
										
										
										
											2025-06-12 23:12:33 +00:00
										 |  |  | #addopts = ["--tb=short", "--capture=tee-sys"] | 
					
						
							|  |  |  | #log_cli = true | 
					
						
							| 
									
										
										
										
											2025-06-12 12:37:27 +00:00
										 |  |  | log_level = "DEBUG" | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | # ------------------------------------ MYPY ------------------------------------ | 
					
						
							|  |  |  | [tool.mypy] | 
					
						
							| 
									
										
										
										
											2024-12-29 18:23:27 +00:00
										 |  |  | exclude = ["^tests/.*", "^docs/.*", "^samples/.*"] | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | follow_imports = "silent" | 
					
						
							|  |  |  | show_error_codes = true | 
					
						
							|  |  |  | ignore_missing_imports = true | 
					
						
							|  |  |  | strict_equality = true | 
					
						
							|  |  |  | warn_incomplete_stub = true | 
					
						
							|  |  |  | warn_redundant_casts = true | 
					
						
							|  |  |  | warn_unused_configs = true | 
					
						
							|  |  |  | warn_unused_ignores = true | 
					
						
							|  |  |  | check_untyped_defs = true | 
					
						
							|  |  |  | disallow_incomplete_defs = true | 
					
						
							|  |  |  | disallow_subclassing_any = true | 
					
						
							|  |  |  | disallow_untyped_calls = true | 
					
						
							|  |  |  | disallow_untyped_decorators = true | 
					
						
							|  |  |  | disallow_untyped_defs = true | 
					
						
							|  |  |  | no_implicit_optional = true | 
					
						
							|  |  |  | warn_return_any = true | 
					
						
							|  |  |  | warn_unreachable = true | 
					
						
							|  |  |  | strict = true | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # ----------------------------------- PYLINT ----------------------------------- | 
					
						
							|  |  |  | [tool.pylint.MAIN] | 
					
						
							|  |  |  | jobs = 2 | 
					
						
							|  |  |  | ignore = ["tests"] | 
					
						
							|  |  |  | fail-on = ["I"] | 
					
						
							|  |  |  | max-line-length = 130 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.pylint.BASIC] | 
					
						
							|  |  |  | # Good variable names which should always be accepted, separated by a comma. | 
					
						
							|  |  |  | good-names = ["i", "j", "k", "e", "ex", "f", "_", "T", "x", "y", "id", "tg"] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.pylint."MESSAGES CONTROL"] | 
					
						
							|  |  |  | # Reasons disabled: | 
					
						
							|  |  |  | # duplicate-code - unavoidable | 
					
						
							|  |  |  | # too-many-* - are not enforced for the sake of readability | 
					
						
							|  |  |  | disable = [ | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  |   "broad-exception-caught",        # TODO: improve later | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  |   "duplicate-code", | 
					
						
							|  |  |  |   "fixme", | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  |   "invalid-name", | 
					
						
							|  |  |  |   "line-too-long", | 
					
						
							|  |  |  |   "logging-fstring-interpolation", | 
					
						
							| 
									
										
										
										
											2024-12-29 18:23:27 +00:00
										 |  |  |   "missing-class-docstring", | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  |   "missing-function-docstring", | 
					
						
							|  |  |  |   "missing-module-docstring", | 
					
						
							| 
									
										
										
										
											2025-01-12 21:44:19 +00:00
										 |  |  |   "protected-access", | 
					
						
							|  |  |  |   "redefined-slots-in-subclass", | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  |   "too-few-public-methods", | 
					
						
							|  |  |  |   "too-many-arguments", | 
					
						
							|  |  |  |   "too-many-instance-attributes", | 
					
						
							|  |  |  |   "unused-argument", | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.pylint.REPORTS] | 
					
						
							|  |  |  | score = false | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.pylint.FORMAT] | 
					
						
							|  |  |  | expected-line-ending-format = "LF" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.pylint.EXCEPTIONS] | 
					
						
							|  |  |  | overgeneral-exceptions = ["builtins.BaseException", "builtins.Exception"] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.pylint.REFACTORING] | 
					
						
							|  |  |  | max-nested-blocks = 5 | 
					
						
							|  |  |  | never-returning-functions = ["sys.exit", "argparse.parse_error"] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.pylint.DESIGN] | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  | max-branches = 32             # too-many-branches | 
					
						
							|  |  |  | max-locals = 20               # too-many-locals | 
					
						
							|  |  |  | max-module-lines = 1500       # too-many-lines | 
					
						
							| 
									
										
										
										
											2025-04-06 17:03:30 +00:00
										 |  |  | max-parents = 10              # too-many-parents | 
					
						
							| 
									
										
										
										
											2024-12-19 19:34:09 +00:00
										 |  |  | max-positional-arguments = 10 # too-many-positional-arguments | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  | max-public-methods = 25       # too-many-public-methods | 
					
						
							| 
									
										
										
										
											2025-04-06 17:03:30 +00:00
										 |  |  | max-returns = 7               # too-many-returns | 
					
						
							| 
									
										
										
										
											2025-04-06 17:58:20 +00:00
										 |  |  | max-statements = 90           # too-many-statements | 
					
						
							| 
									
										
										
										
											2025-04-04 17:18:17 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | # ---------------------------------- COVERAGE ---------------------------------- | 
					
						
							|  |  |  | [tool.coverage.run] | 
					
						
							|  |  |  | branch = true | 
					
						
							|  |  |  | source = ["amqtt"] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [tool.coverage.report] | 
					
						
							|  |  |  | show_missing = true | 
					
						
							|  |  |  | skip_covered = true |