Commit Graph

1375 Commits

Author SHA1 Message Date
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
Luck
b65639cd76
Ignore empty string world names in Bukkit WorldCalculator (#2119) 2020-03-30 14:32:27 +01:00
Luck
42e9f43443
Store result of primary group calculation in CachedMetaData 2020-03-30 14:13:17 +01:00
Luck
c40ad63291
Slightly refactor AbstractConfigurateStorage#appendNode 2020-03-28 10:22:04 +00:00
Luck
497846e5a6
Run some auto code inspections 2020-03-26 17:01:55 +00:00
Luck
0729be0f0a
Print IOException when uploading web editor data fails (#2087) 2020-03-24 10:44:31 +00:00
Luck
2adea2d3dc
Improve reliability of java version check in ReflectionClassLoader (#2093) 2020-03-24 10:35:13 +00:00
Luck
30d7768299
Fix parsing contexts from commands with server/world = global (#2093) 2020-03-24 10:03:34 +00:00
Luck
779bbb9f88
Fix typo
3973aa1000 (r37923265)
2020-03-19 16:24:14 +00:00
Luck
a721cc0b7c
Remove unused DefaultQueryOptions class 2020-03-19 12:57:52 +00:00
Luck
3973aa1000
Add notice to inform users to ignore 'illegal reflective access' warning messages (#952) 2020-03-19 12:14:17 +00:00
Luck
ac9fe74785
Catch subclasses of Throwable when trying to create a FileWatcher (#2066) 2020-03-19 11:30:19 +00:00
Luck
46c9e3b713
Clarify method name in QuotedStringTokenizer 2020-03-19 11:06:41 +00:00
Luck
3086724e92
Don't print InterruptedExceptions in AbstractFileWatcher (#2044) 2020-03-14 21:26:13 +00:00
Luck
fbac03e372
Remove MinimalApiProvider & refactor usages away from static access 2020-03-13 18:13:12 +00:00
Luck
2518a7c8e5
Fix NPE in QueryOptionsImpl (#2051, #2052) 2020-03-11 11:38:38 +00:00
Luck
bca766c20d
Ensure immutability of QueryOptions options map 2020-03-04 12:45:13 +00:00
Luck
bb3afa21a4
Always store node metadata keys in a HashMap, not IdentityHashMap, and ensure immutability when built 2020-03-04 12:44:47 +00:00
Luck
85451a9a20
Remove legacy import functionality
Users wishing to import data from the old export formats will need to downgrade LuckPerms to a version before this commit, import their data, and then upgrade again.
2020-03-03 11:20:32 +00:00
Luck
d475ace76c
Export users & tracks in a consistent order 2020-03-03 11:03:30 +00:00
Luck
9f3395f256
Fix StringIndexOutOfBoundsException with empty string in QuotedStringTokenizer (#2041) 2020-03-02 22:52:08 +00:00
Luck
c6bda0875c
Change argument tokenizer to support unicode double quote characters (#1999) 2020-03-02 15:28:32 +00:00
Luck
0a3141841c
Rename variable for silent flag 2020-02-27 13:20:14 +00:00
Luck
e66ab1be0d
Properly close file watcher on disable
5ce8217cd5 (r37466536)
2020-02-24 23:45:30 +00:00
Luck
5ce8217cd5
Refactor file watcher 2020-02-24 18:26:52 +00:00
Luck
9f7d431d34
Accept empty contexts.json file as valid 2020-02-11 15:35:16 +00:00
Luck
d937c9ce06
Update commodore to 1.7 2020-02-10 00:45:47 +00:00
Luck
2eabe845d7
Update commodore to 1.6 (#1939) 2020-02-09 15:44:52 +00:00
Luck
4cfee76202
Change layout of library storage 2020-02-09 15:24:04 +00:00
Luck
9546987970
Fix AbstractUserManager to only load users once in #loadAllUsers 2020-02-03 00:44:08 +00:00
Luck
7a624fb449
Add additional call to invalidate cached data during a sync task 2020-02-03 00:30:18 +00:00
Luck
a779b31ca5
Refactor SQL storage implementation 2020-01-25 16:02:37 +00:00
Luck
8fa629a243
Fix/catch IllegalArgumentException when estimating potential world contexts (#1951) 2020-01-25 12:59:41 +00:00
Luck
0864cf756c
Cancel delayed/repeating tasks at the start of the disable process (#1935) 2020-01-25 12:38:24 +00:00
Luck
7e8402b542
Fix compile errors 2020-01-17 10:05:19 +00:00
Luck
abad672bef
Implement support for Vanilla command target selectors (e.g. @p, @r) for Bukkit & Sponge 2020-01-16 17:49:28 +00:00
Luck
e151fbe298
Build against 1.15 APIs 2020-01-16 16:05:19 +00:00
Luck
2ccb475aa0
Cleanup command abstraction classes 2020-01-15 23:54:43 +00:00
Luck
352f3bd263
Ensure response body is closed when a http request is not successful (#1912) 2020-01-10 12:50:40 +00:00
Luck
b73b73e221
Add rewrite rule in legacy importer for for switchprimarygroup command (#1922) 2020-01-09 23:18:05 +00:00
Luck
c1e3660551
Update commodore to 1.5 2020-01-04 23:26:53 +00:00
Luck
a33f326cfc
Fix duration parser handling of weeks, months & years (#1905) 2019-12-31 18:04:03 +00:00
Luck
83883aa7e6
Replace internal brigadier command structure with Commodore's file format 2019-12-29 22:01:38 +00:00
Luck
3fae4e5e9e
Refactor CacheMetadata 2019-12-29 18:34:55 +00:00
Luck
46dc4e5104
Cleanup verbose logging for groups 2019-12-29 17:54:11 +00:00
Luck
242993763c
Remove vault-debug option
This is now covered pretty much entirely by verbose data.
2019-12-29 17:37:08 +00:00
Luck
b84518e1f1
Lots of misc cleanup 2019-12-29 16:26:05 +00:00
Luck
b2593d409e
Invalidate all user/group caches after node changes are made to groups via the API 2019-12-29 01:17:30 +00:00
Luck
d3b3a8af38
Some small cleanup changes 2019-12-29 00:55:41 +00:00
Luck
ca33cee79d
Fix DateTimeFormatter usage in VerboseListener 2019-12-27 23:30:33 +00:00
Luck
2d456bd346
Iterators class refactoring 2019-12-27 23:17:18 +00:00
Luck
10680668db
Fix NPEs caused by RepeatingTask initialisation race condition 2019-12-26 20:25:14 +00:00
Luck
0e64b61be4
Improve DurationParser regex 2019-12-25 00:04:39 +00:00
Luck
96c53091d0
Make use of Instant / Duration classes where possible for time handling 2019-12-24 23:10:26 +00:00
Luck
6e64f80c81
Cleanup temporary handing in PermissionHolder#setNode 2019-12-24 18:11:58 +00:00
Luck
8906e4c4fc
Fix PermissionHolder#setNode with accumulate temporary modifier (#1839) 2019-12-24 17:54:35 +00:00
Luck
cc5d7ea873
Don't randomly add 1 second to parsed dates 2019-12-24 17:49:27 +00:00
Luck
fae5ebe226
Prefer "storage provider" to "dao" in logging messages for consistency with rest of code base 2019-12-24 14:08:23 +00:00
Luck
9a92920120
Downgrade h2 version to 1.4.199
Fixes https://gist.github.com/lucko/2ba1a9eb52fd76da19e54888c2595381

See: h2database/h2database#2078
2019-12-24 14:00:48 +00:00
Luck
dc5c6b0138
Set character set to utf8 for messenger table (#1887) 2019-12-24 13:46:19 +00:00
Luck
88c432496b
Reimplement "legacy" shorthand syntax
i.e. using ( ) for groups, and | for list separation
2019-12-24 13:24:20 +00:00
Luck
63b890d522
Rename EventFactory --> EventDispatcher 2019-12-24 13:05:48 +00:00
Luck
cd5c8d7cdf
NodeEqualityPredicate refactoring 2019-12-21 19:58:37 -05:00
Luck
d80017ba7b
Refactor /lp import command, better handling when no file extension is provided 2019-12-21 17:46:37 -05:00
Luck
5eb8a262be
Set giveDefault to true when running the 'clear' command 2019-12-14 17:22:48 +00:00
Luck
7474842b45
Cleanup the way contexts for transient permissions are determined 2019-12-14 17:06:26 +00:00
Luck
bd349ac4a3
Use standard (not Identity) HashMaps for OptionKeys and NodeMetadataKeys 2019-12-13 14:02:31 +00:00
Luck
06f7900318
Use thee default set of flags by default in QueryOptions.Builder, etc 2019-12-13 11:28:46 +00:00
electron
d8ac199858 Additional SQL query escaping fixes (#1847, #1854) 2019-12-05 21:46:00 +00:00
Luck
9cf21e2927
Include loaded extensions in the info command (#1849) 2019-12-05 21:44:45 +00:00
electron
86a15b9a66 Escape table name with backticks (`) in sql messenger (#1847, #1848) 2019-12-04 20:50:56 +00:00
electron
31b57df567 Fix json action serialization (#1843, #1844) 2019-12-04 11:18:37 +00:00
Luck
a07f876c85
Re-implement parsing first/second context values as server/world respectively (#1837) 2019-12-02 21:23:58 +00:00
Luck
2eb0c1e67e
Use getPlainDisplayName to get name for hover messages (#1663) 2019-12-02 21:03:45 +00:00
Luck
6325e25630
Limit the number of scheduler work threads 2019-12-02 15:10:18 +00:00
Luck
01e17adf82
Cleanup imports 2019-11-25 22:52:37 +00:00
Luck
4d3c692402
Fix concurrency bug in CachedDataManager MRU cache
This resolves a longstanding issue with TownyPerms (#1330)
2019-11-25 20:31:14 +00:00
Luck
787f691f44
Improve shorthand parser 2019-11-25 00:34:23 +00:00
OmegaWeapon_
500385cd3e Add temporary modifier to the argument list for permission/parent settemp (#1817) 2019-11-24 16:27:36 +00:00
Luck
6df64a29dc
Don't set username to null when a user is requested by uuid alone 2019-11-24 00:40:38 +00:00
Luck
233324f6c9
NodeMap optimizations 2019-11-24 00:40:38 +00:00
Andre_601
0d9106185c
Add note about checking console to storage errors (#1678) 2019-11-23 18:19:19 +00:00
Luck
2316b6806e
Cleanup in StackTracePrinter 2019-11-23 17:43:56 +00:00
Luck
94418d3648
Log thread in verbose events 2019-11-23 17:26:48 +00:00
Luck
479b2d026c
Remove sql schema migrations 2019-11-23 14:15:30 +00:00
Luck
8e9683b33f
Fix compile 2019-11-23 14:10:17 +00:00
Luck
86aadf2cf8
A few more small API changes 2019-11-23 12:59:40 +00:00
Luck
95d2832884
A few more small API changes 2019-11-23 12:52:26 +00:00
Luck
213b2fcb44
Downgrade okhttp & okio 2019-11-19 18:09:14 +00:00
Luck
c4bd657826
Changes to messaging service setup 2019-11-19 15:18:47 +00:00
Luck
a5e15b8a29
More work 2019-11-18 21:19:59 +00:00
Luck
7a37fcd792
Implement a simple compiler (lexer + parser) for verbose filters
Removes the dependency on the Nashorn runtime.
2019-11-14 22:58:29 +00:00
Luck
81cbe02a9c
Move some things around a bit 2019-11-14 19:43:57 +00:00
Luck
79c10c986e
Web editor changes 2019-11-12 12:12:53 +00:00
Luck
c836cce59b
Moreeee stuff 2019-11-09 22:50:10 +00:00
Luck
287c0f7f7a
All the cleanup 2019-11-09 22:34:12 +00:00
Luck
dc52807a46
Fix issues with *-combined file storage methods (#1793) 2019-11-04 19:26:53 +00:00
Luck
916e3dbb0b
Revert bad text refactoring, bump version to 3.0.2 2019-10-15 13:58:20 +01:00
Luck
4b0574710e
Implement new compressed json import/export format
The old "command list" style is now only supported for import.
2019-10-14 17:25:37 +01:00
Luck
7764a04d46
More work 2019-10-13 15:04:03 +01:00
Luck
9438df787a
Changes to option keys 2019-10-12 00:27:53 +01:00
Luck
fd954d8293
More work 2019-10-06 21:34:24 +01:00
Luck
72dec16f54
Context parsing changes 2019-09-21 08:30:14 +01:00
Luck
40218563e1
Cut down on the number of command aliases 2019-09-04 22:34:25 +01:00
Luck
0251f2add9
Cleanup some stuff 2019-09-04 22:29:36 +01:00
Luck
f0e42c6db6
Allow context calculators to define "potential contexts", and use these for tab completions 2019-09-04 22:08:24 +01:00
Luck
4b793d1f14
More work 2019-09-04 20:58:46 +01:00
Luck
61e5da928a
Fix various runtime errors 2019-08-29 22:07:12 +01:00
Luck
419707aa5f
Cleanup web clients 2019-08-26 20:37:33 +01:00
Luck
8b970c21fc
Remove default assignments
For real this time
2019-08-26 19:33:43 +01:00
Luck
7a31edea09
Extensions 2019-08-26 19:31:55 +01:00
Luck
b286faa1c5
Change API package to net.luckperms 2019-08-26 18:06:45 +01:00
Luck
5e2f45ebd0
Web editor changes, towards #1703 2019-08-26 15:03:30 +01:00
Luck
eff93c788b
Log action serialization changes 2019-08-26 14:04:49 +01:00
Luck
4667ffc681
Allow data query order to be specified via the API 2019-08-26 14:04:49 +01:00
Luck
bafada4f17
Context & action log changes 2019-08-26 14:04:50 +01:00
Luck
5b97d01363
Permission holder refactoring 2019-08-26 14:02:39 +01:00
Luck
3474c66c1c
Big API refactor
- removed a bunch of ugly / badly designed methods and APIs
- refactored 'Contexts' --> 'QueryOptions'
- Removed the FullySatisfiedContexts hack and replaced it with a sane API
- Made PermissionHolder (in the API) less ugly and horrible
- removed lots of deprecated / duplicated API functionality
and much more...
2019-08-26 14:02:44 +01:00
Luck
8f8c916be3
API: remove storage interface 2019-08-04 11:27:31 +01:00
Luck
a823290d66
API: remove uuid cache 2019-08-04 11:27:27 +01:00
Luck
5577e3f590
Jedis requires SLF4J (#1579) 2019-07-14 09:11:54 +01:00
Luck
7f4f9bb917
Fix build 2019-05-20 23:09:02 +01:00
Luck
8d8024ba5e
Fix group changes via the API not properly invalidating caches (#1534) 2019-05-20 10:42:48 +01:00
Luck
2e16b15b0e
Change Sender#getNameWithLocation behaviour 2019-05-14 20:32:35 +01:00
Luck
1ebed37297
Remove use-server-properties-name option
This was removed from Minecraft 1.14, and isn't something I feel was ever really necessary to support.
2019-05-11 23:17:59 +01:00
Luck
ff37ad176b
Update text adapters to latest version (#1525) 2019-05-11 23:12:55 +01:00
Luck
f49446011a
Update to text 3 2019-05-07 00:23:40 +01:00
Luck
d762a0aaa6
Reduce new instance creation further in TristateResult.Factory 2019-04-28 15:35:46 +01:00
Luck
2dc211a91e
Don't account for wildcard/default permissions when running require-sender-group-membership-to-modify checks (#1512) 2019-04-24 18:40:27 +01:00
Luck
2c62de9658
Refactor storage type config read 2019-04-23 21:57:43 +01:00
Luck
494ab6787f
Update okhttp 2019-04-23 20:45:02 +01:00
Chinese Marc
62a834e145 Fix build (#1509) 2019-04-21 21:49:13 +01:00
Luck
241f13c8f1
Package renames 2019-04-20 18:10:31 +01:00
Luck
98ea255667
Refactor blank message sending 2019-04-19 09:46:45 +01:00
Luck
420ec2bf1a
Don't attempt to read a boolean 'value' from parent/chatmeta/meta entries in file based storage files (#1505) 2019-04-18 23:14:23 +01:00
Luck
821d1cb8dd
Fallback to utf8 encoding if utf8mb4 isn't supported (#1497) 2019-04-17 18:44:34 +01:00
Luck
544ffbad19
Add missing javadocs to ConfigKeys 2019-04-06 18:22:19 +01:00
Luck
4fa6cd2577
Add configuration option to perform a post-traversal sort according to the inheritance (weight) rules 2019-04-06 18:20:30 +01:00
Luck
37d1f5efab
Improve behaviour of userInGroup and userHasPermission Vault calls 2019-04-03 10:12:24 +01:00
Luck
8eed4558f4
Release API v4.4 2019-04-02 16:36:22 +01:00
Luck
62ca2d9c79
Implement special handling in the LP Vault implementation for NPC players (#1470) 2019-04-01 15:09:58 +01:00
Luck
ce74813ce5
Fallback to node/context ordering in InheritanceComparator, refactor graph traverser classes 2019-03-14 15:23:26 +00:00
Luck
d1511e43f2
Fix build 2019-03-10 19:19:46 +00:00
Luck
6ef749c76a
Update some dependencies 2019-03-08 23:11:32 +00:00
Luck
8846932cb6
Refactor the HolderType enum 2019-03-08 20:19:08 +00:00
Luck
0a50df6557
Code style: move private constructors for singleton classes to the top of the file 2019-03-05 12:36:09 +00:00
Luck
3726f6de41
Use a separate fork join pool for cache loading operations 2019-03-05 12:35:29 +00:00
Luck
d1ca7684d6
Refactor AbstractJavaScheduler to make use of a cached thread pool 2019-03-05 12:32:16 +00:00
Luck
512b621a7a
Refactor Dependency class a bit 2019-03-03 16:46:20 +00:00
Luck
2cf919a17a
Bump hikari version 2019-03-03 12:01:15 +00:00
Luck
46072eb465
Attempt to detect and warn about CraftBukkit + offline mode problems (#1439) 2019-02-21 14:14:00 +00:00
Luck
ae63a42c2e
Slightly optimize regex and wildcard processors 2019-02-21 12:37:23 +00:00
Luck
8773ec07ab
Include processor & cause in verbose hover message 2019-02-19 23:30:11 +00:00
Luck
287cc308d6
Fix parsing log entry types (#1438) 2019-02-19 14:17:33 +00:00
Luck
4ef3d50965
Properly implement ContextManager#unregisterCalculator (#1422) 2019-02-09 11:50:00 +00:00
Luck
dae64fc8c4
Cleanup some of the Sponge permission holder implementation code 2019-02-07 15:35:09 +00:00
Luck
215031a1f3
Close messaging service before storage
Fixes https://www.spigotmc.org/threads/174259/page-129#post-3302827
2019-02-07 12:38:24 +00:00
Luck
85d2f0b51f
Add method to unregister context calculators (#1422) 2019-02-07 12:24:23 +00:00
Luck
1a690dabd7
Implement NodeMap without using Guava's Multimap util (#1416) 2019-02-04 20:35:20 +00:00
Luck
526448ce40
Don't try to set unicode connection properties for PostgreSQL (#1134) 2019-02-04 19:36:53 +00:00