Skip to content

Commit 3a19ce7

Browse files
authored
Support new Weaviate 1.29 features (#261)
* Update protos to use latest available on `main` * Hook up new grpc backend, fix aggregate.hybrid bug, update CI images * Fix npm run docs script * Remove redundant file * Fix unit tests * Rollback to 1.28.2 in CI due to testcontainers issue * Skip test in <1.26 due to missing maxVectorDistance * Update swagger stubs and impl accordingly * Replace testcontainers rbac tests with compose stack * Add implementation for aggregate groupby * Change `as any` to `as Record<string, any>` for a narrower condition * Several refactorings: - Split `roles` with `users` - make `actions` an array inside `permissions` - rename several methods to be aligned with py client in a non-BC way - only run roles/users tests for `>1.29` due to no BC * Respond to review comments * Refactor RBAC to use new CRUD roles actions, update CI * Update roles API to use latest schema and align with recent py changes * Update CI image * Update CI image to release 1.29
1 parent aa1bb75 commit 3a19ce7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+8090
-3353
lines changed

.github/workflows/main.yaml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,11 @@ on:
88

99
env:
1010
WEAVIATE_124: 1.24.26
11-
WEAVIATE_125: 1.25.28
12-
WEAVIATE_126: 1.26.13
13-
WEAVIATE_127: 1.27.9
14-
WEAVIATE_128: 1.28.2
11+
WEAVIATE_125: 1.25.30
12+
WEAVIATE_126: 1.26.14
13+
WEAVIATE_127: 1.27.11
14+
WEAVIATE_128: 1.28.4
15+
WEAVIATE_129: 1.29.0
1516

1617
jobs:
1718
checks:
@@ -39,9 +40,10 @@ jobs:
3940
{ node: "22.x", weaviate: $WEAVIATE_125},
4041
{ node: "22.x", weaviate: $WEAVIATE_126},
4142
{ node: "22.x", weaviate: $WEAVIATE_127},
42-
{ node: "18.x", weaviate: $WEAVIATE_128},
43-
{ node: "20.x", weaviate: $WEAVIATE_128},
44-
{ node: "22.x", weaviate: $WEAVIATE_128}
43+
{ node: "22.x", weaviate: $WEAVIATE_128},
44+
{ node: "18.x", weaviate: $WEAVIATE_129},
45+
{ node: "20.x", weaviate: $WEAVIATE_129},
46+
{ node: "22.x", weaviate: $WEAVIATE_129}
4547
]
4648
steps:
4749
- uses: actions/checkout@v3

ci/compose.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,5 @@ function compose_down_all {
2121
}
2222

2323
function all_weaviate_ports {
24-
echo "8078 8080 8081 8082 8083 8085 8086 8087 8088 8089 8090"
24+
echo "8078 8080 8081 8082 8083 8085 8086 8087 8088 8089 8090 8091"
2525
}

ci/docker-compose-rbac.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
version: '3.4'
3+
services:
4+
weaviate-rbac:
5+
command:
6+
- --host
7+
- 0.0.0.0
8+
- --port
9+
- '8085'
10+
- --scheme
11+
- http
12+
- --write-timeout=600s
13+
image: semitechnologies/weaviate:${WEAVIATE_VERSION}
14+
ports:
15+
- 8091:8085
16+
- 50062:50051
17+
restart: on-failure:0
18+
environment:
19+
ENABLE_MODULES: "generative-dummy,reranker-dummy"
20+
PERSISTENCE_DATA_PATH: "./data-weaviate-0"
21+
CLUSTER_IN_LOCALHOST: "true"
22+
CLUSTER_GOSSIP_BIND_PORT: "7100"
23+
CLUSTER_DATA_BIND_PORT: "7101"
24+
RAFT_BOOTSTRAP_EXPECT: "1"
25+
AUTHENTICATION_APIKEY_ENABLED: "true"
26+
AUTHENTICATION_APIKEY_ALLOWED_KEYS: 'viewer-key,editor-key,admin-key,custom-key'
27+
AUTHENTICATION_APIKEY_USERS: 'viewer-user,editor-user,admin-user,custom-user'
28+
AUTHORIZATION_RBAC_ENABLED: "true"
29+
AUTHORIZATION_ADMIN_USERS: "admin-user"
30+
AUTHORIZATION_VIEWER_USERS: "viewer-user"
31+
...

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@
3333
"format": "prettier --write --no-error-on-unmatched-pattern '**/*.{ts,js}' '!dist/**'",
3434
"format:check": "prettier --check --no-error-on-unmatched-pattern '**/*.{ts,js}' '!dist/**'",
3535
"format:dist": "prettier --write --no-error-on-unmatched-pattern '**/dist/**/*.{ts,js}'",
36-
"schema": "./tools/refresh_schema.sh",
37-
"protos": "./tools/refresh_protos.sh",
36+
"refresh-schema": "./tools/refresh_schema.sh",
37+
"refresh-protos": "./tools/refresh_protos.sh",
3838
"docs": "typedoc --plugin typedoc-plugin-extras --favicon public/favicon.ico --out docs/ src/"
3939
},
4040
"repository": {

0 commit comments

Comments
 (0)