Remove shard dependency on api (#8284)

* Move `DenseVector`/`MultiDenseVector` from `api` to `segment`

* Move `OrderByInterface` from `api` to `segment`

Reason: it's used in `edge` which shouldn't depend on `api`.

* Make `shard` -> `api` dependency optional

* Remove `api` from the amalgamation

* Don't install protoc in edge Actions
This commit is contained in:
xzfc
2026-03-05 04:38:02 +00:00
committed by generall
parent f691ee8a6d
commit e23cc13d0a
32 changed files with 1006 additions and 1027 deletions

View File

@@ -6,13 +6,12 @@ use ordered_float::OrderedFloat;
use pyo3::IntoPyObjectExt;
use pyo3::exceptions::PyValueError;
use pyo3::prelude::*;
use segment::data_types::order_by::{Direction, OrderBy, StartFrom};
use segment::data_types::order_by::{Direction, OrderBy, OrderByInterface, StartFrom};
use segment::data_types::vectors::{DEFAULT_VECTOR_NAME, VectorInternal};
use segment::index::query_optimization::rescore_formula::parsed_formula::ParsedFormula;
use segment::json_path::JsonPath;
use shard::query::query_enum::QueryEnum;
use shard::query::*;
use shard::scroll::OrderByInterface;
use super::*;
use crate::repr::*;

View File

@@ -1,6 +1,7 @@
use bytemuck::TransparentWrapper as _;
use derive_more::Into;
use pyo3::prelude::*;
use segment::data_types::order_by::OrderByInterface;
use segment::types::*;
use shard::scroll::*;