diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 7a1e95b..7ebc6d0 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -5,27 +5,52 @@ on: push: tags: v[0-9]+.[0-9]+.[0-9]+ + workflow_dispatch: + + + jobs: + build: + name: Build distribution + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Setup Python + uses: actions/setup-python@v4 + with: + python-version: '3.9' + - name: Install pypa/build + run: python3 -m pip install build --user + - name: Build a binary wheel and a source tarball + run: python3 -m build + - name: Store the distribution packages + uses: actions/upload-artifact@v3 + with: + name: python-package-distributions + path: dist/ + + # TODO: Add logic to do github release too here + publish: + name: Publish to TestPyPI runs-on: ubuntu-latest + environment: + # name: pypi + name: testpypi + url: https://pypi.org/project/pyscript + permissions: + id-token: ${{ secrets.PYPI_TOKEN }} steps: - - name: Check out repository - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3 - - name: Set up python 3.9 - uses: actions/setup-python@bd6b4b6205c4dbad673328db7b31b7fab9e241c0 # v4 + - name: Download all the dists + uses: actions/download-artifacts@v3 with: - python-version: 3.9 - - name: Install Poetry - uses: snok/install-poetry@v1.1.6 + name: python-package-distributions + path: dist/ + - name: Publish release to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + # This is for testing with: - virtualenvs-create: true - virtualenvs-in-project: true - - name: Install package dependencies - run: poetry install --no-dev - - name: Build package - run: poetry build - - name: Publish package - run: | - poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} - poetry publish + repository-url: https://test.pypi.org/legacy/ diff --git a/README.md b/README.md index eb17db6..2cccfe7 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,24 @@ A command-line interface for [PyScript](https://pyscript.net). Quickly wrap Python scripts into a HTML template, pre-configured with [PyScript](https://pyscript.net). - +```bash +❯ pyscript + + Usage: pyscript [OPTIONS] COMMAND [ARGS]... + + Command Line Interface for PyScript. + +╭─ Options ──────────────────────────────────────────────────────────────────────────────────────╮ +│ --version Show project version and exit. │ +│ --help Show this message and exit. │ +╰────────────────────────────────────────────────────────────────────────────────────────────────╯ +╭─ Commands ─────────────────────────────────────────────────────────────────────────────────────╮ +│ create Create a new pyscript project with the passed in name, creating a new directory in the │ +│ current directory. Alternatively, use `--wrap` so as to embed a python file instead. │ +│ run Creates a local server to run the app on the path and port specified. │ +╰────────────────────────────────────────────────────────────────────────────────────────────────╯ + +``` ## Installation diff --git a/pyproject.toml b/pyproject.toml index 6854751..0fdf124 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,20 @@ requires = ["setuptools", "setuptools-scm"] authors = [ {name = "Matt Kramer", email = "mkramer@anaconda.com"}, {name = "Fabio Pliger", email = "fpliger@anaconda.com"}, - {name = "Nicholas Tollervey", email = "ntollervey@anaconda.com"} + {name = "Nicholas Tollervey", email = "ntollervey@anaconda.com"}, + {name = "Fabio Rosado", email = "frosado@anaconda.com"} +] +classifiers = [ + "Development Status :: 4 - Beta", + "Environment :: Console", + "Intended Audience :: Developers", + "License :: OSI Approved :: Apache Software License", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Topic :: Software Development :: Code Generators", + "Topic :: Software Development :: Libraries :: Python Modules", + "Topic :: Software Development :: Pre-processors" ] dependencies = [ 'importlib-metadata; python_version<"3.8"', @@ -19,11 +32,12 @@ dependencies = [ "requests<=2.31.0" ] description = "Command Line Interface for PyScript" +keywords = ["pyscript", "cli", "pyodide", "micropython", "pyscript-cli"] license = {text = "Apache-2.0"} name = "pyscript" readme = "README.md" requires-python = ">=3.9" -version = "0.2.5" +version = "0.3.0" [project.optional-dependencies] dev = [ @@ -43,3 +57,9 @@ docs = [ [project.scripts] pyscript = "pyscript.cli:app" + +[project.urls] +Documentation = "https://docs.pyscript.net" +Examples = "https://pyscript.com/@examples" +Homepage = "https://pyscript.net" +Repository = "https://github.com/pyscript/pyscript-cli"