katcp-codec 0.1.0b2__tar.gz → 0.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/.github/workflows/test.yml +43 -39
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/.pre-commit-config.yaml +9 -19
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/.readthedocs.yml +4 -2
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/Cargo.lock +494 -364
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/Cargo.toml +9 -4
- {katcp_codec-0.1.0b2/python/katcp_codec.egg-info → katcp_codec-0.2.1}/PKG-INFO +2 -1
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/benches/bench_format.rs +4 -2
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/benches/bench_parse.rs +6 -4
- katcp_codec-0.2.1/crates/fsm/Cargo.lock +185 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/crates/fsm/Cargo.toml +1 -1
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/crates/fsm/src/lib.rs +6 -1
- katcp_codec-0.2.1/doc/changelog.rst +32 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/installation.rst +1 -1
- katcp_codec-0.2.1/doc-requirements.txt +60 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/pyproject.toml +24 -8
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/katcp_codec/__init__.py +4 -2
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/katcp_codec/_lib.pyi +8 -6
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1/python/katcp_codec.egg-info}/PKG-INFO +2 -1
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/katcp_codec.egg-info/SOURCES.txt +1 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/katcp_codec.egg-info/requires.txt +1 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/tests/test_format.py +2 -2
- katcp_codec-0.2.1/python/tests/test_message.py +46 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/tests/test_parse.py +7 -4
- katcp_codec-0.2.1/requirements.txt +63 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/src/format.rs +45 -1
- katcp_codec-0.2.1/src/message.rs +124 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/src/parse.rs +128 -108
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/src/test.rs +19 -3
- katcp_codec-0.1.0b2/crates/fsm/Cargo.lock +0 -309
- katcp_codec-0.1.0b2/doc/changelog.rst +0 -10
- katcp_codec-0.1.0b2/doc-requirements.txt +0 -66
- katcp_codec-0.1.0b2/requirements.txt +0 -52
- katcp_codec-0.1.0b2/src/message.rs +0 -194
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/.ci/before_all_linux.sh +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/.github/dependabot.yml +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/.gitignore +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/README.md +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/build.rs +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/.gitignore +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/Makefile +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/conf.py +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/design.rst +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/index.rst +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/introduction.rst +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/katcp_codec.rst +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/modules.rst +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/doc/usage.rst +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/katcp_codec/py.typed +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/katcp_codec.egg-info/dependency_links.txt +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/python/katcp_codec.egg-info/top_level.txt +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/setup.cfg +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/src/binding.rs +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/src/lib.rs +0 -0
- {katcp_codec-0.1.0b2 → katcp_codec-0.2.1}/src/tables.rs +0 -0
|
@@ -4,17 +4,17 @@ concurrency:
|
|
|
4
4
|
group: test-${{ github.ref }}
|
|
5
5
|
cancel-in-progress: true
|
|
6
6
|
env:
|
|
7
|
-
RUST_VERSION: '1.
|
|
7
|
+
RUST_VERSION: '1.96.0'
|
|
8
8
|
MIN_PYTHON_VERSION: '3.8'
|
|
9
|
-
MAX_PYTHON_VERSION: '3.
|
|
9
|
+
MAX_PYTHON_VERSION: '3.14'
|
|
10
10
|
jobs:
|
|
11
11
|
pre-commit:
|
|
12
|
-
runs-on: ubuntu-
|
|
12
|
+
runs-on: ubuntu-24.04
|
|
13
13
|
steps:
|
|
14
|
-
- uses: actions/checkout@
|
|
15
|
-
- uses: actions/setup-python@
|
|
14
|
+
- uses: actions/checkout@v6
|
|
15
|
+
- uses: actions/setup-python@v6
|
|
16
16
|
with:
|
|
17
|
-
python-version: ${{ env.
|
|
17
|
+
python-version: ${{ env.MAX_PYTHON_VERSION }}
|
|
18
18
|
cache: 'pip'
|
|
19
19
|
- uses: dtolnay/rust-toolchain@v1
|
|
20
20
|
with:
|
|
@@ -27,12 +27,12 @@ jobs:
|
|
|
27
27
|
run: pre-commit run --all-files
|
|
28
28
|
|
|
29
29
|
docs:
|
|
30
|
-
runs-on: ubuntu-
|
|
30
|
+
runs-on: ubuntu-24.04
|
|
31
31
|
steps:
|
|
32
|
-
- uses: actions/checkout@
|
|
33
|
-
- uses: actions/setup-python@
|
|
32
|
+
- uses: actions/checkout@v6
|
|
33
|
+
- uses: actions/setup-python@v6
|
|
34
34
|
with:
|
|
35
|
-
python-version: ${{ env.
|
|
35
|
+
python-version: ${{ env.MAX_PYTHON_VERSION }}
|
|
36
36
|
cache: 'pip'
|
|
37
37
|
- uses: dtolnay/rust-toolchain@v1
|
|
38
38
|
with:
|
|
@@ -49,10 +49,10 @@ jobs:
|
|
|
49
49
|
run: SPHINX_OPTS="-W --keep-going" make -C doc html
|
|
50
50
|
|
|
51
51
|
rust-tests:
|
|
52
|
-
runs-on: ubuntu-
|
|
52
|
+
runs-on: ubuntu-24.04
|
|
53
53
|
steps:
|
|
54
|
-
- uses: actions/checkout@
|
|
55
|
-
- uses: actions/setup-python@
|
|
54
|
+
- uses: actions/checkout@v6
|
|
55
|
+
- uses: actions/setup-python@v6
|
|
56
56
|
with:
|
|
57
57
|
python-version: ${{ env.MAX_PYTHON_VERSION }}
|
|
58
58
|
- uses: dtolnay/rust-toolchain@v1
|
|
@@ -68,11 +68,11 @@ jobs:
|
|
|
68
68
|
strategy:
|
|
69
69
|
fail-fast: false
|
|
70
70
|
matrix:
|
|
71
|
-
python: ['3.8', '3.9', '3.10', '3.11', '3.12']
|
|
72
|
-
runs-on: ubuntu-
|
|
71
|
+
python: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
|
|
72
|
+
runs-on: ubuntu-24.04
|
|
73
73
|
steps:
|
|
74
|
-
- uses: actions/checkout@
|
|
75
|
-
- uses: actions/setup-python@
|
|
74
|
+
- uses: actions/checkout@v6
|
|
75
|
+
- uses: actions/setup-python@v6
|
|
76
76
|
with:
|
|
77
77
|
python-version: ${{ matrix.python }}
|
|
78
78
|
cache: 'pip'
|
|
@@ -93,25 +93,27 @@ jobs:
|
|
|
93
93
|
fail-fast: false
|
|
94
94
|
matrix:
|
|
95
95
|
arch: [x86_64, aarch64]
|
|
96
|
-
python: [cp38] #
|
|
97
|
-
|
|
96
|
+
python: [cp38, cp39, cp310, cp311] # From 3.11 we can use the limited ABI
|
|
97
|
+
# Set os based on arch
|
|
98
|
+
include:
|
|
99
|
+
- arch: x86_64
|
|
100
|
+
os: ubuntu-24.04
|
|
101
|
+
- arch: aarch64
|
|
102
|
+
os: ubuntu-24.04-arm
|
|
103
|
+
runs-on: ${{ matrix.os }}
|
|
98
104
|
steps:
|
|
99
|
-
- uses: actions/checkout@
|
|
105
|
+
- uses: actions/checkout@v6
|
|
100
106
|
with:
|
|
101
107
|
fetch-depth: 0
|
|
102
|
-
- uses: docker/setup-qemu-action@v3
|
|
103
|
-
with:
|
|
104
|
-
platforms: arm64
|
|
105
|
-
if: matrix.arch != 'x86_64'
|
|
106
108
|
- uses: dtolnay/rust-toolchain@v1
|
|
107
109
|
with:
|
|
108
110
|
toolchain: ${{ env.RUST_VERSION }}
|
|
109
111
|
- uses: Swatinem/rust-cache@v2
|
|
110
|
-
- uses: pypa/cibuildwheel@
|
|
112
|
+
- uses: pypa/cibuildwheel@v3.4.0
|
|
111
113
|
env:
|
|
112
114
|
CIBW_ARCHS: ${{ matrix.arch }}
|
|
113
115
|
CIBW_BUILD: ${{ matrix.python }}-manylinux*
|
|
114
|
-
- uses: actions/upload-artifact@
|
|
116
|
+
- uses: actions/upload-artifact@v7
|
|
115
117
|
with:
|
|
116
118
|
name: wheel_linux-${{ matrix.arch }}-${{ matrix.python }}
|
|
117
119
|
path: ./wheelhouse/*.whl
|
|
@@ -122,10 +124,12 @@ jobs:
|
|
|
122
124
|
fail-fast: false
|
|
123
125
|
matrix:
|
|
124
126
|
arch: [x86_64, arm64]
|
|
125
|
-
python: [cp38] #
|
|
127
|
+
python: [cp38, cp39, cp310, cp311] # From 3.11 we can use the limited ABI
|
|
128
|
+
env:
|
|
129
|
+
MACOSX_DEPLOYMENT_TARGET: "10.12" # Seems to be needed due to Rust version
|
|
126
130
|
runs-on: macos-14
|
|
127
131
|
steps:
|
|
128
|
-
- uses: actions/checkout@
|
|
132
|
+
- uses: actions/checkout@v6
|
|
129
133
|
with:
|
|
130
134
|
fetch-depth: 0
|
|
131
135
|
- uses: dtolnay/rust-toolchain@v1
|
|
@@ -135,28 +139,28 @@ jobs:
|
|
|
135
139
|
- name: Install x86_64 Rust compiler
|
|
136
140
|
run: rustup target add x86_64-apple-darwin
|
|
137
141
|
if: matrix.arch == 'x86_64'
|
|
138
|
-
- uses: actions/setup-python@
|
|
142
|
+
- uses: actions/setup-python@v6
|
|
139
143
|
with:
|
|
140
144
|
python-version: ${{ env.MAX_PYTHON_VERSION }}
|
|
141
145
|
cache: 'pip'
|
|
142
146
|
- name: Install pipx
|
|
143
147
|
run: pip install pipx
|
|
144
|
-
- uses: pypa/cibuildwheel@
|
|
148
|
+
- uses: pypa/cibuildwheel@v3.4.0
|
|
145
149
|
env:
|
|
146
150
|
CIBW_ARCHS: ${{ matrix.arch }}
|
|
147
151
|
CIBW_BUILD: ${{ matrix.python }}-macos*
|
|
148
|
-
- uses: actions/upload-artifact@
|
|
152
|
+
- uses: actions/upload-artifact@v7
|
|
149
153
|
with:
|
|
150
154
|
name: wheel_macos-${{ matrix.arch }}-${{ matrix.python }}
|
|
151
155
|
path: ./wheelhouse/*.whl
|
|
152
156
|
|
|
153
157
|
sdist:
|
|
154
|
-
runs-on: ubuntu-
|
|
158
|
+
runs-on: ubuntu-24.04
|
|
155
159
|
steps:
|
|
156
|
-
- uses: actions/checkout@
|
|
160
|
+
- uses: actions/checkout@v6
|
|
157
161
|
with:
|
|
158
162
|
fetch-depth: 0
|
|
159
|
-
- uses: actions/setup-python@
|
|
163
|
+
- uses: actions/setup-python@v6
|
|
160
164
|
with:
|
|
161
165
|
python-version: ${{ env.MIN_PYTHON_VERSION }}
|
|
162
166
|
cache: 'pip'
|
|
@@ -164,28 +168,28 @@ jobs:
|
|
|
164
168
|
run: pip install -c requirements.txt build
|
|
165
169
|
- name: build sdist
|
|
166
170
|
run: python -m build --sdist .
|
|
167
|
-
- uses: actions/upload-artifact@
|
|
171
|
+
- uses: actions/upload-artifact@v7
|
|
168
172
|
with:
|
|
169
173
|
name: sdist
|
|
170
174
|
path: ./dist/*.tar.gz
|
|
171
175
|
|
|
172
176
|
combine-wheels:
|
|
173
177
|
needs: [linux-wheels, macos-wheels, sdist]
|
|
174
|
-
runs-on: ubuntu-
|
|
178
|
+
runs-on: ubuntu-24.04
|
|
175
179
|
steps:
|
|
176
180
|
- name: Create paths
|
|
177
181
|
run: mkdir -p dist wheelhouse
|
|
178
|
-
- uses: actions/download-artifact@
|
|
182
|
+
- uses: actions/download-artifact@v8
|
|
179
183
|
with:
|
|
180
184
|
pattern: wheel_*
|
|
181
185
|
path: wheelhouse/
|
|
182
186
|
merge-multiple: true
|
|
183
|
-
- uses: actions/download-artifact@
|
|
187
|
+
- uses: actions/download-artifact@v8
|
|
184
188
|
with:
|
|
185
189
|
name: sdist
|
|
186
190
|
path: dist/
|
|
187
191
|
merge-multiple: true
|
|
188
|
-
- uses: actions/upload-artifact@
|
|
192
|
+
- uses: actions/upload-artifact@v7
|
|
189
193
|
with:
|
|
190
194
|
name: release
|
|
191
195
|
path: |
|
|
@@ -4,21 +4,13 @@ repos:
|
|
|
4
4
|
hooks:
|
|
5
5
|
- id: fmt
|
|
6
6
|
- id: clippy
|
|
7
|
-
- repo: https://github.com/psf/black
|
|
8
|
-
rev: 24.3.0
|
|
9
|
-
hooks:
|
|
10
|
-
- id: black
|
|
11
|
-
- repo: https://github.com/pycqa/isort
|
|
12
|
-
rev: 5.13.2
|
|
13
|
-
hooks:
|
|
14
|
-
- id: isort
|
|
15
|
-
args: ["--filter-files"]
|
|
16
7
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
17
|
-
rev: v0.
|
|
8
|
+
rev: v0.14.2
|
|
18
9
|
hooks:
|
|
19
|
-
- id: ruff
|
|
10
|
+
- id: ruff-check
|
|
11
|
+
- id: ruff-format
|
|
20
12
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
21
|
-
rev: v1.
|
|
13
|
+
rev: v1.18.2
|
|
22
14
|
hooks:
|
|
23
15
|
- id: mypy
|
|
24
16
|
# Passing filenames to mypy can do odd things.
|
|
@@ -27,16 +19,14 @@ repos:
|
|
|
27
19
|
# The pre-commit hook passes some options, but we set options in pyproject.toml.
|
|
28
20
|
args: []
|
|
29
21
|
additional_dependencies:
|
|
30
|
-
- pytest==8.
|
|
31
|
-
- repo: https://github.com/
|
|
32
|
-
rev:
|
|
22
|
+
- pytest==8.3.5
|
|
23
|
+
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
24
|
+
rev: 0.9.8
|
|
33
25
|
hooks:
|
|
34
26
|
- id: pip-compile
|
|
35
|
-
|
|
36
|
-
args: ["--output-file=requirements.txt", "--extra=dev", "--strip-extras", "pyproject.toml"]
|
|
27
|
+
args: ["--output-file=requirements.txt", "--python-version=3.8", "--universal", "--extra=dev", "pyproject.toml"]
|
|
37
28
|
files: '^(pyproject\.toml|requirements\.txt)$'
|
|
38
29
|
- id: pip-compile
|
|
39
30
|
name: pip-compile doc-requirements
|
|
40
|
-
|
|
41
|
-
args: ["--output-file=doc-requirements.txt", "--extra=doc", "--strip-extras", "pyproject.toml"]
|
|
31
|
+
args: ["--output-file=doc-requirements.txt", "--python-version=3.12", "--extra=doc", "pyproject.toml"]
|
|
42
32
|
files: '^(pyproject\.toml|doc-requirements\.txt)$'
|
|
@@ -15,13 +15,15 @@
|
|
|
15
15
|
################################################################################
|
|
16
16
|
|
|
17
17
|
version: 2
|
|
18
|
+
sphinx:
|
|
19
|
+
configuration: doc/conf.py
|
|
18
20
|
build:
|
|
19
|
-
os: ubuntu-
|
|
21
|
+
os: ubuntu-24.04
|
|
20
22
|
apt_packages:
|
|
21
23
|
- pdf2svg # For sphinxcontrib-tikz
|
|
22
24
|
tools:
|
|
23
25
|
python: "3.12"
|
|
24
|
-
rust: "1.
|
|
26
|
+
rust: "1.86"
|
|
25
27
|
|
|
26
28
|
python:
|
|
27
29
|
install:
|