Commit 019d717
refactor: SonarQube code-smell & duplication cleanup (#25)
* chore(sonar): exclude EF migrations and obj from analysis
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* style: apply analyzer auto-fixes (collection init, var, switch expr, UTF-8 literals)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* refactor: extract repeated string literals into constants (S1192)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* refactor: move Abstractions.Connections types to matching namespace (IDE0130)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* refactor(localization): extract shared RustPlusBot.Localization (ILocalizer + DictionaryLocalizer)
Collapses 6 byte-identical per-feature localizer implementations into one
shared DictionaryLocalizer + ILocalizer in a new leaf project. The 6
per-feature interfaces are kept as thin markers extending the shared
ILocalizer, and each feature keeps a 1-line concrete localizer that
subclasses DictionaryLocalizer and implements its marker — so DI
registrations and ~30 consumers are unchanged and there is no last-wins
DI collision in the composed host container.
Resolves the in-code 'consolidate into a shared project' TODO.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* refactor(workspace): collapse channel locators onto shared CachingChannelLocator
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* refactor(discord): extract shared poster boilerplate into DiscordChannelMessenger
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* refactor: bundle cohesive dependencies to satisfy S107 parameter limit
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* refactor: extract helpers to reduce cognitive complexity below 15 (S3776)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>1 parent 0ea3724 commit 019d717
150 files changed
Lines changed: 1132 additions & 1337 deletions
File tree
- .github/workflows
- src
- RustPlusBot.Abstractions
- Connections
- Events
- RustPlusBot.Discord
- Posting
- RustPlusBot.Features.Alarms
- Modules
- Posting
- Relaying
- Rendering
- RustPlusBot.Features.Commands
- Formatting
- Handlers
- Leader
- Localization
- Modules
- RustPlusBot.Features.Connections
- Listening
- Supervisor
- RustPlusBot.Features.Events
- Classifying
- Formatting
- Hosting
- Posting
- Relaying
- Rendering
- State
- RustPlusBot.Features.Map
- Assets
- Composing
- Hosting
- Rendering
- RustPlusBot.Features.Pairing/Modules
- RustPlusBot.Features.Players
- Posting
- Rendering
- RustPlusBot.Features.Switches
- Modules
- Posting
- Rendering
- RustPlusBot.Features.Workspace
- Gateway
- Localization
- Locating
- Messages
- Reconciler
- Registry
- RustPlusBot.Host
- RustPlusBot.Localization
- RustPlusBot.Persistence
- Alarms
- Map
- Switches
- tests
- RustPlusBot.Abstractions.Tests
- Connections
- Events
- RustPlusBot.Features.Alarms.Tests
- RustPlusBot.Features.Commands.Tests
- Formatting
- Handlers
- Leader
- RustPlusBot.Features.Connections.Tests
- Fakes
- RustPlusBot.Features.Events.Tests
- Classifying
- Formatting
- Hosting
- Relaying
- Rendering
- State
- RustPlusBot.Features.Map.Tests
- RustPlusBot.Features.Pairing.Tests
- RustPlusBot.Features.Players.Tests
- RustPlusBot.Features.Switches.Tests
- RustPlusBot.Features.Workspace.Tests
- Fakes
- Locating
- Messages
- Reconciler
- RustPlusBot.Localization.Tests
- RustPlusBot.Persistence.Tests/Servers
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
| 63 | + | |
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
| |||
28 | 29 | | |
29 | 30 | | |
30 | 31 | | |
| 32 | + | |
31 | 33 | | |
32 | 34 | | |
33 | 35 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
0 commit comments