-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
Remaining Builder Patterns for redis-enterprise
Current Status
✅ redis-cloud: 100% complete (6/6 structs have builders)
Completed in PR #40
- ✅ CreateUserRequest / UpdateUserRequest
- ✅ CreateRoleRequest with BdbRole
- ✅ CreateCrdbRequest with CreateCrdbInstance
Remaining Work (13 structs)
🔴 HIGH Priority (4 structs - complex with many fields)
-
CreateDatabaseRequest(bdb.rs)- 12+ fields with many optionals
- Has custom builder that should migrate to TypedBuilder
- Most commonly used struct
-
BootstrapRequest(cluster.rs)- Nested ClusterBootstrapInfo, BootstrapCredentials
- Critical for cluster initialization
-
CreateMigrationRequest(migrations.rs)- Complex MigrationEndpoint nested types
- Important for data migration workflows
-
DebugInfoRequest(debuginfo.rs)- 6+ optional fields
- Complex diagnostic configuration
🟡 MEDIUM Priority (6 structs - 3-5 fields)
CreateScheduledJobRequest(job_scheduler.rs) - 5 fieldsCreateLdapMappingRequest(ldap_mappings.rs) - 5 fieldsCreateSuffixRequest(suffixes.rs) - 4 fieldsCreateRedisAclRequest(redis_acls.rs) - 3 fieldsCreateCrdbTaskRequest(crdb_tasks.rs) - 3 fieldsDiagnosticRequest(diagnostics.rs) - 3 optional fields
🟢 LOW Priority (3 structs - simple)
ServiceConfigRequest(services.rs) - 3 fieldsNodeActionRequest(nodes.rs) - 2 fieldsLicenseUpdateRequest(license.rs) - 1 field
⚪ May Not Need Builder
UploadModuleRequest(modules.rs) - Binary data only
Recommendations
- Phase 1: Tackle HIGH priority structs first (biggest UX improvement)
- Phase 2: Add MEDIUM priority structs
- Phase 3: Consider if LOW priority structs need builders at all
The HIGH priority structs would provide the most value as they're complex and frequently used.
Related
- Original issue: Add builder patterns to request structs across both libraries #38
- Initial implementation: PR feat: add builder patterns to request structs #40
Metadata
Metadata
Assignees
Labels
No labels