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
45 changes: 29 additions & 16 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
## 2025-10-30 RELEASE 7.4.0

This release addresses a couple of bugs and improves the testing matrix by adding python 3.12, 3.13 and 3.14 to the test matrix.

This is also the first RDFLib release to use MkDocs for documentation.

Pull requests merged:

- chore(v7): upgrade ci and dev/test deps by @edmondchuc in [#3288](https://github.com/RDFLib/rdflib/pull/3288)
- feat: v7 mkdocs by @edmondchuc in [#3287](https://github.com/RDFLib/rdflib/pull/3287)
- fix: set changed size when iterating the store's graphs by @edmondchuc in [#3281](https://github.com/RDFLib/rdflib/pull/3281)
- lazy fix of issue pytest failure on python 3.13.8 - Removing of xfail raise restriction by @WhiteGobo in [#3275](https://github.com/RDFLib/rdflib/pull/3275)

## 2025-10-24 RELEASE 7.3.0

This release delivers several important fixes and enhancements to RDFLib’s Dataset implementation, resolving long-standing issues and improving consistency across serialization and SPARQL operations. It also introduces new deprecation notices for certain Dataset methods and attributes, which will be removed in the next major release. In addition, this version includes a range of improvements to SPARQL result parsing, typing, and literal handling.
Expand Down Expand Up @@ -33,22 +46,22 @@ This release delivers several important fixes and enhancements to RDFLib’s Dat

Pull requests merged:

- feat: add Dataset `__iadd__` support by @edmondchuc in [#3268](https://api.github.com/repos/RDFLib/rdflib/pulls/3268)
- fix: RecursiveSerializer- outputs undeclared prefix for predicates that contains the base as a substring by @edmondchuc in [#3267](https://api.github.com/repos/RDFLib/rdflib/pulls/3267)
- fix: allow static type checkers to infer term's `__new__` type by @edmondchuc in [#3266](https://api.github.com/repos/RDFLib/rdflib/pulls/3266)
- fix: SPARQL Update inserts into the default graph by @edmondchuc in [#3265](https://api.github.com/repos/RDFLib/rdflib/pulls/3265)
- chore: add deprecation notice to Dataset methods and attributes by @edmondchuc in [#3264](https://api.github.com/repos/RDFLib/rdflib/pulls/3264)
- fix: Dataset.parse now returns Self by @edmondchuc in [#3263](https://api.github.com/repos/RDFLib/rdflib/pulls/3263)
- fix: dataset nquads serialization including RDFLib internal default graph identifier by @edmondchuc in [#3262](https://api.github.com/repos/RDFLib/rdflib/pulls/3262)
- patch for reevaluation in sparql modify between update loops. with test by @WhiteGobo in [#3261](https://api.github.com/repos/RDFLib/rdflib/pulls/3261)
- feat: change dataset's default serialize format to trig by @edmondchuc in [#3260](https://api.github.com/repos/RDFLib/rdflib/pulls/3260)
- feat: allow adding graphs backed by different stores to the same dataset by @edmondchuc in [#3259](https://api.github.com/repos/RDFLib/rdflib/pulls/3259)
- fix(v7): remove Literal.toPython date conversion for gYear/gYearMonth (#3115) by @edmondchuc in [#3258](https://api.github.com/repos/RDFLib/rdflib/pulls/3258)
- sparqls optionals clause can now bind variables. with test. issue 2957 by @WhiteGobo in [#3247](https://api.github.com/repos/RDFLib/rdflib/pulls/3247)
- fix: skip prefix generation for predicates corresponding to base namespace by @edmondchuc in [#3244](https://api.github.com/repos/RDFLib/rdflib/pulls/3244)
- Run the example queries agains the local fuseki by @white-gecko in [#3240](https://api.github.com/repos/RDFLib/rdflib/pulls/3240)
- Adjust the type hint for Graph open to reflect a SPARQLUpdateStore configuration by @white-gecko in [#3239](https://api.github.com/repos/RDFLib/rdflib/pulls/3239)
- SPARQL result parsing by @white-gecko in [#2796](https://api.github.com/repos/RDFLib/rdflib/pulls/2796)
- feat: add Dataset `__iadd__` support by @edmondchuc in [#3268](https://github.com/RDFLib/rdflib/pull/3268)
- fix: RecursiveSerializer- outputs undeclared prefix for predicates that contains the base as a substring by @edmondchuc in [#3267](https://github.com/RDFLib/rdflib/pull/3267)
- fix: allow static type checkers to infer term's `__new__` type by @edmondchuc in [#3266](https://github.com/RDFLib/rdflib/pull/3266)
- fix: SPARQL Update inserts into the default graph by @edmondchuc in [#3265](https://github.com/RDFLib/rdflib/pull/3265)
- chore: add deprecation notice to Dataset methods and attributes by @edmondchuc in [#3264](https://github.com/RDFLib/rdflib/pull/3264)
- fix: Dataset.parse now returns Self by @edmondchuc in [#3263](https://github.com/RDFLib/rdflib/pull/3263)
- fix: dataset nquads serialization including RDFLib internal default graph identifier by @edmondchuc in [#3262](https://github.com/RDFLib/rdflib/pull/3262)
- patch for reevaluation in sparql modify between update loops. with test by @WhiteGobo in [#3261](https://github.com/RDFLib/rdflib/pull/3261)
- feat: change dataset's default serialize format to trig by @edmondchuc in [#3260](https://github.com/RDFLib/rdflib/pull/3260)
- feat: allow adding graphs backed by different stores to the same dataset by @edmondchuc in [#3259](https://github.com/RDFLib/rdflib/pull/3259)
- fix(v7): remove Literal.toPython date conversion for gYear/gYearMonth (#3115) by @edmondchuc in [#3258](https://github.com/RDFLib/rdflib/pull/3258)
- sparqls optionals clause can now bind variables. with test. issue 2957 by @WhiteGobo in [#3247](https://github.com/RDFLib/rdflib/pull/3247)
- fix: skip prefix generation for predicates corresponding to base namespace by @edmondchuc in [#3244](https://github.com/RDFLib/rdflib/pull/3244)
- Run the example queries agains the local fuseki by @white-gecko in [#3240](https://github.com/RDFLib/rdflib/pull/3240)
- Adjust the type hint for Graph open to reflect a SPARQLUpdateStore configuration by @white-gecko in [#3239](https://github.com/RDFLib/rdflib/pull/3239)
- SPARQL result parsing by @white-gecko in [#2796](https://github.com/RDFLib/rdflib/pull/2796)

## 2025-09-19 RELEASE 7.2.1

Expand Down
4 changes: 2 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ authors:
- family-names: "Stuart"
given-names: "Veyndan"
title: "RDFLib"
version: 7.3.0
date-released: 2025-10-24
version: 7.4.0
date-released: 2025-10-30
url: "https://github.com/RDFLib/rdflib"
doi: 10.5281/zenodo.6845245
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ Help with maintenance of all of the RDFLib family of packages is always welcome
## Versions & Releases

* `main` branch in this repository is the current unstable release - version 8 alpha
* `7.4.0` a few small fixes, add test matrix for active python versions, and move v7 documentation to MkDocs
* `7.3.0` many fixes and usability improvements, particularly for the Dataset class. See changelog for details
* `7.2.1` tiny clean up release, relaxes Python version requirement
* `7.2.0` general fixes and usability improvements, see changelog for details
Expand Down
2 changes: 1 addition & 1 deletion admin/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ To make a release of RDFLib, see the [Developer's Guide](https://rdflib.readthed
An alternative to the `get_merged_prs.py` script is to use the GitHub CL to get the list of PRs and pipe it into the `pr_markdown.py` script. The following command retrieves the list of PRs merged since the last release (`2025-09-19`) from a particular branch (`7.x`).

```bash
gh api '/search/issues?q=repo:rdflib/rdflib+is:pr+is:merged+base:7.x+merged:>2025-09-19&per_page=100' | jq '{total_count, incomplete_results, items: [.items[] | {number, title, pull_request_merged_at: .pull_request.merged_at, pull_request_url: .pull_request.url, username: .user.login}]}' | poetry run python admin/pr_markdown.py
gh api '/search/issues?q=repo:rdflib/rdflib+is:pr+is:merged+base:7.x+merged:>2025-10-24&per_page=100' | jq '{total_count, incomplete_results, items: [.items[] | {number, title, pull_request_merged_at: .pull_request.merged_at, pull_request_url: .pull_request.html_url, username: .user.login}]}' | poetry run python admin/pr_markdown.py
```
Empty file removed docs/apidocs/examples.rst
Empty file.
Empty file removed docs/conf.py
Empty file.
14 changes: 7 additions & 7 deletions docs/developers.md
Original file line number Diff line number Diff line change
Expand Up @@ -327,13 +327,13 @@ RDFLib 5.0.0 maintained compatibility with Python versions 2.7, 3.4, 3.5, 3.6, 3

Create a release-preparation pull request with the following changes:

* Updated version and date in `CITATION.cff`.
* Updated copyright year in the `LICENSE` file.
* Updated copyright year in the `docs/conf.py` file.
* Updated main branch version and current version in the `README.md` file.
* Updated version in the `pyproject.toml` file.
* Updated `__date__` in the `rdflib/__init__.py` file.
* Accurate `CHANGELOG.md` entry for the release.
* Updated version and date in [`CITATION.cff`](../CITATION.cff).
* Updated copyright year in the [`LICENSE`](../LICENSE) file.
* Updated copyright year in the [`mkdocs.yml`](../mkdocs.yml) file.
* Updated main branch version and current version in the [`README.md`](../README.md) file.
* Updated version in the [`pyproject.toml`](../pyproject.toml) file.
* Updated `__date__` in the [`rdflib/__init__.py`](../rdflib/__init__.py) file.
* Updated [`CHANGELOG.md`](../CHANGELOG.md) entry for the release with admin tools as described in [`admin/README.md`](../admin/README.md).

Once the PR is merged, switch to the main branch, build the release and upload it to PyPI:

Expand Down
Empty file removed docs/developers.rst
Empty file.
Empty file removed docs/plugin_stores.rst
Empty file.
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "rdflib"
version = "7.4.0-a0"
version = "7.4.0"
description = """RDFLib is a Python library for working with RDF, \
a simple yet powerful language for representing information."""
authors = ["Daniel 'eikeon' Krech <eikeon@eikeon.com>"]
Expand Down
2 changes: 1 addition & 1 deletion rdflib/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
__docformat__ = "restructuredtext en"

__version__: str = _DISTRIBUTION_METADATA["Version"]
__date__ = "2025-10-24"
__date__ = "2025-10-30"

__all__ = [
"URIRef",
Expand Down
Loading