mirror of
https://github.com/lancedb/lancedb.git
synced 2026-11-13 22:26:53 +00:00
feat!: accept only $ as the identifier delimiter
The delimiter setting comes from the Lance REST catalog standard, which carries it so other catalogs can adopt the identifier grammar. LanceDB services split on `$` and nothing else, so a configuration naming another value produced identifiers no service would take apart the way the caller meant. `ClientConfig::id_delimiter` stays, and is now refused unless it is `$`, reported where the configuration was written. Fixing the delimiter removes what the alternative needed: the `?delimiter=` query parameter, the per-client delimiter field, and the refusal of a component containing the delimiter -- `$` is outside the character set every object name admits, so no validated component can hold one. BREAKING CHANGE: a client configured with an `id_delimiter` other than `$` is now refused at construction. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UfmeJ533rQDnPBkMtjerV6
This commit is contained in:
co-authored by
Claude Opus 5
parent
fa24bf322c
commit
5ba2acf730
@@ -166,7 +166,10 @@ class ClientConfig:
|
||||
extra_headers: Optional[dict]
|
||||
Additional headers to include in requests.
|
||||
id_delimiter: Optional[str]
|
||||
The delimiter to use when constructing object identifiers.
|
||||
The delimiter joining a namespace path and a name into one object
|
||||
identifier. ``"$"`` is the only supported value, and leaving this
|
||||
unset is how to get it; anything else is rejected when the connection
|
||||
is created.
|
||||
tls_config: Optional[TlsConfig]
|
||||
TLS/mTLS configuration for secure connections.
|
||||
header_provider: Optional[HeaderProvider]
|
||||
|
||||
Reference in New Issue
Block a user