Skip to content

Commit

Permalink
poetry: Switch from using pipenv to poetry
Browse files Browse the repository at this point in the history
Fixes: 32
  • Loading branch information
dkoston committed Dec 8, 2023
1 parent c0c91ec commit 8c64153
Show file tree
Hide file tree
Showing 8 changed files with 962 additions and 964 deletions.
14 changes: 8 additions & 6 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,19 @@ jobs:
with:
python-version: 3.9

- name: Install poetry
uses: abatilo/actions-poetry@v2
with:
poetry-version: "1.7.1"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pipenv
pipenv install --dev
poetry install
- name: Run linters
run: |
pipenv run mypy ./src
make lint
- name: Run tests
run: |
pipenv run python setup.py install
pipenv run pytest
make test
12 changes: 5 additions & 7 deletions .github/workflows/upload.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,18 @@ jobs:
- name: Checkout Git
uses: actions/checkout@v2

- name: Install Python 3
uses: actions/setup-python@v2
- name: Install poetry
uses: abatilo/actions-poetry@v2
with:
python-version: 3.9
poetry-version: "1.7.1"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pipenv
pipenv install --dev
poetry install
- name: Build package
run: |
pipenv run python -m build --no-isolation
make build
- name: Publish package
if: startsWith(github.ref, 'refs/tags')
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -131,3 +131,6 @@ cython_debug/
# VS Code
.history
.vscode

#pyenv
.python-version
34 changes: 19 additions & 15 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,38 +1,42 @@
.DEFAULT_GOAL := help
.PHONY: help build test

PYPI_TOKEN := $(shell echo ${PYPI_TOKEN})
PYPI_TEST_TOKEN := $(shell echo ${PYPI_TEST_TOKEN})


build: ## Build an application
@pipenv run python -m build --no-isolation
@poetry build

configure_pypi_publishing: ## Configure publishing to PyPI
@if [ -z "${PYPI_TOKEN}" ] ; then echo "you need to export PYPI_TOKEN before running this command" ; false ; fi
@if [ -z "${PYPI_TOKEN}" ] ; then echo "you need to export PYPI_TEST_TOKEN before running this command" ; false ; fi
@poetry config repositories.test-pypi https://test.pypi.org/legacy/
@poetry config pypi-token.test-pypi $(PYPI_TEST_TOKEN)
@poetry config pypi-token.pypi $(PYPI_TOKEN)

publish-test: ## Upload package to test PyPI
@pipenv run twine upload --repository testpypi dist/*
@poetry publish -r test-pypi

publish: build ## Upload package to PyPI
@pipenv run twine upload dist/*
@poetry publish
@make clean

install: build ## Install application to Pip environment
@pipenv run python -m pip install

install-dev: ## Install application to Pip development environment
@pipenv run python -m pip install -e
@make clean
install: build ## Install application to Poetry environment
@poetry install

clean: ## Remove build files
@rm -Rf build/ dist/ *.egg-info .pytest_cache/ .mypy_cache/ .pytype/ .eggs/ src/*.egg-info
@echo "Temporary files were clear"

test: ## Run code tests
@pipenv run python -m pytest -q

sync: ## Sync with Pipfile packages list
@pipenv sync
@poetry run pytest

lint: ## Run code linters
@echo "Run code linters..."
@pipenv run mypy ./src
@poetry run mypy ./src

help: ## Show this message
@echo "Application management"
@echo
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
18 changes: 0 additions & 18 deletions Pipfile

This file was deleted.

918 changes: 0 additions & 918 deletions Pipfile.lock

This file was deleted.

894 changes: 894 additions & 0 deletions poetry.lock

Large diffs are not rendered by default.

33 changes: 33 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
[tool.poetry]
name = "openapi3-parser"
version = "1.1.16"
description = "OpenAPI 3 parser to use a specification inside of the code in your projects"
authors = ["Artem Manchenkov <[email protected]>"]
license = "MIT"
readme = "README.md"
packages = [{ include = "openapi_parser", from = "src" }]

[tool.poetry.dependencies]
python = "^3.9"
prance = ">=0.20.2"
openapi-spec-validator = "==0.6.0"


[tool.poetry.group.dev.dependencies]
wheel = ">=0.35.1"
mypy = ">=0.800"
pytest = ">=6.2.2"
build = "*"

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"


[tool.pytest.ini_options]
testpaths = [
"tests",
]
pythonpath = [
"./src"
]

0 comments on commit 8c64153

Please sign in to comment.