Skip to content

Commit f0733ba

Browse files
authored
Release 5.7.0 (#501)
Signed-off-by: tdruez <tdruez@aboutcode.org>
1 parent fd10a6b commit f0733ba

File tree

6 files changed

+280
-4
lines changed

6 files changed

+280
-4
lines changed

CHANGELOG.rst

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,47 @@
11
Release notes
22
=============
33

4+
### Version 5.7.0
5+
6+
- Upgrade Python version to 3.14
7+
https://github.com/aboutcode-org/dejacode/pull/465
8+
9+
- Update Django to version 6.x
10+
https://github.com/aboutcode-org/dejacode/pull/466
11+
12+
- Fix parsing of str into timezone aware dates in reporting
13+
https://github.com/aboutcode-org/dejacode/pull/461
14+
15+
- Set usage policy from license profile
16+
https://github.com/aboutcode-org/dejacode/pull/463
17+
18+
- Add support for OpenDocument format in report export
19+
https://github.com/aboutcode-org/dejacode/pull/478
20+
21+
- Form validation on permission protected fields
22+
https://github.com/aboutcode-org/dejacode/pull/479
23+
24+
- Fix stream scan results data instead of silencing timeouts
25+
https://github.com/aboutcode-org/dejacode/pull/481
26+
27+
- Fix upgrade RQ to fix a worker failure
28+
https://github.com/aboutcode-org/dejacode/pull/483
29+
30+
- Replace plain-text DRF token with PBKDF2-hashed API token
31+
https://github.com/aboutcode-org/dejacode/pull/484
32+
33+
- Fix rendering of the burger menu as offcanvas
34+
https://github.com/aboutcode-org/dejacode/pull/486
35+
36+
- Add ability to revoke an API key from profile view
37+
https://github.com/aboutcode-org/dejacode/pull/491
38+
39+
- Rework the pagination with per-model setting
40+
https://github.com/aboutcode-org/dejacode/pull/494
41+
42+
- Add generic views for API key management in `aboutcode.api_auth` module
43+
https://github.com/aboutcode-org/dejacode/pull/500
44+
445
### Version 5.6.0
546

647
- feat: import vulnerability data from ScanCode.io
@@ -12,10 +53,10 @@ Release notes
1253
- feat: add package_content PurlDB field on Package model
1354
https://github.com/aboutcode-org/dejacode/issues/434
1455

15-
- fix: exclude qualifiers and subpath for PURL comparison in get_purldb_entries
56+
- Fix exclude qualifiers and subpath for PURL comparison in get_purldb_entries
1657
https://github.com/aboutcode-org/dejacode/issues/453
1758

18-
- fix: update the readthedocs.yml config to fix the build
59+
- Fix update the readthedocs.yml config to fix the build
1960
https://github.com/aboutcode-org/dejacode/issues/447
2061

2162
- chore: upgrade Django and related libraries to latest version

dejacode/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
import git
1616

17-
VERSION = "5.6.0"
17+
VERSION = "5.7.0"
1818

1919
PROJECT_DIR = Path(__file__).resolve().parent
2020
ROOT_DIR = PROJECT_DIR.parent

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "dejacode"
7-
version = "5.6.0"
7+
version = "5.7.0"
88
description = "Automate open source license compliance and ensure supply chain integrity"
99
readme = "README.rst"
1010
requires-python = ">=3.14,<3.15"
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
about_resource: jsonschema_specifications-2025.9.1-py3-none-any.whl
2+
name: jsonschema-specifications
3+
version: 2025.9.1
4+
download_url: https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl
5+
description: |
6+
The JSON Schema meta-schemas and vocabularies, exposed as a Registry
7+
=============================
8+
``jsonschema-specifications``
9+
=============================
10+
11+
|PyPI| |Pythons| |CI| |ReadTheDocs|
12+
13+
JSON support files from the `JSON Schema Specifications <https://json-schema.org/specification.html>`_ (metaschemas, vocabularies, etc.), packaged for runtime access from Python as a `referencing-based Schema Registry <https://referencing.readthedocs.io/en/stable/api/#referencing.Registry>`_.
14+
15+
.. |PyPI| image:: https://img.shields.io/pypi/v/jsonschema-specifications.svg
16+
:alt: PyPI version
17+
:target: https://pypi.org/project/jsonschema-specifications/
18+
19+
.. |Pythons| image:: https://img.shields.io/pypi/pyversions/jsonschema-specifications.svg
20+
:alt: Supported Python versions
21+
:target: https://pypi.org/project/jsonschema-specifications/
22+
23+
.. |CI| image:: https://github.com/python-jsonschema/jsonschema-specifications/workflows/CI/badge.svg
24+
:alt: Build status
25+
:target: https://github.com/python-jsonschema/jsonschema-specifications/actions?query=workflow%3ACI
26+
27+
.. |ReadTheDocs| image:: https://readthedocs.org/projects/jsonschema-specifications/badge/?version=stable&style=flat
28+
:alt: ReadTheDocs status
29+
:target: https://jsonschema-specifications.readthedocs.io/en/stable/
30+
package_url: pkg:pypi/jsonschema-specifications@2025.9.1
31+
license_expression: mit
32+
copyright: Copyright jsonschema-specifications project contributors
33+
attribute: yes
34+
checksum_md5: 3bc19f16b4b7bf78e337a39664d3d7ac
35+
licenses:
36+
- key: mit
37+
name: MIT License
38+
file: mit.LICENSE
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
about_resource: pydantic_core-2.41.5.tar.gz
2+
name: pydantic-core
3+
version: 2.41.5
4+
download_url: https://files.pythonhosted.org/packages/71/70/23b021c950c2addd24ec408e9ab05d59b035b39d97cdc1130e1bce647bb6/pydantic_core-2.41.5.tar.gz
5+
description: |
6+
Core functionality for Pydantic validation and serialization
7+
# pydantic-core
8+
9+
[![CI](https://github.com/pydantic/pydantic-core/workflows/ci/badge.svg?event=push)](https://github.com/pydantic/pydantic-core/actions?query=event%3Apush+branch%3Amain+workflow%3Aci)
10+
[![Coverage](https://codecov.io/gh/pydantic/pydantic-core/branch/main/graph/badge.svg)](https://codecov.io/gh/pydantic/pydantic-core)
11+
[![pypi](https://img.shields.io/pypi/v/pydantic-core.svg)](https://pypi.python.org/pypi/pydantic-core)
12+
[![versions](https://img.shields.io/pypi/pyversions/pydantic-core.svg)](https://github.com/pydantic/pydantic-core)
13+
[![license](https://img.shields.io/github/license/pydantic/pydantic-core.svg)](https://github.com/pydantic/pydantic-core/blob/main/LICENSE)
14+
15+
This package provides the core functionality for [pydantic](https://docs.pydantic.dev) validation and serialization.
16+
17+
Pydantic-core is currently around 17x faster than pydantic V1.
18+
See [`tests/benchmarks/`](./tests/benchmarks/) for details.
19+
20+
## Example of direct usage
21+
22+
_NOTE: You should not need to use pydantic-core directly; instead, use pydantic, which in turn uses pydantic-core._
23+
24+
```py
25+
from pydantic_core import SchemaValidator, ValidationError
26+
27+
28+
v = SchemaValidator(
29+
{
30+
'type': 'typed-dict',
31+
'fields': {
32+
'name': {
33+
'type': 'typed-dict-field',
34+
'schema': {
35+
'type': 'str',
36+
},
37+
},
38+
'age': {
39+
'type': 'typed-dict-field',
40+
'schema': {
41+
'type': 'int',
42+
'ge': 18,
43+
},
44+
},
45+
'is_developer': {
46+
'type': 'typed-dict-field',
47+
'schema': {
48+
'type': 'default',
49+
'schema': {'type': 'bool'},
50+
'default': True,
51+
},
52+
},
53+
},
54+
}
55+
)
56+
57+
r1 = v.validate_python({'name': 'Samuel', 'age': 35})
58+
assert r1 == {'name': 'Samuel', 'age': 35, 'is_developer': True}
59+
60+
# pydantic-core can also validate JSON directly
61+
r2 = v.validate_json('{"name": "Samuel", "age": 35}')
62+
assert r1 == r2
63+
64+
try:
65+
v.validate_python({'name': 'Samuel', 'age': 11})
66+
except ValidationError as e:
67+
print(e)
68+
"""
69+
1 validation error for model
70+
age
71+
Input should be greater than or equal to 18
72+
[type=greater_than_equal, context={ge: 18}, input_value=11, input_type=int]
73+
"""
74+
```
75+
76+
## Getting Started
77+
78+
### Prerequisites
79+
80+
You'll need:
81+
1. **[Rust](https://rustup.rs/)** - Rust stable (or nightly for coverage)
82+
2. **[uv](https://docs.astral.sh/uv/getting-started/installation/)** - Fast Python package manager (will install Python 3.9+ automatically)
83+
3. **[git](https://git-scm.com/)** - For version control
84+
4. **[make](https://www.gnu.org/software/make/)** - For running development commands (or use `nmake` on Windows)
85+
86+
### Quick Start
87+
88+
```bash
89+
# Clone the repository (or from your fork)
90+
git clone git@github.com:pydantic/pydantic-core.git
91+
cd pydantic-core
92+
93+
# Install all dependencies using uv, setup pre-commit hooks, and build the development version
94+
make install
95+
```
96+
97+
Verify your installation by running:
98+
99+
```bash
100+
make
101+
```
102+
103+
This runs a full development cycle: formatting, building, linting, and testing
104+
105+
### Development Commands
106+
107+
Run `make help` to see all available commands, or use these common ones:
108+
109+
```bash
110+
make build-dev # to build the package during development
111+
make build-prod # to perform an optimised build for benchmarking
112+
make test # to run the tests
113+
make testcov # to run the tests and generate a coverage report
114+
make lint # to run the linter
115+
make format # to format python and rust code
116+
make all # to run to run build-dev + format + lint + test
117+
```
118+
119+
### Useful Resources
120+
121+
* [`python/pydantic_core/_pydantic_core.pyi`](./python/pydantic_core/_pydantic_core.pyi) - Python API types
122+
* [`python/pydantic_core/core_schema.py`](./python/pydantic_core/core_schema.py) - Core schema definitions
123+
* [`tests/`](./tests) - Comprehensive usage examples
124+
125+
## Profiling
126+
127+
It's possible to profile the code using the [`flamegraph` utility from `flamegraph-rs`](https://github.com/flamegraph-rs/flamegraph). (Tested on Linux.) You can install this with `cargo install flamegraph`.
128+
129+
Run `make build-profiling` to install a release build with debugging symbols included (needed for profiling).
130+
131+
Once that is built, you can profile pytest benchmarks with (e.g.):
132+
133+
```bash
134+
flamegraph -- pytest tests/benchmarks/test_micro_benchmarks.py -k test_list_of_ints_core_py --benchmark-enable
135+
```
136+
The `flamegraph` command will produce an interactive SVG at `flamegraph.svg`.
137+
138+
## Releasing
139+
140+
1. Bump package version locally. Do not just edit `Cargo.toml` on Github, you need both `Cargo.toml` and `Cargo.lock` to be updated.
141+
2. Make a PR for the version bump and merge it.
142+
3. Go to https://github.com/pydantic/pydantic-core/releases and click "Draft a new release"
143+
4. In the "Choose a tag" dropdown enter the new tag `v<the.new.version>` and select "Create new tag on publish" when the option appears.
144+
5. Enter the release title in the form "v<the.new.version> <YYYY-MM-DD>"
145+
6. Click Generate release notes button
146+
7. Click Publish release
147+
8. Go to https://github.com/pydantic/pydantic-core/actions and ensure that all build for release are done successfully.
148+
9. Go to https://pypi.org/project/pydantic-core/ and ensure that the latest release is published.
149+
10. Done 🎉
150+
homepage_url: https://github.com/pydantic/pydantic-core
151+
package_url: pkg:pypi/pydantic-core@2.41.5
152+
license_expression: mit
153+
copyright: Copyright Samuel Colvin
154+
attribute: yes
155+
checksum_md5: 54a367c4549ec48a8b3a63d38e821506
156+
licenses:
157+
- key: mit
158+
name: MIT License
159+
file: mit.LICENSE
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
about_resource: typing_inspection-0.4.2-py3-none-any.whl
2+
name: typing-inspection
3+
version: 0.4.2
4+
download_url: https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl
5+
description: |
6+
Runtime typing introspection tools
7+
# typing-inspection
8+
9+
[![CI](https://img.shields.io/github/actions/workflow/status/pydantic/typing-inspection/ci.yml?branch=main&logo=github&label=CI)](https://github.com/pydantic/typing-inspection/actions?query=event%3Apush+branch%3Amain+workflow%3ACI)
10+
[![Coverage](https://coverage-badge.samuelcolvin.workers.dev/pydantic/typing-inspection.svg)](https://coverage-badge.samuelcolvin.workers.dev/redirect/pydantic/typing-inspection)
11+
[![PyPI](https://img.shields.io/pypi/v/typing-inspection.svg)](https://pypi.org/project/typing-inspection/)
12+
[![Versions](https://img.shields.io/pypi/pyversions/typing-inspection.svg)](https://github.com/pydantic/typing-inspection)
13+
[![License](https://img.shields.io/github/license/pydantic/typing-inspection.svg)](https://github.com/pydantic/typing-inspection/blob/main/LICENSE)
14+
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
15+
16+
`typing-inspection` provides tools to inspect type annotations at runtime.
17+
18+
## Installation
19+
20+
From [PyPI](https://pypi.org/project/typing-inspection/):
21+
22+
```bash
23+
pip install typing-inspection
24+
```
25+
26+
The library can be imported from the `typing_inspection` module.
27+
package_url: pkg:pypi/typing-inspection@0.4.2
28+
license_expression: mit AND unknown-license-reference
29+
copyright: Copyright typing-inspection project contributors
30+
attribute: yes
31+
checksum_md5: 245304d58de21f4f0bdd15f7ea4b0ea8
32+
licenses:
33+
- key: mit
34+
name: MIT License
35+
file: mit.LICENSE
36+
- key: unknown-license-reference
37+
name: Unknown License file reference
38+
file: unknown-license-reference.LICENSE

0 commit comments

Comments
 (0)