fix: search indexing and schema changes (#7090)

* fix: incremental indexing uses latest db data

* dependent search fields
This commit is contained in:
aecsocket
2026-08-12 11:54:35 -04:00
committed by GitHub
parent 2a43792fd9
commit c34bd26f87
5 changed files with 99 additions and 1 deletions
+28
View File
@@ -218,6 +218,10 @@ pub enum SearchField {
MinecraftJavaServerPingData,
DependencyProjectIds,
CompatibleDependencyProjectIds,
RequiredDependencyProjectIds,
OptionalDependencyProjectIds,
EmbeddedDependencyProjectIds,
IncompatibleDependencyProjectIds,
}
#[derive(Debug, Error)]
@@ -289,6 +293,14 @@ pub struct UploadSearchProject {
#[serde(default)]
pub compatible_dependency_project_ids: Vec<String>,
#[serde(default)]
pub required_dependency_project_ids: Vec<String>,
#[serde(default)]
pub optional_dependency_project_ids: Vec<String>,
#[serde(default)]
pub embedded_dependency_project_ids: Vec<String>,
#[serde(default)]
pub incompatible_dependency_project_ids: Vec<String>,
#[serde(default)]
pub dependencies: Vec<SearchProjectDependency>,
// Hidden fields to get the Project model out of the search results.
@@ -387,6 +399,14 @@ pub struct ResultSearchProject {
#[serde(default)]
pub compatible_dependency_project_ids: Vec<String>,
#[serde(default)]
pub required_dependency_project_ids: Vec<String>,
#[serde(default)]
pub optional_dependency_project_ids: Vec<String>,
#[serde(default)]
pub embedded_dependency_project_ids: Vec<String>,
#[serde(default)]
pub incompatible_dependency_project_ids: Vec<String>,
#[serde(default)]
pub dependencies: Vec<SearchProjectDependency>,
// Hidden fields to get the Project model out of the search results.
@@ -429,6 +449,14 @@ impl From<UploadSearchProject> for ResultSearchProject {
dependency_project_ids: source.dependency_project_ids,
compatible_dependency_project_ids: source
.compatible_dependency_project_ids,
required_dependency_project_ids: source
.required_dependency_project_ids,
optional_dependency_project_ids: source
.optional_dependency_project_ids,
embedded_dependency_project_ids: source
.embedded_dependency_project_ids,
incompatible_dependency_project_ids: source
.incompatible_dependency_project_ids,
dependencies: source.dependencies,
loaders: source.loaders,
project_loader_fields: source.project_loader_fields,