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
2 changes: 1 addition & 1 deletion .github/workflows/setup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]

steps:
- uses: actions/checkout@v3
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -309,4 +309,6 @@ pip-selfcheck.json
.history
.ionide

# End of https://www.toptal.com/developers/gitignore/api/venv,python,visualstudiocode,pycharm
# End of https://www.toptal.com/developers/gitignore/api/venv,python,visualstudiocode,pycharm

.DS_Store
21 changes: 17 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,25 @@ This page discribes how to contribute to typeid-python.
## Requirements

- Linux, since all development proccess adapted for Linux machines.
- supported Python version (e.g. Python 3.11 or Python 3.12).
- supported Python version (e.g. Python 3.14).

## Environment preparation
## Installation

1. fork the [repository](https://github.com/akhundMurad/typeid-python)
2. clone the forked repository
1. Fork the [repository](https://github.com/akhundMurad/typeid-python).
2. Clone the forked repository.
3. Install [Poetry Packaging Manager](https://python-poetry.org/):

```bash
curl -sSL https://install.python-poetry.org | python3 -
```

4. Configure virtual environment:

```bash
poetry config virtualenvs.in-project true

poetry install --with dev
```

## Formatters

Expand Down
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
check-linting:
poetry run isort --check --profile black typeid/ tests/
poetry run flake8 --exit-zero typeid/ tests/ --exit-zero
poetry run ruff check typeid/ tests/
poetry run black --check --diff typeid/ tests/ --line-length 119
poetry run mypy typeid/ --pretty


fix-linting:
poetry run isort --profile black typeid/ tests/
poetry run ruff check --fix typeid/ tests/
poetry run black typeid/ tests/ --line-length 119



artifacts: test
python -m build

Expand Down
725 changes: 388 additions & 337 deletions poetry.lock

Large diffs are not rendered by default.

20 changes: 15 additions & 5 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ repository = "https://github.com/akhundMurad/typeid-python"
classifiers = [
"Development Status :: 3 - Alpha",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Operating System :: OS Independent",
]
keywords = ["typeid", "uuid", "uuid6", "guid"]
Expand Down Expand Up @@ -44,18 +44,17 @@ exclude = [


[tool.poetry.dependencies]
python = ">=3.9,<4"
uuid6 = ">=2023.5.2"
python = ">=3.10,<4"
uuid6 = ">=2024.7.10,<2026.0.0"


[tool.poetry.group.dev.dependencies]
pytest = "^7.3.2"
black = "^23.3.0"
flake8 = "^5.0.0"
isort = "^5.12.0"
mypy = "^1.3.0"
requests = "^2.31.0"
pyyaml = "^6.0"
ruff = "^0.14.5"


[tool.poetry.extras]
Expand All @@ -68,6 +67,17 @@ typeid = "typeid.cli:cli"
[tool.pylint]
disable = ["C0111", "C0116", "C0114", "R0903"]

[tool.ruff]
line-length = 119
target-version = "py310"
src = ["typeid", "tests"]

[tool.ruff.lint]
select = ["E", "F", "W", "B", "I"]
ignore = ["E203", "B028"]

[tool.ruff.lint.isort]
known-first-party = ["typeid"]

[build-system]
requires = ["poetry-core"]
Expand Down
2 changes: 1 addition & 1 deletion typeid/typeid.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import uuid
import warnings
from typing import Optional

import uuid6
import uuid

from typeid import base32
from typeid.errors import InvalidTypeIDStringException
Expand Down