Port Brave Sync server to Rust

Use SQLite for persistence and generate Rust protobuf bindings at build time.

Add Docker image support for containerized deployment.

Co-Authored-By: codex <[email protected]>
This commit is contained in:
janisslsmandcodex committed 2026-06-04 23:57:44 +03:00
commit 28826af88d
93 files changed
+11666

No files matched your search

@@ -0,0 +1,49 @@
// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// DEPRECATED: This data type is no longer synced.
// TODO(crbug.com/978775): Remove once the file is no longer used by the server.
// Sync protocol datatype extension for the favicon image specifics.
// If you change or add any fields in this file, update proto_visitors.h and
// potentially proto_enum_conversions.{h, cc}.
syntax = "proto2";
option go_package = "./sync_pb";
option java_multiple_files = true;
option java_package = "org.chromium.components.sync.protocol";
option optimize_for = LITE_RUNTIME;
package sync_pb;
message FaviconData {
// The image data for the favicon (PNG encoded).
optional bytes favicon = 1;
// The favicon dimensions.
optional int32 width = 2;
optional int32 height = 3;
}
// Image data for favicons. Multiple resolutions are supported.
message FaviconImageSpecifics {
// The url of the favicon image.
optional string favicon_url = 1;
// The favicons associated with this source, one per scale type.
// Favicons images should be stored into the field that best corresponds to
// their scale. If multiple favicons are appropriate, the highest resolution
// that doesn't violate the maximum should be stored.
// A normal low-resolution web favicon (max resolution 16x16).
optional FaviconData favicon_web = 2;
// A slightly higher-resolution web favicon (max resolution 32x32).
optional FaviconData favicon_web_32 = 3;
// A high-resolution touch favicon (not precomposed, max resolution 64x64).
optional FaviconData favicon_touch_64 = 4;
// A high-resolution touch favicon (precomposed, max resolution 64x64).
optional FaviconData favicon_touch_precomposed_64 = 5;
}