* 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).
6eb24f23 from merge request 625
made NamedTuple an ancestor of Properties, adapting the imports and
tests.
d09b55e1 from merge request 628
removed it but forgot to remove the related changes.
* Remove privacy breaches from the HTML documentation
Icons and screenshots should not inform distant websites each time an
user reads readme.html.
The suggestions in this draft are independent and will probably be
discussed separately, but they affect a single file so for a first
review a single commit is convenient.
* fix: sweep settings and hw version update
NamedTuples are inmutable either use _replace or use the class itself.
* Revert "Remove privacy breaches from the HTML documentation"
---------
Co-authored-by: Nicolas Boulenguez <nicolas@debian.org>
* 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.