* style, Sweep.py: remove a double negation
* style, NanoVNASaver.py: simplify sweepSource computation
* Sweep.py: add getters and setters for private fields
Beware that this commit removes a lock from
SweepSettings.update_tex_power, and adds one to
DeviceSettings.updatecustomPoint.
Both changse may be incorrect, depending on the role of the lock
(issue #657).
Follows: 6eb24f23d09b55e1dbea311a
Since d09b55e1, the Properties.name class attribute is overriden by
each assignment to the properties.name instance attribute.
This is most probably unwanted.
This commit
* removes @dataclass, which is confusing as some attributes are
managed because of the lock.
Because of this, it has to restore __repr__ and __eq__.
* provides getters and setters for private attributes, and
protects each update by a thread lock
* adds a regression test for the bug fixed by d09b55e1 (immutable
properties).
* Style: update type annotations
* Style: simplify extraction of version from metadata
* Style: replace some handwritten classes with namedtuples or dataclasses
* RIZ.py: remove unused import
* Style: remove some redundant lambda constructs
* Marker/Values: remove __init__ parameters
Mutable default values imply some complexity. In this case, the
constructor is always called without arguments.