Added libxcb-cursor-dev to correct startup error:
Could not load the Qt platform plugin "xcb" in "" even though it was found.
...and its resulting core dump.
* Because the application version seems to be a generated value, a different
method needed to be devised to try and determine what the current version
nuber if. We now attempt scan the github release tags for the latest release
version. If a newer version is detected, the application will display the
current version and direct the user to click the link to view the latest
release page.
* Rather, should report error against TAGS_URL and not LATEST_URL at this stage.
* fix startup script for pyinstaller
* update 3rd party libs
* flatpak setup
* rely on requirements for pyqt6
* xcb fixes for linux binary build
* removed old linux build workflow
* 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).
Added icon_48x48.ico so that pyinstaller/auto-py-to-exe can create a Windows executable with the actual NanoVNA-Saver project icon instead of a generic Python icon. The .ico was created by converting the icon_48x48.png image.
"Files" button in control panel changed to "Files ..." to be consistent with other "..." actions where a user will take additional action after pressing the button.
Minor corrections in the Calibration page "Are you sure?" and "Calibration assistant" pop-ups where text was being run together. e.g. "doso" instead of "do so" etc.
Fix issue: #663
* With current firmware, these JNCRadio_VNA_3G, SV4401A, SV6301A devices allow 1001 datapoints.
Updated datapoints dropdown to show their respective minimums, the 'typical' 101, device default 501 and maximum 1001 points. Users may choose any other values between min and max not seen in the dropdown list using the custom datapoints option.
These devices now use the factory default 501 datapoints as their initial datapoints value.
* cut-paste typo in sweep_points_min (facepalm)
The nanovna-saver.py script is ignored by setup.cfg, its only purpose
is to test the version in the source directory.
According to https://setuptools.pypa.io/en/latest/history.html,
pkg_resources.py2warn has been removed from setuptools in 2020
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.
* Added support for Sysjoint-Tek / CHELEGANCE JNCRadio VNA 3G
Device reported as JNCRadio and Custom points added under Manage tab.
* Minor change to correct spelling or error msg.
- Info and version check closer together
- More precise wording
- Reflect the connection status of the VNA
Signed-off-by: Martin <Ho-Ro@users.noreply.github.com>
* option --auto-connect, connect automatically to the 1st detected device
* autoconnect only if there is exactly one device
Signed-off-by: Martin <Ho-Ro@users.noreply.github.com>
* fix "Could not parse stylesheet of object QGroupBox..." error
Signed-off-by: Martin <Ho-Ro@users.noreply.github.com>
* fix https://github.com/NanoVNA-Saver/nanovna-saver/issues/596
Signed-off-by: Martin <Ho-Ro@users.noreply.github.com>
---------
Signed-off-by: Martin <Ho-Ro@users.noreply.github.com>
* add icon for MacOS based on icon_48x48.png
* add macos build script to build NanoVNASaver.app for current architecture
* add releas app action to build: NanoVNASaver.app-x86_64.tar.gz action
nanovna-saver.py can be called from outside the source directory. The
module import path needs to be resolved relative to the source
directory, not relative to the current working directory of the
process.
Fixes: b0110002 ("moved to pyscaffold directory structure")
* 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.
Git sometimes replaces CRLF with a single characters, so the tar.gz
archives generated by github from tags differ from the tagged commit.
The tests also pass with a single line terminator.
Some redistributors want a manual page for each executable in path.
The installation path may differ accross systems, so the manual page
is not installed by default.
The file is not intended for direct execution,
not installed in the path,
and not marked as executable.
Its extension is sufficient for editors to trigger syntax highlighting.
The shebang seems to only trigger warnings on systems wher /bin/env is
unavailable (it may be in /usr/bin for example).