mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-07-24 15:27:41 +08:00
Turn the flat script pile into a standalone project so contributors can navigate and extend it: - px4bench/ shared library package: core primitives in __init__ (Reporter, connect, MavlinkShell, reboot/replug, viewer tee, mavlink status parsers, pymavlink add_message workaround) plus protocol modules params.py, missions.py, and ftp.py extracted from the tests. Zero helper duplication remains across scripts. - bench/ holds the real-firmware tests (boot_health, reboot_loop, usb_replug, link_forwarding, param_stress, mission_stress, log_transfer); sih/ holds the simulated flight (flight_mission), making the simulation/no-simulation boundary explicit. - pyproject.toml (px4bench 0.1.0, BSD-3-Clause, pymavlink/pyserial deps, pyulog extra) so pip install -e Tools/bench_test works; every script remains directly runnable without installation via a parent-dir path shim. - README rewritten contributor-first: architecture, per-test justification tied to the v1.18 risk areas, why pymavlink over MAVSDK, how to add a test, baseline workflow. - Consistent CLI surface (shared connection args; --report-dir replaces log_transfer's --outdir); decorative section banners removed. All hardware-learned behavior is preserved exactly: param echo drain and match-by-value, shell sentinel strip-all, the add_message workaround, explicit param save before reboot, mission clear before upload, RTL in MAV_FRAME_MISSION, and the post-flight ULog download. Signed-off-by: Ramon Roche <mrpollo@gmail.com>
25 lines
531 B
TOML
25 lines
531 B
TOML
[build-system]
|
|
requires = ["setuptools>=61"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "px4bench"
|
|
version = "0.1.0"
|
|
description = "PX4 bench-test suite: hang-visible release qualification on real NuttX hardware"
|
|
readme = "README.md"
|
|
license = { text = "BSD-3-Clause" }
|
|
requires-python = ">=3.8"
|
|
dependencies = [
|
|
"pymavlink>=2.4.40",
|
|
"pyserial",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
ulog = ["pyulog"]
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/PX4/PX4-Autopilot"
|
|
|
|
[tool.setuptools]
|
|
packages = ["px4bench"]
|