b4e36efafb
[AB-203] restructuring listeners to use more common code and common interfaces for listeners and models restructuring entity listener to be async and added models fixing usage of repository save method adding interface dependencies to bundle dependency management
Sheldan
2021-03-21 10:58:31 +01:00
cfe7786d4d
[AB-200] fixing link embeds not working for users who left the server fixing some issues with optional dependencies (autowired creates null instances etc) fixing roll and roulette using not the proper default values fixing setPrefix not creating an instance, in case it originated from a default config fixing too many configuration properties in utility
Sheldan
2021-03-16 01:18:31 +01:00
94d6497995
[maven-release-plugin] prepare for next development iteration
Sheldan
2021-03-13 02:42:20 +01:00
a36a884ae9
[AB-199] adding build of sources and javadoc fixing javadoc as various places adding release plugin adding developer connection to scm updating release pipeline to new action versions
Sheldan
2021-03-12 23:43:52 +01:00
2ed456c164
[AB-197] splitting utility maven module into separate maven modules aligning some package names removing some unnecessary computed values from liquibase
Sheldan
2021-03-12 17:29:49 +01:00
e780b0e75c
[AB-137] fixing occurrences for templates in cases entities do not exist anymore fixing feature mode retrieval to adapt to lowercase fixing disable exp role creation and retrieval removing ansible code
Sheldan
2021-03-09 21:33:51 +01:00
821971523e
[AB-165] removing mocking utils and general test improvements
Sheldan
2021-02-28 21:46:45 +01:00
5f6746d742
[AB-149] adding command to reset configuration to default values removing listener to create system config instances adding default value retrieval to appropriate places making config key handling case insensitive changing exp multiplier to double value refactoring experience service bean test
Sheldan
2021-02-24 21:11:01 +01:00
20b6b37151
[AB-74] changing description and field splitting leading to no fractured texts, decision is based on the last space removing "safeFieldIteration" as its not necessary anymore splitting up embeds for the embed size limit
Sheldan
2021-02-21 02:50:57 +01:00
9db5889160
[AB-94] adding possibility to reference member/role/channel via name for parameters showing an embed for parameter handling exceptions adding discord webhook for build status
Sheldan
2021-02-20 23:17:21 +01:00
0e851021e7
Bump junit from 4.13 to 4.13.1 in /abstracto-application
dependabot[bot]
2021-02-20 12:30:58 +00:00
43eca33113
[AB-77] moving the templating module into the core module adding a possibility to overlay specific templates for particular servers adding commands to configure templates adding file parameter support
Sheldan
2021-02-19 16:27:27 +01:00
909dc87d94
[AB-182] added member parameter to starStats to show the starboard statistics for an individual member
Sheldan
2021-02-14 23:43:44 +01:00
876fbc01d9
[AB-120] adding jump link to modmail notification
Sheldan
2021-02-14 19:56:05 +01:00
cb7e904d29
[AB-81] adding notification message to feature setup in case the setup confirmation was denied
Sheldan
2021-02-14 19:26:55 +01:00
a536a0c2b3
[AB-191] grouping invite links in invite link deletion notification
Sheldan
2021-02-14 19:09:53 +01:00
94532be54d
[AB-112] adding star levels to setup feature wizard moving star level configuration to only be instantiated when needed
Sheldan
2021-02-14 16:35:51 +01:00
23bdf4e906
[AB-69] adding templating support to help modules
Sheldan
2021-02-14 14:20:01 +01:00
34b9bca7ac
[AB-192] removing second level cache changing assignable role place module name fixing starboard retrieving the starstats incorrectly fixing removing user assigned roles when removing a role from assignable role place fixing not being able to remove external emote for assignable role place
Sheldan
2021-02-13 14:48:56 +01:00
047c574319
[AB-190] migrating default config (featureMode, system config, post targets, feature flags) from tables to property files not longer immediately instantiating the feature flag instance when a new server is found, but only when its config is changed or when a feature mod has its config changed
Sheldan
2021-02-11 00:09:58 +01:00
ea12d67e5f
[AB-62] adding server id to more tables for easier joins and fixing structure at more places
Sheldan
2021-02-08 01:58:35 +01:00
038d5c3832
[AB-103] adding triggers to update created and updating attributes on tables fixing error handling in installer merging change sets to larger operations adding check constraints fixing suggestion id handling applying naming conventions to various columns adding indices to tables adding user in server and user locking
Sheldan
2021-02-07 03:06:48 +01:00
7aa5cbe304
[AB-177] adding ability to restrict the allowed mentions and configure them via commands on a server basis, default is defined via property file
Sheldan
2021-02-06 04:05:55 +01:00
b838678c15
[AB-184] adding various metrics to the system, organizing imports, changing some transactional behaviour adding okhttp metrics, split bot service into multiple services (guild, message), unified some places that services are used in order to interact with the api, and not directly the objects (this is to make it easier for metric to be accurate)
Sheldan
2021-01-29 17:46:41 +01:00
2a2a3aea70
[AB-68] adding invite filter with commands to allow/disallow invites, remove stored filtered invite links and show filtered invite links removing database entities from command context
Sheldan
2021-01-23 15:33:00 +01:00
fb3ed69650
[AB-154] split up private and guild message received handler, split handlers into async and sync handlers adapting the tests and improving tests to reduce usage of MockUtils adding some util methods to message bean extending cache for cached messages enabling to build cached messages from messages in DM channels (they are not part of the message cache) splitting multiple listeners to different beans, for better overview (emote updated) adding convenience service for reactions specifically split cached reaction and cached reactions, singular only contains one user, while the later contains all users fixing liquibase configuration for assigned role user fixing assignable role not having a transaction moved caching update a bit earlier in various methods fixing bug that a manual unmute caused duplicate unmute notification fixing short scheduled unmute not checking the new mute state limiting parameters for roll
Sheldan
2020-12-20 19:21:24 +01:00
69aa82e26e
[AB-63] adding fun and entertainment related commands commands: roll, roulette, lovecalc, choose, 8ball
Sheldan
2020-12-13 20:42:41 +01:00
325264a325
[AB-150] creating repost detection feature including configuration and documentation adding http and hash service adding ability to add default emotes to a message to message service adding message embedded listener to wrap the embedded event adding custom channel groups which can be defined by modules, in case a change on a channel group (only created and updated) happens a listener is available in order to sync the state in dependant areas changing command receiver re-throwing abstracto runtime exceptions in order to display them better changing channel group parameter handler to throw an exception in case the channel group was not found adding User in a server parameter handler split channel not found exception to be able to differentiate between not found in database and not found in guild changing exception handling in command received handler to handle the case for only one parameter handler future which failed (the whole single future failed, which was not reported) changing parameter type of removeFromChannelGroup to AChannel in order to be able to delete channels in the database via ID moving method to mock utils for mocking consumer removing parameter validation from commands, as it should be done in the command received handler and parameter handlers anyway
Sheldan
2020-12-04 00:38:18 +01:00
e966c710ce
[AB-60] added java doc for statistic module, added feature mode limitations to emote listener, replaced redundant Embeddable with ServerSpecificId
Sheldan
2020-11-23 02:27:49 +01:00
448d555dba
[AB-166] refactored conditions to not use exceptions for their regular case, split up feature mode exception into condition and exception, if the conditions need to be checked somewhere else, a separate exception is required, fixed command not being disabled properly in channels
Sheldan
2020-11-21 22:07:34 +01:00
04f1db2408
[AB-80] added tracking of emotes used by server members and configuration updated sonar scanner version changed some commands to be silent instead of adding a check reaction
Sheldan
2020-11-11 17:11:30 +01:00
c60cdb9d98
[AB-152] adding optional parameter to deploy config script in order to deploy template config
Sheldan
2020-11-02 15:42:43 +01:00
a5b2e40c6b
[AB-155] removing ansible dependency from installer, restructuring deployment container to be packaged with the respective versions, removing build for docker container from maven, for now fixing liquibase setup for feature mode
Sheldan
2020-11-02 13:03:18 +01:00
389b38f4f0
[AB-151] adding ability to define a priority in order to define which listener is executed before another
Sheldan
2020-10-20 21:58:04 +02:00
dca98c2953
[AB-96] adding ability to edit/delete modmail messages via editing/deleting the original message causing the message, adding featuremode to modmail to define whether or not there is a separate message posted to the mod mail thread, to see it easier, renaming modmail related tables to singular, adding some necessary methods (caching) to all entities
Sheldan
2020-10-19 23:55:51 +02:00
1b98436736
[AB-73] adding different feature modes to define whether or not certain actions should be logged, changing name of setup, disable and enable command to show that they are supposed to be for features
Sheldan
2020-10-17 16:26:02 +02:00
a342fac783
Bump junit from 4.13 to 4.13.1 in /abstracto-application
dependabot[bot]
2020-10-16 18:57:30 +00:00
0aa7d3f036
[AB-78] adding new concept of feature modes, with splitting it up to new commands and default mode concept refactoring command received handler to only load the entities in the same thread as the actual executed commands, so that user initiated context contains valid references from the same thread updating documentation fixing issue when the result of role calculation result in no experience role id
Sheldan
2020-10-15 00:42:42 +02:00
bc9afc9bfc
[AB-135] adding a template to describe the parameter validators for help texts, fixing assignable roles not available as module
Sheldan
2020-10-12 11:52:28 +02:00
36d11371cb
[AB-139] changing the places at which there might be an uncached member object fixing integer validator fixing syncing roles not working if the role did not change in the database fixing warn id being flipped fixing star stats model
Sheldan
2020-10-11 22:04:18 +02:00
1d3c414d6b
[AB-144] fixing command key parameter handler and assignable post refreshing
Sheldan
2020-10-07 20:42:19 +02:00
0145e7670d
[AB-138] improving logging at various places fixing various issues regarding async commands and exception handling, fixing role role calculation being done twice
Sheldan
2020-10-07 09:29:56 +02:00
a391381ff6
[AB-136] replacing some rare occurrences where fake objects where used for actual database operations replacing a few sync commands with async commands refactoring parameters in assignable role place service bean fixing emote parameter handler to also consider default emojis removing unused description in command replacing some ARole parameters with Role parameters, so we can be sure they exists added a few TODOs marking exception changes required
Sheldan
2020-10-03 15:24:52 +02:00
0f6f6a1e49
[AB-54] adding various command parameter handlers removing old parameter length validation
Sheldan
2020-10-03 10:31:33 +02:00
f0d517af22
[SONAR] fixing major sonar issues
Sheldan
2020-09-30 01:31:21 +02:00
8e05bc90ea
[AB-70] adding concept of command parameter validators and applied them at various places, this has the intention for commands to fail early removing duplicated command for assignable role places
Sheldan
2020-09-30 00:17:43 +02:00
0f9a0dc143
[AB-132] fixing experience job not creating user experience records in the database fixing setup command not being considered templated changing column name for counters fixing liquibase configuration for creating postgres functions fixing duration format expcetion model not available in the template enabling builds for hotfix/bugfix branches
Sheldan
2020-09-27 00:36:07 +02:00
5081c3174f
[AB-76] replaced usage templates for commands with a generated usage string, removed possibility to define the usage directly on the help added Google guava dependency minor fixes in documentation fixed versions in main pom
Sheldan
2020-09-24 02:40:44 +02:00
76adda90a3
[AB-57] [AB-61] reworked commands and services to work with completable futures and moved the database operations to the very last operation so we have transaction safety in more areas added some cache annotations to the default repository functions reworked how the undo cations are processed within commands, they are executed in a post command listener when the state is error added a counter id to generate ids to be unique within servers, changed a few tables to be unique within a server added future utils class for wrapping a list of futures into one moved abstracto tables to separate schema in the installer refactored experience gain to work with more futures and delayed database access
Sheldan
2020-09-20 11:11:20 +02:00
552ecc26b8
[AB-99/AB-66] changed commands to use embeds for exceptions instead of direct messages added models instead of using HashMaps for exceptions added a lot of exceptions for different cases refactored a few commands to be fully async instead of fire and forget
Sheldan
2020-08-29 01:24:06 +02:00
fbb36ae9d5
created concept of auto load macros, these are macro files which are loaded automatically on startup and can be used in any template changed assignable post config to be a full emote instead
Sheldan
2020-08-16 12:40:41 +02:00
fd4d784081
added assignable role place module including: setting up, configuring, deleting commands and documentation upgraded JDA version to 4.2.0 refactored multiple interfaces to be more convenient/contain more information (reaction added/removed now gets the actual event) added generic way to check for conditions. these conditions are provided by modules and are loosely connected via condition context and a condition name added changeable flag to emotes to indicate that they can be updated via setEmote refactored emote parsing in command parameters, the command parameters will now contain a fake emote added feature to embed templates for fields to force a new message regardless of the discord limit added some more functionality to message and channel service regarding field edit/embed sending introduced the full emote parameter, to have both the emote (if custom) and a fake aemote at hand refactored some methods to already throw exceptions within the retrieval methods, instead of optionals which need to be dealt outside changed getEmotes to getEmotesBag to have duplicates of emotes fixed setEmote to behave correctly with new parameter types fixed creation of emotes, which previously created additional instances fixed templating multiple fields handling refactored command handling to allow async commands, they are the same interface, but configuration dicates whether or not it is async added generic exception reporting for async commands refactored a bunch of service methods to be named optional, and the non optional methods throw exceptions in case nothing is found added a few more customized exceptions added clearing freemarker internal template cache to clear cache added feature to skip, not use, embeds if they look to be empty (no fields, no description, no attachment) added virtual env to gitignore fixed initial sync of roles un-marking roles as deleted added some convenience methods to remove reactions from users directly fixed post command handling in case it is not a templatable instance fixed exceptions without cause in generic exception model
Sheldan
2020-07-23 02:22:58 +02:00
5317199bf4
added more technologies to readme and updated licenses
Sheldan
2020-07-17 21:56:33 +02:00
9374dfb912
added liquibase for setup of databases and initial values fixed some table names to be singular migrated templates to separate repository added seed data to initial version in liquibase migrations instead of property files (post targets, emotes etc) and created some default tables containing those default values added separate artifacts to be used containing only the liquibase config added shell script as a wrapper for ansible deployment, to handle an environment variable defining whether or not the deployment should be executed added logback scan period added licenses for ansible, liquibase, docker and docker-compose
Sheldan
2020-07-01 20:44:21 +02:00
e8767429bf
update JDA and jda Utilities version fixed typos in the code
Sheldan
2020-06-28 12:04:34 +02:00
c44eb80fc5
added message to user initiated context fixed templates for ban and kick logging refactored kicking service fixed guild not found exception template added command validator to be used for unit testing commands added default values for command configuration changed some interfaces to message channel instead of text channel added separate executor service for un-mutes, which is shared updated spring boot version to 2.3.1 removed database connection string from properties added logback configuration changed some future logic in purge refactored error message for un mute, when there is no active mute refactored listener interface and removed usage of context utils added tests for moderation services
Sheldan
2020-06-20 11:08:44 +02:00
8acd4f818d
Fixed multiple server handling for rank command, without this the rank was global, and did not limit the rank to the server defined the name table name for AUserInAServer
Sheldan
2020-06-19 00:36:41 +02:00
19a7d09576
updated javadoc for experience tracking added/changed some javadoc for mod mail some small interface changes changed a few methods to actually use the exists mechanic, instead of checking for null values added some templates instead of hard coded strings fixed some bugs related to mod mail
Sheldan
2020-06-13 00:51:50 +02:00
e76351ddc1
added first version of readme
Sheldan
2020-06-10 13:50:35 +02:00
ac93440546
added tests for utility module refactored various commands and services optimized code for message embeds removed emoteUtils completely and moved to service removed suggestion validation, because its now done via feature config fixed regex for discord links changed template to handle the case in which a member which suggested it originally left the server added suggestion update exception in cases the message to edit, does not qualify as a suggestion added check to not allow cross server quoting and added test case refactored mocking for jda objects
Sheldan
2020-06-07 00:22:42 +02:00
a577932c42
removed instance specific modules from code base fixed user experience object not being created removed top module, because it does not serve a purpose anymore
Sheldan
2020-06-06 16:22:43 +02:00
d14e917329
added overview to existing post targets if no parameter is provided for the post target command
Sheldan
2020-06-05 17:33:41 +02:00
601c4b7121
added configuration to deploy documentation to GitHub pages when a release is happening adapted documentation configuration
Sheldan
2020-06-03 21:52:58 +02:00
db8afde7ea
added job and configuration for publishing the artifacts on github packages
Sheldan
2020-06-03 21:03:06 +02:00
1091e66013
added purge command to delete messages via bulk delete adapted api of status message service added concept of self destruct command results, these will cause the command message to be deleted
Sheldan
2020-06-03 19:22:31 +02:00
072072dffc
added commands to documentation small improvements in the documentation added alias to listDisabledExperienceRoles command
Sheldan
2020-06-02 16:35:02 +02:00
563564aabe
added tests for experience tracking module refactored some things in experience tracking changed the paging behaviour for leader board and added check for negative numbers fixed rank not being correct for further pages added test-common module to have some common code für tests fixed command creation
Sheldan
2020-05-30 09:27:41 +02:00
62de5c2255
Added template service tests
Sheldan
2020-05-29 23:55:23 +02:00
f4edf7a77d
added template service, template management service bean, freemarker methods and template loading tests added templating exception changed embed configuration to have builders enabled mocking of final classes for mockito
Sheldan
2020-05-27 23:59:48 +02:00
a826cda95a
Added initial version of github action
Sheldan
2020-05-27 15:55:15 +02:00
8413bc8314
added possibility to the ID of a user instead of a mention for a member parameter
Sheldan
2020-05-27 15:39:12 +02:00
feb92698ef
added command to show the avatar of member
Sheldan
2020-05-27 15:29:23 +02:00
de4eeeacca
added serverInfo help added userInfo command added offsetDateTime to the custom date formatter
Sheldan
2020-05-27 15:10:54 +02:00
be97e825cc
added serverinfo command added freemarker extension in order to split up elements in fields at a point which makes sense (necessary for emotes to render) added additional check to split fields if they are indeed over the max length
Sheldan
2020-05-27 13:07:51 +02:00
2aa55f6ab6
added java doc and some comments to scheduling module
Sheldan
2020-05-26 13:50:48 +02:00
b554419381
updated java doc in templating
Sheldan
2020-05-26 12:40:06 +02:00
6908a7da85
upgraded to newer jda version
Sheldan
2020-05-26 12:24:24 +02:00
a682428028
merged exceptions for setup steps to one common exception, which contains the concrete exception added exception handling for incorrect mod mail category id
Sheldan
2020-05-26 11:48:12 +02:00
158d957eee
added exception handling (with templated messages) for setup of post target and system config
Sheldan
2020-05-26 00:51:35 +02:00