Merged
Conversation
…nvalid value reporting
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.
This pull request introduces several improvements and refactorings across the codebase, focusing on centralizing application subscriptions, enforcing greenfield development principles (no legacy support), improving code clarity and maintainability, and enhancing validation UI. The most significant change is the extraction and centralization of all Iced subscriptions into a dedicated module, making the codebase cleaner and easier to maintain. Additionally, there are updates to documentation and project policies to strictly prohibit legacy support, as well as minor bug fixes and UI enhancements.
Centralization and Refactoring of Application Subscriptions:
app/mod.rsinto a newsubscriptionmodule, providing a single point of management for event subscriptions and improving maintainability. The mainAppstruct now delegates to this module. (crates/tss-gui/src/app/mod.rs,crates/tss-gui/src/app/subscription.rs) [1] [2] [3]Greenfield Development and No Legacy Support Policy:
CLAUDE.mdand.claude/rules/00-deliberation.mdexplicitly forbidding any form of legacy support, including wrappers, backward compatibility, deprecation notices, migration code, and compatibility shims. The only acceptable approach is full rewrites. (CLAUDE.md,.claude/rules/00-deliberation.md) [1] [2]Code Simplification and Idiomatic Rust:
let ... elseidiom for early returns, simplifying control flow and improving code readability in handlers and utility functions. (crates/tss-gui/src/handler/domain_editor.rs,crates/tss-gui/src/handler/export.rs) [1] [2] [3] [4] [5] [6] [7]Validation UI Enhancements:
Info) severity issues, including filtering, iconography, and color coding. (crates/tss-gui/src/view/domain_editor/validation.rs) [1] [2] [3] [4]Dependency and Build System Updates:
encoding_rscrate as a workspace dependency inCargo.toml. (Cargo.toml).github/workflows/rust-ci.yml)Bug Fixes:
Fixed a bug in
create_study_from_assignmentsby passing the SDTM context explicitly to the controlled terminology loader. (crates/tss-gui/src/app/util.rs,crates/tss-gui/src/service/study.rs) [1] [2]Fixes [Feat]: Add "not collected" reason to Define-XML output #118
Fixes [Bug]: CT validation only shows first 5 invalid values #123
Fixes [Bug]: Unknown constants silently return empty string #124
Fixes [Bug]: Date validation accepts partial precision without warning #125
Fixes [Feat]: Make CT versions discoverable from directory scan #126
Fixes [Feat]: Validate Define-XML metadata version OID format #127
Fixes [Feat]: Add range checks for numeric variables #128
Fixes [Bug]: Polars schema inference only scans 100 rows #139
Fixes [Bug]: UTF-16 BOM handling missing (Windows) #140
Fixes [Bug]: Windows path length limit not checked #141
Fixes [Feat]: Add file integrity checksum to project files #146
Fixes [Feat]: Add validation for extensible codelists #247
Fixes [Feat]: Add CT version consistency validation #246
Fixes [Bug]: CT registry doesn't track which catalog is primary #249
Fixes [Enhancement]: Adopt if-let chains (Rust 1.80+) #274
Fixes [Enhancement]: Standardize Result handling patterns #275
Fixes [Enhancement]: Improve subscription lifecycle management #276
Fixes [Enhancement]: Adopt let-else pattern for cleaner early returns #279