diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0e3cf21..d60792e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -39,6 +39,11 @@ jobs: with: python-version: '3.12' + # pyscard has no manylinux wheels, so it builds from source on Linux + # and needs the PC/SC development headers. + - name: Install the PC/SC development headers + run: sudo apt-get update && sudo apt-get install -y libpcsclite-dev + - name: Install pysim and the test dependencies working-directory: simple run: | diff --git a/README.md b/README.md index 4c68b93..344b478 100644 --- a/README.md +++ b/README.md @@ -739,7 +739,7 @@ The bundled Python server wraps [pySim](https://osmocom.org/projects/pysim/wiki) ### Prerequisites - **Python 3.9+** with `pip`, and **Git** -- **Smart card reader** (PC/SC or serial/FTDI) — PC/SC is preferable (`pcsc-lite` + `ccid` on Linux) +- **Smart card reader** (PC/SC or serial/FTDI) — PC/SC is preferable (`pcsc-lite` + `ccid` on Linux). `pyscard` has no Linux wheels, so it builds from source: install the PC/SC header package too (`libpcsclite-dev` on Debian/Ubuntu, `pcsc-lite-devel` on Fedora; on Arch `pcsclite` includes them). - **Windows** — use Python 3.9–3.13 (3.13 recommended): `pyscard` ships precompiled wheels for these versions. On 3.14 it builds from source (needs MSVC C++ Build Tools). The SMPP bridge (`smpp.twisted3`) is intentionally skipped on Windows. ### Scripts diff --git a/README_RUS.md b/README_RUS.md index adfecaa..69c63ff 100644 --- a/README_RUS.md +++ b/README_RUS.md @@ -723,7 +723,7 @@ PWA проверяет версию сервера при подключении ### Требования - **Python 3.9+** с `pip`, и **Git** -- **Смарт-картридер** (PC/SC или serial/FTDI) — предпочтителен PC/SC (`pcsc-lite` + `ccid` на Linux) +- **Смарт-картридер** (PC/SC или serial/FTDI) — предпочтителен PC/SC (`pcsc-lite` + `ccid` на Linux). У `pyscard` нет Linux-wheel, поэтому он собирается из исходников: поставьте и пакет с заголовками PC/SC (`libpcsclite-dev` в Debian/Ubuntu, `pcsc-lite-devel` в Fedora; в Arch они входят в `pcsclite`). - **Windows** — используйте Python 3.9–3.13 (рекомендуется 3.13): у `pyscard` есть готовые wheel. На 3.14 он собирается из исходников (нужны MSVC C++ Build Tools). SMPP-мост (`smpp.twisted3`) в Windows сознательно не ставится. ### Скрипты diff --git a/frontend/index.html b/frontend/index.html index d3db992..9821436 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -1943,7 +1943,7 @@ // ===== Version ===== // Single source of truth for the PWA version: shown in the header and used // by the server version check in pysimConnect(). -const SIMPLE_VERSION = '3.31.0'; +const SIMPLE_VERSION = '3.31.1'; document.getElementById('app-version').textContent = 'v' + SIMPLE_VERSION; // ===== view history (the browser Back/Forward buttons) ===== diff --git a/frontend/sw.js b/frontend/sw.js index 10fdfb6..b797ecb 100644 --- a/frontend/sw.js +++ b/frontend/sw.js @@ -1,4 +1,4 @@ -const CACHE = 'simple-v455'; +const CACHE = 'simple-v456'; const URLS = [ 'index.html', 'help.html', diff --git a/pyproject.toml b/pyproject.toml index c1d3f14..73a712f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "pysim-simple-server" -version = "3.31.0" +version = "3.31.1" description = "HTTP REST server wrapping pysim for the SIMple PWA" license = { text = "GPL-2.0-or-later" } requires-python = ">=3.9" diff --git a/pysim_simple_server/server.py b/pysim_simple_server/server.py index 9c67eab..c562f44 100644 --- a/pysim_simple_server/server.py +++ b/pysim_simple_server/server.py @@ -37,7 +37,7 @@ from osmocom.tlv import BER_TLV_IE from osmocom.utils import rpad -VERSION = '3.31.0' +VERSION = '3.31.1' MAX_ENVELOPE_SEGMENTS = 5 # max SMS segments for outgoing C-APDU in ENVELOPE diff --git a/setup.sh b/setup.sh index f6a4044..88e785f 100755 --- a/setup.sh +++ b/setup.sh @@ -45,10 +45,11 @@ if command -v pcscd >/dev/null 2>&1; then fi else echo "Note: PC/SC daemon not found. If you use a USB smart card reader," - echo "install pcsc-lite and ccid:" - echo " Debian/Ubuntu: sudo apt install pcscd pcsc-tools" - echo " Arch Linux: sudo pacman -S pcsc-lite ccid" - echo " Fedora: sudo dnf install pcsc-lite pcsc-lite-ccid" + echo "install pcsc-lite and ccid (plus the PC/SC headers that the" + echo "pyscard build needs on Linux):" + echo " Debian/Ubuntu: sudo apt install pcscd pcsc-tools libpcsclite-dev" + echo " Arch Linux: sudo pacman -S pcsc-lite ccid (headers included)" + echo " Fedora: sudo dnf install pcsc-lite pcsc-lite-ccid pcsc-lite-devel" fi echo ""