Context
Related to PR #424 which demonstrates the pattern for modularisation by refactoring the connection module.
Request from: @leynos
Source: #424
Objective
Reduce file size hotspots by splitting large files (all >400 LOC) into feature-focused submodules and, where possible, moving #[cfg(test)] blocks into sibling *_tests.rs files.
Files to refactor
The following files should be split into feature-focused submodules:
src/connection.rs:1
src/extractor.rs:1
src/app/builder.rs:1
src/client/builder.rs:1
src/app/frame_handling.rs:1
src/codec/recovery.rs:1
src/server/config/tests.rs:1
Approach
Follow the pattern established in PR #424:
- Extract logically cohesive components into dedicated submodules
- Maintain public API compatibility
- Move test code into separate
*_tests.rs files where appropriate
- Ensure all tests continue to pass after refactoring
Context
Related to PR #424 which demonstrates the pattern for modularisation by refactoring the connection module.
Request from: @leynos
Source: #424
Objective
Reduce file size hotspots by splitting large files (all >400 LOC) into feature-focused submodules and, where possible, moving
#[cfg(test)]blocks into sibling*_tests.rsfiles.Files to refactor
The following files should be split into feature-focused submodules:
src/connection.rs:1src/extractor.rs:1src/app/builder.rs:1src/client/builder.rs:1src/app/frame_handling.rs:1src/codec/recovery.rs:1src/server/config/tests.rs:1Approach
Follow the pattern established in PR #424:
*_tests.rsfiles where appropriate