From 48ea82f7851b33dedc319ef5d57f9b4526ecb0ab Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 09:39:38 +0200 Subject: [PATCH 01/12] use two versions of python for tests --- .github/workflows/test-dev.yml | 9 +++++++-- hololinked/server/eventloop.py | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index 2900858..9f54e90 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -13,14 +13,19 @@ on: jobs: test: runs-on: ubuntu-latest + + strategy: + matrix: + python-version: [3.10, 3.11] + steps: - name: Checkout code uses: actions/checkout@v4 - - name: Set up Python + - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v3 with: - python-version: 3.11 + python-version: ${{ matrix.python-version }} - name: Install dependencies run: pip install -r tests/requirements.txt diff --git a/hololinked/server/eventloop.py b/hololinked/server/eventloop.py index e605ff4..f06073b 100644 --- a/hololinked/server/eventloop.py +++ b/hololinked/server/eventloop.py @@ -353,7 +353,9 @@ async def execute_once(cls, instance_name : str, instance : Thing, instruction_s if action == "write": if resource.state is None or (hasattr(instance, 'state_machine') and instance.state_machine.current_state in resource.state): - return prop.__set__(owner_inst, arguments["value"]) + if isinstance(arguments, dict) and len(arguments) == 1 and "value" in arguments: + return prop.__set__(owner_inst, arguments["value"]) + return prop.__set__(owner_inst, arguments) else: raise StateMachineError("Thing {} is in `{}` state, however attribute can be written only in `{}` state".format( instance_name, instance.state_machine.current_state, resource.state)) From 07404e4daf6b0eedba6ebd0cf10c2132518fac88 Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 09:48:46 +0200 Subject: [PATCH 02/12] fix version 3.10 --- .github/workflows/test-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index 9f54e90..120fd58 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -16,7 +16,7 @@ jobs: strategy: matrix: - python-version: [3.10, 3.11] + python-version: ['3.10', 3.11] steps: - name: Checkout code From 16569e237f5340715a997133815b4397b412592e Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 10:07:17 +0200 Subject: [PATCH 03/12] no compatibility with 3.10 --- .github/workflows/test-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index 120fd58..d6d1b71 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -16,7 +16,7 @@ jobs: strategy: matrix: - python-version: ['3.10', 3.11] + python-version: [3.11, 3.12, 3.13] steps: - name: Checkout code From d03301c3428e9f30a006872ba78a425271f18b7d Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 10:10:01 +0200 Subject: [PATCH 04/12] remove version 3.13 --- .github/workflows/test-dev.yml | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index d6d1b71..87a5938 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -16,7 +16,7 @@ jobs: strategy: matrix: - python-version: [3.11, 3.12, 3.13] + python-version: [3.11, 3.12] steps: - name: Checkout code diff --git a/setup.py b/setup.py index b379cba..0f00aeb 100644 --- a/setup.py +++ b/setup.py @@ -38,7 +38,7 @@ "Topic :: System :: Hardware", "Development Status :: 4 - Beta" ], - python_requires='>=3.7', + python_requires='>=3.11', install_requires=[ "argon2-cffi>=23.0.0", "ifaddr>=0.2.0", From 09d5b0c5181e7aa6b528d12ab3ee7b53072d3d04 Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 10:15:23 +0200 Subject: [PATCH 05/12] update test release and increase version to 0.2.4 --- .github/workflows/test-release.yml | 9 +++++++-- CHANGELOG.md | 5 +++++ hololinked/__init__.py | 2 +- setup.py | 2 +- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index b428a53..f42b588 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -10,14 +10,19 @@ on: jobs: test: runs-on: ubuntu-latest + + strategy: + matrix: + python-version: [3.11, 3.12] + steps: - name: Checkout code uses: actions/checkout@v4 - - name: Set up Python + - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v3 with: - python-version: 3.11 + python-version: ${{ matrix.python-version }} - name: Install dependencies run: | diff --git a/CHANGELOG.md b/CHANGELOG.md index 8dbbdcc..5b98bdf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - image event handlers (develop branch) for streaming live video as JPEG and PNG ✓ - pydantic support for property models (develop branch) ✓ +## [v0.2.4] - 2024-09-09 + +- added multiple versions of python for testing +- unlike claimed in previous versions, this package runs only on python 3.11 or higher + ## [v0.2.3] - 2024-08-11 - HTTP SSE minor bug-fix/optimization - no difference to the user diff --git a/hololinked/__init__.py b/hololinked/__init__.py index d31c31e..788da1f 100644 --- a/hololinked/__init__.py +++ b/hololinked/__init__.py @@ -1 +1 @@ -__version__ = "0.2.3" +__version__ = "0.2.4" diff --git a/setup.py b/setup.py index 0f00aeb..01725b9 100644 --- a/setup.py +++ b/setup.py @@ -7,7 +7,7 @@ setuptools.setup( name="hololinked", - version="0.2.3", + version="0.2.4", author="Vignesh Vaidyanathan", author_email="vignesh.vaidyanathan@hololinked.dev", description="A ZMQ-based Object Oriented RPC tool-kit for instrument control/data acquisition or controlling generic python objects.", From 37e4ba88a70e704de7dcf214556997af6aa1fc3f Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 12:28:06 +0200 Subject: [PATCH 06/12] updated OS to matric strategy --- .github/workflows/test-release.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index f42b588..ff5e91f 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -9,11 +9,13 @@ on: jobs: test: - runs-on: ubuntu-latest - + strategy: matrix: python-version: [3.11, 3.12] + os: [ubuntu-latest, windows-latest, macos-latest] + + runs-on: ${{ matrix.os }} steps: - name: Checkout code From 30217a58121cb26d2722c88f60d3099c7d7c5ea8 Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 12:44:58 +0200 Subject: [PATCH 07/12] updated OS to matrix strategy --- .github/workflows/test-dev.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index 87a5938..d06d2dc 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -12,11 +12,12 @@ on: jobs: test: - runs-on: ubuntu-latest - strategy: matrix: python-version: [3.11, 3.12] + os: [ubuntu-latest, windows-latest, macos-latest] + + runs-on: ${{ matrix.os }} steps: - name: Checkout code From f8c5969e48237637b160e3fbbcebc10a5a19c5bf Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:42:46 +0200 Subject: [PATCH 08/12] update OS to python mapping due to failed installation of some packages --- .github/workflows/test-release.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index ff5e91f..e89ae08 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -12,8 +12,12 @@ jobs: strategy: matrix: - python-version: [3.11, 3.12] - os: [ubuntu-latest, windows-latest, macos-latest] + include: + # Define specific Python versions for each OS + - os: [ubuntu-latest, windows-latest, macos-latest] + python-version: 3.11 + - os: ubuntu-latest + python-version: 3.12 runs-on: ${{ matrix.os }} From 1a89401c0241089ab2c4b33b7ebd2dc208e41a60 Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Mon, 9 Sep 2024 16:44:12 +0200 Subject: [PATCH 09/12] update OS to python mapping due to failed installation of some packages --- .github/workflows/test-dev.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index d06d2dc..25a2047 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -14,8 +14,12 @@ jobs: test: strategy: matrix: - python-version: [3.11, 3.12] - os: [ubuntu-latest, windows-latest, macos-latest] + include: + # Define specific Python versions for each OS + - os: [ubuntu-latest, windows-latest, macos-latest] + python-version: 3.11 + - os: ubuntu-latest + python-version: 3.12 runs-on: ${{ matrix.os }} From a9abf849826a84d108e77bf0cd9340a1768fe4f1 Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Tue, 10 Sep 2024 07:18:57 +0200 Subject: [PATCH 10/12] added codecov yml --- codecov.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 codecov.yml diff --git a/codecov.yml b/codecov.yml new file mode 100644 index 0000000..bd646db --- /dev/null +++ b/codecov.yml @@ -0,0 +1,5 @@ +coverage: + status: + patch: + default: + enabled: false From 00d4c0302022926f4fda98db2ccbb628eb851373 Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Tue, 10 Sep 2024 07:23:59 +0200 Subject: [PATCH 11/12] update OS version specifying method for py 3.11 --- .github/workflows/test-dev.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index 25a2047..1e7d7c8 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -16,7 +16,11 @@ jobs: matrix: include: # Define specific Python versions for each OS - - os: [ubuntu-latest, windows-latest, macos-latest] + - os: ubuntu-latest + python-version: 3.11 + - os: windows-latest + python-version: 3.11 + - os: macos-latest python-version: 3.11 - os: ubuntu-latest python-version: 3.12 From 4a5cb77a31636c2f345e8b2a1d7fd989412cf42b Mon Sep 17 00:00:00 2001 From: Vignesh Venkatasubramanian Vaidyanathan <62492557+VigneshVSV@users.noreply.github.com> Date: Tue, 10 Sep 2024 07:33:37 +0200 Subject: [PATCH 12/12] commented out win and macos tests and temp folder configuration tricky --- .github/workflows/test-dev.yml | 8 ++++---- .github/workflows/test-release.yml | 6 +++++- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test-dev.yml b/.github/workflows/test-dev.yml index 1e7d7c8..3fca940 100644 --- a/.github/workflows/test-dev.yml +++ b/.github/workflows/test-dev.yml @@ -18,10 +18,10 @@ jobs: # Define specific Python versions for each OS - os: ubuntu-latest python-version: 3.11 - - os: windows-latest - python-version: 3.11 - - os: macos-latest - python-version: 3.11 + # - os: windows-latest + # python-version: 3.11 + # - os: macos-latest + # python-version: 3.11 - os: ubuntu-latest python-version: 3.12 diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index e89ae08..edea825 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -14,7 +14,11 @@ jobs: matrix: include: # Define specific Python versions for each OS - - os: [ubuntu-latest, windows-latest, macos-latest] + - os: ubuntu-latest + python-version: 3.11 + - os: windows-latest + python-version: 3.11 + - os: macos-latest python-version: 3.11 - os: ubuntu-latest python-version: 3.12