-
Notifications
You must be signed in to change notification settings - Fork 15
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Use uv for package management, get rid of setup.py etc. - Move source to `src/` - Add type-annotations - Blacken code (100-character line-length) - Reformat docstrings to PEP257. - Add GitHub Actions CI. - Get docs working. - Update tox config.
- Loading branch information
Showing
44 changed files
with
3,482 additions
and
2,576 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
name: ci | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- master | ||
push: | ||
branches: | ||
- master | ||
|
||
permissions: | ||
contents: write | ||
|
||
jobs: | ||
|
||
build: | ||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
matrix: | ||
python-version: ["3.9", "3.10", "3.11", "3.12"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Install uv | ||
uses: astral-sh/setup-uv@v2 | ||
with: | ||
version: "0.4.15" | ||
|
||
- name: Set up Python ${{ matrix.python-version }} | ||
run: uv python install ${{ matrix.python-version }} | ||
|
||
- name: Install the project | ||
run: uv sync --all-extras --dev | ||
|
||
- name: Test with pytest + behave | ||
run: | | ||
uv run pytest --cov-report term-missing --cov=opcdiag --cov=tests tests | ||
uv run behave |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
/.coverage | ||
/dist/ | ||
/docs/.build/ | ||
/*.egg-info | ||
/src/*.egg-info | ||
*.pyc | ||
_scratch/ | ||
Session.vim | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,43 +1,53 @@ | ||
BEHAVE = behave | ||
PACKAGE = opcdiag | ||
PYTHON = python | ||
SETUP = $(PYTHON) ./setup.py | ||
|
||
.PHONY: accept clean coverage readme register test sdist upload | ||
|
||
help: | ||
@echo "Please use \`make <target>' where <target> is one or more of" | ||
@echo " accept run acceptance tests using behave" | ||
@echo " clean delete intermediate work product and start fresh" | ||
@echo " coverage run nosetests with coverage" | ||
@echo " readme update README.html from README.rst" | ||
@echo " register update metadata (README.rst) on PyPI" | ||
@echo " test run tests using setup.py" | ||
@echo " sdist generate a source distribution into dist/" | ||
@echo " upload upload distribution tarball to PyPI" | ||
|
||
@echo " accept run acceptance tests using behave" | ||
@echo " build generate a source distribution and wheel into dist/" | ||
@echo " clean delete intermediate work product and start fresh" | ||
@echo " cleandocs delete generated HTML documentation" | ||
@echo " coverage run unit tests with coverage" | ||
@echo " docs generate HTML documentation with Sphinx" | ||
@echo " test run unit tests" | ||
@echo " test-upload upload distribution artifacts in dist/ to Test-PyPI" | ||
@echo " upload upload distribution artifacts in dist/ to PyPI" | ||
|
||
.PHONY: accept | ||
accept: | ||
$(BEHAVE) --stop | ||
uv run behave --stop | ||
|
||
.PHONY: build | ||
build: | ||
rm -rf dist | ||
uv build | ||
|
||
.PHONY: clean | ||
clean: | ||
find . -type f -name \*.pyc -exec rm {} \; | ||
rm -rf dist *.egg-info .coverage .DS_Store | ||
|
||
coverage: | ||
py.test --cov-report term-missing --cov=$(PACKAGE) tests/ | ||
|
||
readme: | ||
rst2html README.rst >README.html | ||
open README.html | ||
.PHONY: cleandocs | ||
cleandocs: | ||
$(MAKE) -C docs clean | ||
|
||
register: | ||
$(SETUP) register | ||
.PHONY: coverage | ||
coverage: | ||
uv run pytest --cov-report term-missing --cov=$(PACKAGE) --cov=tests tests/ | ||
|
||
sdist: | ||
$(SETUP) sdist | ||
.PHONY: docs | ||
docs: | ||
$(MAKE) -C docs html | ||
|
||
.PHONY: test | ||
test: | ||
$(SETUP) test | ||
uv run pytest tests | ||
|
||
.PHONY: test-upload | ||
test-upload: build | ||
uv run twine upload --repository testpypi dist/* | ||
|
||
.PHONY: upload | ||
upload: | ||
$(SETUP) sdist upload | ||
uv run twine upload dist/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.