From 63f32be310ed28100ed6e64f3ed72dadb443ba4e Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sun, 7 Jun 2026 08:51:39 +0100 Subject: [PATCH] v0.1.8: fix PyPI wheel missing frontend build --- CHANGELOG.md | 6 ++++++ cptr/frontend/package.json | 2 +- pyproject.toml | 18 ++++++++++++++++-- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 710096ce..803becbc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.1.8] - 2026-06-07 + +### Fixed + +- 📦 **PyPI install actually works now.** Hatchling's `exclude = ["cptr/frontend"]` was taking precedence over the `artifacts` directive, causing every published wheel to ship without the frontend build. The app returned `{"detail":"Not Found"}` on all non-API routes. Changed to granular excludes that skip only source/dev files while preserving `cptr/frontend/build`. + ## [0.1.7] - 2026-06-07 ### Fixed diff --git a/cptr/frontend/package.json b/cptr/frontend/package.json index 4e2cb2b8..6b365598 100644 --- a/cptr/frontend/package.json +++ b/cptr/frontend/package.json @@ -1,7 +1,7 @@ { "name": "frontend", "private": true, - "version": "0.1.7", + "version": "0.1.8", "type": "module", "scripts": { "dev": "vite dev", diff --git a/pyproject.toml b/pyproject.toml index 3e12edd7..dedc57c8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "cptr" -version = "0.1.7" +version = "0.1.8" description = "Your computer, from anywhere. Code, manage, and control your machine from the web." license = {file = "LICENSE"} readme = "README.md" @@ -38,7 +38,21 @@ build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["cptr"] artifacts = ["cptr/frontend/build"] -exclude = ["cptr/frontend"] +exclude = [ + "cptr/frontend/src", + "cptr/frontend/node_modules", + "cptr/frontend/.svelte-kit", + "cptr/frontend/static", + "cptr/frontend/package*.json", + "cptr/frontend/vite.config.*", + "cptr/frontend/svelte.config.*", + "cptr/frontend/tsconfig.json", + "cptr/frontend/.gitignore", + "cptr/frontend/.npmrc", + "cptr/frontend/.prettierrc", + "cptr/frontend/.prettierignore", + "cptr/frontend/README.md", +] [tool.hatch.build.targets.wheel.force-include] "CHANGELOG.md" = "cptr/CHANGELOG.md"