Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 6 additions & 35 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,12 @@ on:
- "v[0-9]+.[0-9]+.[0-9]+"

jobs:
test:
run:
runs-on: ubuntu-latest
environment: pypi
permissions:
id-token: write
contents: read
steps:
- name: Checkout source code
uses: actions/checkout@v6
Expand All @@ -21,48 +25,15 @@ jobs:
with:
version: "latest"
python-version: "3.11"
enable-cache: true

- name: Install dependencies
run: uv sync --dev

- name: Run tests
run: uv run pytest

build:
needs: [test]
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v6

- name: Set up uv and Python
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
with:
version: "latest"
python-version: "3.11"

- name: Build distribution
run: uv build

- name: Upload distribution artifacts
uses: actions/upload-artifact@v4
with:
name: dist
path: dist/

publish-to-pypi:
needs: [build]
runs-on: ubuntu-latest
environment: pypi
permissions:
id-token: write # required for OIDC trusted publishing
steps:
- name: Download distribution artifacts
uses: actions/download-artifact@v4
with:
name: dist
path: dist/

- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
run: uv publish
11 changes: 8 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
[project]
name = "openscad-packer"
version = "2026.6.2"
dynamic = ["version"]
description = "Pack OpenSCAD includes into an efficient single file."
readme = "README.md"
license = "AGPL-3.0-or-later"
requires-python = ">=3.11"
authors = [{name = "Torgny Bjers"}]
authors = [{name = "Torgny Bjers", email = "torgny.bjers@gmail.com"}]
license-files = ["LICENSE"]
keywords = [
"openscad",
"packer",
Expand All @@ -16,6 +17,7 @@ classifiers = [
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",

"Intended Audience :: Developers",
"Development Status :: 5 - Production/Stable",

"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
Expand Down Expand Up @@ -50,5 +52,8 @@ exclude_lines = [
]

[build-system]
requires = ["hatchling"]
requires = ["hatchling", "hatch-vcs"]
build-backend = "hatchling.build"

[tool.hatch.version]
source = "vcs"
Loading