Commit Graph

1334 Commits

Author SHA1 Message Date
Luck
4514a17eaf
Remove MRUCache
Now we're using ConcurrentHashMap, it's usefulness in terms of performance is debatable
2020-07-03 18:23:34 +01:00
Luck
adbd2fc81f
Use ConcurrentHashMap instead of Caffeine in CachedDataManager
The behaviour of Caffeine cache invalidation calls is "undefined for an entry that is being loaded (or reloaded)" - this causes a nasty race condition in CachedDataManager, because we rely on the call to #invalidate to completely clear the cache and prevent old/outdated data from sticking around & being used for permission queries.

This is an unfortunate characteristic of Caffeine, because other than that, it is perfect for our use-case.
2020-07-03 17:57:53 +01:00
Luck
8b506b6a95
Don't re-use PermissionCache instances 2020-07-03 15:18:58 +01:00
Luck
426c8565fd
Small optimization to processExportedPermissions 2020-07-03 14:57:46 +01:00
Luck
bd6d3ab7c0
Optimize PermissionHolder#hasNode 2020-07-02 12:28:30 +01:00
Luck
d12d13d6ea
Fix NodeMap#size method and rename some things 2020-07-02 12:16:13 +01:00
Luck
cc08390abe
Remove NodeMap immutable cache 2020-07-02 12:06:37 +01:00
Luck
b460e282b1
Add ConstraintNodeMatcher toString method for use in commands 2020-07-02 10:44:52 +01:00
Luck
21ae1dbac0
Fix potential race condition in MRUCache 2020-06-21 22:07:53 +01:00
Luck
6cb0f5e810
Use a non-async cache in CachedDataManager 2020-06-21 21:23:57 +01:00
Luck
2ac7d3dfe6
Refactor command argument parsing 2020-06-21 19:58:17 +01:00
Luck
bfaa543ecd
Fix NPE in ConfigurateConfigAdapter#getStringList (#2399) 2020-06-21 10:18:27 +01:00
Luck
f893b1c632
Add optional time parameters to permission/parent removetemp commands (#1384) 2020-06-20 22:01:27 +01:00
Luck
cb5a28f043
Use the only/default track if one is not specifed in the promote/demote command (#1581) 2020-06-20 21:03:01 +01:00
Luck
bd9718c5af
Add log notification filters (#1980) 2020-06-20 20:46:54 +01:00
Luck
df324de9ec
Add DataTypeFilter 2020-06-12 23:14:33 +01:00
Luck
2bb1aa7511
Change behaviour of resolveInheritanceTree when 'resolve inheritance' flag is false 2020-06-12 20:34:57 +01:00
Luck
0bef0902c0
Update some dependencies 2020-06-10 20:41:39 +01:00
Luck
91337b49ea
Just use the section char instead of some other random one
Idk wtf I was thinking
2020-06-08 23:47:10 +01:00
Luck
f5e41f7e7e
Cleanup chat meta commands 2020-06-08 23:44:25 +01:00
Luck
fe0e82f285
Verbose command shouldn't be able to run as console 2020-06-04 14:46:11 +01:00
Luck
8996cf02af
Add player argument to'/lp verbose command' to execute the test command as another player 2020-06-04 01:32:56 +01:00
Luck
e37c77a1be
Add '/lp verbose command <command>' for easy testing of command permissions 2020-06-03 22:32:24 +01:00
Luck
11998b2dd6
Some misc cleanup 2020-06-03 21:20:41 +01:00
Luck
8754123535
Fix parsing second optional argument in editor command 2020-05-30 02:39:37 +01:00
Luck
91d75424f4
Include users which inherit the group when running /lp group <group> editor 2020-05-30 02:13:18 +01:00
Luck
c5c99abd16
Improve argument based perm checks for the editor 2020-05-30 01:54:18 +01:00
Luck
6c88f7629e
Add optional filter argument to editor command 2020-05-30 01:47:31 +01:00
Luck
98c71739f8
Fix user ordering in the editor 2020-05-30 01:37:24 +01:00
Luck
25551641fc
Add option to merge into instead of overriding existing data in imports (#2324) 2020-05-28 21:36:06 +01:00
Luck
00b701f129
Improve undo command generation (#2318) 2020-05-28 20:53:07 +01:00
Luck
ab082aa311
Group names should always be lowercase in inheritance nodes 2020-05-28 00:49:46 +01:00
Joshua Schmitt
dc32c84bb3
Increase world column max length (#2334) 2020-05-27 14:02:53 +01:00
Luck
0bb4161397
Use nicer toString for Durations in log messages 2020-05-27 10:46:24 +01:00
Luck
4a049ca732
Use contains instead of startsWith for context tab completions 2020-05-27 10:43:30 +01:00
Luck
6b3e4bdc71
Add ContextUpdateEvent and related functionality 2020-05-25 21:49:49 +01:00
Luck
5c0d82f306
Refactor config handler classes 2020-05-25 10:42:32 +01:00
Luck
5a6176def5
Enforce removal of server=global and world=global contexts at a higher level 2020-05-21 17:30:13 +01:00
Luck
1ca1bcf1d1
Make getUniqueUsers more resilient to invalid uuids 2020-05-20 21:23:40 +01:00
Luck
ea5a05d770
Fix incorrectly reading node value from the value field when reading from the flatfile meta section (#2312) 2020-05-20 18:22:10 +01:00
Luck
ed85ab1bfd
Change ContextSet 'satisfy' behaviour (#2300) 2020-05-20 14:51:03 +01:00
Luck
c09e4a1aa0
Update web app urls 2020-05-20 14:45:20 +01:00
Luck
ee36fa9d81
Fix prefix being displayed twice in extensions info section 2020-05-19 17:47:07 +01:00
Luck
bfa5fc43cd
Rename getWithPermission method internally 2020-05-19 17:45:16 +01:00
Luck
5d6389249a
Fix bug with searching for group permissions via the api 2020-05-19 13:32:06 +01:00
Luck
637cb0d836
Fix group info command 2020-05-19 09:55:00 +01:00
Luck
bfebe6a5d0
Cleanup MetaStack, cache the computed prefix/suffix when meta accumulator completes 2020-05-19 00:36:39 +01:00
Luck
c120fa6a4d
Fix startup on Nukkit (#2290) 2020-05-16 11:52:51 +01:00
Luck
918ea7503a
Fix bug with duplicated users in editor (lucko/LuckPermsWeb#235) 2020-05-13 11:20:11 +01:00
Luck
98eb756951
Add contextual data section to group info command too 2020-05-12 18:34:07 +01:00
Luck
86eeeb5b94
Slightly change plugin prefix 2020-05-12 17:54:06 +01:00
Luck
a3e6628e11
Improve user info command 2020-05-12 16:54:02 +01:00
Luck
84bc4217de
Fix command arg rewriting 2020-05-12 16:35:43 +01:00
Luck
b88819b9bb
Cleanup Bukkit/Nukkit dummy classes, some aren't necessary anymore 2020-05-11 21:58:24 +01:00
Luck
c7a0e59919
Catch RejectedExecutionException in BufferedRequest (#2289) 2020-05-11 21:15:42 +01:00
Luck
9984d4be42
Optimize ActionLog and Paginated util 2020-05-11 21:00:42 +01:00
Luck
a1c91b9007
Improve sync task performance 2020-05-11 13:46:02 +01:00
Luck
6a256d59f5
Fix null check in selectAllGroupPermissions 2020-05-11 13:12:30 +01:00
Luck
fca2f1e6de
Optimize loading lots of groups from SQL storage types (#2287) 2020-05-11 12:54:42 +01:00
Luck
ec7994a561
Print more useful debug message when a LinkageError is thrown due to bad SLF4J classloading
This is a longstanding issue, mostly caused by plugins with bad Maven shade configurations.

https://github.com/lucko/LuckPerms/issues?q=slf4j
2020-05-11 01:41:01 +01:00
Luck
9f22bf2fbf
Update the client commands list when permissions are changed (#2262) 2020-05-10 22:18:01 +01:00
Luck
5f0df1b167
Increase editor users limit to 1000 & sort users according to their max inherited group weight 2020-05-10 16:31:35 +01:00
Luck
73d76d860e
Move PlayerAdapter to platform package 2020-05-10 13:51:30 +01:00
Luck
bcfcb64931
Add modifyUser and modifyGroup convenience API methods 2020-05-10 12:40:20 +01:00
Luck
a19cb71394
Add PermissionHolder#getQueryOptions API method 2020-05-10 12:22:40 +01:00
Luck
52731fe68e
Add getInheritedGroups and getNodes filtered by type methods to the API (#1926) 2020-05-10 01:19:43 +01:00
Luck
7845d89f10
Add some convenience API methods (#1926) 2020-05-09 23:41:28 +01:00
Luck
3d358e57ff
Fix group listmembers command behaviour with the default group (#2088) 2020-05-09 19:16:17 +01:00
Luck
bd9ae9dbd5
Cleanup command manager aliases handling 2020-05-09 19:04:50 +01:00
Luck
f281927578
Re-add group/g --> parent alias (#2054) 2020-05-09 18:40:15 +01:00
Luck
665c53093a
Tweak HikariCP config to hopefully improve recovery from database downtime (#2223, #2084) 2020-05-09 18:19:49 +01:00
Luck
10fbc24f43
Add option for Sponge style wildcards on other platforms (#1625) 2020-05-09 17:48:29 +01:00
Luck
6631e9144e
Put Nullable annotations in the right place 2020-05-09 17:32:52 +01:00
Luck
7ae532f082
Add UserManager/GroupManager searchAll method 2020-05-09 17:27:17 +01:00
Luck
1af55e3720
Rename InheritanceHandler --> InheritanceGraphFactory 2020-05-07 03:48:09 +01:00
Luck
fe32aa2d33
Download dependencies in parallel 2020-05-06 02:50:19 +01:00
Luck
f6460c2802
Fix Year 2038 problem for future installs (#2126) 2020-05-06 00:13:19 +01:00
Luck
045c10048d
RedisMessenger support for SSL (#2263) 2020-05-05 17:38:24 +01:00
Luck
308356de80
Refactor group name parsing in commands 2020-05-05 17:24:44 +01:00
Luck
cd25681cd3
Remove special message for error 403
it was a firewall config error at my end after all lol woops
2020-04-28 21:40:52 +01:00
Luck
b17da055af
Increase UserHousekeeper cleanup interval & print debug message when unloading 2020-04-28 13:47:13 +01:00
Luck
99348fce53
Reply with more descriptive message when http requests fail 2020-04-28 13:29:09 +01:00
Luck
c03aca35d6
Add checkTime property to verbose data (#2226) 2020-04-26 10:50:10 +01:00
Luck
07b2df7c7e
Cleanup configuration files slightly 2020-04-23 13:05:39 +01:00
Luck
36335c10a4
Cleanup imports 2020-04-17 17:49:32 +01:00
Luck
14d952a212
Code style 2020-04-16 15:09:01 +01:00
Luck
37e09caac5
Slightly optimize SimpleMetaValueSelector by only invoking the selection strategy if there is a selection to be made 2020-04-16 14:50:44 +01:00
Luck
4d7a6cb658
Add meta-value-selection config setting (#2167) 2020-04-16 14:44:38 +01:00
Luck
cc80fe5105
Cleanup ConfigKeys class a bit 2020-04-09 12:00:32 +01:00
Luck
83e9ac04b2
Optimize VerboseHandler by delaying construction of stack trace array until later 2020-04-07 17:56:56 +01:00
Luck
8cecfe5b7c
Avoid calls to the Bukkit singleton 2020-04-07 17:50:08 +01:00
Luck
54aed80db8
Fix applying track reordering from the webeditor (#2144) 2020-04-06 11:55:49 +01:00
Luck
0d89fc9d28
Revert "Trial using the default Java hostname verifier instead of okhttp's (#2134)"
This reverts commit cee34d0c31.
2020-04-05 17:49:20 +01:00
Luck
cee34d0c31
Trial using the default Java hostname verifier instead of okhttp's (#2134) 2020-04-05 17:41:32 +01:00
Luck
d2e60eb5ac
Attempt to fix issue converting MongoDB document _id to UUID (#2110) 2020-04-05 16:42:09 +01:00
Luck
141d3e26ea
Update dependencies 2020-04-04 22:47:43 +01:00
Luck
9f0fe9e0cb
Use a dynamically generated class instead of a reflection Proxy in NonClosableConnection 2020-03-31 14:29:09 +01:00
Luck
2028d65579
Rename some classes 2020-03-31 13:38:28 +01:00
Luck
6805574553
Use a MethodHandle to call event class constructors 2020-03-30 19:46:30 +01:00
Luck
c3128dec0d
Generate actual classes for LP events at runtime instead of using proxies + InvocationHandlers 2020-03-30 19:19:27 +01:00