1
0
Fork 1
mirror of https://github.com/TeamOctolings/Octobot.git synced 2025-01-31 09:09:00 +03:00
Commit graph

5 commits

Author SHA1 Message Date
793afd0e06
Apply official naming guidelines to Octobot (#306)
1. The root namespace was changed from `Octobot` to
`TeamOctolings.Octobot`:
> DO prefix namespace names with a company name to prevent namespaces
from different companies from having the same name.
2. `Octobot.cs` was renamed to `Program.cs`:
> DO NOT use the same name for a namespace and a type in that namespace.
3. `IOption`, `Option` were renamed to `IGuildOption` and `GuildOption`
respectively:
> DO NOT introduce generic type names such as Element, Node, Log, and
Message.
4. `Utility` was moved out of the `Services` namespace. It didn't belong
there anyway
5. `Program` static fields were moved to `Utility`
6. Localisation files were moved back to the project source files. Looks
like this fixed `Message.Designer.cs` code generation

---------

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>
2024-05-16 20:34:26 +05:00
c2f7aadaea
Do not use ResultError#IsUserOrEnvironmentError (#289)
In LoggerExtensions#LogResult we skip logging the result if the error is
"user or environment error". What matches that criteria is defined by
Remora's implementation.

However, none of errors defined by the implementation should *ever* happen or be ignored:
* CommandNotFoundError: The client shouldn't send us non-existing
commands. This *can* happen because the client's command list can get
out of sync with the server's, but this happens rarely.
* AmbiguousCommandInvocationError: We don't have commands that would
trigger this error
* RequiredParameterValueMissingError: The client shouldn't send us
commands without required paremeters
* ParameterParsingError: See #220
* ConditionNotSatisfiedError: The client shouldn't send us commands that
don't satisfy our conditions

Closes #220
2024-03-24 15:38:51 +00:00
894e819865
Fix newline in LogResult (#245)
Fixes an issue on Windows that would cause the `ResultErrorMessage` to
be unindented.

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>
2023-12-31 13:42:59 +03:00
fb3aebb1e0
Notify user when a command execution error occurs (#171)
With this PR, whenever command execution fails, the user will get an
error message with details of the error that can be passed on to
developers

An unrelated minor change: errors caused by task cancellations will no
longer be logged

---------

Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>
Signed-off-by: mctaylors <mctaylxrs@outlook.com>
2023-10-26 14:54:15 +00:00
e6f53b13f0
Split extension methods into separate classes (#161)
This PR splits the extension methods contained in `Extensions.cs` into
separate classes in the `Octobot.Extensions` namespace. This was done
for multiple reasons:
1) The `Extensions.cs` violates SRP (Single Responsibility Principle) -
it takes upon itself every extension method for many types
2) Having a separate class for each extended type is a standard practice
- take a look at
[Remora.Discord](https://github.com/Remora/Remora.Discord/tree/main/Backend/Remora.Discord.Rest/Extensions)
or [osu!](https://github.com/ppy/osu/tree/master/osu.Game/Extensions)
3) Having all extension methods in one file makes it hard to find the
method you want
2023-10-12 15:37:25 +00:00