Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@ RUN bash /tmp/library-scripts/node-debian.sh "${NVM_DIR}" "${NODE_VERSION}" "${U
&& apt-get clean -y && rm -rf /var/lib/apt/lists/* \
&& rm -rf /tmp/library-scripts

RUN apt-get update -y \
&& apt-get install -y --no-install-recommends just \
&& apt-get clean -y && rm -rf /var/lib/apt/lists/*

USER vscode
WORKDIR /home/vscode

Expand Down
4 changes: 2 additions & 2 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,5 @@ indent_size = 2
[*.py]
indent_size = 4

[Makefile]
indent_style = tab
[justfile]
indent_size = 4
8 changes: 8 additions & 0 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ inputs:
description: The Poetry version.
required: false
default: '1.8.2'
just_version:
description: The just version.
required: false
default: '1.57.0'
install_dependencies:
description: Install dependencies.
required: false
Expand All @@ -36,6 +40,10 @@ runs:
~/.local/bin
~/.local/share/pypoetry
~/Library/Application Support/pypoetry
- name: Setup just
uses: extractions/setup-just@v4
with:
just-version: ${{ inputs.just_version }}
- name: Setup Python
uses: actions/setup-python@v5
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
with:
python_version: ${{ inputs.python_version }}
- name: Build
run: make build
run: just build
- name: Upload artifact
uses: actions/upload-artifact@v7
if: inputs.upload_artifact == 'true'
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
- name: Setup Node.js
uses: ./.github/actions/setup-node
- name: Test
run: make test
run: just test
lint:
name: Lint (Python ${{ matrix.python }})
runs-on: ubuntu-latest
Expand All @@ -55,7 +55,7 @@ jobs:
with:
python_version: ${{ matrix.python }}
- name: Lint
run: make lint
run: just lint
build:
name: Build (Python ${{ matrix.python }} on ${{ matrix.os_name }})
uses: ./.github/workflows/_build.yml
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
- name: Setup Node.js
uses: ./.github/actions/setup-node
- name: Format
run: make format
run: just format
- name: Format with Prettier
run: npm run format
- name: Commit
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,4 @@ jobs:
- name: Cut ${{ github.event.inputs.version }} version
run: |
poetry version "${{ github.event.inputs.version }}"
make version
just version
27 changes: 0 additions & 27 deletions Makefile

This file was deleted.

13 changes: 7 additions & 6 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -452,9 +452,9 @@ Run each command below in a separate terminal window:

::

$ make watch
$ just watch

Primary development tasks are defined in the ``Makefile``.
Primary development tasks are defined in the ``justfile``.

Source Code
~~~~~~~~~~~
Expand All @@ -471,7 +471,7 @@ Clone the project with
Requirements
~~~~~~~~~~~~

You will need `Python 3`_ and Poetry_ and Node.js_ with npm_.
You will need `Python 3`_ and Poetry_ and Node.js_ with npm_ and just_.

Install the development dependencies with

Expand All @@ -480,6 +480,7 @@ Install the development dependencies with
$ poetry install
$ npm install

.. _just: https://just.systems/
.. _Node.js: https://nodejs.org/
.. _npm: https://www.npmjs.com/
.. _Poetry: https://poetry.eustace.io/
Expand All @@ -492,20 +493,20 @@ Lint code with

::

$ make lint
$ just lint


Run tests with

::

$ make test
$ just test

Run tests on changes with

::

$ make watch
$ just watch

Publishing
~~~~~~~~~~
Expand Down
25 changes: 25 additions & 0 deletions justfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
default: build

@build:
rm -rf dist
poetry build

@format:
poetry run black .

@lint:
poetry run pylint ./seam ./test
poetry run black --check .
poetry run rstcheck README.rst

@test:
poetry run pytest --cov=./seam

@watch:
poetry run ptw

@version:
git add pyproject.toml
git commit -m "$(poetry version -s)"
git tag --sign "v$(poetry version -s)" -m "$(poetry version -s)"
git push --follow-tags
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"scripts": {
"generate": "tsx codegen/smith.ts",
"pregenerate": "node generate-readme-toc.js",
"postgenerate": "make format",
"postgenerate": "just format",
"typecheck": "tsc",
"lint": "eslint .",
"postlint": "prettier --check --ignore-path .gitignore --ignore-path .prettierignore .",
Expand Down
Loading