Release 4.4: 🌸 Quality-of-life features and optimizations
Wednesday, September 17, 2025
On this page
This release primarily includes several QoL features, performance improvements, and robustness changes. Some of the most notable changes are mentioned below.
Behind the scenes, we are also working hard towards support for the upcoming SPARQL 1.2 specification, for which we plan a new release shortly after the specification transitions to recommendation stage.
🪣 Querying over RDF/JS Datasets
For compatibility with other RDF/JS projects, Comunica already supported querying over objects implementing the RDF/JS Source interface. As of this release, objects implementing the RDF/JS DatasetCore interface are now also supported.
const bindingsStream = await myEngine.queryBindings(`SELECT * WHERE { ?s ?p ?o }`, { sources: [ myDataset ], });
For larger datasets, we still recommend using the Source
interface over the DatasetCore
,
as it allows intermediary results to be processed in a streaming manner, which will give you faster execution.
➕ Extension function pushdown
While we already had support for SPARQL extension functions, Comunica will now be aware of which extension functions are supported in remote SPARQL endpoints. If you execute a query with extension functions across one or more SPARQL endpoints, and these endpoints have support for these extension functions, Comunica will not execute these locally, but push them down to the endpoints, which will result in better performance and reduced data transfer.
🤝 Contributors
This release has been made possible thanks to the help of the following contributors (in no particular order):
Full changelog
If you want to learn more about the other changes in Comunica 4.4, check out the full changelog.