-
Notifications
You must be signed in to change notification settings - Fork 2
Migrate to serialx #443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate to serialx #443
Changes from 11 commits
cd0191b
7356241
b386215
6a53454
0758d68
b56b927
5a80491
8068385
e646b2e
148e1f6
be4138f
8397f14
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,7 +4,7 @@ | |
| name: Latest commit | ||
|
|
||
| env: | ||
| CACHE_VERSION: 2 | ||
| CACHE_VERSION: 3 | ||
| DEFAULT_PYTHON: "3.14" | ||
| VENV: venv | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,15 +4,14 @@ build-backend = "setuptools.build_meta" | |
|
|
||
| [project] | ||
| name = "plugwise_usb" | ||
| version = "0.47.6" | ||
| version = "0.47.7" | ||
| license = "MIT" | ||
| keywords = ["home", "automation", "plugwise", "module", "usb"] | ||
| classifiers = [ | ||
| "Development Status :: 5 - Production/Stable", | ||
| "Intended Audience :: Developers", | ||
| "Operating System :: OS Independent", | ||
| "Programming Language :: Python :: 3.14", | ||
| "Programming Language :: Python :: 3.13", | ||
| "Topic :: Home Automation", | ||
| ] | ||
| authors = [ | ||
|
|
@@ -25,12 +24,12 @@ maintainers = [ | |
| { name = "CoMPaTech" }, | ||
| { name = "dirixmjm" } | ||
| ] | ||
| requires-python = ">=3.13.0" | ||
| requires-python = ">=3.14.0" | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Check serialx Python version requirements
pip index versions serialx 2>/dev/null || echo "Package not found on PyPI"
# If available, check the package metadata
python -m pip download --no-deps serialx 2>&1 | head -20Repository: plugwise/python-plugwise-usb Length of output: 541 🌐 Web query:
💡 Result: The minimum Python version required by the serialx library is Python 3.10 [1]. This requirement is explicitly stated in the project's metadata on PyPI [1]. Citations: 🏁 Script executed: #!/bin/bash
# Get the METADATA from the downloaded serialx wheel to see exact requires-python
cd /tmp && unzip -q serialx-1.8.0-py3-none-any.whl 'serialx*' 2>/dev/null || true
find . -name 'METADATA' -o -name 'WHEEL' 2>/dev/null | head -5
# Alternative: inspect wheel directly with zipinfo
cd /tmp && python3 << 'EOF'
import zipfile
import re
try:
with zipfile.ZipFile('serialx-1.8.0-py3-none-any.whl', 'r') as z:
for file in z.namelist():
if 'METADATA' in file or 'WHEEL' in file:
print(f"\n=== {file} ===")
content = z.read(file).decode('utf-8')
# Print only the first 100 lines or until we find requires-python
lines = content.split('\n')
for i, line in enumerate(lines[:100]):
if 'Requires-Python' in line or 'requires' in line.lower() or i < 20:
print(line)
except Exception as e:
print(f"Error: {e}")
EOFRepository: plugwise/python-plugwise-usb Length of output: 149 🏁 Script executed: #!/bin/bash
# Check plugwise pyproject.toml for all dependencies
cat pyproject.toml | grep -A 50 "dependencies\|requires-python"Repository: plugwise/python-plugwise-usb Length of output: 1433 🏁 Script executed: #!/bin/bash
# Check the Python version requirements for the dependencies listed
# aiofiles, crcmod, semver, serialx
for package in aiofiles crcmod semver serialx; do
echo "=== $package ==="
pip index versions "$package" 2>/dev/null | head -1
done
# Also check if there are any Python 3.14 specific features used in the codebase
echo -e "\n=== Checking for Python 3.14 specific features ==="
rg "from __future__ import" pyproject.toml src/ 2>/dev/null || echo "No future imports found"
rg "3\.14|3\.13|3\.12|3\.11|3\.10" . --type py --max-count 10 2>/dev/null | head -20Repository: plugwise/python-plugwise-usb Length of output: 273 🌐 Web query:
💡 Result: The minimum Python version requirements for the requested packages are as follows: aiofiles: The current version (25.1.0) requires Python 3.9 or higher [1][2]. Support for older versions was dropped in previous releases (e.g., Python 3.8 support was dropped in version 25.0.0/24.1.0, and Python 3.7 support was dropped in version 24.0.0/23.2.1) [3]. crcmod: The package (version 1.7) supports both Python 2.x and 3.x series [4][5]. Specifically, it has been tested on Python 2.4–2.7 and Python 3.1 [4][6]. While it may work on other versions, these are the explicitly documented versions [5]. semver: The current major version (3.0.0 and later) requires Python 3.7 or higher [7]. The 2.x series supported Python 2.7 through 3.5, but this branch is frozen and no longer receives updates [7]. Citations:
Remove the unnecessary Python 3.14 minimum requirement. The
The codebase contains no Python 3.14-specific features. Lowering the requirement to 🤖 Prompt for AI Agents |
||
| dependencies = [ | ||
| "pyserial-asyncio-fast", | ||
| "aiofiles", | ||
| "crcmod", | ||
| "semver", | ||
| "serialx", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Check if serialx is available and get version info
pip index versions serialx 2>/dev/null | head -20
# Check the package metadata if available
curl -s https://pypi.org/pypi/serialx/json | jq -r '.info | {name, version, author, home_page, requires_python, summary}'Repository: plugwise/python-plugwise-usb Length of output: 546 🌐 Web query:
💡 Result: As of May 18, 2026, the latest stable version of the serialx Python library is v1.7.3 [1]. This library requires Python 3.10 or newer [1]. Citations: Add a version constraint to the The dependency on 🤖 Prompt for AI Agents |
||
| ] | ||
|
|
||
| [project.urls] | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,7 +4,7 @@ | |
| pytest-asyncio | ||
| radon==6.0.1 | ||
| types-python-dateutil | ||
| pyserial-asyncio-fast | ||
| aiofiles | ||
| freezegun | ||
| pytest-cov | ||
| serialx | ||
Uh oh!
There was an error while loading. Please reload this page.