Skip to content

Commit f6b824a

Browse files
committed
Prep for PyPI: pyproject.toml metadata, CI + trusted publishing workflow
1 parent 0ac7106 commit f6b824a

File tree

3 files changed

+50
-8
lines changed

3 files changed

+50
-8
lines changed

.github/workflows/ci.yml

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,20 @@
11
name: CI
2+
23
on:
3-
push: { branches: [main] }
4-
pull_request: { branches: [main] }
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
59
jobs:
610
test:
11+
name: Test
712
runs-on: ubuntu-latest
813
steps:
9-
- uses: actions/checkout@v4
14+
- uses: actions/checkout@v6
1015
- uses: actions/setup-python@v5
11-
with: { python-version: "3.12" }
12-
- run: pip install -e ".[dev]" cryptography pytest
13-
- run: pytest -v
16+
with:
17+
python-version: '3.12'
18+
- run: pip install -e ".[dev]" || pip install -e .
19+
- run: pip install pytest
20+
- run: pytest

.github/workflows/publish.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Publish
2+
3+
on:
4+
push:
5+
tags: ['v*']
6+
7+
permissions:
8+
contents: read
9+
id-token: write
10+
11+
jobs:
12+
publish:
13+
name: Publish to PyPI
14+
runs-on: ubuntu-latest
15+
environment: release
16+
steps:
17+
- uses: actions/checkout@v6
18+
- uses: actions/setup-python@v5
19+
with:
20+
python-version: '3.12'
21+
- run: pip install build
22+
- run: python -m build
23+
- uses: pypa/gh-action-pypi-publish@release/v1

pyproject.toml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,25 @@
11
[project]
22
name = "cyphera"
3-
version = "0.1.0"
4-
description = "Data obfuscation SDK — FPE, AES, masking, hashing"
3+
version = "0.0.1a3"
4+
description = "Data protection SDK — format-preserving encryption (FF1/FF3), AES-GCM, data masking, and hashing."
55
license = "Apache-2.0"
66
requires-python = ">=3.9"
77
dependencies = ["cryptography>=41.0"]
8+
authors = [
9+
{ name = "Leslie Gutschow", email = "leslie.gutschow@horizondigital.dev" },
10+
]
11+
keywords = ["encryption", "fpe", "format-preserving", "data-protection", "masking"]
12+
classifiers = [
13+
"Development Status :: 3 - Alpha",
14+
"License :: OSI Approved :: Apache Software License",
15+
"Programming Language :: Python :: 3",
16+
"Topic :: Security :: Cryptography",
17+
]
818

919
[project.urls]
20+
Homepage = "https://cyphera.io"
1021
Repository = "https://github.com/cyphera-labs/cyphera-python"
22+
Issues = "https://github.com/cyphera-labs/cyphera-python/issues"
1123

1224
[build-system]
1325
requires = ["setuptools>=68"]

0 commit comments

Comments
 (0)