Greetings,
A new daily build of CHIRP is available. This includes changes made directly to the tree yesterday, and may include additional features, bug fixes, and/or bugs. If you are interested in trying it, grab it from the following location:
http://trac.chirp.danplanet.com/chirp_daily/daily-20171012
A list of the changes included in this build (since the last daily) follows:
Changes for Build #501 [Dan Smith dsmith@danplanet.com] Fix long-standing test runner output bug
The unified logging code arrests stdout for the purposes of non-interactive console logging to a file. This has been preventing proper console output when running in the build system, making it harder to debug failures. This adds a CHIRP_TESTENV override environment variable, and always sets it from the test runner since we should always have interactive output from it.
Related to #5237
[Dan Smith dsmith@danplanet.com] Remove unnecessary test tools
After #5237 these are no longer necessary and duplicative.
[Dan Smith dsmith@danplanet.com] Add tox.ini for running tests
Tox handles venv creation and management of setup install for running tests. Since we have a venv required already, this just makes sense.
Now, instead of:
./run_all_tests.sh
You can just run:
tox
Assuming you have tox installed (pip install tox). You can run individual test groups like this:
tox -e unit tox -e driver
and still pass arguments to the driver tests per usual with:
tox -e driver -- -d Icom_IC-2200H
I'll be working to make the build system use tox for running tests with better isolation and hopefully more repeatability.
#5237
[Dan Smith dsmith@danplanet.com] Some fixes to run_tests
First, in r2787 we made the BruteForce test do RadioFeatures validation on a memory, avoiding a failure if the memory did not validate. For some reason we still required that radio.validate_memory() pass for any of those tests, which doesn't allow for the radio to ban quirks in the tests. This makes us not fail if the radio rightly fails to validate.
Second, we were modifying the memory in do_mode() so that once we passed FM in the mode sequence we were always trying freq+100Mhz. Depending on how we ran the tests (i.e. which order we hit the modes) this would sometimes fail. This makes us copy the original memory so we're stable throughout the modes.
Related to #5237
[Dan Smith dsmith@danplanet.com] [icq7] Add validate_memory() for sub-30MHz AM requirement
This driver has a requirement that anything under 30MHz be AM. Validate that in validate_memory() so we can properly handle cases where that won't work.
Found in the pursuit of #5237
[Dan Smith dsmith@danplanet.com] Remove dedicated silly rptbuild setup handler
This just makes setup.py more complicated and there's no reason to build this as a separate package. Just build it as an additional script on the main default build.
Needed for #5237
[Dan Smith dsmith@danplanet.com] Let make_supported.py take an output filename as the first argument
Needed for #5237
[Dan Smith dsmith@danplanet.com] More pep8 compliance fixes
#2355
[Imuli i@imu.li] [uv5r] UV-82 use ASCII charset Partially fixes #5227
The UV-82 supports all of ASCII (with two replacements).
I imagine other Baofeng radios do also, so this provides an easy means to specify supported characters for different models.