diff --git a/.cargo/config.toml b/.cargo/config.toml index 47f5872f..41b5e65e 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -9,7 +9,7 @@ rustflags = ["-C", "link-arg=-fuse-ld=lld"] # `cargo run` process holding up another Cargo invocation. [alias] watch-client = ["watch", "--delay", "0.1", "--ignore", "**/common/src/proto/**", "--exec", "build --package client", "--shell", "workspace_manifest=$(cargo locate-project --workspace --message-format plain); exec ${workspace_manifest%Cargo.toml}target/debug/client client"] -watch-server = ["watch", "--why", "--delay", "0.1", "--ignore", "**/common/src/proto/**", "--ignore", "**/.postgres-data/**", "--exec", "build --package server", "--shell", "workspace_manifest=$(cargo locate-project --workspace --message-format plain); exec ${workspace_manifest%Cargo.toml}target/debug/server server"] +watch-server = ["watch", "--why", "--delay", "0.1", "--ignore", "**/common/src/proto/**", "--ignore", "**/.postgres-data/**", "--exec", "build --package server --features full", "--shell", "workspace_manifest=$(cargo locate-project --workspace --message-format plain); exec ${workspace_manifest%Cargo.toml}target/debug/server server"] [env] POSTGRESQL_VERSION = "=17.10.0" diff --git a/client-gui2 b/client-gui2 index e80f9f12..a71fe2f5 160000 --- a/client-gui2 +++ b/client-gui2 @@ -1 +1 @@ -Subproject commit e80f9f12edb5926141bc3157234f7715020cc484 +Subproject commit a71fe2f543433ec4a58e02006211b3d114089d6b diff --git a/common/proto/table_definition.proto b/common/proto/table_definition.proto index 0cd85d29..deaa4bf7 100644 --- a/common/proto/table_definition.proto +++ b/common/proto/table_definition.proto @@ -292,13 +292,12 @@ enum MoneyRounding { // Describes one user-defined column for a table. message ColumnDefinition { - // Must be lowercase, start with a letter, and use only lowercase letters, - // digits and underscores. - // - // Cannot be "id", "deleted", "created_at" or "row_revision": those are - // system columns, and a data request names system and user columns in one - // namespace. Any other name is free, including one ending in "_id" -- no - // column name is derived from a table name, so nothing collides. + // Public display name for this column; the physical column uses a stable + // server-assigned ordinal name. Preserved exactly for display. It may contain + // Unicode letters, numbers, spaces, punctuation and symbols, but not + // leading/trailing whitespace or control characters, and is limited to 63 + // UTF-8 bytes. Its canonical form must be unique within the table and cannot + // claim a reserved system-column name. string name = 1; // Logical column type. Supported values (case-insensitive): diff --git a/common/src/proto/descriptor.bin b/common/src/proto/descriptor.bin index 86309ec7..4c934c98 100644 Binary files a/common/src/proto/descriptor.bin and b/common/src/proto/descriptor.bin differ diff --git a/common/src/proto/komp_ac.table_definition.rs b/common/src/proto/komp_ac.table_definition.rs index 658a8500..3f61f075 100644 --- a/common/src/proto/komp_ac.table_definition.rs +++ b/common/src/proto/komp_ac.table_definition.rs @@ -251,13 +251,12 @@ pub struct PutTableDefinitionResponse { #[derive(serde::Serialize, serde::Deserialize)] #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct ColumnDefinition { - /// Must be lowercase, start with a letter, and use only lowercase letters, - /// digits and underscores. - /// - /// Cannot be "id", "deleted", "created_at" or "row_revision": those are - /// system columns, and a data request names system and user columns in one - /// namespace. Any other name is free, including one ending in "\_id" -- no - /// column name is derived from a table name, so nothing collides. + /// Public display name for this column; the physical column uses a stable + /// server-assigned ordinal name. Preserved exactly for display. It may contain + /// Unicode letters, numbers, spaces, punctuation and symbols, but not + /// leading/trailing whitespace or control characters, and is limited to 63 + /// UTF-8 bytes. Its canonical form must be unique within the table and cannot + /// claim a reserved system-column name. #[prost(string, tag = "1")] pub name: ::prost::alloc::string::String, /// Logical column type. Supported values (case-insensitive): diff --git a/server b/server index 590dea31..c37f2f90 160000 --- a/server +++ b/server @@ -1 +1 @@ -Subproject commit 590dea3135c0a477dd737e040dbda84454bbd6a9 +Subproject commit c37f2f902c77651c55891374d40ea7be6f8a69cb