diff --git a/.github/workflows/publish-package.yml b/.github/workflows/publish-package.yml index 8014f36f..091e7c49 100644 --- a/.github/workflows/publish-package.yml +++ b/.github/workflows/publish-package.yml @@ -1,35 +1,49 @@ -name: Publish a pypi package +name: Publish Python Package on: + workflow_dispatch: release: - types: [created] + types: + - published jobs: - publish_to_pypi: + build_sdist: + name: Build runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Build SDist and Wheel + run: pipx run build --sdist --wheel + + - name: Check metadata + run: pipx run twine check dist/* + + - uses: actions/upload-artifact@v4 + with: + name: cibw-sdist + path: dist/* + + upload_all: + name: Upload release + needs: [build_sdist] + runs-on: ubuntu-latest + environment: + name: pypi + url: https://pypi.org/p/acom_music_box permissions: - contents: read - packages: write + id-token: write steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Set up Python - uses: actions/setup-python@v2 - with: - python-version: '3.9' - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements.txt - - - name: Build and publish package - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }} - run: | - pipx run build - pipx run twine check dist/* - python -m twine upload --repository pypi dist/* \ No newline at end of file + - uses: actions/setup-python@v5 + with: + python-version: "3.x" + + - uses: actions/download-artifact@v4 + with: + pattern: cibw-* + path: dist + merge-multiple: true + + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 diff --git a/src/acom_music_box/__init__.py b/src/acom_music_box/__init__.py index 17fdbe40..b7110b30 100644 --- a/src/acom_music_box/__init__.py +++ b/src/acom_music_box/__init__.py @@ -4,7 +4,7 @@ This package contains modules for handling various aspects of a music box, including species, products, reactants, reactions, and more. """ -__version__ = "2.1.1" +__version__ = "2.1.5" from .utils import convert_time, convert_pressure, convert_temperature, convert_concentration from .music_box_species import Species