Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
459 commits
Select commit Hold shift + click to select a range
88d4b14
fix(core): validate CPU/IO env vars with a diagnosable error (#7856)
LuciferYang Jul 27, 2026
b29e602
fix(core): bound SlotBackoff retry sleeps and fix slot overflow (#7883)
LuciferYang Jul 27, 2026
e98930a
feat(python): expose LABEL_LIST segment index build (#7884)
ddupg Jul 28, 2026
ccc6dd6
perf: improve performance of CandidateBin.split_for_size (#8000)
fangbo Jul 28, 2026
e428837
docs: define legacy compatibility boundaries (#8039)
Xuanwo Jul 28, 2026
9bdcd80
refactor(fts): separate document identity from row addresses (#7863)
Xuanwo Jul 28, 2026
9509a44
fix(index): make vector append segment-set-native (#8047)
Xuanwo Jul 28, 2026
5955b4f
fix(arrow): preserve all-null struct validity during merge (#8049)
mmatczuk Jul 28, 2026
bcf51b1
perf(index): list index segment files concurrently when committing se…
xloya Jul 28, 2026
fc12913
feat(namespace): idempotent create_table_version with strict CAS and …
XuQianJin-Stars Jul 29, 2026
3561bbb
feat: introduce exact file format identity and persisted codecs (#7879)
Xuanwo Jul 29, 2026
483df76
perf(cache)!: use fixed-size cache keys (#7878)
Ali2Arslan Jul 29, 2026
465557a
ci: build Linux Python wheel once (#8062)
Xuanwo Jul 29, 2026
ca8803d
test: lock exact file-version wire contracts (#8019)
Xuanwo Jul 29, 2026
ea231eb
fix(io): stabilize wrapper identity in object store cache (#8068)
Xuanwo Jul 29, 2026
0205548
fix(blob): preserve null and empty values across reads and compaction…
Xuanwo Jul 29, 2026
deaf5fe
fix(index): prune stale index coverage during rebase (#8011)
ddupg Jul 29, 2026
d8c36df
fix(fts): propagate nested multimatch limits (#8073)
BubbleCal Jul 29, 2026
c164cdf
chore: release beta version 10.0.0-beta.7
Jul 29, 2026
11f3ac9
perf(encoding): avoid inline bitpacking input copy (#7696)
u70b3 Jul 29, 2026
40ab435
feat(python): add Pydantic model instance auto-conversion and from_py…
vinaysurtani Jul 29, 2026
389fb70
refactor: make v1 the canonical legacy file owner (#8020)
Xuanwo Jul 29, 2026
261ca04
refactor(index): remove dead segment commit branch (#7971)
ddupg Jul 30, 2026
5ec11ca
ci: shard Rust coverage tests (#8079)
Xuanwo Jul 30, 2026
eb2ecb5
refactor(encoding): pass mini-block compression context (#8038)
Xuanwo Jul 30, 2026
2cfe933
refactor: make encoding mechanisms version-free (#8021)
Xuanwo Jul 30, 2026
07aa35d
perf: avoid cloning every fragment descriptor in take and FTS plannin…
LuQQiu Jul 30, 2026
02bd44a
fix(index): rebind vector readers to current object store (#7944)
u70b3 Jul 30, 2026
ee0a60d
refactor: add exact current-format writers (#8022)
Xuanwo Jul 31, 2026
55d90b9
chore: bump main to 10.1.0-beta.0
Jul 31, 2026
18d36a2
feat(fts): add composable scorer core for multimatch (#8092)
BubbleCal Jul 31, 2026
c970742
feat(java): expose fragment statics through java blocking dataset (#8…
zhangyue19921010 Jul 31, 2026
087cb90
perf: skip index metadata deep clone and compare when no vector infer…
LuQQiu Jul 31, 2026
662659f
feat(fts): compose boolean and phrase scorers (#8093)
BubbleCal Jul 31, 2026
643d24f
feat(python): expose max_source_fragments in compact_files (#8116)
zhangyue19921010 Jul 31, 2026
ab268ba
fix: fall back to AVX2 f16 kernels on AVX-512 CPUs (#7428)
paramt Jul 31, 2026
f43749f
feat(python): expose file size from LanceFileWriter (#7876)
FANNG1 Jul 31, 2026
fa07229
feat(java): add OpenTelemetry metrics bridge (#8064)
yanghua Jul 31, 2026
68c2171
fix(datagen): make default temporal ranges deterministic (#8121)
westonpace Jul 31, 2026
20c7378
refactor: activate exact current-format writers (#8023)
Xuanwo Jul 31, 2026
68f4d4c
chore: release beta version 10.1.0-beta.1
Jul 31, 2026
729a588
fix: recognize own commit on conflict and avoid deleting committed ar…
jackye1995 Jul 31, 2026
725f587
test(python): add merge_insert benchmarks to ci_benchmarks (#8052)
wjones127 Jul 31, 2026
1512594
fix(index): keep address-domain indices off replaced fragments (#8084)
wjones127 Jul 31, 2026
85621f3
test(python): add data overlay benchmark suite (#7544)
wjones127 Jul 31, 2026
b0b631e
feat(cache): support register and switch pluggable cache backend (#7683)
yanghua Jul 31, 2026
6027511
fix(index): compare Hamming IVF centroids during merge (#8132)
jackye1995 Aug 1, 2026
eda7952
chore(deps): upgrade OpenDAL to 0.58 (#7823)
Xuanwo Aug 1, 2026
b0d063f
feat(fts): compose boosted compound scorers (#8094)
BubbleCal Aug 1, 2026
7893bb7
feat(java): expose index build progress callbacks (#8090)
hfutatzhanghb Aug 1, 2026
74bff74
feat(fts): export CompoundQueryExec and support an injected base scor…
LuQQiu Aug 1, 2026
fc95ba8
feat(goosefs): implement safe commit with ConditionalPutCommitHandler…
XuQianJin-Stars Aug 1, 2026
4a54e5d
perf(index): skip the write-only distance column when loading HNSW pa…
wombatu-kun Aug 1, 2026
94cca93
chore: release beta version 10.1.0-beta.2
Aug 1, 2026
a778c59
fix(encoding): bounds-check the length prefix in VariableFullZipDecod…
professor-moody Aug 2, 2026
d644e7a
fix(encoding): reject out-of-bounds variable-width offsets on decode …
Xuanwo Aug 2, 2026
499045f
perf(fts): pre-load doc lengths in parallel on cold deferred search p…
westonpace Aug 2, 2026
b10fcfb
chore(index): remove unused GraphBuilderStats (#8141)
wombatu-kun Aug 2, 2026
4364f07
fix: preserve row address filters with stable row ids (#8145)
lance-gatekeeper[bot] Aug 3, 2026
236e3c8
fix: preserve schema metadata precedence on merge (#8160)
lance-gatekeeper[bot] Aug 3, 2026
1799271
feat(index): stop HNSW greedy descent before level 0 (#8035)
u70b3 Aug 3, 2026
90d8e02
fix(python): preserve commit handler exceptions (#8162)
lance-gatekeeper[bot] Aug 3, 2026
5d1f900
fix(cache): deduplicate deep size accounting (#8159)
lance-gatekeeper[bot] Aug 3, 2026
d35a232
perf(fts): bound compound score-floor tie buffering (#8161)
BubbleCal Aug 3, 2026
4d7be94
fix(encoding): reject invalid miniblock row counts (#8173)
lance-gatekeeper[bot] Aug 3, 2026
26205fe
test(blob): cover mixed-nullability dataset writes (#8175)
lance-gatekeeper[bot] Aug 3, 2026
beea692
fix(index): count HNSW entry point at every level (#8167)
BubbleCal Aug 3, 2026
7fb56dc
fix(ci): treat missing merge_insert base tag as not generated (#8177)
Xuanwo Aug 3, 2026
336bee5
fix: preserve large unsigned SQL filter literals (#8178)
lance-gatekeeper[bot] Aug 3, 2026
a2f9299
test: add regression test for scalar index training sort spill under …
lancedb-robot Aug 3, 2026
383b023
fix: respect external base layout in tracked files (#8187)
lance-gatekeeper[bot] Aug 3, 2026
c412f26
fix: align byte-sized batches across data files (#8189)
lance-gatekeeper[bot] Aug 3, 2026
4b8dd0f
fix(jni): align CommitBuilder.storageFormat() parsing with LanceFileV…
ivscheianu Aug 3, 2026
b60c032
fix(index): resolve nested vector index field paths (#8148)
justinrmiller Aug 3, 2026
951f129
fix: type scoring columns in projection expressions (#8163)
lance-gatekeeper[bot] Aug 3, 2026
fdda7a7
fix(index): preserve row addresses in JSON index training (#8165)
lance-gatekeeper[bot] Aug 3, 2026
cea0484
fix: bound commit conflict retry backoff (#8169)
lance-gatekeeper[bot] Aug 3, 2026
d5050ad
fix(index): initialize indices on nested fields (#8192)
lance-gatekeeper[bot] Aug 3, 2026
fa27270
fix: prevent update false negatives for address-domain indices (#8203)
lance-gatekeeper[bot] Aug 3, 2026
9ce5f43
fix(io): publish object store metrics for local reads and writes (#7994)
wjones127 Aug 3, 2026
b56b80d
fix: retain empty vector index definitions in retain_relevant_indices…
wkalt Aug 4, 2026
1852eaa
fix(bloomfilter): bound read/write to prevent BinaryArray i32 offset …
zhangyue19921010 Aug 4, 2026
b8bef59
fix: return error for divergent MemWAL schemas (#8198)
lance-gatekeeper[bot] Aug 4, 2026
14c5f3c
perf(transaction): avoid O(n*m) fragment compares in build_manifest f…
zhangyue19921010 Aug 4, 2026
3f7adda
fix(ci): enlarge mem pool only around merge_insert index build (#8191)
Xuanwo Aug 4, 2026
19a5685
fix(index): replace same-name index segments across types (#8166)
lance-gatekeeper[bot] Aug 4, 2026
ff90523
fix(index): push down deeply nested scalar filters (#8186)
lance-gatekeeper[bot] Aug 4, 2026
764e728
fix(java): type scanner operation failures (#8184)
lance-gatekeeper[bot] Aug 4, 2026
97d65c9
fix: deduplicate MemWAL IN point keys (#8197)
lance-gatekeeper[bot] Aug 4, 2026
f32028b
fix: avoid Greek stemmer UTF-8 panic (#8183)
lance-gatekeeper[bot] Aug 4, 2026
7db9573
fix(index): accept "RQ" when parsing QuantizationType (#8214)
jackylee-ch Aug 4, 2026
3c50724
fix: tolerate concurrent manifest cleanup (#8213)
lance-gatefixer[bot] Aug 4, 2026
51da66d
feat(index): add FTS document granularity (#7788)
Xuanwo Aug 4, 2026
018386c
refactor!: compose exact current-format readers (#8024)
Xuanwo Aug 4, 2026
5790539
fix: restore main CI after exact-format reader refactor (#8231)
Xuanwo Aug 4, 2026
ea3d0d3
feat(index): add zone map support for all data types (#8017)
westonpace Aug 4, 2026
5853431
fix(docs): stop make help from running the website build (#8230)
jackylee-ch Aug 4, 2026
fd162ea
fix(io): return an error for short reads (#8164)
lance-gatekeeper[bot] Aug 4, 2026
6e12e2e
fix(datagen): preserve timestamp time zones (#7946)
xixiGoodLuck Aug 4, 2026
5fe5cbe
ci: serialize regression benchmark runs (#8232)
Xuanwo Aug 4, 2026
27c0dac
fix(ngram): recheck contains() with sub-trigram needle instead of dro…
Ar-maan05 Aug 4, 2026
73e712b
fix(namespace): self-heal DirectoryNamespace read manifest cache (#8233)
rpgreen Aug 4, 2026
11eeb29
fix(lance-io): request vended credentials explicitly in namespace pro…
rpgreen Aug 4, 2026
a2d3047
fix: validate GBO descriptors before metadata I/O (#8227)
lance-gatefixer[bot] Aug 4, 2026
6f76f07
fix(table): reject corrupt row ID metadata (#8254)
lance-gatefixer[bot] Aug 4, 2026
e6ca152
fix: include highest fragment in legacy prefilter masks (#8257)
lance-gatefixer[bot] Aug 4, 2026
2b4f781
fix(lance): propagate deletion vector read errors (#8256)
lance-gatefixer[bot] Aug 4, 2026
2bd8fcc
fix: compute row offsets for unsorted addresses (#8255)
lance-gatefixer[bot] Aug 4, 2026
d95cb36
fix: remove duplicate LanceFileVersion import in lance-file tests (#8…
wjones127 Aug 5, 2026
63b61b0
docs: require duplicate PR checks (#8265)
Xuanwo Aug 5, 2026
f5bc819
refactor: name blob v2 layouts (#8266)
Xuanwo Aug 5, 2026
791a151
refactor: centralize exact dataset write policy (#8025)
Xuanwo Aug 5, 2026
54f7b65
test(fts): cover raw row-list index coverage (#8181)
lance-gatekeeper[bot] Aug 5, 2026
87b1ab1
fix(merge_insert): deduplicate indexed candidates (#8176)
lance-gatekeeper[bot] Aug 5, 2026
adb6829
fix(index): align HNSW construction with reference (#8188)
lance-gatekeeper[bot] Aug 5, 2026
ff87e27
fix: validate top-level schema names in linear time (#8274)
lance-gatefixer[bot] Aug 5, 2026
0105ab4
fix: reject missing merge insert update addresses (#8168)
lance-gatekeeper[bot] Aug 5, 2026
f05b7cf
fix(ci): budget merge insert benchmark memory (#8271)
lance-gatefixer[bot] Aug 5, 2026
67c1ae3
test(index): cover dynamic HNSW search bound (#8277)
lance-gatefixer[bot] Aug 5, 2026
86d3bd1
fix(storage): preserve multipart part identity across retries (#8174)
lance-gatekeeper[bot] Aug 5, 2026
b8d23cd
refactor: move file-version selectors to lance-file (#8026)
Xuanwo Aug 5, 2026
d4da624
fix(encoding): return errors for malformed variable-width offsets (#8…
lance-gatekeeper[bot] Aug 5, 2026
277c93f
feat(java): add scanner performance and memory options (#8288)
everySympathy Aug 5, 2026
d2efaf8
fix(geo): preserve RTree bounds for empty batches (#8287)
lance-gatefixer[bot] Aug 5, 2026
d7e9417
fix(fts): sum all boolean must scores (#8292)
BubbleCal Aug 5, 2026
af30ce9
fix(index): don't report a ZoneMap value range that an overlay may ha…
wjones127 Aug 5, 2026
4a9f8b3
ci: remove bench_regress job (#8294)
Xuanwo Aug 5, 2026
311121a
feat(sql): add blob handling to query builder (#8087)
dentiny Aug 5, 2026
65a3957
fix(core)!: stop reusing fragment ids across an overwrite (#8206)
wjones127 Aug 5, 2026
a902226
test: cover repeated address-domain index updates (#8285)
lance-gatefixer[bot] Aug 5, 2026
16ffd97
fix(rowids): validate serialized row ID metadata (#8259)
lance-gatefixer[bot] Aug 5, 2026
649076d
chore: bump to 11.0.0-beta.1 based on breaking change detection
Aug 5, 2026
72467ab
fix(fts): re-evaluate overlay-stale rows without segment scans (#7975)
Xuanwo Aug 5, 2026
b5109a3
perf(dataset): spill large inline transaction out of manifest (#7881)
zhangyue19921010 Aug 5, 2026
edf12f6
fix(test): pass stable_row_ids to create_text_dataset call site (#8311)
wjones127 Aug 5, 2026
313375f
fix(dataset): accept tombstoned field ids when validating a fragment
wkalt Aug 5, 2026
e057ee7
feat(mem_wal): expose whether an index type can be maintained (#8095)
hamersaw Aug 6, 2026
9f2c3d7
perf(encoding): preallocate fixed-width decode buffers exactly (#8091)
everySympathy Aug 6, 2026
d76eee9
fix: dedupe unmatched merge insert source rows (#8171)
lance-gatekeeper[bot] Aug 6, 2026
b2df5ff
ci(docs): check doc links on a schedule instead of per-PR (#8315)
Xuanwo Aug 6, 2026
24016f8
fix(fts): align list post-filter with indexed semantics (#8185)
Ecthlion Aug 6, 2026
61905c8
perf(fts): order conjunction approximations by cost (#8299)
BubbleCal Aug 6, 2026
5cd8aea
feat(mem_wal): return the sealed generation from force_seal_active (#…
hamersaw Aug 6, 2026
6fe450b
fix(dataset): advance row lineage on DataReplacement (#8337)
wkalt Aug 6, 2026
52a6ed9
fix(index): use zone map index for IS NOT NULL predicates (#8088)
westonpace Aug 6, 2026
82bbfb9
feat(object-store): add explicit IRSA and ECS credential storage opti…
westonpace Aug 6, 2026
35da5d9
chore: release beta version 11.0.0-beta.2
Aug 6, 2026
3d1a678
fix: manifest file walkers miss data-overlay files (#8267)
LuciferYang Aug 6, 2026
07a09f1
fix: remove empty index directories during cleanup (#8322)
lance-gatefixer[bot] Aug 6, 2026
4d63a12
fix(core): key row id sequence cache on fragment contents (#8078)
wjones127 Aug 6, 2026
c35c82f
docs: convert ignore doctests to compiling examples (#8216)
jackylee-ch Aug 6, 2026
9b28097
fix(index): handle partial FTS prewarm under cache pressure (#8298)
ChilePiquin Aug 6, 2026
8422664
test: surface pip output and retry transient failures in compat venv …
Xuanwo Aug 7, 2026
734bf4e
feat(python): add RowIdSequence for constructing row id metadata (#8356)
Xuanwo Aug 7, 2026
e93139d
fix(index): drop stale rows when merging vector index segments (#8342)
wombatu-kun Aug 7, 2026
1b504d9
fix(cleanup): reclaim superseded index files promptly (#8323)
lance-gatefixer[bot] Aug 7, 2026
3189e0d
build: strip release cdylib to shrink the JNI native library (#8314)
sezruby Aug 7, 2026
43a3284
chore(deps): allow using newer version of time crate (#8296)
dtolnay Aug 7, 2026
3c46ce5
fix: add fallback case for SIMD_SUPPORT (#8303)
dtolnay Aug 7, 2026
b5a73b3
feat(rowids): validate stable row ids in Dataset::validate (#8258)
wjones127 Aug 7, 2026
dbc337d
fix(mem-wal): reject stale SSTable compaction progress (#8262)
xuanyu-z Aug 7, 2026
004fd95
test(index): cover KeepFiniteVectors row filtering (#8229)
jackylee-ch Aug 7, 2026
6f4a76d
fix: avoid v2.2 panic for full dictionaries (#8219)
lance-gatefixer[bot] Aug 7, 2026
ac2d034
docs(format): correct vector index schemas and fix broken examples (#…
jackylee-ch Aug 7, 2026
824eb92
fix(fts): cover all segments for fragment scans (#8211)
ddupg Aug 7, 2026
118e68c
feat(python): expose BlobFile.read_ranges (#8319)
keunhong Aug 7, 2026
7ee47f0
fix(rowids): wrap Vec<u8> as InlineRowIds in validate tests (#8368)
Xuanwo Aug 7, 2026
e93a77e
fix(java): correct CompactionMode type across the JNI boundary (#8367)
zhangyue19921010 Aug 7, 2026
82c81ca
feat(java): expose index segment sizes (#8355)
majin1102 Aug 7, 2026
e344d75
test(fts): cover legacy posting exhaustion (#8385)
lance-gatefixer[bot] Aug 7, 2026
6f3984f
docs: use indices instead of indexes in guide and quickstart (#8399)
jackylee-ch Aug 7, 2026
a4a2868
perf(fts): short-circuit conjunction confirmations (#8354)
BubbleCal Aug 7, 2026
b374d62
refactor(fts): split inverted index module (#8309)
lance-gatefixer[bot] Aug 7, 2026
1ac72d9
feat(mem_wal): validate maintained indexes against the writer's rules…
hamersaw Aug 7, 2026
f7d4755
chore: release beta version 11.0.0-beta.3
Aug 7, 2026
855154f
fix(java): carry alterColumns cast type across FFI via C Data Interfa…
puchengy Aug 7, 2026
2bcaa9c
docs(format): add FM-Index to scalar index navigation (#8395)
jackylee-ch Aug 7, 2026
94e29d6
fix(dataset)!: conflict a NOT NULL tightening with concurrent writes …
wkalt Aug 7, 2026
687e40b
fix(docs): align integrations nav with website assembly script (#8419)
jackylee-ch Aug 8, 2026
d6aef88
fix(encoding): return errors for unsupported v2.0 field types (#8370)
lance-gatefixer[bot] Aug 8, 2026
4b2089f
fix(build): support pre-Haswell x86_64 hosts (#8377)
lance-gatefixer[bot] Aug 8, 2026
b5c4c9c
test(blob): cover scattered take_blobs indices (#8376)
lance-gatefixer[bot] Aug 8, 2026
662cea7
feat(python): expose FTS query tokenization (#8415)
BubbleCal Aug 8, 2026
7715bde
test(index): cover no-op optimize after compaction (#8408)
lance-gatefixer[bot] Aug 8, 2026
c3056a5
fix(storage): report AWS credential failures as I/O (#8406)
lance-gatefixer[bot] Aug 8, 2026
3f84339
fix(index): convert JSON values during index updates (#8404)
lance-gatefixer[bot] Aug 8, 2026
a6e53d4
fix: prevent unsafe COS manifest commits (#8369)
lance-gatefixer[bot] Aug 8, 2026
21fcf8d
test(blob): cover nested list-struct Blob V2 fields (#8372)
lance-gatefixer[bot] Aug 8, 2026
6815330
fix(python): avoid reopening dataset when pickling fragments (#8373)
lance-gatefixer[bot] Aug 8, 2026
90582a8
test(index): reproduce append scheduler backpressure (#8375)
lance-gatefixer[bot] Aug 8, 2026
b8593ae
fix(dataset): prevent deleting branches referenced by tags (#8365)
dentiny Aug 8, 2026
b147e50
docs(python): fix docstring parameter names that do not exist (#8420)
jackylee-ch Aug 8, 2026
d1b89c2
docs(python): show how to specify row ids in update transactions (#8357)
wjones127 Aug 8, 2026
1a29153
fix(linalg): drop casts that make clippy::use_self fail off the CI ba…
LuciferYang Aug 8, 2026
c17b92d
fix(index): release IVF late-search barrier for skipped deltas (#8350)
lance-gatefixer[bot] Aug 9, 2026
eb575eb
fix: clear stale manifest index section (#8308)
lance-gatefixer[bot] Aug 9, 2026
696ff25
fix: return error for invalid list page encoding (#8384)
lance-gatefixer[bot] Aug 9, 2026
41be024
fix: allow empty V1 writes with non-nullable columns (#8394)
lance-gatefixer[bot] Aug 9, 2026
f1c2565
fix(index): correct cosine RabitQ query factor (#8393)
lance-gatefixer[bot] Aug 9, 2026
0dc3fa7
test(index): add tests for SQTransformer and name the offending colum…
jackylee-ch Aug 9, 2026
be5b494
test(dataset): pin FileType discriminants to the Arrow dictionary (#8…
jackylee-ch Aug 9, 2026
6b2d600
docs: update crate READMEs to lance-format org (#8398)
jackylee-ch Aug 9, 2026
352e0b8
test: cover SharedStream waiting waker replacement (#8392)
lance-gatefixer[bot] Aug 9, 2026
0adfb68
test: cover filtered legacy scans with stable row ids (#8391)
lance-gatefixer[bot] Aug 9, 2026
9dd78bb
test(index): cover multiple bounded range optimization (#8386)
lance-gatefixer[bot] Aug 9, 2026
61758b6
test(index): add unit tests for FlatTransformer (#8421)
jackylee-ch Aug 9, 2026
f55ff57
docs: explain remote scan concurrency controls (#8387)
lance-gatefixer[bot] Aug 9, 2026
acd6235
docs: fix broken observability and tokenizer links (#8413)
Xuanwo Aug 9, 2026
d8757ff
feat(python): expose LanceFragment.validate (#8428)
keunhong Aug 10, 2026
2a10333
perf: serialize updated_fragment_offsets as RoaringBitmap bytes in pr…
jerryjch Aug 10, 2026
815e497
fix: report JSON index statistics (#8437)
Xuanwo Aug 10, 2026
1fb716e
refactor: move row id metadata into submodule (#8433)
cswpy Aug 10, 2026
92f5ae0
feat(fts): show tokenized queries in analyze plan (#8414)
BubbleCal Aug 10, 2026
7173d59
fix: compile the lance tests after the compacted_sstables rename (#8440)
wombatu-kun Aug 10, 2026
890c8bc
feat(python): expose updated_fragment_offsets in the Update operation…
pengw0048 Aug 10, 2026
de2c80f
perf(fts): lazily score optional boolean clauses (#8448)
BubbleCal Aug 10, 2026
8b1efd2
docs: trim redundant agent guidance (#8439)
Xuanwo Aug 11, 2026
af8e308
feat(mem-wal): record index catch-up positions and withdraw them on i…
xuanyu-z Aug 11, 2026
d20ca47
chore: release beta version 11.0.0-beta.4
Aug 11, 2026
dcb33b0
refactor: centralize dataset version policies (#8027)
Xuanwo Aug 11, 2026
ede0c33
test: cover external manifest copy failure recovery (#8454)
Xuanwo Aug 11, 2026
bd4d8c0
refactor: make index file versions exact (#8028)
Xuanwo Aug 11, 2026
5aa1681
ci: restore nightly jobs after repository rename (#8470)
BubbleCal Aug 11, 2026
bb2c45c
fix(fts): make score sum upper bounds conservative (#8473)
BubbleCal Aug 11, 2026
9f96c3a
feat(java): support cache backend register and switch (#8446)
yanghua Aug 11, 2026
b8bf97c
test: shrink the three slowest lib tests (#8471)
wkalt Aug 11, 2026
e954501
fix(mem-wal): carry fragments through UpdateMemWalState (#8438)
xuanyu-z Aug 11, 2026
d22bb06
fix: reject zero cleanup retention (#8467)
lance-gatefixer[bot] Aug 11, 2026
6275449
ci: fold the query integration tests into the main test jobs (#8483)
wkalt Aug 11, 2026
1a71102
fix(java): expose updatedFragmentOffsets on Update operation for Rewr…
jerryjch Aug 11, 2026
978cd25
feat: support shared session for fragment API (#8034)
zhangyue19921010 Aug 11, 2026
04c5433
fix(encoding): reject mismatched dictionary index widths (#8220)
lance-gatefixer[bot] Aug 11, 2026
a31cf57
fix(index): remap bloom filter search results (#8223)
lance-gatefixer[bot] Aug 11, 2026
b38d5a3
fix: support blob v2 in fragment update_columns (#8344)
lance-gatefixer[bot] Aug 11, 2026
68345f8
fix(ci): resolve stable file versions in slow tests (#8485)
Xuanwo Aug 11, 2026
0fbf65d
fix(doc): fix documentation on `create_branch` behavior (#8462)
dentiny Aug 11, 2026
531aadc
feat(mem_wal): support delete against non-nullable base columns (#8352)
hamersaw Aug 11, 2026
998334b
feat(mem_wal): expose frozen memtable and backpressure stats (#8241)
hamersaw Aug 11, 2026
3a9ac3d
chore: release beta version 11.0.0-beta.5
Aug 11, 2026
235ca5a
feat(mem-wal): derive index catch-up from the version a commit read (…
xuanyu-z Aug 11, 2026
5ab6886
chore: release beta version 11.0.0-beta.6
Aug 11, 2026
67273e0
fix(indexing): write FTS metadata even without partitions (#8482)
cmccabe Aug 11, 2026
dd0129f
feat(java): add efficient dataset version count (#8453)
everySympathy Aug 12, 2026
f829932
test(compat): cover vector maintenance sequences (#8476)
BubbleCal Aug 12, 2026
0aad633
perf: push down fragment-scoped filtered counts (#8515)
BubbleCal Aug 12, 2026
dd93c2c
test: remove legacy recurring tests (#8478)
BubbleCal Aug 12, 2026
8de138b
feat(java): expose SourceDedupeBehavior in MergeInsertParams
sezruby Jun 16, 2026
b4e187c
test(java): assert ambiguous-merge message on SourceDedupeBehavior.Fail
sezruby Jun 16, 2026
d029326
test(java): cover delete-path source dedupe (full-schema + delete-only)
sezruby Aug 12, 2026
4eeb2da
docs(java): align SourceDedupeBehavior docs with Rust contract + boun…
sezruby Aug 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 6 additions & 1 deletion .bumpversion.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[tool.bumpversion]
current_version = "9.0.0-beta.16"
current_version = "11.0.0-beta.6"
parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)(-(?P<prerelease>(beta|rc))\\.(?P<prerelease_num>\\d+))?"
serialize = [
"{major}.{minor}.{patch}-{prerelease}.{prerelease_num}",
Expand Down Expand Up @@ -80,6 +80,11 @@ filename = "Cargo.toml"
search = 'lance-index = {{ version = "={current_version}"'
replace = 'lance-index = {{ version = "={new_version}"'

[[tool.bumpversion.files]]
filename = "Cargo.toml"
search = 'lance-index-core = {{ version = "={current_version}"'
replace = 'lance-index-core = {{ version = "={new_version}"'

[[tool.bumpversion.files]]
filename = "Cargo.toml"
search = 'lance-io = {{ version = "={current_version}"'
Expand Down
4 changes: 3 additions & 1 deletion .cargo/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,9 @@ lto = "thin"
codegen-units = 16

[target.x86_64-unknown-linux-gnu]
rustflags = ["-C", "target-cpu=haswell", "-C", "target-feature=+avx2,+fma,+f16c"]
# Keep the workspace baseline below AVX so binaries can load before runtime
# feature detection selects optimized SIMD kernels.
rustflags = ["-C", "target-cpu=x86-64-v2"]

[target.aarch64-apple-darwin]
rustflags = ["-C", "target-cpu=apple-m1", "-C", "target-feature=+neon,+fp16,+fhm,+dotprod"]
17 changes: 17 additions & 0 deletions .coderabbit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
language: en-US
early_access: false
reviews:
profile: quiet
high_level_summary: false
poem: false
review_status: true
auto_review:
enabled: true
auto_incremental_review: true
ignore_title_keywords:
- WIP
- Draft
drafts: false
base_branches:
- main
3 changes: 2 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
notebooks/** linguist-vendored
Cargo.lock linguist-generated
**/Cargo.lock linguist-generated
**/Cargo.lock linguist-generated
rust/lance-file/test_data/**/*.lance binary
79 changes: 79 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
name: Bug report
description: Report incorrect, unexpected, or crashing behavior.
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to file a bug report! Please search
[existing issues](https://github.com/lance-format/lance/issues) first to
avoid filing a duplicate.
- type: textarea
id: description
attributes:
label: Description
description: A clear and concise description of what the bug is.
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Steps to reproduce
description: >-
A minimal, self-contained code snippet or sequence of steps that
reproduces the problem. The more we can copy-paste and run, the faster
we can fix it.
placeholder: |
1. Write a dataset with `...`
2. Scan with filter `...`
3. Observe `...`
render: python
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected behavior
description: What did you expect to happen?
validations:
required: false
- type: input
id: lance-version
attributes:
label: Lance version
description: >-
Output of `python -c "import lance; print(lance.__version__)"`, or the
`lance`/`pylance` version from your `Cargo.toml` / `pyproject.toml`.
placeholder: "e.g. 0.40.0"
validations:
required: true
- type: dropdown
id: language
attributes:
label: Language binding
multiple: true
options:
- Python
- Rust
- Java
- Other / not sure
validations:
required: true
- type: input
id: environment
attributes:
label: Environment
description: OS, architecture, and storage backend (local, S3, GCS, Azure, ...).
placeholder: "e.g. Ubuntu 22.04, x86_64, S3"
validations:
required: false
- type: textarea
id: logs
attributes:
label: Logs / traceback
description: >-
Any relevant log output or stack trace. This will be automatically
formatted as code, so no need for backticks.
render: shell
validations:
required: false
7 changes: 7 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
blank_issues_enabled: true
contact_links:
- name: Question / usage help
url: https://discord.gg/lance
about: >-
For questions and general discussion, please ask in the Lance Discord
rather than opening an issue.
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: Feature request
about: Suggest a new capability or an improvement to an existing one.
labels: feature
---

<!--
Describe what you'd like Lance to do and why. There's no required format —
mention the problem or use case, and a rough idea of the solution if you have
one. Please search existing issues first to avoid duplicates.
-->
12 changes: 12 additions & 0 deletions .github/ISSUE_TEMPLATE/performance_issue.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
name: Performance issue
about: Report slow operations, high memory use, or a performance regression.
labels: performance
---

<!--
Describe what's slow or memory-hungry. There's no required format, but concrete
numbers (timings, memory, dataset shape) and a way to reproduce help a lot. If
it's a regression, note the last version that performed well. Please search
existing issues first to avoid duplicates.
-->
61 changes: 51 additions & 10 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,45 +1,86 @@
version: 2
updates:
# Rust — one grouped version-bump PR per directory each week, and security
# advisories that land together in a directory batched into a single PR
# instead of one PR per advisory.
- package-ecosystem: "cargo"
directory: "/"
directories:
- "/"
- "/python"
- "/java/lance-jni"
versioning-strategy: lockfile-only
schedule:
interval: "weekly"
day: "wednesday"
groups:
cargo:
applies-to: version-updates
patterns:
- "*"
cargo-security:
applies-to: security-updates
patterns:
- "*"

- package-ecosystem: "cargo"
# Python (uv) — same weekly-grouped + grouped-security treatment.
- package-ecosystem: "uv"
directory: "/python"
versioning-strategy: lockfile-only
schedule:
interval: "weekly"
day: "wednesday"
groups:
cargo:
uv:
applies-to: version-updates
patterns:
- "*"
uv-security:
applies-to: security-updates
patterns:
- "*"

# Standalone Rust lockfiles for dev/test fixtures. Dependabot security updates
# scan these regardless of config, so we group them; open-pull-requests-limit: 0
# disables the (unwanted) weekly version bumps for these crates.
- package-ecosystem: "cargo"
directory: "/java/lance-jni"
versioning-strategy: lockfile-only
directories:
- "/memtest"
- "/test_data/fri_straddle_pre_6610/datagen"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
day: "wednesday"
groups:
cargo:
cargo-fixtures-security:
applies-to: security-updates
patterns:
- "*"

- package-ecosystem: "uv"
directory: "/python"
versioning-strategy: lockfile-only
# Java (Maven). Security updates fire regardless of config; group them and
# skip version bumps (limit 0) — we bump Java deps manually.
- package-ecosystem: "maven"
directory: "/java"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
day: "wednesday"
groups:
uv:
maven-security:
applies-to: security-updates
patterns:
- "*"

# Python benchmark scripts (pip / requirements.txt). Group security updates
# and skip version bumps (limit 0).
- package-ecosystem: "pip"
directories:
- "/benchmarks/*"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
day: "wednesday"
groups:
pip-security:
applies-to: security-updates
patterns:
- "*"
28 changes: 28 additions & 0 deletions .github/labeler-issues.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
version: 1
# Never remove labels a template or a human already applied.
appendOnly: true
# Content-based labels for issues, applied by srvaroa/labeler via
# .github/workflows/issue-labeler.yml. This covers issues that bypass the
# .github/ISSUE_TEMPLATE forms entirely — those filed via `gh issue create`,
# the REST API, or an agent, which never see the web-UI template chooser.
#
# The primary signal is a leading marker in the title (e.g. "bug:", "[feature]",
# "perf -"), which many people type by hand; a modest body keyword match is a
# secondary fallback. Rules are OR'd (one label per matching entry), so an
# unmatched issue gets no label and is left for human / LLM triage rather than
# guessed at. appendOnly means matches stack harmlessly with template labels.
labels:
# --- Primary signal: a leading bug/feature/perf marker in the title ---
- label: bug
title: "(?i)^\\s*[\\[(]?\\s*bug\\b"
- label: feature
title: "(?i)^\\s*[\\[(]?\\s*(feature|feat)\\b"
- label: performance
title: "(?i)^\\s*[\\[(]?\\s*(perf|performance)\\b"
# --- Secondary fallback: keywords anywhere in the body ---
- label: bug
body: "(?i)(panic|segfault|traceback|stack ?trace|crash|corrupt|incorrect result|wrong result)"
- label: performance
body: "(?i)(regression|latency|throughput|\\bOOM\\b|out of memory|memory usage|too slow)"
- label: feature
body: "(?i)(feature request|would be (nice|great|useful)|it would be nice|support for|add .+ support)"
78 changes: 0 additions & 78 deletions .github/workflows/ci-benchmarks.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .github/workflows/compat-pair.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ on:
required: false
default: ""
kinds:
description: "Comma-separated index kinds (INVERTED,BTREE,...) or 'all'."
description: "Comma-separated index kinds (INVERTED,BTREE,IVF_PQ,...) or 'all'."
required: false
default: "all"
max_length:
Expand Down Expand Up @@ -63,7 +63,7 @@ jobs:
KINDS_IN: ${{ inputs.kinds }}
run: |
if [ -z "$KINDS_IN" ] || [ "$KINDS_IN" = "all" ]; then
echo "value=INVERTED,BTREE,BITMAP,LABEL_LIST,NGRAM,ZONEMAP,BLOOMFILTER" >> "$GITHUB_OUTPUT"
echo "value=INVERTED,BTREE,BITMAP,LABEL_LIST,NGRAM,ZONEMAP,BLOOMFILTER,IVF_PQ" >> "$GITHUB_OUTPUT"
else
echo "value=$KINDS_IN" >> "$GITHUB_OUTPUT"
fi
Expand Down
Loading