Repository navigation
fix(core-storage): drop the 64-character cap on connection group names - #3994
Merged
Merged
Conversation
datlechin
enabled auto-merge (squash)
November 2, 2026 16:53
datlechin
disabled auto-merge
November 2, 2026 20:52
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ConnectionGroupNamehas no length limit, so a macOS group name round-trips unchanged.ConnectionGroupName::MAX_CHARSandGroupNameError::TooLong(codegroup_name.too_long).name_rules::checkedandcleanedtake no limit.ConnectionTagNamekeeps its 32 cap by checking and cutting on its own.linux/docs/storage.mdno longer state the cap.3994.changed.md.Test plan
Tests changed on purpose because they pinned the 64 cap:
connection_group_name:group_name_rejects_blank_long_and_control_charactersis nowgroup_name_rejects_blank_and_control_characters;the_limit_counts_characters_not_bytesis nowa_name_of_any_length_is_kept_whole;a_stored_name_is_cleaned_rather_than_refuseddrops the cut case.group_name_error::each_name_error_has_a_code_of_its_owndropsgroup_name.too_long.connections::a_group_an_earlier_build_wrote_past_the_limits_still_loadsis nowa_long_group_loads_whole_and_control_characters_are_cleaned.legacy_groups::a_name_too_long_or_with_control_characters_is_cleaned_firstis nowa_long_name_is_kept_and_control_characters_are_cleaned_first.name_rules::a_name_is_trimmed_and_checked_in_charactersanda_stored_name_loses_control_characters_and_the_excessdrop the length cases; the tag's character count moved toconnection_tag_name::the_limit_counts_characters_not_bytes.new_group_create_response_disabled_until_valid_unique_name: a 200-character name now enables Create.Checks:
cargo test -p tablepro-storage -p tablepro-mcpand clippy on both pass on macOS.glycin-common), so its widget test runs in CI.