Skip to content

Commit 2a3a048

Browse files
committed
chore: prepare release 0.3.2
1 parent 76dad28 commit 2a3a048

4 files changed

Lines changed: 72 additions & 57 deletions

File tree

.github/workflows/release.yml

Lines changed: 52 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -227,71 +227,76 @@ jobs:
227227
retention-days: 5
228228

229229
# ===========================================================================
230-
# Publish to PyPI (DISABLED FOR TESTING)
230+
# Publish to PyPI
231231
# ===========================================================================
232-
# publish:
233-
# name: Publish to PyPI
234-
# runs-on: ubuntu-latest
235-
# needs: [build-wheel, build-sdist]
236-
# # Required for PyPI Trusted Publisher (OIDC) - no token needed!
237-
# permissions:
238-
# id-token: write
239-
# contents: read
240-
# steps:
241-
# - name: Set up Python
242-
# uses: actions/setup-python@v5
243-
# with:
244-
# python-version: '3.12'
232+
publish:
233+
name: Publish to PyPI
234+
runs-on: ubuntu-latest
235+
needs: [build-wheel, build-sdist]
236+
# Required for PyPI Trusted Publisher (OIDC) - no token needed!
237+
permissions:
238+
id-token: write
239+
contents: read
240+
steps:
241+
- name: Set up Python
242+
uses: actions/setup-python@v5
243+
with:
244+
python-version: '3.12'
245245

246-
# - name: Download all artifacts
247-
# uses: actions/download-artifact@v4
248-
# with:
249-
# path: dist/
250-
# merge-multiple: true
246+
- name: Download all artifacts
247+
uses: actions/download-artifact@v4
248+
with:
249+
path: dist/
250+
merge-multiple: true
251251

252-
# - name: List packages
253-
# run: |
254-
# echo "=== Packages to upload ==="
255-
# ls -la dist/
256-
# if [ -z "$(ls -A dist/)" ]; then
257-
# echo "ERROR: No Python packages found!"
258-
# exit 1
259-
# fi
252+
- name: List packages
253+
run: |
254+
echo "=== Packages to upload ==="
255+
ls -la dist/
256+
if [ -z "$(ls -A dist/)" ]; then
257+
echo "ERROR: No Python packages found!"
258+
exit 1
259+
fi
260260
261-
# - name: Validate packages
262-
# run: |
263-
# pip install twine
264-
# twine check dist/*
261+
- name: Validate packages
262+
run: |
263+
pip install twine
264+
twine check dist/*
265265
266-
# - name: Publish to PyPI (Trusted Publisher)
267-
# if: ${{ inputs.dry_run != true }}
268-
# uses: pypa/gh-action-pypi-publish@release/v1
269-
# with:
270-
# packages-dir: dist/
271-
# skip-existing: true
272-
# verbose: true
266+
- name: Publish to PyPI (Trusted Publisher)
267+
if: ${{ inputs.dry_run != true }}
268+
uses: pypa/gh-action-pypi-publish@release/v1
269+
with:
270+
packages-dir: dist/
271+
skip-existing: true
272+
verbose: true
273273

274-
# - name: Dry run validation
275-
# if: ${{ inputs.dry_run == true }}
276-
# run: |
277-
# echo "🔍 Dry run - packages validated but not uploaded"
278-
# echo "Packages:"
279-
# ls -la dist/
274+
- name: Dry run validation
275+
if: ${{ inputs.dry_run == true }}
276+
run: |
277+
echo "🔍 Dry run - packages validated but not uploaded"
278+
echo "Packages:"
279+
ls -la dist/
280280
281281
# ===========================================================================
282282
# Release Summary
283283
# ===========================================================================
284284
summary:
285285
name: Release Summary
286286
runs-on: ubuntu-latest
287-
needs: [build-wheel, build-sdist]
287+
needs: [publish]
288288
if: always()
289289
steps:
290290
- name: Summary
291291
run: |
292292
echo "## 🐍 ToonDB Python SDK v${{ inputs.version }}" >> $GITHUB_STEP_SUMMARY
293293
echo "" >> $GITHUB_STEP_SUMMARY
294-
echo "**Mode:** TEST BUILD (Publishing Disabled)" >> $GITHUB_STEP_SUMMARY
294+
295+
if [ "${{ inputs.dry_run }}" = "true" ]; then
296+
echo "**Mode:** Dry Run (no packages published)" >> $GITHUB_STEP_SUMMARY
297+
else
298+
echo "**Mode:** Production Release" >> $GITHUB_STEP_SUMMARY
299+
fi
295300
296301
echo "" >> $GITHUB_STEP_SUMMARY
297302
echo "### Installation" >> $GITHUB_STEP_SUMMARY
@@ -311,3 +316,4 @@ jobs:
311316
echo "|-----|--------|" >> $GITHUB_STEP_SUMMARY
312317
echo "| Build Wheels | ${{ needs.build-wheel.result || 'N/A' }} |" >> $GITHUB_STEP_SUMMARY
313318
echo "| Build sdist | ${{ needs.build-sdist.result || 'N/A' }} |" >> $GITHUB_STEP_SUMMARY
319+
echo "| Publish | ${{ needs.publish.result }} |" >> $GITHUB_STEP_SUMMARY

CHANGELOG.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1212
- Improved documentation accuracy across all doc files
1313

1414
### Changed
15-
- Updated to match latest Rust SDK API patterns
15+
## [0.3.2] - 2026-01-04
16+
17+
### Repository Update
18+
- 📦 **Moved Python SDK** to its own repository: [https://github.com/toondb/toondb-python-sdk](https://github.com/toondb/toondb-python-sdk)
19+
- This allows for independent versioning and faster CI/CD pipelines.
20+
21+
### Infrastructure
22+
- **New Release Workflow**: Now pulls pre-built binaries directly from main ToonDB releases.
23+
- **Trusted Publishing**: Configured PyPI Trusted Publisher (OIDC) security.
24+
- **Platform Bundles**:
25+
- Linux x86_64
26+
- macOS ARM64 (Apple Silicon)
27+
- Windows x64
1628

1729
## [0.2.9] - 2026-01-02
1830

README.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1041,17 +1041,14 @@ client.close()
10411041
10421042
```bash
10431043
# Clone repo
1044-
git clone https://github.com/toondb/toondb
1045-
cd toondb/toondb-python-sdk
1044+
git clone https://github.com/toondb/toondb-python-sdk
1045+
cd toondb-python-sdk
10461046
10471047
# Install in development mode
10481048
pip install -e .
10491049
10501050
# Run tests
10511051
pytest tests/ -v
1052-
1053-
# Build native binary
1054-
cargo build --release -p toondb-tools
10551052
```
10561053
10571054
## Requirements
@@ -1067,14 +1064,14 @@ Apache License 2.0
10671064
## Links
10681065
10691066
- [Documentation](https://docs.toondb.dev/)
1070-
- [Go SDK](../toondb-go)
1071-
- [JavaScript SDK](../toondb-js)
1072-
- [GitHub](https://github.com/toondb/toondb)
1067+
- [GitHub](https://github.com/toondb/toondb-python-sdk)
10731068
- [PyPI Package](https://pypi.org/project/toondb-client/)
1069+
- [Changelog](https://github.com/toondb/toondb-python-sdk/blob/main/CHANGELOG.md)
1070+
- [examples](https://github.com/toondb/toondb-python-examples)
10741071
10751072
## Support
10761073
1077-
- GitHub Issues: https://github.com/toondb/toondb/issues
1074+
- GitHub Issues: https://github.com/toondb/toondb-python-sdk/issues
10781075
- Email: sushanth@toondb.dev
10791076
10801077
## Author

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "toondb-client"
7-
version = "0.3.1"
7+
version = "0.3.2"
88
description = "ToonDB is an AI-native database with token-optimized output, O(|path|) lookups, built-in vector search, and durable transactions."
99
readme = "README.md"
1010
license = {text = "Apache-2.0"}

0 commit comments

Comments
 (0)