Releases: weaviate/weaviate
0.17.0 - Vector Search
Docker image/tag: semitechnologies/weaviate:0.17.0
New features
- Vector indexing at import time
When a concept is imported through a non-batch fashion, a vector-representation is created and stored in weaviate's vector db. - GQL
{ Local { Explore }}
(#888, #904)
A new GQL Field was added which allows to search for concepts rather than keywords. The request is served through weaviate's vector searching backends. (Docs not up to date yet, coming soon!) - New GQL argument
explore()
in{ Local { Get }}
(#906)
The existing{ Local { Get } }
API was extended with a newexplore()
parameter, which allows for a concept (vector-based) search in addition to the classicalwhere()
structured search
Known limitations
- Roadmap
See #907 for the road map of related features
Breaking Changes
- New esvector backend
If the new vector-based concept search should be used, a newesvector
backend is required. See thedocker-compose/runtime/docker-compose.yml
file for an example - Reimport required for Vector Creation
While the changes themselves are not breaking, vectors are currently only created at import time. There is no reindex feature yet. So we strongly recommend to setup an empty weaviate installation and reimporting all concepts when moving to0.17.x
0.16.2 - provide client ID with OIDC info
Docker image/tag: semitechnologies/weaviate:0.16.2
Fixes
- Include Client ID with OIDC info
We previously added anopenid-configuration
with a link to the configured issuer's page whenauthentication.oidc.enabled
is set totrue
. However, for clients to be able to retrieve a token they also needclient_id
information. This information is now included in the response.
0.16.1 - Bugfix: can't filter on 'uuid'
Docker image/tag: semitechnologies/weaviate:0.16.1
Fixes
- Bug: Can't filter on uuid (#880)
Previously a cryptic error (with error stack) would be shown when the user tried to set a filter on the uuid property.
0.16.0 - Set Thing/Action ID yourself
Docker image/tag: semitechnologies/weaviate:0.16.0
New features
-
Let user set UUID (#903)
Prior to this feature UUIDs would always be assigned by Weaviate. With this feature you can set UUIDs yourself. This makes importing concepts with cross-refs easier, as you don't need to catch the return value on creation to know what to reference in your cross-ref. Instead you can assign IDs yourself and prepare even the cross-references up front.For
POST /actions
andPOST /things
the uuid is validated for the correct format and that it doesn't exist yet. For batch requests (POST /batching/things
andPOST /batching/actions
) validation is far less strict. If you use batch and set IDs yourself, you must make sure that every ID is used only once. For more details, see the docs.Non-breaking implementation
Existing behavior is unchained. Simply leave theid
field empty and weaviate will assign one for you - the same way it did prior to 0.16.0
0.15.0 - Ability to add "Read only users" to admin list plugin
Docker image/tag: semitechnologies/weaviate:0.15.0
New Features
- Distinguish between admins and read-only users in authorization (#893)
This release extends the existing "AdminList" Authorization plugin with the ability to add a list ofread_only_users
. Existing functionality remains unchanged, the new feature is entirely non-breaking. This way, Authorization becomes a little more fine-grained as it is now possible to distinguish between three categories: Admins (full CRUD capabilites), Read-Only users and authenticated but entirely unauthorized users (no permissions).
0.14.6 - Present auth info in body instead
Docker image/tag: semitechnologies/weaviate:0.14.5
Fixes
- Don't redirect, show url in body
The previous release added the ability to discover auth information through the API. However, common javascript request methods such asfetch
orXMLHttpRequest
don't offer a way not to follow redirects automatically. Following them automatically lead to unexpected CORS issues in some SPA frontend applications. Instead the desired discovery URL is now presented in the message body and no302
status code is sent. This way (JS) clients can decide for themselves what to do with this particular information.
0.14.5 - Redirect to Token Issuers OIDC Discovery page
Docker image/tag: semitechnologies/weaviate:0.14.5
Note: We decided to mark this release as a patch, even though it's technically a new feature. However, since we are still at major 0, a minor release currently has big signalling effects. Since this is not a big feature, we're sneaking it into a patch
New features
- Redirect to Token Issuers OIDC Discovery page (#889)
If OIDC auth is not used, this release doesn't change any behavior. If OIDC auth is used, a request to/weaviate/v1/.well-known/openid-configuration
will redirect (302 Found
) to the configured token issuers OIDC discovery page. If no OIDC issuer is configured it will return404 Not Found
instead.
0.14.4 - Bugfix Janusgraph Filter perfomance at scale
Docker image/tag: semitechnologies/weaviate:0.14.4
Fixes
- Fix #891: Janusgraph filter queries highly inefficient at medium to large scale
We have identified that some GraphQL queries in previous versions made very inefficient use of the Elasticsearch index in the Janusgraph/Elasticsearch setup. While the index was used, it was only used for the most basic filtering, such askind==Thing
where the more fine-grade filtering, such asclass=City
orname=BestCity
was instead happening in Janusgraph itself. This very primitive search basically lead to Janusgraph querying thousands upon thousands of random entries until the desired criteria was matched. In many cases - even at relatively low scales of 50k to 100k - this lead to request timeouts.
0.14.3 - Bugfix #890
Docker image/tag: semitechnologies/weaviate:0.14.3
Fixes
- #890 Bug GQL API not present after restart when no network is configured
Prior to this version the GQL API was not available after restarting weaviate (or doing a rolling update on K8s) when no network was configured. If a network was set, the incoming pings (also triggering a rebuild) masked the error. Therefore it also wasn't caught in our test suite, which currently exclusively tests with a network. Post Mortem: Extend test suite to test multiple configurations simultaneously.
0.14.2 Architectural improvements
Docker image/tag: semitechnologies/weaviate:0.14.2
Changes
- No user-facing changes
This release reflects an overhaul of our internal architecture, moving closer to the desired microservice architecture, where the weaviate server and contextionary in-mem db can be scaled, deployed and updated independently
Requirements
- Helm chart 0.4.0+
If you are deploying weaviate with the official Helm chart, make sure you use at least chart version 0.4.0