diff --git a/CHANGELOG.md b/CHANGELOG.md index f4aff56b..3c3f7807 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,57 +1,204 @@ -## V 0.6.0 +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) in spirit but +uses [PEP440](https://peps.python.org/pep-0440/) for the version identification. + +## [1.0.2] - 2024-04-05 + +## Changed + +* Use pypi for version check instead of `version-info.json` in the Github repository. + +## [1.0.1] - 2023-12-22 + +## Fixed + +* Fix `linien-server` startup by @bleykauf in https://github.com/linien-org/linien/pull/369 + +## [1.0.0] - 2023-12-01 + +### Added + +* Add (debug) logging by @bleykauf in https://github.com/linien-org/linien/pull/349 + +### Changed + +* Better names for autolock algorithms FastPID-only mode and PID optimizationnoise analysis by @bleykauf in https://github.com/linien-org/linien/pull/346 (fixes https://github.com/linien-org/linien/issues/235) + +### Fixed + + * Fix bug where application data directory was not created by @bleykauf in https://github.com/linien-org/linien/pull/361 +* Fix all kinds of dependencies issues by @doronbehar in https://github.com/linien-org/linien/pull/353 + +## [0.8.0] - 2023-07-06 + +### Added + +* Add mypy configuration by @bleykauf in https://github.com/linien-org/linien/pull/336 +* Add parameter logging to influxdb by @bleykauf in https://github.com/linien-org/linien/pull/311 +* Adapt to RedPitaya OS 2 by @hermitdemschoenenleben in https://github.com/linien-org/linien/pull/342 + +### Changed +* Simplify the app structure by @bleykauf in https://github.com/linien-org/linien/pull/320 +* Simplify server structure by @bleykauf in https://github.com/linien-org/linien/pull/321 +* Simplify acquisition by @bleykauf in https://github.com/linien-org/linien/pull/333 +* Improve installation script by @bleykauf in https://github.com/linien-org/linien/pull/335 +* Improve authentication by @bleykauf in https://github.com/linien-org/linien/pull/343 + + +## [0.7.0] - 2023-03-21 + +### Added + +* Add ability to output slow PID on fast DACs by @bleykauf in https://github.com/linien-org/linien/pull/312, thanks @cmf84 for the initial commit +* Add `CITATION.cff` by @bleykauf in https://github.com/linien-org/linien/pull/274 + +### Changed +* Use deterministic random number generation for tests by @bleykauf in https://github.com/linien-org/linien/pull/315 +* Use docstrings instead of comments for parameter documentation by @bleykauf in https://github.com/linien-org/linien/pull/316 + +### Fixed +* README: Fix link to "getting started" by @doronbehar in https://github.com/linien-org/linien/pull/313 + + +## [0.6.0] - 2023-02-27 + +### Changed + - Refactor package structure by @bleykauf in https://github.com/linien-org/linien/pull/277 -## V 0.5.3.post2 -- Pin specific commits for installation of `pyrp3 and `mdio-tool` in `linien_install_requirements.sh` +### Removed +* We are no longer providing a Linux executable since it cannot be built using CI (see #263) and most users run Windows. We recommand installing linien-gui using pip (see the updated readme). If you encounter any problems, please open an issue. + +## [0.5.3.post2] - 2023-02-24 + +### Fixed + - Fix file extension in `linien_start_server.sh`, see #291. Thank you, @doronbehar! -- Bump future from 0.18.2 to 0.18.3 by @dependabot in https://github.com/linien-org/linien/pull/305 +- Pin specific commits for installation of `pyrp3 and `mdio-tool` in `linien_install_requirements.sh` + +## [0.5.3] - 2023-04-12 + +### Fixed -## V 0.5.3 - Fix bug preventing proper starting and stopping of linien-server -## V 0.5.2 +## [0.5.2] - 2023-04-05 + +### Added + - Better keyboard controls for spinboxes -## V 0.5.1 +## [0.5.1] - 2023-02-17 + +### Added + - Re-enable sweep for fast mode. -## V 0.5.0 +## [0.5.0.post1] - 2022-01-24 + +### Added + - **Better sweep controls** make it easier to adjust the sweep range and allow to stop the sweep altogether. - **A new, faster PID-only mode** allows for a higher control bandwidth by skipping modulation/demodulation steps (useful for offset locks). - **Added Welch's method** to the measurement of the error signals power spectral density (PSD). -## V 0.4.3 +### Changed + +* The parameters that deal with the sweep / ramp have been renamed: + * "center" is now "sweep_center" + * "ramp_amplitude", "ramp_speed" and * * "autolock_initial_ramp_amplitude" are now "sweep_amplitude" and * "sweep_speed" and "autolock_initial_sweep_amplitude", respectively + There is a new boolean parameter "sweep_pause". + + +## [0.4.3] - 2021-06-22 + +### Added + - **Disabled LED blinking** as [it causes additional noise](https://github.com/RedPitaya/RedPitaya/issues/205) (thanks to Yao-Chin!) - **DC spectroscopy signal is displayed** (thanks to aisichenko for the idea!) - **lpsd** is now used for psd measurements (samples psd on a log scale) + +### Fixed + - **various bug fixes** especially in the autolock component -## V 0.4.2 +## [0.4.2] - 2021-03-14 + +### Removed + - **Removed "Check lock" and "Watch lock" features** as they caused problems with the new autolock algorithms as well as with noise analysis. These features are planned to be reimplemented in a future release (and in a more sophisticated way). If you rely on these features, consider using Linien version `0.3.2` until then. -## V 0.4.1 +## [0.4.1] - 2021-03-10 + +### Fixed + - fix a bug in the server package that lead to an incomplete install -## V 0.4.0 +## [0.4.0] - 2021-03-10 + +### Added + - Implemented new autolock algorithms that are faster and work with high jitter - For noise analysis, PSD of the error signal may be recorded - Plot window of the main window may be zoomed / panned by clicking and dragging / using the mouse wheel - Parameters are not only backed up on the client side but also on the server. When client connects to a server with parameter mismatch, the user may decide whether to keep local or remote parameters -## V 0.3.2 -- FIX: incompatibility with rpyc==5.0.0 +## [0.3.2] - 2021-01-06 + +### Changed + - improved documentation -## V 0.3.1 -- FIX: derivative of PID should work now as expected +### Fixed + +- Mark incompatibility with `rpyc==5.0.0` + + +## [0.3.1] - 2020-12-30 + +### Fixed + +- derivative of PID should work now as expected + +## [0.3.0] - 2020-12-23 + +### Added -## V 0.3.0 * **IQ demodulation** (simultaneous orthogonal demodulation) allows for determination of the spectroscopy signal strength. This makes one-shot optimization of the demodulation phase possible -* **Improved optimization algorithm**: Automatic optimization of the slope of a line is now more robust and converges faster -* **More accurate autolock**: Autolock reliability was improved * **ANALOG_OUTs** can be set using python client or GUI -* **Digital GPIO** outputs are now accessible using python client -* **Keyboard shortcuts for zoom and pan**: Use `←` / `→` / `+` / `-` * **Device editing** is now possible, leaving device's parameters untouched * **Extra package for python client**: `pip install linien-python-client` installs a headless version of the linien client that allows to control your lock in an environment that doesn't provide GUI libraries -* **Bug fixes and performance improvements** \ No newline at end of file +* **Digital GPIO** outputs are now accessible using python client +* **Keyboard shortcuts for zoom and pan**: Use `←` / `→` / `+` / `-` + +### Changed + +* **Improved optimization algorithm**: Automatic optimization of the slope of a line is now more robust and converges faster +* **More accurate autolock**: Autolock reliability was improved + +### Fixed + +* **Bug fixes and performance improvements** + + +[1.0.2]: https://github.com/linien-org/linien/compare/v1.0.1...v1.0.2 +[1.0.1]: https://github.com/linien-org/linien/compare/v1.0.0...v1.0.1 +[1.0.0]: https://github.com/linien-org/linien/compare/v0.8.0...v1.0.0 +[0.8.0]: https://github.com/linien-org/linien/compare/v0.7.0...v0.8.0 +[0.7.0]: https://github.com/linien-org/linien/compare/v0.6.0...v0.7.0 +[0.6.0]: https://github.com/linien-org/linien/compare/v0.3.0.post2...v0.6.0 +[0.5.3.post2]: https://github.com/linien-org/linien/compare/v0.5.3...v0.5.3.post2 +[0.5.3]: https://github.com/linien-org/linien/compare/v0.5.2...v0.5.3 +[0.5.2]: https://github.com/linien-org/linien/compare/v0.5.1...v0.5.2 +[0.5.1]: https://github.com/linien-org/linien/compare/v0.5.0.post1...v0.5.1 +[0.5.0.post1]: https://github.com/linien-org/linien/compare/v0.4.3...v0.5.0.post1 +[0.4.3]: https://github.com/linien-org/linien/compare/v0.4.2...v0.4.3 +[0.4.2]: https://github.com/linien-org/linien/compare/v0.4.1...v0.4.2 +[0.4.1]: https://github.com/linien-org/linien/compare/v0.4.0...v0.4.1 +[0.3.2]: https://github.com/linien-org/linien/compare/v0.3.1...v0.3.2 +[0.3.1]: https://github.com/linien-org/linien/compare/v0.3.0...v0.3.1 +[0.3.0]: https://github.com/linien-org/linien/compare/v0.2.3...v0.3.0 \ No newline at end of file diff --git a/linien-client/setup.py b/linien-client/setup.py index 1eccb908..91e096e0 100644 --- a/linien-client/setup.py +++ b/linien-client/setup.py @@ -18,7 +18,7 @@ from setuptools import find_packages, setup -version = "1.0.1" +version = "1.0.2" setup( name="linien-client", @@ -41,6 +41,6 @@ install_requires=[ "fabric>=2.7.0", "typing_extensions>=4.5.0", - "linien-common==1.0.1", + "linien-common==1.0.2", ], ) diff --git a/linien-common/setup.py b/linien-common/setup.py index 50775362..87a5c7b9 100644 --- a/linien-common/setup.py +++ b/linien-common/setup.py @@ -19,7 +19,7 @@ setup( name="linien-common", - version="1.0.1", + version="1.0.2", author="Benjamin Wiegand", author_email="highwaychile@posteo.de", maintainer="Bastian Leykauf", diff --git a/linien-gui/linien_gui/ui/version_checker.py b/linien-gui/linien_gui/ui/version_checker.py index 151caaaf..fa4bfa7d 100644 --- a/linien-gui/linien_gui/ui/version_checker.py +++ b/linien-gui/linien_gui/ui/version_checker.py @@ -16,11 +16,10 @@ # You should have received a copy of the GNU General Public License # along with Linien. If not, see . -import json import logging -from urllib.request import urlopen import linien_gui +import requests from packaging import version from PyQt5.QtCore import QThread, pyqtSignal @@ -35,10 +34,10 @@ def run(self): our_version = version.parse(linien_gui.__version__) latest_version = our_version logger.debug("Check whether new version is available.") - url = "https://raw.githubusercontent.com/linien-org/linien/master/version-info.json" # noqa: E501 - try: - with urlopen(url) as response: - response_content = json.loads(response.read()) - latest_version = version.parse(response_content["latest"]) - finally: + response = requests.get("https://pypi.org/pypi/linien-gui/json") + if response.ok: + latest_version = version.parse(response.json()["info"]["version"]) self.check_done.emit(latest_version > our_version) + else: + logger.error("Failed to check for new version.") + self.check_done.emit(False) diff --git a/linien-gui/pyinstaller.spec b/linien-gui/pyinstaller.spec index 6095460f..6f12fb9a 100644 --- a/linien-gui/pyinstaller.spec +++ b/linien-gui/pyinstaller.spec @@ -11,7 +11,7 @@ a = Analysis( pathex=[], binaries=[], datas=datas, - hiddenimports=["PyQt5.sip", "superqt"], + hiddenimports=["PyQt5.sip", "superqt", "scipy.special._cdflib"], hookspath=[], runtime_hooks=[], excludes=[], diff --git a/linien-gui/setup.py b/linien-gui/setup.py index deac12ac..0fc3ef06 100644 --- a/linien-gui/setup.py +++ b/linien-gui/setup.py @@ -20,7 +20,7 @@ setup( name="linien-gui", - version="1.0.1", + version="1.0.2", author="Benjamin Wiegand", author_email="highwaychile@posteo.de", maintainer="Bastian Leykauf", @@ -42,7 +42,7 @@ "pyqtgraph>=0.10.0", "PyQt5>=5.12.0", "superqt>=0.2.3", - "linien_client==1.0.1", + "linien_client==1.0.2", ], package_data={ # IMPORTANT: any changes have to be made in pyinstaller.spec, too diff --git a/linien-server/setup.py b/linien-server/setup.py index d2e3af0b..f3375def 100644 --- a/linien-server/setup.py +++ b/linien-server/setup.py @@ -20,7 +20,7 @@ setup( name="linien-server", - version="1.0.1", + version="1.0.2", author="Benjamin Wiegand", author_email="highwaychile@posteo.de", maintainer="Bastian Leykauf", @@ -45,7 +45,7 @@ "pyrp3>=1.1.0,<2.0;platform_machine=='armv7l'", # only install on RedPitaya "requests==2.25.1;python_version<'3.10'", # pinned because of bug in pip 9.0.1, see #339 # noqa: E501 "requests>=2.25.1;python_version>='3.10'", - "linien-common==1.0.1", + "linien-common==1.0.2", ], scripts=[ "linien_server/linien_start_server.sh", diff --git a/version-info.json b/version-info.json deleted file mode 100644 index fe7819cc..00000000 --- a/version-info.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "latest": "1.0.1" -} \ No newline at end of file