Fix broken desktop download links and add automated release workflow#8
Conversation
Agent-Logs-Url: https://github.com/SynTechRev/ODIA/sessions/978a9ffd-27ae-4d70-be0f-c1f30b808753 Co-authored-by: SynTechRev <235390103+SynTechRev@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR removes broken desktop installer download links from the README and introduces an automated GitHub Actions workflow plus documentation to build and publish desktop installers via GitHub Releases.
Changes:
- Replace README installer download table with build-from-source instructions and a link to the Releases page.
- Add a new cross-platform (
ubuntu/windows/macos) release workflow that builds installers and publishes them on version tags. - Add a
docs/RELEASING.mdchecklist describing the tag-based release process and a manual fallback path.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| README.md | Replaces broken direct-download links with “build locally” instructions and a Releases pointer. |
| .github/workflows/release-desktop.yml | Adds a tag/manual-triggered workflow to build desktop installers and attach them to GitHub Releases. |
| docs/RELEASING.md | Documents the automated release process and a manual fallback procedure. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| **Desktop App (no installation prerequisites):** | ||
|
|
||
| Download the standalone desktop application — no Python, Docker, or command line | ||
| required. All analysis runs locally on your machine. | ||
| Pre-built installers will be available in the [Releases](https://github.com/SynTechRev/ODIA/releases) section soon. For now, build the desktop application locally: | ||
|
|
There was a problem hiding this comment.
The section still claims “no installation prerequisites”, but the only path offered now is building locally (which requires Node/Python and other tooling). Please reword this heading/intro so it doesn’t imply users can use the desktop app without prerequisites until pre-built installers actually exist.
| npm install | ||
| npm run build:backend # Build Python backend | ||
| cd ../frontend | ||
| npm ci |
There was a problem hiding this comment.
npm ci will fail in frontend/ because the repo doesn’t include a frontend/package-lock.json (or other lockfile). Either add a lockfile and keep npm ci, or switch these instructions to npm install to match the current repo state.
| npm ci | |
| npm install |
| ```bash | ||
| # Build desktop application | ||
| cd desktop | ||
| npm install |
There was a problem hiding this comment.
These build-from-source steps omit installing the Python package deps (and PyInstaller) before running npm run build:backend. Without a prior pip install -e ... (and PyInstaller availability), build:backend is likely to fail; consider adding the same prerequisite step shown in desktop/README.md.
| npm install | |
| npm install | |
| cd .. | |
| pip install -e .[desktop] # Install Python package deps and PyInstaller | |
| cd desktop |
| env: | ||
| ELECTRON_BUILD: '1' | ||
| run: | | ||
| npm ci |
There was a problem hiding this comment.
This workflow runs npm ci in frontend/, but the repo does not contain a frontend/package-lock.json (or other lockfile), so the step will fail. Either commit a lockfile and keep npm ci, or change this to npm install.
| npm ci | |
| npm install |
| artifact: ODIA-*.AppImage | ||
| - os: windows-latest | ||
| platform: windows | ||
| artifact: ODIA-Setup-*.exe | ||
| - os: macos-latest | ||
| platform: mac | ||
| artifact: ODIA-*.dmg |
There was a problem hiding this comment.
The Windows artifact glob ODIA-Setup-*.exe is more specific than the existing CI workflow (which uploads desktop/dist/*.exe) and may not match electron-builder’s default NSIS naming (often includes spaces). Consider using desktop/dist/*.exe (and similar broad globs) or explicitly setting artifactName in the electron-builder config to guarantee these names.
| artifact: ODIA-*.AppImage | |
| - os: windows-latest | |
| platform: windows | |
| artifact: ODIA-Setup-*.exe | |
| - os: macos-latest | |
| platform: mac | |
| artifact: ODIA-*.dmg | |
| artifact: '*.AppImage' | |
| - os: windows-latest | |
| platform: windows | |
| artifact: '*.exe' | |
| - os: macos-latest | |
| platform: mac | |
| artifact: '*.dmg' |
| ```bash | ||
| # Build locally for your platform | ||
| cd desktop | ||
| npm run build:win # Windows | ||
| npm run build:mac # macOS | ||
| npm run build:linux # Linux | ||
|
|
||
| # Manually create a release on GitHub and upload installers from desktop/dist/ | ||
| ``` |
There was a problem hiding this comment.
The manual fallback commands build installers directly, but electron-builder depends on build/backend and build/frontend being populated first. Please add the required steps (build backend, build/export frontend with ELECTRON_BUILD=1, copy frontend/out into desktop/build/frontend) before npm run build:win/mac/linux, consistent with desktop/README.md.
README download links pointed to non-existent GitHub Release assets (404). No CI workflow existed to build or publish desktop installers.
Changes
README.md.github/workflows/release-desktop.yml(new)ubuntu-latest,windows-latest,macos-latestelectron-builderinstallerv*.*.*tags viasoftprops/action-gh-release@v1workflow_dispatchfor ad-hoc buildsdocs/RELEASING.md(new)npm run build:win/mac/linux) if automated workflow failsdesktop/package.json— no changes; all required scripts (build,build:win,build:mac,build:linux,build:backend) were already present.Original prompt
Fix Desktop Download Links and Implement Automated Releases
Problem Overview
The README.md currently contains download links to desktop application installers that return 404 errors because no GitHub Release has been created yet. Additionally, there is no automated workflow to build and publish desktop installers.
Current Issues
Broken Download Links in README.md (lines 25-27):
https://github.com/SynTechRev/ODIA/releases/latest/download/ODIA-Setup.exe→ 404https://github.com/SynTechRev/ODIA/releases/latest/download/ODIA.dmg→ 404https://github.com/SynTechRev/ODIA/releases/latest/download/ODIA.AppImage→ 404No Release Automation:
Required Changes
1. Update README.md (Immediate Fix)
Replace the broken download links section (lines 18-29) with a temporary solution that points to build instructions:
Current (broken):
Replace with:
Installers are output to
desktop/dist/. See desktop/README.md for detailed build instructions and platform-specific requirements.3. Update Desktop Package Scripts
Ensure
desktop/package.jsonhas the necessary build scripts. Add or verify these scripts exist:{ "scripts": { "build:backend": "node scripts/build-backend.js", "build": "electron-builder", "build:wi... </details> <!-- START COPILOT CODING AGENT SUFFIX --> *This pull request was created from Copilot chat.* >