Repository navigation
W7: packaging: executables for Linux and Windows, the wheel, releases - #15
Merged
Merged
Conversation
- python -m cypilot (and the executable): the web app without arguments, else cypilot-ctl. - packaging/cypilot.spec: a one-file PyInstaller executable with the web UI, without Qt and without the DSDL (GPL: downloaded and compiled on the first start, as with the package). - packaging/smoke_test.py: --version, the DSDL download, serve with a demo device, its registers and a recorded run; for the executable and for the installed wheel. - .github/workflows/build.yml: the executables on ubuntu-22.04 (glibc 2.35) and windows-2022, the wheel on Python 3.11, each smoke-tested; called by CI and by release.yml, which makes the release on a tag vX.Y.Z equal to the version and attaches the files. - README: the ways to install (executable, pipx, the Pi, a clone) and how a release is made; AGENTS and web_plan. - Locally: the Linux executable (46 MB) and the wheel pass the smoke test, the executable with an empty cache (it compiles the DSDL itself). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WEh6hu8r51ZDjgfECmELvM
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The packaging part of phase W7 of
docs/web_plan.md. This PR does not archiveTecnologic/cymon, the other part of W7. That step is the owner's.Changes
python -m cypilot, and so the executable: without arguments it starts the web app and opens the browser, likecypilot; with arguments it iscypilot-ctl.packaging/cypilot.spec: a one-file PyInstaller executable with the web UI.canableentry point comes along through the distribution metadata.packaging/smoke_test.py, for the executable and for the installed wheel:--version, then the DSDL download (dsdl), thenserve --demo 1. It checks the page, the API, the registers of the demo node and a recorded run..github/workflows/build.yml, smoke-testing each build:ubuntu-22.04(glibc 2.35, so newer distributions run them) andwindows-2022;CI calls it, so every PR builds them.
.github/workflows/release.yml: a tagvX.Y.Zthat equals the version inpyproject.tomlandcypilot/__init__.pybuilds the files and creates the GitHub release with them.README: four ways to install (executable, pipx, the Pi, a clone), and how a release is made. AGENTS and
web_plan.mdare updated.Tests
tests/unit/test_main.py:python -m cypilot --versionandserve --help.pytest133 passed, 1 skipped.Generated by Claude Code