Skip to content

Commit dc45644

Browse files
Prepare release 3.7.0 (#827)
## Usage and product changes Bump version & prepare release notes.
1 parent 37e9c8c commit dc45644

File tree

3 files changed

+84
-19
lines changed

3 files changed

+84
-19
lines changed

RELEASE_NOTES_LATEST.md

Lines changed: 82 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,18 @@ Documentation: https://typedb.com/docs/core-concepts/drivers/overview
55
#### Rust driver
66

77
Available from https://crates.io/crates/typedb-driver
8-
Documentation: https://typedb.com/docs/drivers/rust/overview
8+
Documentation: https://typedb.com/docs/reference/typedb-grpc-drivers/rust/
99

1010

1111
```sh
12-
cargo add [email protected]-rc4
12+
1313
```
1414

1515

1616
### Java driver
1717

18-
Available through [https://repo.typedb.com](https://cloudsmith.io/~typedb/repos/public-release/packages/detail/maven/typedb-driver/3.7.0-rc4/a=noarch;xg=com.typedb/)
19-
Documentation: https://typedb.com/docs/drivers/java/overview
18+
Available through [https://repo.typedb.com](https://cloudsmith.io/~typedb/repos/public-release/packages/detail/maven/typedb-driver/3.7.0/a=noarch;xg=com.typedb/)
19+
Documentation: https://typedb.com/docs/reference/typedb-grpc-drivers/java/
2020

2121
```xml
2222
<repositories>
@@ -29,60 +29,125 @@ Documentation: https://typedb.com/docs/drivers/java/overview
2929
<dependency>
3030
<groupid>com.typedb</groupid>
3131
<artifactid>typedb-driver</artifactid>
32-
<version>3.7.0-rc4</version>
32+
<version>3.7.0</version>
3333
</dependency>
3434
</dependencies>
3535
```
3636

3737
### Python driver
3838

3939
PyPI package: https://pypi.org/project/typedb-driver
40-
Documentation: https://typedb.com/docs/drivers/python/overview
40+
Documentation: https://typedb.com/docs/reference/typedb-grpc-drivers/python/
4141

4242
Available through https://pypi.org
4343

44-
[//]: # (TODO: Python's RC/Alpha/Beta versions are formatted differently. Don't foget to update manually until we make an automation)
4544
```
46-
pip install typedb-driver==3.7.0-rc4
45+
pip install typedb-driver==3.7.0
4746
```
4847

4948
### HTTP Typescript driver
5049

51-
[//]: # (TODO: Update docs link)
52-
5350
NPM package: https://www.npmjs.com/package/@typedb/driver-http
54-
Documentation: https://typedb.com/docs/drivers/
51+
Documentation: https://typedb.com/docs/reference/typedb-http-drivers/typescript/
5552

5653
```
57-
npm install @typedb/[email protected]-rc4
54+
npm install @typedb/[email protected]
5855
```
5956

6057
### C driver
6158

62-
Compiled distributions comprising headers and shared libraries available at: https://cloudsmith.io/~typedb/repos/public-release/packages/?q=name:^typedb-driver-clib+version:3.7.0-rc4
59+
Compiled distributions comprising headers and shared libraries available at: https://cloudsmith.io/~typedb/repos/public-release/packages/?q=name:^typedb-driver-clib+version:3.7.0
6360

6461

6562
## New Features
63+
- **Implement GRPC protocol version extensions**
64+
We introduce the "extension" field into the protocol. This introduces a finer notion of "compatibility" and makes the protocol aware of it. A driver-server pair is compatible if they are on the same protocol version, and the server extension version is atleast that of the client.
65+
66+
67+
- **Implement analyze endpoint in GRPC**
68+
Implements analyze endpoints in all GRPC drivers, as well as aligning the HTTP response format with that used by GRPC.
69+
Analyze allows queries to be parsed & type-checked without executing them against the data.
70+
We also introduce an optional query structure into the GRPC response for query pipelines.
71+
6672

6773

6874
## Bugs Fixed
6975
- **Fix python Value equality**
7076
Fixes the implementation of `__eq__` in `_Value` to use `try_get_value_type` instead of the non-existent `get_value_type`
7177

7278

79+
- **Fix how we return involved conjunctions**
80+
Fix a bug where we used the wrong index when decoding involved_conjunctions.
81+
82+
83+
- **Use naiive date in Python**
84+
85+
Python `Date` objects were timezone-aware, which means that it was possible to insert, for example `2010-10-10` (recorded on the server-side in UTC :00-00-00), and read it back as `2010-10-09` when in a negative timezone relative to UTC!
86+
87+
We now parse the date received from the server naiively as a datetime, using UTC as the set point, and extract the naiive date from there.
88+
89+
- **Fix HTTP/TS driver trying to deploy as a private package**
90+
91+
Fix a bug where the HTTP/TS driver was trying to deploy as a private package
92+
93+
94+
7395

7496
## Code Refactors
97+
- **Introduce hash, equality, formatting methods for certain analyze types**
98+
**Breaking changes from the earlier release candidates (till 3.7.0-rc3)**
99+
* Refactors the analyze types to introduce Variable and ConjunctionID wrappers. All signatures using the jni types directly change.
100+
* Refactors the ConstraintVertex types and underlying methods.
101+
102+
Added features:
103+
* `ConstraintVertex` now implements equality, hash and formatting.
104+
* `Constraint` can also be formatted.
105+
* Introduces `NamedRole` across the FFI.
106+
* Introduces `ConjunctionID`, `Variable` classes instead of reusing the SWIG generated types directly
107+
- This is needed to implement equality & hash
108+
109+
110+
- **Re-export native Variable, ConjunctionID from typedb.analyze in python**
111+
Re-export variable from typedb.analyze in python
112+
75113

76114

77-
## Other Improvements
78115
- **Align HTTP driver analyze type names with rust**
79116
Aligns HTTP driver analyze type names with rust. Any code using the driver will break. Major changes are:
80117
* QueryConstraint* is renamed to Constraint*
81118
* QueryVertex* is renamed to ConstraintVertex*
82-
119+
83120
The older names are preserved in `legacy.ts` but not exported to make updating to the new names easier.
84-
TypeDB 3.7.0 introduces a few minor breaking changes in the HTTP API.
121+
TypeDB 3.7.0 introduces a few minor breaking changes in the HTTP API.
85122
* Expression constraints now return a single variable instead of a list of variables.
86123
* The structure returned with a ConceptRowResponse has the `blocks` field renamed to `conjunctions`
87-
For applications which must operate with both versions before and after 3.7.0, certain types are exported with 'Legacy' as suffix.
124+
For applications which must operate with both versions before and after 3.7.0, certain types are exported with 'Legacy' as suffix.
125+
126+
127+
## Other Improvements
128+
129+
- **Make HTTP/TS driver use the "@typedb" org in NPM registry**
130+
131+
The HTTP/TS driver has been moved - it was previously `typedb-driver-http`; now it is `@typedb/driver-http`.
132+
133+
134+
- **Prepare release 3.7.0-rc4**
135+
Update release notes & bump version to 3.7.0-rc4
136+
137+
138+
- **Accept include_query_structure in python query option constructor**
139+
Adds the `include_query_structure` flag as a keyword-argument to the python QueryOption constructor.
140+
141+
142+
- **Add isLegacyResponse method to http driver**
143+
Adds a `isLegacyResponse` method to the http-ts driver to help differentiate between responses returned by servers versioned < 3.7.0 and those versioned >= 3.7.0
144+
145+
146+
- **Fix wrong array of union type**
147+
Fix wrong array of union type in legacy types.
148+
149+
- **Fix server flag in Windows assembly tests**
150+
151+
- **Update c driver tests to 3.x and enable deployment**
152+
Update c driver tests to 3.x and enable deployment
88153

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.7.0-rc4
1+
3.7.0

dependencies/typedb/repositories.bzl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def typedb_protocol():
2828
git_repository(
2929
name = "typedb_protocol",
3030
remote = "https://github.com/typedb/typedb-protocol",
31-
tag = "3.7.0-rc0", # sync-marker: do not remove this comment, this is used for sync-dependencies by @typedb_protocol
31+
tag = "3.7.0", # sync-marker: do not remove this comment, this is used for sync-dependencies by @typedb_protocol
3232
)
3333

3434
def typedb_behaviour():

0 commit comments

Comments
 (0)