Releases: typedb/typedb-driver-python
TypeDB Client Python 2.9.0
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.9.0
New Features
- Extend concept type API
We catch up client-nodejs with the Java client version 2.9.0, which exposes an extended set of APIs on Type
s.
We implement:
ThingType.get_owns_explicit()
andThingType.get_owns_overridden
AttributeType.get_owners_explicit()
ThingType.get_plays_explicit()
ThingType.get_plays_overridden()
RelationType.get_relates_explicit()
andRelationType.get_relates_overridden()
Bugs Fixed
Code Refactors
Other Improvements
-
bump VERSION to 2.9.0
-
Upgrade to Bazel 5
Make the repository use Bazel 5. Bazel 4 and below only work with the deprecated Python 2, which is no longer included in some operating systems such as the latest Mac OS X.
TypeDB Client Python 2.8.0
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.8.0
New Features
Bugs Fixed
Code Refactors
- Query iterator only throws exeption once
Revert previous changes from #247 and #248, which made query queues and iterators throw the same error idempotently. However, this goes counter to standard usage of iterators and queues, which are not meant to behave idempotently (each item is only returned once, and if they have an error they should no longer be used).
Other Improvements
-
bump VERSION to 2.8.0
-
Bazel Cache is disabled temporarily until SSL is fixed
-
remove dead code
TypeDB Client Python 2.6.3
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.6.3
New Features
Bugs Fixed
- Don't delete response collectors in a transaction
We no longer delete response collectors in a transaction after receiving a response to a "single" request, or receiving a "DONE" message in a stream. This fixes a possible error when loading 50+ answers in one query and then performing a second query.
Code Refactors
Other Improvements
- Re-enable cluster tests
TypeDB Client Python 2.6.2
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.6.2
New Features
Bugs Fixed
- Move session pulse transmitter to the Client
Instead of launching a background thread in each session to send pulses, we now use a single thread in the Client to send pulses for all of its sessions. This allows the client to handle a much larger number of sessions than it previously could.
Code Refactors
- Store error on transaction stream
We store any exceptions received against the transaction stream (as well as query streams) in order to propagate the error to any future transaction operations, not just open query streams.
Other Improvements
-
Update version to 2.6.2
-
re-enable cluster tests
TypeDB Client Python 2.6.1
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.6.1
New Features
Bugs Fixed
Code Refactors
- Refactor behaviour utils
To match the other clients, we create a separate utils package for behaviour tests, rather than having a util file at the root of the behaviour tests.
Other Improvements
-
Update @vaticle_dependencies and fix build
-
disable cluster tests and update VERSION to 2.6.1
-
Errors propagate through transaction
We align with Client NodeJS version 2.6.1 (mostly the work in typedb/typedb-driver-nodejs#197), which implements a better error propagation mechanism: when an exception occurs, we store it against all the transaction's active transmit queues to retrieve whenever the user tries to perform an operation in the transaction anywhere.
- reenable cluster tests
TypeDB Client Python 2.6.0
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.6.0
New Features
- Implement and test transaction timeouts
We implement options for transaction timeout configuration (typedb/typedb#6487). We also add BDD implementation for new steps required to test transaction timeout and configuring transaction options.
Bugs Fixed
Code Refactors
Other Improvements
-
bump VERSION
-
Update build jobs to use Ubuntu 21.04
-
Revert "Update build jobs to use Ubuntu 21.04"
-
Update build jobs to use Ubuntu 21.04
-
Update @vaticle_dependencies and the release notes creation script
TypeDB Client Python 2.5.0
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.5.0
New Features
- Enable faster authentication with "user token" mechanism
Authenticating a user by verifying their password introduces a significant overhead, which comes from the fact that the password is hashed with cryptographic hash function. In effect, opening a new session or transaction becomes much slower.
We've now improved the speed of user-authentication by introducing a mechanism for verifying user credential with cheap "user token" rather than password.
Bugs Fixed
-
Fix user authentication token not being sent to the server
We've fixed two bugs regarding the user authentication token. -
Implement missing request builder implementation
We've implemented the request builder for authentication token -
Implement missed token renewal step in Cluster client
We have fixed the bug where some RPC methods in Cluster client does not perform token renewal step.
Code Refactors
- Remove connection factory classes
We've renamed the terminology 'name' to 'username' since it's more appropriate.
We've also simplified the architecture of both Core and ClusterServer clients by moving thechannel
andstub
creation logic from the connection factory classes directly into the client classes.
Other Improvements
TypeDB Client Python 2.4.0
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.4.0
New Features
Bugs Fixed
- Fix incorrect usages of TypeDBClientException
We fixed incorrect usages of TypeDBClientException leading to unhelpful error messages in some scenarios.
Code Refactors
Other Improvements
TypeDB Client Python 2.2.0
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.2.0
New Features
- Add concept cast methods, and add all Concept types to typedb.client
We added methods to cast concept types to each other: for exampleconcept.as_attribute()
will now cast aConcept
to anAttribute
, throwing an exception if it is not actually anAttribute
. This aids type checking systems.
Also, all theConcept
types are now importable fromtypedb.client
directly.
Bugs Fixed
Code Refactors
Other Improvements
TypeDB Client Python 2.1.1
PyPI package: https://pypi.org/project/typedb-client
Documentation: https://docs.vaticle.com/docs/client-api/python
Distribution
Available through https://pypi.org
pip install typedb-client==2.1.1
New Features
Bugs Fixed
Code Refactors
- Implement cluster authentication
Implemented authentication secure channels, and user management for typedb cluster.
SSL is now required for connections to TypeDB cluster , because sending username/passwords over plaintext connections is disallowed by gRPC.