diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..0f6e956 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,30 @@ +name: Release + +on: + push: + tags: + - "v*" + +jobs: + release: + name: Build and publish to PyPI + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.12" + + - name: Install build dependencies + run: pip install build + + - name: Build sdist and wheel + run: python -m build + + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md index c80268d..245821f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,11 +16,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). --- -## [0.1.0] — 2026-03-06 +## [0.1.0] — 2026-03-14 ### Added +- `KuCoinProvider` — public REST API, no key, `BASE-QUOTE` symbol normalisation, all intervals, 1500 bars - `KrakenProvider` — public REST API for crypto OHLCV, no key required; BTC→XBT symbol mapping; all standard intervals - `CoinGeckoProvider` — crypto OHLCV with no API key; 4h and 1d granularity via auto-detection +- GitHub Actions release workflow — publishes to PyPI on `v*` tag push ### Fixed - Logging added to registry fallback chain — silent `None` returns now emit `debug`/`warning` diagnostics diff --git a/pyproject.toml b/pyproject.toml index 6553fed..003f2f3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -29,7 +29,7 @@ dependencies = [ [project.optional-dependencies] tiingo = ["requests>=2.31"] finnhub = ["finnhub-python>=2.4"] -dev = ["pytest>=8", "pytest-asyncio>=0.23", "ruff>=0.4", "aioresponses>=0.7"] +dev = ["pytest>=8", "pytest-asyncio>=0.23", "ruff>=0.4", "aioresponses>=0.7", "build>=1.0"] [project.scripts] ohlcv = "ohlcv_hub.cli:main"