This has been asked for a couple of times now. I don't get it, but
people want to change the language of chirp, separate from their OS.
It just adds clutter to the UI, IMHO, but it must be important for
some reason.
Fixes#11349
This is different from the existing "sort memories" function, which
changes the ordering in the radio/image. This feature changes only the
"view" in the UI.
Fixes: #10750Fixes: #11338
This fixes us trying to push the spreadsheet cursor past the edges of
the sheet when doing move-up or move-down, if the cursor was already
at the edge.
Fixes: #11344
This makes us keep detected models separate per class that they
were @detected_by. Before this, we would end up with a mashup of all
the detected subclasses in the highest parent class that was a detect
target (i.e. TID H3 and H8 mixed together). Now, we keep them
separate at import/class define time so we don't have to further
filter them. Also, this builds in the include-self behavior to
detected_models() to avoid having to repeat that everwhere.
This also fixes a download..upload..download bug where we will corrupt
the last_model with the detected model name, which isn't selectable
on download (since it's detected and not listed).
This makes the TIDRADIO H8 and H3 drivers use the detection framework
instead of requiring the user to choose which mode they have their
radio in. This also helps in the case of a known earlier firmware
version where the H3 was incorrectly identifying itself in one of
the modes. The user would (hopefully) see that it is being incorrectly
detected and upgrade their firmware.
Related: #11326
The work to enable comments in CSV files broke the detection of those
files when a BOM is present and there are no comments before the
header.
Fixes: #11303
This is really kinda meh in terms of usefulness but getting these
squared away (or ignored) allows us to run the rest of mypy on the
drivers for the other benefits we might be able to actually see.
The csv driver was logging errors on each bad line, but also re-logging
the list of errors at the end. That just duplicates what we log, but
also ends up with double the errors being shown to the user now that
we expose them during open/import.
Related to #11293
The latest Retevis RT24 (and likely the RT24V and H777S) models no
longer acknowlege the CMD_ACK following the password check so the
'ack' will be empty and fail the check for an ack causing cloning to
fail.
The factory CPS continues with or without an ack so CHIRP will now
behave the same way.