Commit Graph
1558 Commits
Author SHA1 Message Date
Christian Clauss 123c2efc44 Tools: Fix pytest DeprecationWarning: 'maxsplit' is passed as positional argument
```diff
- parts = re.split(r'[,=\s]+', processed_line, 1)
+ parts = re.split(r'[,=\s]+', processed_line, maxsplit=1)
```

Pytest: `DeprecationWarning: 'maxsplit' is passed as positional argument`
* https://docs.python.org/3/library/re.html#re.split

### How was this tested?
Localhost testing...
% `python -m pytest --ignore=Tools/ros2`
```
========================================== test session starts ==========================================
platform darwin -- Python 3.13.5, pytest-8.4.1, pluggy-1.6.0
rootdir: /Users/cclauss/Python/ardupilot
configfile: pyproject.toml
collected 53 items

Tools/autotest/unittest/annotate_params_test.py ........................                                                                                                                                                         [ 45%]
Tools/autotest/unittest/extract_param_defaults_test.py ..................                                                                                                                                                        [ 79%]
Tools/scripts/param_check_test.py ...........                                                                                                                                                                                    [100%]

========================================== warnings summary ==========================================
Tools/scripts/param_check_test.py: 118 warnings
  /Users/cclauss/Python/ardupilot/Tools/scripts/param_check.py:338: DeprecationWarning: 'maxsplit' is passed as positional argument
    parts = re.split(r'[,=\s]+', processed_line, 1)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
========================================== 53 passed, 118 warnings in 2.74s ==========================================
```

After this change:
% `python -m pytest --ignore=Tools/ros2`
```
========================================== test session starts ==========================================
platform darwin -- Python 3.13.5, pytest-8.4.1, pluggy-1.6.0
rootdir: /Users/cclauss/Python/ardupilot
configfile: pyproject.toml
collected 53 items

Tools/autotest/unittest/annotate_params_test.py ........................                                                                                                                                                         [ 45%]
Tools/autotest/unittest/extract_param_defaults_test.py ..................                                                                                                                                                        [ 79%]
Tools/scripts/param_check_test.py ...........                                                                                                                                                                                    [100%]

========================================== 53 passed in 2.55s ==========================================
```

Also failed with `ruff check --select=B034` and passed after the proposed change.

https://docs.astral.sh/ruff/rules/re-sub-positional-args
2025-07-07 13:10:44 +10:00
Shiv Tyagi ca88644c54 Tools: add AP_TEMPERATURE_SENSOR_ENABLED as dependecy of AP_PERIPH_DEVICE_TEMPERATURE_ENABLED 2025-07-05 21:34:38 -05:00
Peter Barker 66361e29ee Tools: allow size_compare_branches.py to compare features 2025-07-04 17:50:10 +10:00
Shiv Tyagi 1a628c69f9 Tools: allow enabling AP_PERIPH_DEVICE_TEMPERATURE_ENABLED from Custom Build Server 2025-07-04 08:33:34 +10:00
Peter Barker b0f6006aff Tools: size_compare_branches.py: don't build bootloader for pilotpi/ARKV6X-bdshot
We don't build bootloaders for Linux boards, so don't try for pilotpi

ARKV6X-bdshot uses the bootloader from ARKV6X
2025-07-03 08:58:11 +01:00
Bob Long 23c21bfcec Tools: remove last vehicles from hwdefs to skip 2025-06-27 13:10:31 +10:00
Bob Long 118877ad1f Tools: param_check: fix DISABLE_CHECKS tag
This was a holdover from before I had the SkipChecks class, and I would
pass None to enable all checks.
2025-06-27 13:10:31 +10:00
Peter Barker edc7928164 Tools: add and use AP_ADSB_AVOIDANCE_ENABLED
this gates the "ADSB" avoidance feature used for macro-level avoidance.  It's not actually limited to ADSB as input...
2025-06-26 16:32:22 +10:00
e5ebd61f49 Tools: Add support for MS5837-02BA sensor
Co-authored-by: Shaikimram <shaikimran2723@gmail.com>
Co-authored-by: ES-Alexander <sandman.esalexander@gmail.com>
2025-06-26 11:41:47 +10:00
Bob Long 82faa97874 Tools: remove 4 vehicles from param check skip 2025-06-25 17:13:21 +01:00
Peter Barker 63cfa2484c Tools: run_flake8.py: check all scripts in tree, not just Tools directory 2025-06-25 13:16:59 +01:00
Peter Barker e1f2bdd456 build_options.py: correct feature lists 2025-06-24 16:42:00 +10:00
Peter Barker 75dcf12c6e Tools: allow AP_MotorsTri to be compiled out of code 2025-06-24 16:42:00 +10:00
Iampete1 f893d21b7e Tools: scripts: decode devid: add latest airspeed and baro devices 2025-06-23 14:33:44 +01:00
Christian Clauss 22582bc6c9 Tools: Fix test_ccache.py to not confuse pytest discovery
`Tools/scripts/build_tests/test_ccache.py` has a filename that will make Pytest Discovery think that it should be tested.
* https://docs.pytest.org/en/stable/explanation/goodpractices.html#conventions-for-python-test-discovery

This script also has code ___at global scope___ that will fail if certain command line arguments are not provided.

The proposed change is to put that code under `if __name__ == "__main__":` so it will not be run at test time.
* https://docs.python.org/3/library/__main__.html

Search for `test_ccache`:
* https://github.com/search?q=repo%3AArduPilot%2Fardupilot%20test_ccache&type=code

How was this tested?
1. `pytest Tools/scripts/build_tests/test_ccache.py`
2. `pytest Tools`

Both of the above find no tests instead of crashing with a long, confusing error.
2025-06-22 16:51:40 -05:00
Bob Long dfd48f9e15 Tools: remove luminousbee5 from param check skip 2025-06-19 21:27:52 +10:00
Peter Barker 406d1b38b4 Tools: size_compare_branches.py: skip building bootloads for TBS-L431 peripherals
these use their bootloader from TBS-L431 base
2025-06-18 22:57:09 +10:00
Bob Long 3e244ec063 Tools: remove Solo boards from param check skip 2025-06-18 22:56:55 +10:00
Peter Barker 5e98daeb1a Tools: build_options: add missing dependency on RANGEFINDER for RANGEFINDER_SENDING 2025-06-13 10:28:54 +01:00
Peter Barker 86d59e9c1f Tools: build_bootloaders.py: make pattern optional
pattern has a default, but it isn't used without this
2025-06-13 09:52:56 +10:00
Christian Clauss 5db73f4a0c Tools: Add # flake8: noqa linter directive 2025-06-12 08:47:52 +10:00
Peter Barker b6f9d78938 Tools: add AC_POLYFENCE_CIRCLE_INT_SUPPORT_ENABLED to build_options.py 2025-06-11 17:25:47 +10:00
Bob Long 1a64541c97 Tools: add parameter validation to CI 2025-06-10 22:14:13 +10:00
Bob Long 8d1d0a2107 Tools: add param_check_all script 2025-06-10 22:14:13 +10:00
Bob Long 1eecf9fbc1 Tools: board_list: let callers specify a skip list
Also renamed `blacklist` to `skip` for clarity
2025-06-10 22:14:13 +10:00
Bob Long 3e56717acb Tools: add param check script 2025-06-10 22:14:13 +10:00
Peter Barker ab3b68c5f2 Tools: tweak AK09916 to AK0991x
the driver supports three different compasses with similar names
2025-06-08 10:08:17 +10:00
Peter Barker a1462450b8 Tools: build_options.py: correct feature name for externalahrs-baro sensor 2025-05-30 15:29:03 +10:00
Andrew Tridgell 400c9c0628 Tools: added QMC5883P to build options 2025-05-29 11:06:43 +10:00
Stephen Dade 3644b987ee Tools: Allow DDS to be enabled via hwdef 2025-05-21 17:20:38 +10:00
Peter Barker 33f80a93c1 Tools: add option for AP_ROVER_AUTO_ARM_ONCE_ENABLED 2025-05-14 16:21:49 +09:00
Peter Barker 91f1cc8bd9 Tools: rename HAL_EXTERNAL_AHRS_ENABLED to AP_EXTERNAL_AHRS_ENABLED
in preparation for making this an optional feature; a lot of people will want to go and put this in their hwdef files as soon as we do this!
2025-05-13 09:06:44 +09:00
Iampete1 0b9e5069ec Tools: scripts: configure all: --build: fix periph detection 2025-05-12 13:31:54 +10:00
Peter Barker 407b2707d7 Tools: allow sending of rangefinder mavlink message to be compiled out 2025-05-08 16:40:22 +10:00
Pierre Kancir 612b6ef5b2 Tools: prind group tag for autotest on CI 2025-05-07 10:51:32 +10:00
Peter Barker 037786014e Tools: correct size_compare_branches elf_diff 2025-05-07 10:38:25 +10:00
co63oc 6878b0ebd7 Tools: correct typos and mis-spellings 2025-05-04 23:36:45 +10:00
Peter Barker 8afef34c7f Tools: size_compare_binaries: use toolchain from board_info 2025-05-03 09:57:30 +10:00
Peter Barker 25a35f166b Tools: board_list: add a toolchain to the board object 2025-05-03 09:57:30 +10:00
Thomas Watson 2afc682995 CI: revert "build CubeRed-EKF2 not CubeOrange-EKF2 in CI"
This reverts commit c6491d6b45.

CubeOrange now has oodles of flash and CubeRed is out.
2025-04-29 15:44:29 +09:00
Iampete1 b990429907 Tools: scripts: update lua language check for new version of server 2025-04-29 11:29:28 +10:00
Peter Barker 701acbefb0 Tools: size_compare_branches.py: strip elf files for identical comparison 2025-04-28 15:02:24 +10:00
bugobliterator 32555302de Tools: add Networking and CAN Mcast to feature list 2025-04-25 12:09:49 +10:00
Peter Barker c7b3beb846 Tools: extract_features.py: changte symbol used to probe for AIS
because we use dummy methods in the AIS library it can appear to be compiled in when it is actually not functional
2025-04-21 21:52:20 +10:00
Peter Barker ba75176551 Tools: extract_features.py: correct extraction of MS56XX features
these never had that update symbol
2025-04-20 18:34:48 +10:00
Peter Barker 78717a84f6 Tool: generate_manifest: correct output in error path
Traceback (most recent call last):
  File "/mnt/volume_nyc3_01/autotest/APM/APM/./build_binaries.py", line 771, in
<module>
    bb.run()
  File "/mnt/volume_nyc3_01/autotest/APM/APM/./build_binaries.py", line 751, in
run
    self.generate_manifest()
  File "/mnt/volume_nyc3_01/autotest/APM/APM/./build_binaries.py", line 662, in
generate_manifest
    generator.run()
  File "/mnt/volume_nyc3_01/autotest/APM/APM/generate_manifest.py", line 614, in
 run
    self.structure, self.features_structure = self.walk_directory(self.basedir)
  File "/mnt/volume_nyc3_01/autotest/APM/APM/generate_manifest.py", line 526, in
 walk_directory
    (tag, os.path.join(vdir)), file=sys.stderr)
  File "/usr/lib/python3.10/posixpath.py", line 76, in join
    a = os.fspath(a)
TypeError: expected str, bytes or os.PathLike object, not list
2025-04-20 10:20:00 +10:00
Peter Barker c4cb5802bb Tools: factor MS56XX into MS5607, 5611, 5637 and 3847 backends 2025-04-16 17:28:42 +10:00
Christian Clauss 5b8df9a642 Tools: fix typos discovered by codespell 2025-04-15 14:48:39 +10:00
George Zogopoulos a63ce3abd4 Tools: Added Loweheiser generator build option 2025-04-09 18:06:47 +10:00
Andy Piper 63ced56965 scripts: add AP_CRSF_SCRIPTING_ENABLED to extract features 2025-04-09 17:16:58 +10:00