Skip to content

Commit 08a6968

Browse files
authored
Merge pull request #26 from akhundMurad/feature/python314
Add support for Python 3.14, ditch Python 3.9
2 parents 7da44b8 + 6506e6a commit 08a6968

7 files changed

Lines changed: 428 additions & 352 deletions

File tree

.github/workflows/setup.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
runs-on: ubuntu-latest
1919
strategy:
2020
matrix:
21-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
21+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
2222

2323
steps:
2424
- uses: actions/checkout@v3

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,4 +309,6 @@ pip-selfcheck.json
309309
.history
310310
.ionide
311311

312-
# End of https://www.toptal.com/developers/gitignore/api/venv,python,visualstudiocode,pycharm
312+
# End of https://www.toptal.com/developers/gitignore/api/venv,python,visualstudiocode,pycharm
313+
314+
.DS_Store

CONTRIBUTING.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,25 @@ This page discribes how to contribute to typeid-python.
55
## Requirements
66

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

10-
## Environment preparation
10+
## Installation
1111

12-
1. fork the [repository](https://github.com/akhundMurad/typeid-python)
13-
2. clone the forked repository
12+
1. Fork the [repository](https://github.com/akhundMurad/typeid-python).
13+
2. Clone the forked repository.
14+
3. Install [Poetry Packaging Manager](https://python-poetry.org/):
15+
16+
```bash
17+
curl -sSL https://install.python-poetry.org | python3 -
18+
```
19+
20+
4. Configure virtual environment:
21+
22+
```bash
23+
poetry config virtualenvs.in-project true
24+
25+
poetry install --with dev
26+
```
1427

1528
## Formatters
1629

Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
check-linting:
2-
poetry run isort --check --profile black typeid/ tests/
3-
poetry run flake8 --exit-zero typeid/ tests/ --exit-zero
2+
poetry run ruff check typeid/ tests/
43
poetry run black --check --diff typeid/ tests/ --line-length 119
54
poetry run mypy typeid/ --pretty
65

76

87
fix-linting:
9-
poetry run isort --profile black typeid/ tests/
8+
poetry run ruff check --fix typeid/ tests/
109
poetry run black typeid/ tests/ --line-length 119
1110

1211

12+
1313
artifacts: test
1414
python -m build
1515

poetry.lock

Lines changed: 388 additions & 337 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ repository = "https://github.com/akhundMurad/typeid-python"
99
classifiers = [
1010
"Development Status :: 3 - Alpha",
1111
"License :: OSI Approved :: MIT License",
12-
"Programming Language :: Python :: 3.9",
1312
"Programming Language :: Python :: 3.10",
1413
"Programming Language :: Python :: 3.11",
1514
"Programming Language :: Python :: 3.12",
1615
"Programming Language :: Python :: 3.13",
16+
"Programming Language :: Python :: 3.14",
1717
"Operating System :: OS Independent",
1818
]
1919
keywords = ["typeid", "uuid", "uuid6", "guid"]
@@ -44,18 +44,17 @@ exclude = [
4444

4545

4646
[tool.poetry.dependencies]
47-
python = ">=3.9,<4"
48-
uuid6 = ">=2023.5.2"
47+
python = ">=3.10,<4"
48+
uuid6 = ">=2024.7.10,<2026.0.0"
4949

5050

5151
[tool.poetry.group.dev.dependencies]
5252
pytest = "^7.3.2"
5353
black = "^23.3.0"
54-
flake8 = "^5.0.0"
55-
isort = "^5.12.0"
5654
mypy = "^1.3.0"
5755
requests = "^2.31.0"
5856
pyyaml = "^6.0"
57+
ruff = "^0.14.5"
5958

6059

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

70+
[tool.ruff]
71+
line-length = 119
72+
target-version = "py310"
73+
src = ["typeid", "tests"]
74+
75+
[tool.ruff.lint]
76+
select = ["E", "F", "W", "B", "I"]
77+
ignore = ["E203", "B028"]
78+
79+
[tool.ruff.lint.isort]
80+
known-first-party = ["typeid"]
7181

7282
[build-system]
7383
requires = ["poetry-core"]

typeid/typeid.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
import uuid
12
import warnings
23
from typing import Optional
34

45
import uuid6
5-
import uuid
66

77
from typeid import base32
88
from typeid.errors import InvalidTypeIDStringException

0 commit comments

Comments
 (0)