add it to the specified file or to all *.param and *.parm files in the specified directory.
1. Checks if a local cache of the XML file exists in the target directory or on the directory of the target file:
- If it does, the script loads the file content.
- If it doesn't, the script sends a GET request to the URL to fetch the XML data for the requested vehicle type.
2. Parses the XML data and creates a dictionary of parameter documentation.
3. DELETES all comments that start at the beginning of a line
4. Adds the parameter documentation to the target file or to all *.param,*.parm files in the target directory.
Supports AP_Periph, AntennaTracker, ArduCopter, ArduPlane, ArduSub, Blimp, Heli, Rover and SITL vehicle types
Supports both Mission Planner and MAVProxy file formats
Supports sorting the parameters
Has unit tests with 88% coverage
AP_FLAKE8_CLEAN
Author: Amilcar do Carmo Lucas, IAV GmbH
# Conflicts:
# .github/workflows/test_unit_tests.yml
* Use checkout v4 to pull in ArduPilot into a subdir first
* Enable console cohesion during test since JUnit reporting is out of
scope
* Install mavproxy separately as needed, alternative to --console
* Hide wget progress
* Install local pymavlink
Co-authored-by: Pierre Kancir <khancyr@gmail.com>
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
bionic no longer builds SITL:
../../libraries/AP_Logger/AP_Logger_Backend.cpp: In member function 'bool AP_Logger_Backend::Write_VER()':
../../libraries/AP_Logger/AP_Logger_Backend.cpp:577:5: sorry, unimplemented: non-trivial designated initializers not supported
};
^
compilation terminated due to -Wfatal-errors.
We had previous discussed removing this as it was very-little-used.
Today this workflow died because elf_diff failed to install:
Traceback (most recent call last):
File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.8/dist-packages/elf_diff/__main__.py", line 23, in <module>
from elf_diff.pair_report_document import generateDocument, ValueTreeNode
File "/usr/local/lib/python3.8/dist-packages/elf_diff/pair_report_document.py", line 34, in <module>
import elf_diff.binary as binary
File "/usr/local/lib/python3.8/dist-packages/elf_diff/binary.py", line 27, in <module>
from elf_diff.instruction_collector import InstructionCollector
File "/usr/local/lib/python3.8/dist-packages/elf_diff/instruction_collector.py", line 28, in <module>
import progressbar # type: ignore # Make mypy ignore this module
File "/usr/local/lib/python3.8/dist-packages/progressbar/__init__.py", line 5, in <module>
from .bar import DataTransferBar
File "/usr/local/lib/python3.8/dist-packages/progressbar/bar.py", line 13, in <module>
from python_utils import types
File "/usr/local/lib/python3.8/dist-packages/python_utils/__init__.py", line 1, in <module>
from . import (
File "/usr/local/lib/python3.8/dist-packages/python_utils/aio.py", line 8, in <module>
from . import types
File "/usr/local/lib/python3.8/dist-packages/python_utils/types.py", line 4, in <module>
from typing_extensions import * # type: ignore # noqa: F403
ModuleNotFoundError: No module named 'typing_extensions'