Sage-engine

Latest version: v2.3.0

Safety actively analyzes 620901 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

2.3.0

Major features

* **Support for SQLite and HBase BAckends**
* As an Embedded backend, SQLite deliver faster performance than Postgres.
* Hbase support has been tested with Watdiv10m
* **New database layout with Dictionaries**
* Postgres and SQLite are now available with dictionary support. It greatly reduces the space required to store data.
* **Preemption support improved**
* New way to support web preemption. Deliver faster performances and better ensures quantums

2.1.0

Major features

* **Add support for SPARQL [INSERT DATA](https://www.w3.org/TR/2013/REC-sparql11-update-20130321/#insertData) and [DELETE DATA](https://www.w3.org/TR/2013/REC-sparql11-update-20130321/#deleteData) queries**.
* They are sent to the server using the SPARQL 1.1 protocol and must completely run inside a quantum.
* Quads that could be processed inside the quantum will be ignored.
* Upon query completion, the SaGe server returns the set of quads that were successfully processed during the quantum. Quads that could not be processed due to an error are ignored, to avoid a crash of query execution.
* **Add support for [PostgreSQL](https://www.postgresql.org/) as a backend**. Two backends are available: `postgres` and `postgres-mvcc`, where the later rely on multi-version concurrency control to provide reads against consistent snapshots of the RDF graphs. More details on these backends are available in the technical documentation.
* **All HTTP interfaces have been unified under the [SPARQL 1.1 protocol](https://www.w3.org/TR/2013/REC-sparql11-protocol-20130321/)**. Consequently, all previous APIs have been deprecated.
* The HTTP server has been rewritten using [FastAPI](https://fastapi.tiangolo.com/) and [Uvicorn](https://www.uvicorn.org/). This new version provides cleaner errors when the API is misused and **significantly increase performance under heavy load**.
* **The SaGe Web interface has been externalized as a standalone project** called [`sage-web`](https://github.com/sage-org/sage-web). Consequently, it is no longer included with `sage-engine` and must be used separately.
* **A complete technical documentation is available** in the `docs` directory and can be built using [sphinx](http://www.sphinx-doc.org/en/master/). It describes the `sage-engine` software, how to use it, how to configure each backend and includes the complete autodoc of the `sage` package. Upon merge, this doc will be hosted on the Github page of this repo.

Minor features

* Update the syntax of YAML config files.
* The `datasets` field has been renamed to `graphs`. This change is part of a general effort to align the vocabulary used inside the package with the RDF and SPARQL specifications.
* Added the `stateless` field to switch the server between stateless and stateful mode.
* The `quota` and `max_results` can now be set to `"inf"` to use an infinite quantum and disable the limit of results sent per HTTP request, respectively. Doing so will trigger warning messages when starting the server, but it's fine if you know what you are doing 😉
* Support for RDF config files, but it is currently reserved for advanced usage of the engine.
* Increase test coverage.
* Add [type hints](https://docs.python.org/3/library/typing.html) to all functions, methods & classes in the `sage` package.
* Complete rewriting of the pydoc of all functions, methods & classes in the `sage` package.

1.1

1.0

New functionnalities

* SPARQL Unions are supported natively.
* Some SPARQL Filters are supported natively. For now, only logical expression (<, =, &&, …) are allowed.
* The Sage server API now supports plain text SPARQL queries: you can send a SPARQL query using a GET/POST request. See [the API documentation](http://sage.univ-nantes.fr/documentation) for details. You can try it using [this link](http://sage.univ-nantes.fr/sparql?query=SELECT+%3Fcc+WHERE+%7B+++%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FBarack_Obama%3E+%3Chttp%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23sameAs%3E+%3Fcc+.+%7D+&default-graph-uri=http://sage.univ-nantes.fr/sparql/sameAs).
* Basic [VoID descriptors](https://www.w3.org/TR/void/) are now generated automatically for each RDF dataset.
* Standard [JSON](https://www.w3.org/TR/2013/REC-sparql11-results-json-20130321/) and [XML](https://www.w3.org/TR/2013/REC-rdf-sparql-XMLres-20130321/) SPARQL query results format are now supported.

Internals
* New package architecture, compatible with python standards.
* HDT installation is now optional. In the future, all backends for the sage server will installed as optional depdencies.
* The time shared engine now uses [`uvloop`](https://github.com/MagicStack/uvloop), which dratically speed up query execution.
* New system to dynamically declare and load backend for the Sage server (but it lacks proper documentation).
* Updated [sage-widget](https://github.com/sage-org/sage-widget), using v2.1.1

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.