nc-gcode-interpreter 0.1.2__tar.gz → 0.1.4__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.
Files changed (55) hide show
  1. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/.github/workflows/build-and-release.yml +85 -72
  2. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/Cargo.lock +1 -1
  3. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/Cargo.toml +1 -1
  4. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/PKG-INFO +6 -5
  5. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/pyproject.toml +6 -6
  6. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/.gitignore +0 -0
  7. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/CONTRIBUTING.md +0 -0
  8. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/Development.md +0 -0
  9. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/Example.MPF +0 -0
  10. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/LICENSE +0 -0
  11. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/README.md +0 -0
  12. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/TODO.md +0 -0
  13. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/arrays.csv +0 -0
  14. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/arrays.mpf +0 -0
  15. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/basic_math.csv +0 -0
  16. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/basic_math.mpf +0 -0
  17. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/custom_vars.csv +0 -0
  18. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/custom_vars.mpf +0 -0
  19. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/defaults.csv +0 -0
  20. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/defaults.mpf +0 -0
  21. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/for_loop.csv +0 -0
  22. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/for_loop.mpf +0 -0
  23. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/if_statement.csv +0 -0
  24. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/if_statement.mpf +0 -0
  25. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/increment.csv +0 -0
  26. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/increment.mpf +0 -0
  27. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/loop.csv +0 -0
  28. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/loop.mpf +0 -0
  29. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/multiple_m_codes.csv +0 -0
  30. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/multiple_m_codes.mpf +0 -0
  31. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/simple.csv +0 -0
  32. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/simple.mpf +0 -0
  33. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/trans.csv +0 -0
  34. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/trans.mpf +0 -0
  35. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/variables.csv +0 -0
  36. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/examples/variables.mpf +0 -0
  37. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/ggroups/generate_modal_ggroups.py +0 -0
  38. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/ggroups/generate_pest.py +0 -0
  39. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/ggroups/ggroups.json +0 -0
  40. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/ggroups/ggroups.pest +0 -0
  41. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/ggroups/modal_groups.rs +0 -0
  42. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/python/example/minimal.py +0 -0
  43. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/python/nc_gcode_interpreter/__init__.py +0 -0
  44. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/python/tests/test_expected_output.py +0 -0
  45. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/rustfmt.toml +0 -0
  46. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/errors.rs +0 -0
  47. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/grammar.pest +0 -0
  48. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/interpret_rules.rs +0 -0
  49. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/interpreter.rs +0 -0
  50. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/lib.rs +0 -0
  51. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/main.rs +0 -0
  52. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/modal_groups.rs +0 -0
  53. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/state.rs +0 -0
  54. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/src/types.rs +0 -0
  55. {nc_gcode_interpreter-0.1.2 → nc_gcode_interpreter-0.1.4}/uv.lock +0 -0
@@ -50,7 +50,8 @@ jobs:
50
50
  uses: PyO3/maturin-action@v1
51
51
  with:
52
52
  target: ${{ matrix.platform.target }}
53
- args: --release --out dist --find-interpreter -b bin
53
+ # args: --release --out dist --find-interpreter -b bin
54
+ args: --release --out dist --find-interpreter
54
55
  sccache: 'true'
55
56
  manylinux: auto
56
57
  - name: Upload wheels
@@ -81,7 +82,8 @@ jobs:
81
82
  # uses: PyO3/maturin-action@v1
82
83
  # with:
83
84
  # target: ${{ matrix.platform.target }}
84
- # args: --release --out dist --find-interpreter -b bin
85
+ # # args: --release --out dist --find-interpreter -b bin
86
+ # args: --release --out dist --find-interpreter
85
87
  # sccache: 'true'
86
88
  # manylinux: musllinux_1_2
87
89
  # - name: Upload wheels
@@ -109,7 +111,8 @@ jobs:
109
111
  uses: PyO3/maturin-action@v1
110
112
  with:
111
113
  target: ${{ matrix.platform.target }}
112
- args: --release --out dist --find-interpreter -b bin
114
+ # args: --release --out dist --find-interpreter -b bin
115
+ args: --release --out dist --find-interpreter
113
116
  sccache: 'true'
114
117
  - name: Upload wheels
115
118
  uses: actions/upload-artifact@v4
@@ -135,7 +138,8 @@ jobs:
135
138
  uses: PyO3/maturin-action@v1
136
139
  with:
137
140
  target: ${{ matrix.platform.target }}
138
- args: --release --out dist --find-interpreter -b bin
141
+ # args: --release --out dist --find-interpreter -b bin
142
+ args: --release --out dist --find-interpreter
139
143
  sccache: 'true'
140
144
  - name: Upload wheels
141
145
  uses: actions/upload-artifact@v4
@@ -143,45 +147,46 @@ jobs:
143
147
  name: wheels-macos-${{ matrix.platform.target }}
144
148
  path: dist
145
149
 
146
- emscripten:
147
- runs-on: ${{ matrix.platform.runner }}
148
- strategy:
149
- matrix:
150
- platform:
151
- - runner: ubuntu-latest
152
- target: wasm32-unknown-emscripten
153
- steps:
154
- - uses: actions/checkout@v4
155
- - uses: actions/setup-python@v5
156
- with:
157
- python-version: 3.12
158
- - run: pip install pyodide-build
159
- - name: Get Emscripten and Python version info
160
- shell: bash
161
- run: |
162
- echo EMSCRIPTEN_VERSION=$(pyodide config get emscripten_version) >> $GITHUB_ENV
163
- echo PYTHON_VERSION=$(pyodide config get python_version | cut -d '.' -f 1-2) >> $GITHUB_ENV
164
- pip uninstall -y pyodide-build
165
- - uses: mymindstorm/setup-emsdk@v12
166
- with:
167
- version: ${{ env.EMSCRIPTEN_VERSION }}
168
- actions-cache-folder: emsdk-cache
169
- - uses: actions/setup-python@v5
170
- with:
171
- python-version: ${{ env.PYTHON_VERSION }}
172
- - run: pip install pyodide-build
173
- - name: Build wheels
174
- uses: PyO3/maturin-action@v1
175
- with:
176
- target: ${{ matrix.platform.target }}
177
- args: --release --out dist -i ${{ env.PYTHON_VERSION }} -b bin
178
- sccache: 'true'
179
- rust-toolchain: nightly
180
- - name: Upload wheels
181
- uses: actions/upload-artifact@v4
182
- with:
183
- name: wheels-wasm
184
- path: dist
150
+ # emscripten:
151
+ # runs-on: ${{ matrix.platform.runner }}
152
+ # strategy:
153
+ # matrix:
154
+ # platform:
155
+ # - runner: ubuntu-latest
156
+ # target: wasm32-unknown-emscripten
157
+ # steps:
158
+ # - uses: actions/checkout@v4
159
+ # - uses: actions/setup-python@v5
160
+ # with:
161
+ # python-version: 3.12
162
+ # - run: pip install pyodide-build
163
+ # - name: Get Emscripten and Python version info
164
+ # shell: bash
165
+ # run: |
166
+ # echo EMSCRIPTEN_VERSION=$(pyodide config get emscripten_version) >> $GITHUB_ENV
167
+ # echo PYTHON_VERSION=$(pyodide config get python_version | cut -d '.' -f 1-2) >> $GITHUB_ENV
168
+ # pip uninstall -y pyodide-build
169
+ # - uses: mymindstorm/setup-emsdk@v12
170
+ # with:
171
+ # version: ${{ env.EMSCRIPTEN_VERSION }}
172
+ # actions-cache-folder: emsdk-cache
173
+ # - uses: actions/setup-python@v5
174
+ # with:
175
+ # python-version: ${{ env.PYTHON_VERSION }}
176
+ # - run: pip install pyodide-build
177
+ # - name: Build wheels
178
+ # uses: PyO3/maturin-action@v1
179
+ # with:
180
+ # target: ${{ matrix.platform.target }}
181
+ # # args: --release --out dist -i ${{ env.PYTHON_VERSION }} -b bin
182
+ # args: --release --out dist -i ${{ env.PYTHON_VERSION }}
183
+ # sccache: 'true'
184
+ # rust-toolchain: nightly
185
+ # - name: Upload wheels
186
+ # uses: actions/upload-artifact@v4
187
+ # with:
188
+ # name: wheels-wasm
189
+ # path: dist
185
190
 
186
191
  sdist:
187
192
  runs-on: ubuntu-latest
@@ -204,7 +209,7 @@ jobs:
204
209
  environment: release
205
210
  if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
206
211
  # needs: [linux, musllinux, windows, macos, emscripten, sdist]
207
- needs: [linux, windows, macos, emscripten, sdist]
212
+ needs: [linux, windows, macos, sdist]
208
213
  permissions:
209
214
  # Use to sign the release artifacts
210
215
  id-token: write
@@ -224,40 +229,48 @@ jobs:
224
229
  with:
225
230
  command: upload
226
231
  args: --non-interactive --skip-existing wheels-*/*
227
- - name: Extract binary and rename
228
- env:
229
- PROJECT_NAME: ${{ env.PROJECT_NAME }}
230
- run: |
231
- for wheel_dir in wheels-windows-* wheels-linux-* wheels-macos-*; do
232
- arch=$(echo $wheel_dir | cut -d'-' -f3)
233
- os=$(echo $wheel_dir | cut -d'-' -f2)
234
- find ./$wheel_dir -name "*.whl" -exec sh -c '
235
- wheel_name=$(basename "$1")
236
- version=$(echo $wheel_name | sed -E "s/.*-([0-9]+\.[0-9]+\.[0-9]+)-.*/\1/")
237
- unzip -d "$(dirname "$1")" "$1"
238
- if [ "$2" = "windows" ]; then
239
- binary_path=$(find "$(dirname "$1")" -name "*.exe")
240
- if [ -n "$binary_path" ]; then
241
- mv "$binary_path" "$(dirname "$binary_path")/${PROJECT_NAME}_${version}_${2}_${3}.exe"
242
- fi
243
- else
244
- binary_path=$(find "$(dirname "$1")" -type f -executable)
245
- if [ -n "$binary_path" ]; then
246
- mv "$binary_path" "$(dirname "$binary_path")/${PROJECT_NAME}_${version}_${2}_${3}"
247
- fi
248
- fi
249
- ' _ {} "$os" "$arch" \;
250
- done
251
232
  - name: Upload to GitHub Release
252
233
  uses: softprops/action-gh-release@v2
253
234
  with:
254
235
  files: |
255
- wheels-wasm/*.whl
256
236
  wheels-sdist/*.tar.gz
257
237
  wheels-windows-*/*.whl
258
- wheels-windows-*/*.data/scripts/${{ env.PROJECT_NAME }}_*_windows_*.exe
259
238
  wheels-linux-*/*.whl
260
- wheels-linux-*/*.data/scripts/${{ env.PROJECT_NAME }}_*_linux_*
261
239
  wheels-macos-*/*.whl
262
- wheels-macos-*/*.data/scripts/${{ env.PROJECT_NAME }}_*_macos_*
263
240
  prerelease: ${{ contains(github.ref, 'alpha') || contains(github.ref, 'beta') }}
241
+ # - name: Extract binary and rename
242
+ # env:
243
+ # PROJECT_NAME: ${{ env.PROJECT_NAME }}
244
+ # run: |
245
+ # for wheel_dir in wheels-windows-* wheels-linux-* wheels-macos-*; do
246
+ # arch=$(echo $wheel_dir | cut -d'-' -f3)
247
+ # os=$(echo $wheel_dir | cut -d'-' -f2)
248
+ # find ./$wheel_dir -name "*.whl" -exec sh -c '
249
+ # wheel_name=$(basename "$1")
250
+ # version=$(echo $wheel_name | sed -E "s/.*-([0-9]+\.[0-9]+\.[0-9]+)-.*/\1/")
251
+ # unzip -d "$(dirname "$1")" "$1"
252
+ # if [ "$2" = "windows" ]; then
253
+ # binary_path=$(find "$(dirname "$1")" -name "*.exe")
254
+ # if [ -n "$binary_path" ]; then
255
+ # mv "$binary_path" "$(dirname "$binary_path")/${PROJECT_NAME}_${version}_${2}_${3}.exe"
256
+ # fi
257
+ # else
258
+ # binary_path=$(find "$(dirname "$1")" -type f -executable)
259
+ # if [ -n "$binary_path" ]; then
260
+ # mv "$binary_path" "$(dirname "$binary_path")/${PROJECT_NAME}_${version}_${2}_${3}"
261
+ # fi
262
+ # fi
263
+ # ' _ {} "$os" "$arch" \;
264
+ # done
265
+ # - name: Upload to GitHub Release
266
+ # uses: softprops/action-gh-release@v2
267
+ # with:
268
+ # files: |
269
+ # wheels-sdist/*.tar.gz
270
+ # wheels-windows-*/*.whl
271
+ # wheels-windows-*/*.data/scripts/${{ env.PROJECT_NAME }}_*_windows_*.exe
272
+ # wheels-linux-*/*.whl
273
+ # wheels-linux-*/*.data/scripts/${{ env.PROJECT_NAME }}_*_linux_*
274
+ # wheels-macos-*/*.whl
275
+ # wheels-macos-*/*.data/scripts/${{ env.PROJECT_NAME }}_*_macos_*
276
+ # prerelease: ${{ contains(github.ref, 'alpha') || contains(github.ref, 'beta') }}
@@ -724,7 +724,7 @@ dependencies = [
724
724
 
725
725
  [[package]]
726
726
  name = "nc-gcode-interpreter"
727
- version = "0.1.2"
727
+ version = "0.1.4"
728
728
  dependencies = [
729
729
  "clap",
730
730
  "csv",
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "nc-gcode-interpreter"
3
- version = "0.1.2"
3
+ version = "0.1.4"
4
4
  edition = "2021"
5
5
 
6
6
  [lib]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: nc-gcode-interpreter
3
- Version: 0.1.2
3
+ Version: 0.1.4
4
4
  Classifier: Programming Language :: Rust
5
5
  Classifier: Programming Language :: Python :: Implementation :: CPython
6
6
  Classifier: Programming Language :: Python :: 3.12
@@ -8,14 +8,15 @@ Classifier: License :: OSI Approved :: MIT License
8
8
  Classifier: Operating System :: OS Independent
9
9
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
10
10
  Requires-Dist: maturin >=1.7.4
11
+ Requires-Dist: polars >=1.9.0
11
12
  License-File: LICENSE
12
13
  Summary: A interpreter for NC (Numerical Control) code
13
- Author-email: Your Name <your.email@example.com>
14
+ Author-email: CEAD Group <software@ceadgroup.com>
14
15
  Requires-Python: >=3.12
15
16
  Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
16
- Project-URL: Homepage, https://github.com/yourusername/nc-gcode-interpreter
17
- Project-URL: Repository, https://github.com/yourusername/nc-gcode-interpreter.git
18
- Project-URL: Documentation, https://nc-gcode-interpreter.readthedocs.io/
17
+ Project-URL: Homepage, https://github.com/CEAD-group/nc-gcode-interpreter
18
+ Project-URL: Repository, https://github.com/CEAD-group/nc-gcode-interpreter.git
19
+ Project-URL: Documentation, https://github.com/CEAD-group/nc-gcode-interpreter/blob/main/README.md
19
20
 
20
21
  # NC-GCode-Interpreter
21
22
 
@@ -4,9 +4,9 @@ build-backend = "maturin"
4
4
 
5
5
  [project]
6
6
  name = "nc-gcode-interpreter"
7
- version = "0.1.2"
7
+ version = "0.1.4"
8
8
  description = "A interpreter for NC (Numerical Control) code"
9
- authors = [{ name = "Your Name", email = "your.email@example.com" }]
9
+ authors = [{ name = "CEAD Group", email = "software@ceadgroup.com" }]
10
10
  requires-python = ">=3.12"
11
11
  classifiers = [
12
12
  "Programming Language :: Rust",
@@ -16,15 +16,15 @@ classifiers = [
16
16
  "Operating System :: OS Independent",
17
17
  "Topic :: Software Development :: Libraries :: Python Modules",
18
18
  ]
19
-
20
19
  dependencies = [
21
20
  "maturin>=1.7.4",
21
+ "polars>=1.9.0"
22
22
  ]
23
23
 
24
24
  [project.urls]
25
- Homepage = "https://github.com/yourusername/nc-gcode-interpreter"
26
- Repository = "https://github.com/yourusername/nc-gcode-interpreter.git"
27
- Documentation = "https://nc-gcode-interpreter.readthedocs.io/"
25
+ Homepage = "https://github.com/CEAD-group/nc-gcode-interpreter"
26
+ Repository = "https://github.com/CEAD-group/nc-gcode-interpreter.git"
27
+ Documentation = "https://github.com/CEAD-group/nc-gcode-interpreter/blob/main/README.md"
28
28
 
29
29
  [tool.maturin]
30
30
  features = ["pyo3/extension-module"]