Commit Graph

86 Commits

Author SHA1 Message Date
NovaFox161 81f11c8e6c Get dashboard functioning again
There are still some lingering issues that I am tracking down, but this is huge progress on the issues plaguing the dashboard since the 4.0.0 release.

Hopefully I can narrow down the rest of the major bugs that have popped up and get everything functioning correctly.
2020-08-11 09:02:22 -05:00
NovaFox161 6ed629199c Further work on reducing NPEs when listing events 2020-08-08 18:57:55 -05:00
NovaFox161 34fbd5f314 Supply default version info so I don't break shit 2020-08-08 03:30:09 -05:00
NovaFox161 9c6652f52e Fix version info for status not being sent correctly 2020-08-08 03:25:27 -05:00
NovaFox161 9f20bd9970 This should in theory fix the bad auth when getting events by API
Google is returning a 400 code saying we are using a bad key. Hopefully by using the same methods that are already working elsewhere in the software (specifically the abstracted reactive wrappers I made), this should at least help narrow down where/what is causing the issue or outright solve the issue.

This marks a point where I realize I need to go through the API and make sure its more in line with how other parts of the program gets the same data.
2020-08-07 03:43:10 -05:00
NovaFox161 402c43fd70 Add ability to disable restart service
Sometimes it will be needed to not auto restart shards, so this adds the ability to prevent the API server from forcing shard restarts.
2020-08-03 04:02:54 -05:00
NovaFox161 fea567d73a IntelliJ code cleanup over whole project 2020-08-03 03:56:44 -05:00
NovaFox161 caa300ceca Add package-info to all packages 2020-08-03 00:13:02 -05:00
NovaFox161 66e1aebfac Fix announcement and calendar count not displaying correctly on website 2020-07-23 15:40:49 -05:00
NovaFox161 7d478793c5 Update R2DBC Connection pools dependency
I must have forgotten to update it because it and spring are no longer
getting along. Hopefully its fixed now.

Also changed the indents in the pom files to spaces to match our
guidelines
2020-06-25 08:44:33 -05:00
NovaFox161 79e79fe69d Update several dependencies to the latest versions
Also make plugin version management easier in the main pom
2020-06-22 21:16:53 -05:00
NovaFox161 003dc7130c Add support for multiple credentials for discal
This should be the way to resolve the API rate limit with calendar
creation. By randomly assigning new guilds one of n amount of accounts,
we spread out the calendar creation load onto many accounts. This should
overall fix the API rate limit of calendar creation per account as well
as allow further expansion.
2020-05-29 23:30:47 -05:00
NovaFox161 70d03867fa D4J changed some rest classes 2020-05-25 21:54:45 -05:00
NovaFox161 e4c2115612 D4j moved Snowflake again!!!!!!!! 2020-05-22 23:26:41 -05:00
NovaFox161 9d5e5f05d4 This should fix the announcement system, among other changes
Notably, adding the announcement modifier option, which allows for
changing when the announcement would be posted relative to the event and
its other rules. Right now not supported on the front end at all, but
the backend is prepped for its support with the announcement posting
system soon to follow.
2020-05-22 19:23:49 -05:00
NovaFox161 1c7500a7ec Fix compilation issues due to weird plugin version shenanigans 2020-05-14 18:21:45 -05:00
NovaFox161 f648bf8f96 This should fix some issues with resources not being included 2020-05-08 23:01:47 -05:00
NovaFox161 cd9817b201 Convert to fully reactive, mostly
Okay, so its almost fully reactive. The API is still blocking as of
current. Everything else is reactive now:
- Command system
- All utility methods
- Event listeners
- Announcement Thread
- Google calendar auth

Added simple reactive wrappers for google calendar blocking calls

I have no idea if any of this works, but it *should* work. Time to test!
2020-05-03 17:19:53 -05:00
NovaFox161 65d4cad204 Reformat entire project to using spaces instead of tabs
Finally fucking fixing the formatting after all these years
2020-04-13 18:39:41 -05:00
NovaFox161 1c9eb49e95 Migrate to D4j v3.1.0-SNAPSHOT
Massive changes to the bot and d4j required migrating to the latest
snapshot. So far everything seems to work well, but will be tested later
on this week. Hopefully this is one step closer to being able to deploy
this to production in order to make the bot more stable and responsive.
2020-04-13 01:28:17 -05:00
NovaFox161 ff39bd155f Somehow this file didn't get committed 2020-04-11 16:05:10 -05:00
NovaFox161 11e5f40660 Fix update calendar endpoint not setting desc properly
Also fix database error
2020-04-10 21:38:26 -05:00
NovaFox161 9522404c91 Rewrite logger to be async
Completely rewrote our in-house logger so that its completely async.
Also designed the new logger so that we could pull it out of this
project and incorporated into our general utils library for all of our
other projects
2020-04-10 20:50:18 -05:00
NovaFox161 37c7f2d075 Fix several errors that were occurring for various reasons
This fixes an IllegalStateException happening when closing connections,
as well as some null errors caused by some changing of the logging
system.
2020-04-09 22:17:41 -05:00
NovaFox161 02f9c6e7e4 Add db migrations to fix data types in several tables
Apparently several tables were setup with incorrect datatypes resulting
in mapping issues. This is now resolved with the migration scripts
converting the datatypes to the correct types.
2020-04-09 13:17:36 -05:00
NovaFox161 4b7025215e Flyway requires regular mysql driver which was accidentally removed 2020-04-07 22:32:44 -05:00
NovaFox161 5c0c1e514d Convert all database calls to being reactive
This commit introduces the r2dbc api for all database handling to make
it fully reactive so future updates to make the bot fully reactive.
While most calls to the database are still blocking, this does use a
reactive driver for it so further work down the line will be able to use
the database reactively without much additional work.

These changes have not been tested, and will need to be tested
thoroughly as database use is the backbone for the bot's persistence
data scheme.
2020-04-07 22:18:43 -05:00
NovaFox161 f504696229 Convert several other data classes to be immutable 2020-04-05 20:23:14 -05:00
NovaFox161 2040505ed6 Remove debug statements as endpoint has been sped up as best we can
Endpoint now takes about 3-4 seconds to respond all told, which is
better than the original 15 seconds on average.
2020-04-03 16:51:36 -05:00
NovaFox161 5bac8a4c51 Dannie - Parallelize Mono/Database Calls to Improve Response Times 2020-04-03 16:40:52 -05:00
NovaFox161 c369710e50 Debugging guild get endpoint taking too long to execute
Add some more debug statements to see where execution is still slowing
down. So far its at about 4-5 seconds, the goal is to get it near 1 sec.
max
2020-04-03 15:00:46 -05:00
NovaFox161 524db88f6c Debugging guild get endpoint taking too long to execute
Optimize WebGuild conversion so that it will hopefully take less than
the current ~4 seconds to execute
2020-04-02 23:28:12 -05:00
NovaFox161 20eef0e115 Debugging guild get endpoint taking too long to execute
Rewrote a whole ton of the permissions checking so that it should run
faster. Hopefully this helps speed up the guild get endpoint
significantly
2020-04-01 20:55:22 -05:00
NovaFox161 ad0168de98 Debugging guild get endpoint taking too long to execute
This should optimize numerous things including discal role permission
check
2020-04-01 02:20:50 -05:00
NovaFox161 036596f552 Debugging guild get endpoint taking too long to execute
We have narrowed down where the slowdown starts and ends, however there
is still a lot of things happening between there, so therefore we are
checking what parts of those sections of the code are causing issues.
2020-03-31 22:55:35 -05:00
NovaFox161 1f5668a128 Debugging guild get endpoint taking too long to execute
Its taking, on average, 10-15 seconds to handle this request. To combat
this, we are adding a bunch of debug statements to diagnose *where* the
slowdown is occurring. The next part of this debugging process is to
figure out *why* it is running slow, and how to speed it up to
acceptable speeds.
2020-03-31 22:37:50 -05:00
NovaFox161 a5bd7cb444 Corrected wrongly configured repo deployment
Messed out how to deploy to repos in the poms as I forgot how to do it,
this issue is now fixed and it will correctly go through the deploy goal
while only actually deploying core to the repos.
2020-03-30 01:57:41 -05:00
NovaFox161 7729329a0b retool API to handle snowflake IDs as strings instead of longs
This is because they become out of range of JS's `number` type and cause
problems. So, by handling them as strings, and only strings withing the
API, this solves the issue and we should not run into precision issues
anymore.
2020-03-30 01:50:18 -05:00
NovaFox161 4db23c4f4a Accidentally casted to ArrayList instead of creating new ArrayList 2020-03-28 19:19:37 -05:00
NovaFox161 e7295031b0 Add support for changing language in dashboard 2020-03-28 19:11:12 -05:00
NovaFox161 9fb1d464dd Realize I confused roles and channels
I confused the handling of the control role and discal channel,
so that has now been corrected and it should work properly now
2020-03-12 23:37:45 -05:00
NovaFox161 5d265f7e2a Start work on adding control role update support
This is the initial progress on adding control role updating on the
dashboard. It probably won't work, but its progress.
2020-03-12 23:32:03 -05:00
NovaFox161 cde223e7af change nickname edit to block 2020-03-11 19:19:21 -05:00
NovaFox161 7e98659dd1 Hopefully fix issues with handling guild update requests 2020-03-11 19:02:12 -05:00
NovaFox161 33d5169bbb Sometimes I'm really dumb and duplicate a line of code 2020-03-11 18:21:19 -05:00
NovaFox161 0941d19a87 Did a dumb and didn't actually make web guild convert settings secure 2020-03-11 17:59:16 -05:00
NovaFox161 1b4ef13ac7 Fix up some handling of guild data transfer
- make sure that secure data is not sent to 3rd parties
- correct the permissions checker
- dashboard guild page should now load correctly
2020-03-11 17:51:55 -05:00
NovaFox161 d0b4181434 Use revision tag to handle project versioning in poms 2020-03-09 14:19:37 -05:00
NovaFox161 3fb549798d Remove now unneeded debug statements 2020-03-08 18:34:13 -05:00
NovaFox161 2d22b9a5e6 Fix event list month endpoint using int instead of long
In the process of this, also optimized a few database queries
2020-03-08 18:11:43 -05:00