mpytool 2.3.4__tar.gz → 2.3.6__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 (47) hide show
  1. mpytool-2.3.6/.github/workflows/integration.yml +53 -0
  2. mpytool-2.3.6/.github/workflows/publish.yml +35 -0
  3. mpytool-2.3.6/.github/workflows/tests.yml +29 -0
  4. mpytool-2.3.6/.gitignore +12 -0
  5. {mpytool-2.3.4 → mpytool-2.3.6}/PKG-INFO +2 -1
  6. mpytool-2.3.6/README_API.md +1339 -0
  7. mpytool-2.3.6/README_bench.md +115 -0
  8. mpytool-2.3.6/README_mpremote.md +159 -0
  9. mpytool-2.3.6/completions/_mpytool +404 -0
  10. mpytool-2.3.6/completions/mpytool.bash +391 -0
  11. mpytool-2.3.6/mpytool/_version.py +34 -0
  12. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/conn.py +3 -2
  13. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/mount.py +38 -3
  14. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/mpy_cross.py +23 -2
  15. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/mpytool.py +1 -0
  16. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool.egg-info/PKG-INFO +2 -1
  17. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool.egg-info/SOURCES.txt +12 -0
  18. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool.egg-info/requires.txt +1 -0
  19. {mpytool-2.3.4 → mpytool-2.3.6}/pyproject.toml +9 -2
  20. mpytool-2.3.6/tests/__init__.py +0 -0
  21. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_cli.py +8 -0
  22. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_cmd_cp.py +7 -6
  23. mpytool-2.3.6/tests/test_helpers.py +24 -0
  24. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_integration.py +8 -0
  25. {mpytool-2.3.4 → mpytool-2.3.6}/LICENSE +0 -0
  26. {mpytool-2.3.4 → mpytool-2.3.6}/README.md +0 -0
  27. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/__init__.py +0 -0
  28. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/cmd_cp.py +0 -0
  29. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/conn_serial.py +0 -0
  30. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/conn_socket.py +0 -0
  31. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/logger.py +0 -0
  32. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/mpy.py +0 -0
  33. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/mpy_comm.py +0 -0
  34. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/speedtest.py +0 -0
  35. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/terminal.py +0 -0
  36. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/terminal_unix.py +0 -0
  37. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/terminal_win.py +0 -0
  38. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool/utils.py +0 -0
  39. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool.egg-info/dependency_links.txt +0 -0
  40. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool.egg-info/entry_points.txt +0 -0
  41. {mpytool-2.3.4 → mpytool-2.3.6}/mpytool.egg-info/top_level.txt +0 -0
  42. {mpytool-2.3.4 → mpytool-2.3.6}/setup.cfg +0 -0
  43. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_errors.py +0 -0
  44. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_mount.py +0 -0
  45. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_mpy.py +0 -0
  46. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_mpytool.py +0 -0
  47. {mpytool-2.3.4 → mpytool-2.3.6}/tests/test_utils.py +0 -0
@@ -0,0 +1,53 @@
1
+ name: Integration Tests
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ push:
6
+ branches: [main]
7
+
8
+ jobs:
9
+ unit-tests:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+ - uses: actions/setup-python@v5
14
+ with:
15
+ python-version: '3.13'
16
+ - run: pip install -e .
17
+ - run: python -m unittest discover tests/ -v
18
+
19
+ linux-integration:
20
+ runs-on: [self-hosted, Linux]
21
+ needs: unit-tests
22
+ strategy:
23
+ fail-fast: false
24
+ matrix:
25
+ device: [ESP32]
26
+ steps:
27
+ - uses: actions/checkout@v4
28
+ - name: Install package
29
+ run: $HOME/actions-runner/.venv/bin/pip install -e .
30
+ - name: Integration tests (${{ matrix.device }})
31
+ run: |
32
+ export PATH="$HOME/actions-runner/.venv/bin:$PATH"
33
+ export MPYTOOL_TEST_PORT_RW="$(cat ~/actions-runner/.config/mpytool/${{ matrix.device }})"
34
+ python -m unittest tests.test_integration tests.test_cli -v
35
+
36
+ win-integration:
37
+ runs-on: [self-hosted, Windows]
38
+ needs: unit-tests
39
+ strategy:
40
+ fail-fast: false
41
+ matrix:
42
+ device: [ESP32S3]
43
+ steps:
44
+ - uses: actions/checkout@v4
45
+ - name: Install package
46
+ run: C:\actions-runner\.venv\Scripts\pip install -e .
47
+ shell: cmd
48
+ - name: Integration tests (${{ matrix.device }})
49
+ run: |
50
+ set PATH=C:\actions-runner\.venv\Scripts;%PATH%
51
+ set /p MPYTOOL_TEST_PORT_RW=<C:\actions-runner\.config\mpytool\${{ matrix.device }}
52
+ python -m unittest tests.test_integration tests.test_cli -v
53
+ shell: cmd
@@ -0,0 +1,35 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ jobs:
8
+ publish:
9
+ runs-on: ubuntu-latest
10
+ environment: pypi
11
+ permissions:
12
+ id-token: write
13
+
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+
17
+ - name: Set up Python
18
+ uses: actions/setup-python@v5
19
+ with:
20
+ python-version: "3.14"
21
+
22
+ - name: Install build dependencies
23
+ run: pip install build
24
+
25
+ - name: Install package
26
+ run: pip install .
27
+
28
+ - name: Run unit tests
29
+ run: python -m unittest discover -v tests/
30
+
31
+ - name: Build package
32
+ run: python -m build
33
+
34
+ - name: Publish to PyPI
35
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,29 @@
1
+ name: Tests
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ${{ matrix.os }}
12
+ strategy:
13
+ matrix:
14
+ os: [ubuntu-latest, windows-latest]
15
+ python-version: ["3.10", "3.14"]
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+
20
+ - name: Set up Python ${{ matrix.python-version }}
21
+ uses: actions/setup-python@v5
22
+ with:
23
+ python-version: ${{ matrix.python-version }}
24
+
25
+ - name: Install package
26
+ run: pip install .
27
+
28
+ - name: Run unit tests
29
+ run: python -m unittest discover -v tests/
@@ -0,0 +1,12 @@
1
+ __pycache__
2
+ build
3
+ dist
4
+ .*
5
+ !.gitignore
6
+ !.github
7
+ !.mpyproject
8
+ *.egg-info
9
+ _version.py
10
+ *.md
11
+ !README*.md
12
+ scripts/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mpytool
3
- Version: 2.3.4
3
+ Version: 2.3.6
4
4
  Summary: MPY tool - manage files on devices running MicroPython
5
5
  Author-email: Pavel Revak <pavelrevak@gmail.com>
6
6
  License-Expression: MIT
@@ -10,6 +10,7 @@ Requires-Python: >=3.10
10
10
  Description-Content-Type: text/markdown
11
11
  License-File: LICENSE
12
12
  Requires-Dist: pyserial>=3.0
13
+ Requires-Dist: mpy-cross
13
14
  Dynamic: license-file
14
15
 
15
16
  # mpytool