Commit Graph

30 Commits

Author SHA1 Message Date
Kwoth
cd6fe46c2b More user friendly error when parsing of a number fails. 2022-08-31 13:40:41 +02:00
Kwoth
f41b1fb93c Base for 4.3 work. Split Nadeko.Common into a separate project 2022-07-11 00:06:34 +02:00
Kwoth
7cb15f5278 Medusa System Added
Read about the medusa system [here](https://nadekobot.readthedocs.io/en/latest/medusa/creating-a-medusa/)
2022-04-16 12:44:46 +00:00
Kwoth
eda38e64d1 Added many more braces for multiline if's, Improved .crypto command quite a bit and applied locale-specific format 2022-02-04 06:00:17 +01:00
Kwoth
41653a317b More PeriodicTimer's instead of System.Threading.Timers 2022-02-02 06:28:33 +01:00
Kwoth
9b4eb21321 Using pattern matching for nulls where applicable, discarded unused lambda parameters, cleaned up some classes. Unignored ServerLog commands which was mistakenly ignored due to a .gitignore rule 2022-01-01 08:44:51 +01:00
Kwoth
25eeffa163 - Removed NadekoCommand and Aliases attribute from all commands
- All commands must be marked as partial
- Added [Cmd] Attribute to all commands
- Cmd Attribute comes from the source generator which adds [NadekoCommand] and [Aliases] Attribute to each command
- Should be updated in the future probably to be more performant and maybe add extra data to the commands
- Started reorganizing modules and submodules
2021-12-31 16:05:30 +01:00
Kwoth
82000c97a4 Applied codestyle to all .cs files 2021-12-29 06:07:16 +01:00
Kwoth
723447c7d4 - Updated editorconfig rules to hopefully look a bit nicer.
- Removed configureawait(false) from everywhere as it doesnt' do anything in a console app and just makes the code look ugly
- Started using .WhenAll extension instead of Task.WhenAll to make it look nicer when chaining methods
2021-12-28 21:14:40 +01:00
Kwoth
59f5056035 NadekoBot.Extensions should now be fully annotated with nullable reference types as well as many classes from NadekoBot.Common 2021-12-28 10:44:00 +01:00
Kwoth
d5fd6aae8e - More code cleanup and codestyle updates
- Fixed some possible nullref exceptions
- Methods signatures now have up to 3 parameters before breakaing down each parameter in a separate line
- Method invocations have the same rule, except the first parameter will be in the same line as the invocation to prevent some ugliness when passing lambas as arguments
- Applied many more codestyles
- Extensions folder fully reformatted
2021-12-26 17:28:39 +01:00
Kwoth
d18f9429c6 Kotz's editorconfig styles slightly modified. Target typed new usage. Brackets in expressions used for clarity. 2021-12-26 02:52:09 +01:00
Kwoth
594a3b1f97 Removed some obsolete commands and strings 2021-12-23 20:58:39 +01:00
Kwoth
da849f7c7b global using NadekoBot.Extensions 2021-12-23 08:04:00 +07:00
Kwoth
93b8bca018 Switch to discord.net 3.0.0 2021-12-23 08:02:23 +07:00
Kwoth
c66e491ce9 Implicit usings and more global usings 2021-12-21 02:36:47 +01:00
Kwoth
9223d78849 Removed redundant parenthesis 2021-12-20 03:54:30 +01:00
Kwoth
1b2017024c More target-typed new and redundant paranthesis cleanup 2021-12-20 00:33:11 +01:00
Kwoth
ee33313519 Global usings and file scoped namespaces 2021-12-19 05:14:11 +01:00
Kwoth
0fc5f540d8 - Added Cloneable deep clone source generator nuget package
- Configs are no cloned using generated clone, not by serializing/deserializing
- Arrays/Lists (collections in geneeral) are still not cloned properly
- Removed GetRawData from config as it is no longer needed, new clone is very fast
- Added ICloneable<T> which all configs implement
- Cleaned up config classes/code
2021-09-06 21:34:50 +02:00
Kwoth
fd35d3a836 - Cleaned up completed todos
- Config Data won't be copied every time it's accessed now, but YamlDotNet doesnt' support records, so data is dangerously mutable, needs solution
2021-09-06 21:34:50 +02:00
Kwoth
9f34f8f00f Don't load executor behaviors as a dep, but initialize after all services are loaded. Experimenting on services 2021-09-06 21:34:49 +02:00
Kwoth
3c82c1f919 - Started cleanup of command handler
- Removed IUnloadableService
- Started removing INService (removed it from services which implement behavior interfaces) - wip
- Added scrutor for better service registration - wip
2021-09-06 21:34:49 +02:00
Kwoth
49f9b96755 One of the last major cleanups. All NadekoBot.Core.* namespaces renamed to NadekoBot.* 2021-09-06 21:34:48 +02:00
Kwoth
c86bf6f300 - NadekoBot class renamed to Bot
- Implemented grpc based coordinator. Supports restarting, killing single or all shards, as well as getting current shard statuses. (Adaptation of the one used by the public bot)
- Coord is setup via coord.yml file
- Methods from SelfService which deal with shard/bot restart etc have been moved to ICoordinator (with GrpcRemoteCoordinator being the default implementation atm)
- Vastly simplified NadekoBot/Program.cs
2021-09-06 21:34:46 +02:00
Kwoth
d8c7cdc7f4 Changed all == null to is null and all !(* == null) to * is not null 2021-09-06 21:34:44 +02:00
Kwoth
d42705087e - Database namespace is now NadekoBot.Db
- Db related code is now in src/NadekoBot/Db
- Finished major part of the db refactor, but many optimizations are left to be made
2021-09-06 21:34:43 +02:00
Kwoth
c127dcd1e3 UnitOfWork compltely removed. GetDbContext now returns a NadekoContext. Changed every access to contect via uow._context to uow 2021-09-06 21:34:42 +02:00
Kwoth
15dac7e3ed Massive cleanup
- Removed GuildConfigs repository, moved to extensions
- Moved StreamSettings extension to GuildConfig extensions
- namespace NadekoBot.Core has been simplified to NadekoBot in many places (more to come)
- Replaced some raw delete queries with simple linqtodb queries
2021-09-06 21:34:41 +02:00
Kwoth
91ecf9ca41 Restructured folders and project names, ci should be fixed 2021-09-06 21:29:51 +02:00