Commit Graph

1188 Commits

Author SHA1 Message Date
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
Luck
307614e704
Cleanup import statements 2019-01-31 00:53:42 +00:00
Luck
f6c0794691
Return more detailed information about exactly how a permission check result was determined 2019-01-31 00:45:56 +00:00
Luck
83db00aef8
Better null checking in HikariConnectionFactory (#1408) 2019-01-30 16:24:30 +00:00
Luck
7b8426977a
Switch text dependency back to 1.11 (#1404) 2019-01-28 10:39:08 +00:00
Luck
d9912cb93f
Update some dependencies 2019-01-27 22:51:05 +00:00
Luck
1d9fc568e4
Fix calling default methods on Event interfaces (#1386) 2019-01-16 14:43:55 +00:00
Luck
3c0d1ba7a1
Ensure caches are invalidated when Bukkit/Nukkit's Permission#getChildren map is modified (#1378) 2019-01-13 16:58:31 +00:00
Luck
d3ae3324fa
Allow the bytebin url to be configured 2019-01-12 12:02:16 +00:00
Luck
4b97c9419e
Finish updating commodore
woops
2019-01-07 21:29:28 +00:00
Luck
9b1c73ed23
Implement use of a Maven Central mirror for dependency downloads
People keep telling me that LP's use of Maven Central for downloading dependencies is not allowed / inappropriate / abusive. I disagree but I'm bored of hearing it. Using a mirror will mean that all of the load is taken off of Central, and is instead absorbed by my servers + (mostly) Cloudflare.

- The mirror is (currently) hosted at https://nexus.lucko.me/repository/maven-central/
- The prospect of the mirror becoming compromised is not a concern. LuckPerms compares the downloaded content against a checksum before saving it.
- The prospect of the mirror going offline is also not a concern. We will fallback to Maven Central if a connection cannot be made to the mirror.
2019-01-07 16:56:16 +00:00
Luck
048768007d
Change the way static contexts are displayed in /lp info 2019-01-07 15:44:54 +00:00
Luck
ec7a5321a6
Some misc refactoring / code cleanup 2019-01-07 15:08:13 +00:00
Luck
c396323308
Log exceptions thrown by BufferedRequest tasks 2019-01-05 23:06:57 +00:00
Luck
6fc2321fad
Refactor PlayerLoginProcessEvent
This is technically a breaking change, but I'm fairly sure I'm the only person using this event. It's quite obscure ;p
2019-01-02 13:54:55 +00:00
Luck
a0d04790a5
Update text-adapter-bungeecord to 1.0.2 (#1362) 2019-01-01 15:33:18 +00:00
Luck
c4154c09da
Remove SQL indexes on the permission field 2018-12-23 21:56:51 +00:00
Luck
8eed3131f2
Fix sending component messages on older CB/S releases (#1344) 2018-12-23 16:52:00 +00:00
Luck
2ccffc6e6d
Fix error message when event handlers throw an exception 2018-12-22 17:03:51 +00:00
Luck
fc69002c86
Fix wrong checksum for text-adapter-bukkit 2018-12-19 14:36:20 +00:00
Luck
e3a6db5f97
Refactor ProgressLogger slightly 2018-12-19 10:39:48 +00:00
Luck
6d8077ffd0
Use text-adapter-bukkit for sending Components to Bukkit objects 2018-12-19 10:29:22 +00:00
Luck
784161d66d
Update okhttp and okio versions 2018-12-19 10:06:36 +00:00
Luck
2cb5e437fd
Switch default MySQL/MariaDB charset from utf8 to utf8mb4
https://medium.com/@adamhooper/in-mysql-never-use-utf8-use-utf8mb4-11761243e434
Relates to #1337
2018-12-18 16:02:25 +00:00
Luck
8c57c2b46d
Remove static imports 2018-12-18 12:51:26 +00:00
Luck
879a88a398
Account for 'allow-invalid-usernames' setting in API calls 2018-12-18 12:50:52 +00:00
Luck
4b1cf51530
replace LoadingCache with more simple LoadingMap alternative when no auto expiry is needed 2018-12-14 18:37:56 +00:00
Luck
de24817d9c
Some node equality changes 2018-12-14 17:27:34 +00:00
Luck
1aabd7610e
Tweak PlayerSaveResult javadoc 2018-12-10 15:33:38 +00:00
Luck
757e9d6be6
Add API method to get known permissions & improve the way PermissionDescriptions are migrated from existing Sponge services when LP enables 2018-12-07 14:07:54 +00:00
Luck
b3a028e3ca
Refactor AbstractConnectionListener for the addition of Velocity support 2018-12-07 13:36:38 +00:00
Luck
e222e4e98c
Missing nullability annotations 2018-12-07 13:33:05 +00:00
Luck
b7ff0824b9
Optimize context set manipulation 2018-12-06 14:02:41 +00:00
Luck
7b5917660c
Implement LoadingMap using Guava's ForwardingMap utility 2018-11-28 12:35:38 +00:00
Luck
1544487e92
Convert permissions to lowercase inside the cache
Slight optimization, toLowerCase is a relatively expensive call in the scheme of permission checks.
2018-11-24 13:09:26 +00:00
Luck
e8c4a55dc3
Cache the most recent lookup for permission/meta data in AbstractCachedData.
This avoids a (somewhat) costly lookup operation involving Contexts comparison. It aims to be effective on the basis that lookup calls within the same period of time are likely to target the same context (and therefore have the same result).
2018-11-24 01:17:42 +00:00
Luck
97d6aaed5c
Experiment with different cache implementation in PermissionCalculator
Caffeine seems to just fallback to a ConcurrentHashMap based implementation in this case anyway.
2018-11-24 00:15:56 +00:00
Luck
e07f8c0fbe
Don't send 1.13 tab completions to players without access to any LP commands (#1310) 2018-11-22 15:07:55 +00:00
Luck
90246afd03
Some misc refactoring 2018-11-22 14:51:20 +00:00
Luck
9809e591ad
Reorganise some packages 2018-11-10 23:16:28 +00:00
Luck
26973461e7
Don't show negated group membership permissions in the output to 'user info' and 'group listmembers' 2018-11-10 22:42:54 +00:00
Luck
58ab3c325c
misc tidying up 2018-11-10 20:21:08 +00:00
Luck
5dda522a62
Add option to deduplicate prefix/suffix stacks (#1285) 2018-11-06 14:29:15 +00:00
Luck
f63992e209
Return a more informative error for invalid verbose filters 2018-11-06 13:16:07 +00:00
Luck
9988011308
Improve the way meta lookups are caught & reported to the verbose handler 2018-11-06 13:15:30 +00:00
Luck
42c8cb1354
Use the fragment identifier instead of query parameters to convey the editor/verbose/treeview data id
This fixes the issue Multicraft panels have with displaying ? characters in console. (absolute quality)
2018-10-28 22:32:02 +00:00
Luck
aaeaf5cfa0
Nicer format for verbose meta logging 2018-10-28 21:56:42 +00:00
Luck
45b4e1463f
Match the type in verbose filters 2018-10-28 15:18:02 +00:00
Luck
be92a67544
Increase verbose stacktrace truncation length for web outputs 2018-10-28 12:40:56 +00:00
Luck
5e0b8ebdf6
Include meta lookup events in verbose output 2018-10-28 12:31:47 +00:00
Luck
9d4ccd33e1
Update commodore for tab complete fix (#1257) 2018-10-26 20:21:00 +01:00
Luck
f5c42c70e5
Catch Throwable instead of Exception when calling context calculators
Related to:  lucko/ExtraContexts#4
2018-10-15 22:32:52 +01:00
MrMicky
ee2de3cff1 Some minor code cleanup (#1262) 2018-10-09 18:00:53 +01:00
Luck
f96518b8e4
misc tidying 2018-10-07 19:48:20 +01:00
Luck
dac59966aa
Setup gradle license format check 2018-09-24 13:52:59 +01:00
Luck
8115fbaa98
Refactor storage system 2018-09-23 21:49:49 +01:00
Luck
8b97439ffc
Use the correct permission check method when forming tree views 2018-09-23 19:53:37 +01:00
Luck
fa83986250
Refactor Constraint/Comparison impls for bulkupdate 2018-09-23 19:53:16 +01:00
Luck
e1b16465f8
Fix race condition in BufferedRequest 2018-09-23 19:52:42 +01:00
Luck
57619dacb1
Update commodore to 1.1 2018-09-23 15:40:33 +01:00
Luck
1cc156d6f6
Fix buildscript deployment config for Sonatype 2018-09-23 14:30:09 +01:00
Imortalshard
1445a3faec Fix typo in the description of /lp export (#1229) 2018-09-23 11:28:48 +01:00
Luck
8e344cea76
Cleanup imports 2018-09-20 21:17:28 +01:00
Luck
5b1229c882
Fix slf4j loading (#1224) 2018-09-20 21:17:00 +01:00
Luck
834649b390
Improve Uuids#parse
thanks @kashike
2018-09-20 15:30:22 +01:00
Luck
d28170cc3f
Operations to add new nodes with differing values should just override existing entries, instead of failing with the ALREADY_HAS result (#1198) 2018-09-20 11:25:31 +01:00
Luck
04e511026d
Detach from permissible objects with a 1 tick delay after player quit to allow plugins listening on monitor to still access data (#1220) 2018-09-20 11:07:20 +01:00
Luck
3941c77826
Move from findbugs jsr305 to checker-qual 2018-09-19 20:40:25 +01:00
Luck
dd78e0e271
Separate formatted vs plain display name methods in User/Group
Continues from 3c773e6823 & #1210
2018-09-10 16:54:16 +01:00
Max Lee
3c773e6823 Use neutral color to display potentially colored names - fixes #1170 (#1210) 2018-09-10 16:41:14 +01:00
Luck
eca6b09b18
Refactor config keys 2018-09-05 20:49:37 +01:00
Luck
b7f8ca6658
Add 'require-sender-group-membership-to-modify' config option (#1140) 2018-09-05 15:49:29 +01:00
Luck
ffdeadac8a
Add flag to prevent users from being added/removed to/from the first group on a track (#1151) 2018-09-05 15:15:15 +01:00
Luck
9e769904bf
Expose TemporaryMergeBehaviour in the API (#1189) 2018-09-05 11:11:45 +01:00
Luck
8d79ec6b07
Rename "update task" --> "sync task" 2018-09-04 21:11:03 +01:00
Luck
3a123f9fa1
Avoid running full "update tasks" unless they're absolutely needed. Process Vault API "set" requests immediately instead of in the background 2018-09-04 21:02:40 +01:00
Luck
f0c0328919
Refactor MetaAccumulator to be a little more sane 2018-09-04 20:33:22 +01:00
Luck
76517374a2
Only allow import and export commands to interact with files in the data directory (#1193) 2018-09-02 22:20:29 +01:00
Luck
2da027f3b5
Revert MySQL driver update 2018-09-02 20:04:26 +01:00
Luck
fd712f131f
Update some dependency versions 2018-09-02 16:36:28 +01:00
Luck
ec9060ba80
Update messenger log prefixes 2018-08-31 20:22:31 +01:00
Luck
502d57e744
Optimize event generation & other misc improvements 2018-08-27 22:11:03 +01:00
Luck
c59f2ab37a
Don't call NodeAddEvent when adding the default group (#1177) 2018-08-27 22:06:49 +01:00
Luck
066189b486
Send a more informative message when the bulkupdate command is used from in-game 2018-08-27 18:25:57 +01:00
Luck
55220e9d10
Add support for Velocity 2018-08-26 22:24:46 +01:00
Luck
bd41286076
Fix build 2018-08-26 18:45:33 +01:00
Luck
d84484c81c
Optimize event generation and posting 2018-08-26 10:28:04 +01:00
Luck
fec87d4c6a
Update event to 3.0.0 2018-08-16 20:01:26 +01:00