Skip to content

Commit 03cda07

Browse files
authored
Merge pull request #686 from cordada/deploy/v0.32.0
Deploy release v0.32.0
2 parents b680e83 + ee1b47e commit 03cda07

19 files changed

+198
-197
lines changed

.bumpversion.cfg

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[bumpversion]
2-
current_version = 0.31.0
2+
current_version = 0.32.0
33
commit = True
44
tag = False
55
message = chore: Bump version from {current_version} to {new_version}

.coveragerc.test.ini

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
[run]
2+
source = src/
3+
omit =
4+
src/scripts/*
5+
src/tests/*
6+
branch = True
7+
8+
[report]
9+
exclude_lines =
10+
pragma: no cover
11+
if __name__ == .__main__.
12+
show_missing = True
13+
14+
[xml]
15+
output = test-reports/coverage/xml/coverage.xml
16+
17+
[html]
18+
directory = test-reports/coverage/html

.flake8

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
[flake8]
2+
ignore =
3+
# W503 line break before binary operator
4+
W503
5+
6+
exclude =
7+
*.egg-info/,
8+
.git/,
9+
.mypy_cache/,
10+
.pyenvs/,
11+
__pycache__/,
12+
build/,
13+
dist/,
14+
docs/
15+
16+
max-line-length = 100
17+
18+
doctests = True
19+
show-source = True
20+
statistics = True

.github/workflows/ci.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ jobs:
137137
138138
- name: Store Artifacts
139139
if: ${{ always() }}
140-
uses: actions/[email protected].4
140+
uses: actions/[email protected].6
141141
with:
142142
name: test_reports_${{ matrix.python_version }}
143143
path: test-reports/

.github/workflows/dependency-review.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@ jobs:
2424
uses: actions/[email protected]
2525

2626
- name: Dependency Review
27-
uses: actions/[email protected].3
27+
uses: actions/[email protected].4
2828
with:
2929
fail-on-severity: critical

.github/workflows/release.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ jobs:
6868
make dist
6969
7070
- name: Store Artifacts
71-
uses: actions/[email protected].4
71+
uses: actions/[email protected].6
7272
with:
7373
name: release
7474
path: ${{ env.ARTIFACTS_PATH }}/

HISTORY.md

+18
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,23 @@
11
# History
22

3+
## 0.32.0 (2024-08-28)
4+
5+
- (PR #660, 2024-08-23) chore: Bump setuptools from 65.5.1 to 70.3.0
6+
- (PR #672, 2024-08-23) chore: Bump django from 4.2.14 to 4.2.15
7+
- (PR #676, 2024-08-23) chore(deps): Update `pip` from 23.3 to 24.2
8+
- (PR #677, 2024-08-23) chore(deps): Update `wheel` from ≤0.43.0 to 0.44.0
9+
- (PR #675, 2024-08-23) Replace Setuptools Configuration with Python Project Configuration
10+
- (PR #670, 2024-08-23) chore: Bump jsonschema from 4.22.0 to 4.23.0
11+
- (PR #678, 2024-08-23) chore: Bump the development-dependencies group across 1 directory with 7 updates
12+
- (PR #679, 2024-08-23) chore: Bump the production-dependencies group across 1 directory with 2 updates
13+
- (PR #680, 2024-08-23) Test coverage broken by migration from `setup.py` to `pyproject.toml`
14+
- (PR #668, 2024-08-23) chore: Bump pyopenssl from 24.1.0 to 24.2.1
15+
- (PR #673, 2024-08-23) chore(deps): Bump importlib-metadata from 7.1.0 to 8.4.0
16+
- (PR #681, 2024-08-28) Move Flake8 configuration from `setup.cfg` to its own file
17+
- (PR #682, 2024-08-28) Move Coverage.py configuration from `setup.cfg` to its own file
18+
- (PR #683, 2024-08-28) Replace `setup.py sdist` and `bdist_wheel` with `build`
19+
- (PR #684, 2024-08-28) When running `twine check`, fail on warnings
20+
321
## 0.31.0 (2024-07-17)
422

523
- (PR #661, 2024-07-17) extras: Add `RutFilter` for Django views and DRF views

Makefile

+7-7
Original file line numberDiff line numberDiff line change
@@ -101,29 +101,29 @@ test-all: ## run tests on every Python version with tox
101101
tox
102102

103103
test-coverage: ## run tests and record test coverage
104-
coverage run --rcfile=setup.cfg setup.py test
104+
coverage run --rcfile=.coveragerc.test.ini -m unittest discover -v -c -b -s src -t src
105105

106106
test-coverage-report: test-coverage-report-console
107107
test-coverage-report: test-coverage-report-xml
108108
test-coverage-report: test-coverage-report-html
109109
test-coverage-report: ## Run tests, measure code coverage, and generate reports
110110

111111
test-coverage-report-console: ## print test coverage summary
112-
coverage report --rcfile=setup.cfg -m
112+
coverage report --rcfile=.coveragerc.test.ini -m
113113

114114
test-coverage-report-xml: ## Generate test coverage XML report
115-
coverage xml --rcfile=setup.cfg
115+
coverage xml --rcfile=.coveragerc.test.ini
116116

117117
test-coverage-report-html: ## generate test coverage HTML report
118-
coverage html --rcfile=setup.cfg
118+
coverage html --rcfile=.coveragerc.test.ini
119119

120120
build: ## Build Python package
121121
$(PYTHON) setup.py build
122122

123123
dist: build ## builds source and wheel package
124-
python setup.py sdist
125-
python setup.py bdist_wheel
126-
twine check dist/*
124+
python -m build --sdist
125+
python -m build --wheel
126+
twine check --strict dist/*
127127
ls -l dist
128128

129129
upload-release: ## upload dist packages

pyproject.toml

+86-6
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,94 @@
11
# Python Project Configuration
22
#
33
# Documentation:
4+
# - https://packaging.python.org/en/latest/specifications/pyproject-toml/
5+
# (https://github.com/pypa/packaging.python.org/blob/caa20073/source/specifications/pyproject-toml.rst)
46
# - https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
5-
# - https://github.com/pypa/pip/blob/23.2.1/docs/html/reference/build-system/pyproject-toml.md
6-
# - https://packaging.python.org/en/latest/specifications/declaring-project-metadata/
7-
# - https://github.com/pypa/packaging.python.org/blob/df2c8b22/source/specifications/declaring-project-metadata.rst
7+
# (https://github.com/pypa/pip/blob/24.2/docs/html/reference/build-system/pyproject-toml.md)
8+
# - https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html
9+
# (https://github.com/pypa/setuptools/blob/v70.3.0/docs/userguide/pyproject_config.rst)
810

911
[build-system]
1012
requires = [
11-
"setuptools==65.5.1",
12-
"wheel==0.41.3",
13+
"setuptools==70.3.0",
14+
"wheel==0.44.0",
1315
]
14-
build-backend = "setuptools.build_meta:__legacy__"
16+
build-backend = "setuptools.build_meta"
17+
18+
[project]
19+
name = "cl-sii"
20+
dependencies = [
21+
"cryptography>=38.0.0",
22+
"defusedxml>=0.6.0,<1",
23+
"jsonschema>=3.1.1",
24+
"lxml>=4.6.5,<6",
25+
"marshmallow>=3,<4",
26+
"pydantic>=2.3.0,!=1.7.*,!=1.8.*,!=1.9.*",
27+
"pyOpenSSL>=22.0.0",
28+
"pytz>=2019.3",
29+
"signxml>=3.1.0",
30+
]
31+
requires-python = ">=3.8, <3.11"
32+
authors = [
33+
{name = "Fyntex TI SpA", email = "[email protected]"},
34+
]
35+
description = "Python library for Servicio de Impuestos Internos (SII) of Chile."
36+
readme = "README.md"
37+
license = {text = "MIT"}
38+
classifiers = [
39+
# See https://pypi.org/classifiers/
40+
"Development Status :: 3 - Alpha",
41+
"Intended Audience :: Developers",
42+
"License :: OSI Approved :: MIT License",
43+
"Natural Language :: English",
44+
"Programming Language :: Python :: 3",
45+
"Programming Language :: Python :: 3.8",
46+
"Programming Language :: Python :: 3.9",
47+
"Programming Language :: Python :: 3.10",
48+
]
49+
dynamic = ["version"]
50+
51+
[project.optional-dependencies]
52+
django = ["Django>=2.2.24"]
53+
django-filter = ["django-filter>=24.2"]
54+
djangorestframework = ["djangorestframework>=3.10.3,<3.16"]
55+
56+
[project.urls]
57+
Homepage = "https://github.com/fyntex/lib-cl-sii-python"
58+
Changelog = "https://github.com/fyntex/lib-cl-sii-python/blob/develop/HISTORY.md"
59+
60+
[tool.setuptools]
61+
include-package-data = true
62+
zip-safe = false
63+
64+
[tool.setuptools.packages.find]
65+
where = ["src"]
66+
include = ["*"]
67+
exclude = [
68+
"scripts",
69+
"tests*",
70+
]
71+
namespaces = true
72+
73+
[tool.setuptools.package-data]
74+
# note: the "typing information" of this project's packages is not made available to its users
75+
# automatically; it needs to be packaged and distributed. The way to do so is fairly new and
76+
# it is specified in PEP 561 - "Distributing and Packaging Type Information".
77+
# See:
78+
# - https://www.python.org/dev/peps/pep-0561/#packaging-type-information
79+
# - https://github.com/python/typing/issues/84
80+
# - https://github.com/python/mypy/issues/3930
81+
# warning: remember to replicate this in the manifest file for source distribution ('MANIFEST.in').
82+
cl_sii = [
83+
# Indicates that the "typing information" of the package should be distributed.
84+
"py.typed",
85+
# Data files that are not in a sub-package.
86+
"data/cte/schemas-json/*.schema.json",
87+
"data/ref/factura_electronica/schemas-xml/*.xsd",
88+
]
89+
90+
[tool.setuptools.dynamic]
91+
version = {attr = "cl_sii.__version__"}
92+
93+
[tool.distutils.bdist_wheel]
94+
universal = false

requirements-dev.in

+9-8
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,17 @@
44

55
-c requirements.txt
66

7-
black==24.4.2
7+
black==24.8.0
8+
build==1.0.3
89
bumpversion==0.5.3
9-
coverage==7.5.4
10-
flake8==7.1.0
10+
coverage==7.6.1
11+
flake8==7.1.1
1112
isort==5.13.2
12-
mypy==1.10.1
13+
mypy==1.11.1
1314
pip-tools==7.4.1
14-
tox==4.16.0
15+
tox==4.18.0
1516
twine==5.1.1
16-
types-jsonschema==4.22.0.20240610
17-
types-pyOpenSSL==24.1.0.20240425
17+
types-jsonschema==4.23.0.20240813
18+
types-pyOpenSSL==24.1.0.20240722
1819
types-pytz==2024.1.0.20240417
19-
wheel==0.43.0
20+
wheel==0.44.0

requirements-dev.txt

+15-13
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,17 @@ attrs==23.2.0
88
# via
99
# -c requirements.txt
1010
# referencing
11-
black==24.4.2
11+
black==24.8.0
1212
# via -r requirements-dev.in
1313
bleach==5.0.1
1414
# via readme-renderer
1515
build==1.0.3
16-
# via pip-tools
16+
# via
17+
# -r requirements-dev.in
18+
# pip-tools
1719
bumpversion==0.5.3
1820
# via -r requirements-dev.in
19-
cachetools==5.3.3
21+
cachetools==5.5.0
2022
# via tox
2123
certifi==2024.7.4
2224
# via
@@ -36,7 +38,7 @@ click==8.0.3
3638
# pip-tools
3739
colorama==0.4.6
3840
# via tox
39-
coverage==7.5.4
41+
coverage==7.6.1
4042
# via -r requirements-dev.in
4143
cryptography==42.0.8
4244
# via
@@ -51,11 +53,11 @@ filelock==3.15.4
5153
# via
5254
# tox
5355
# virtualenv
54-
flake8==7.1.0
56+
flake8==7.1.1
5557
# via -r requirements-dev.in
5658
idna==3.7
5759
# via requests
58-
importlib-metadata==7.1.0
60+
importlib-metadata==8.4.0
5961
# via
6062
# -c requirements.txt
6163
# build
@@ -74,7 +76,7 @@ mccabe==0.7.0
7476
# via flake8
7577
mdurl==0.1.2
7678
# via markdown-it-py
77-
mypy==1.10.1
79+
mypy==1.11.1
7880
# via -r requirements-dev.in
7981
mypy-extensions==1.0.0
8082
# via
@@ -151,15 +153,15 @@ tomli==2.0.1
151153
# pyproject-api
152154
# pyproject-hooks
153155
# tox
154-
tox==4.16.0
156+
tox==4.18.0
155157
# via -r requirements-dev.in
156158
twine==5.1.1
157159
# via -r requirements-dev.in
158160
types-cffi==1.16.0.20240331
159161
# via types-pyopenssl
160-
types-jsonschema==4.22.0.20240610
162+
types-jsonschema==4.23.0.20240813
161163
# via -r requirements-dev.in
162-
types-pyopenssl==24.1.0.20240425
164+
types-pyopenssl==24.1.0.20240722
163165
# via -r requirements-dev.in
164166
types-pytz==2024.1.0.20240417
165167
# via -r requirements-dev.in
@@ -179,7 +181,7 @@ virtualenv==20.26.3
179181
# via tox
180182
webencodings==0.5.1
181183
# via bleach
182-
wheel==0.43.0
184+
wheel==0.44.0
183185
# via
184186
# -r requirements-dev.in
185187
# pip-tools
@@ -189,7 +191,7 @@ zipp==3.19.2
189191
# importlib-metadata
190192

191193
# The following packages are considered to be unsafe in a requirements file:
192-
pip==23.3
194+
pip==24.2
193195
# via pip-tools
194-
setuptools==65.5.1
196+
setuptools==70.3.0
195197
# via pip-tools

requirements.in

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ defusedxml==0.7.1
1111
django-filter>=24.2
1212
Django>=2.2.24
1313
djangorestframework>=3.10.3,<3.16
14-
importlib-metadata==7.1.0
15-
jsonschema==4.22.0
14+
importlib-metadata==8.4.0
15+
jsonschema==4.23.0
1616
lxml==5.2.2
1717
marshmallow==3.21.3
1818
pydantic==2.7.2
19-
pyOpenSSL==24.1.0
19+
pyOpenSSL==24.2.1
2020
pytz==2024.1
2121
signxml==3.2.2

0 commit comments

Comments
 (0)