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
Luck
a784ad435f
Fix applying group web editor changes ( #1148 )
2018-08-13 22:44:10 +01:00
Luck
cc9bb34873
Update kyori/event dependency
2018-08-13 20:03:57 +01:00
Luck
56c55d71fe
Improve the way Vault lookups for offline players are handled ( #1150 )
...
1) The behaviour of online player lookups is unchanged - this only affects offline player data lookups.
2) If a 'offline player' request is made from an async task, it is executed normally. (the data is loaded)
3) If a 'offline player' request that cannot be immediately fulfilled is made from the main server thread, an exception is thrown.
The exception thrown as a result of 3) can be disabled in the config. In this case, the query is performed anyway. The main server thread will block until the request is complete.
2018-08-11 19:02:57 +01:00
Luck
56df15caf8
Add bukkit-legacy build back to the main project
2018-08-11 18:11:30 +01:00
Luck
03720665b3
Move to gradle
2018-08-10 20:39:29 +01:00
Luck
445429b510
Update text & asm dependencies ( fixes #1142 )
...
Updates for:
6a7fda4e80
2018-08-10 00:09:34 +01:00
Luck
c698587d53
Update text dependency
2018-08-09 22:43:41 +01:00
Luck
b8466beee5
Completely rework event system
...
* Event instances are now generated dynamically at runtime. The performance hit of creating proxies at runtime is negligible in this case.
* A better EventBus implementation is now being used internally, API contracts are unaffected.
2018-08-09 22:39:33 +01:00
Luck
efa666445f
Initial support for Brigadier (1.13 commands) on Bukkit servers
2018-08-08 23:42:25 +01:00
Luck
59c7d77525
Load a up-to-date copy of group data before applying web editor changes
2018-08-08 09:00:35 +01:00
Luck
553da9baf6
Give some form of feedback when trying to applyedits no changes instead of no feedback at all ( #1136 )
2018-08-08 08:58:58 +01:00
Luck
486ddb3d42
Don't include any database properties by default ( #1134 )
2018-08-05 21:59:48 +01:00
Luck
381922fc02
Don't schedule a delayed load task on startup ( #1130 )
2018-08-05 21:51:53 +01:00
Luck
4c891f0819
Fix uppercase inconsistencies when saving users to SQL storage types ( #1119 )
...
This was causing issues when user data was saved, without UUID data being saved beforehand.
This commit fixes the way the inconsistency was introduced, and ensures that inconsistent data is made consistent in the future. (when players next login)
2018-07-30 11:22:50 -07:00
Luck
4b3d11ccab
More SQL escaping ( #1091 & #1126 )
...
Follows from c16630c32b
2018-07-29 17:14:48 -07:00
Luck
b1ab465991
Misc cleanup
2018-07-29 17:12:05 -07:00
Luck
952e41ad3d
A few API javadoc improvements
2018-07-27 23:45:16 -07:00
Luck
054f0c2c19
Don't add spaces when formatting 'concise' durations
2018-07-24 20:59:49 -07:00
Luck
2f7fce2109
Change name of Sql messenger table for compat with changes in the previous commit
2018-07-15 22:49:09 -07:00
Luck
07469599bc
Rewrite MessagingService message encoding, conform to new plugin message channel requirements
...
* This change isn't backwards compatible with previous builds, this version (& onwards) won't be able to "communicate" with old versions, and vice versa.
* MC 1.13 requires plugin message channel names to be namespaced, so 'lpuc' has been changed to 'luckperms:update'
* The channel names for Redis/Lily types have also changed, I've been wanting to change the encoded format to something a bit saner for a while, and this seemed like a good time. Changing the channel names a) keeps things consistent and b) means I don't have to worry about old versions interpreting the new format.
2018-07-15 22:42:37 -07:00
Luck
08869da96e
misc cleanup
2018-07-13 17:51:30 -07:00
Luck
7540a6eb70
Send more appropriate message when no users/groups match the editor type ( #1096 )
2018-07-13 17:51:21 -07:00
Luck
fa2d9357b8
Allow FileWatcher locations to be registered after initial start
2018-07-12 17:10:07 -07:00
Luck
247a40b65f
Fix /lp search for groups when using separated file storage ( #1094 )
2018-07-12 16:35:32 -07:00
Luck
01ffe6ad5a
Use synchronized wrapper for NodeMap backings
2018-07-12 09:50:10 -07:00
Luck
c16630c32b
Escape groups keyword in SQL queries to (hopefully) fix compat with newer versions of MySQL ( #1091 )
2018-07-11 13:09:20 -07:00
Luck
bf64f465a8
Re-implement Bukkit 1.7.10 support
2018-07-01 15:31:28 +01:00
Luck
c1e0b874d8
Add helpful message for users on first startup
2018-07-01 15:07:25 +01:00
Luck
c780266139
Add setprefix, setsuffix, settempprefix, settempsuffix commands ( #840 )
2018-06-27 17:31:30 +01:00
Luck
08454d58d0
Refactor the way contexts are cached on all platforms ( #1071 )
...
Should fix memory leak issues on BungeeCord
2018-06-27 00:17:53 +01:00
Luck
ee13540d78
Specify explicit global context in generated LP commands when default contexts have been set ( #1062 )
2018-06-26 14:39:18 +01:00
Luck
379eb00b69
Cleanup various message localisations, limit the size of the PermissionRegistry
2018-06-19 22:27:47 +01:00
Luck
2036127612
Cleanup action log formatting and pagination
...
This is technically a breaking change to the API, but I'm fairly certain hardly anyone is using these methods (the pagination functionality in the API is pretty useless)
Can always add them back if it becomes an issue
2018-06-18 16:08:18 +01:00
Luck
6b305972ac
Fix sponge build script
2018-06-16 18:41:53 +01:00
Luck
b8c06904ab
Make logging messages a bit less obnoxious
...
* Removed the ascii text from the startup output
* Log messages (but not command output) is now sent through the standard server logger, and isn't colored
2018-06-16 16:59:59 +01:00
Luck
6baa472567
Fix context cache invalidation
2018-06-15 19:07:24 +01:00
Luck
9c449def57
Update some dependency versions
2018-06-13 20:29:00 +01:00
Luck
e4acc133a9
remove some unnecessary interfaces
2018-06-12 18:18:38 +01:00
Luck
194790110d
Fix node comparison for identical nodes except the value
2018-06-07 19:58:55 +01:00
Luck
30ce269873
Disable hikari leak detection ( #1033 )
2018-06-05 20:33:23 +01:00
Luck
4d7be13c16
Don't reload Sponge persisted subjects when a save is pending
2018-06-03 20:46:50 +01:00
Luck
8cf0f7da5f
Improve buffering code
2018-06-03 19:36:55 +01:00
Luck
bcb4e5ca64
cleanup various comparators
2018-05-31 23:41:37 +01:00
Luck
c66622bd09
Fix regex permissions not really working properly ( #1021 )
2018-05-29 14:45:21 +01:00
Luck
b7de0e6901
Provide an even more detailed warning message when other uuids are present for a username
...
We can use the data we have about the UUID and the platform LP is running on to infer more information about what the problem (potentially) is.
2018-05-25 17:05:26 +01:00
Luck
a90e59ec97
Fix cache invalidation when group data changes ( #1010 )
2018-05-21 18:48:47 +01:00
Luck
45e2b7b12f
Fix saving node attributes on non-YAML file storage types ( #999 )
2018-05-16 19:30:05 +01:00
Luck
20f992110d
Refactor meta stack element creation, add 'from_group' & 'not_from_group' elements
2018-05-16 18:46:25 +01:00
Luck
18f09f9862
Various performance optimizations
2018-05-15 00:08:23 +01:00
Luck
a0be1c7c48
Fix issue with Bukkit attachment permissions never being removed ( #991 )
2018-05-13 14:06:23 +01:00
Luck
1639879106
Reduce the number of config lookups required when calculating contexts
2018-05-12 01:51:38 +01:00
Luck
a927ca659f
Reduce the throughput on the contexts cache in ContextManager ( #929 )
2018-05-12 01:34:34 +01:00
Luck
804c884d8b
Update configurate to fix issues with legacy guava compat
2018-05-06 19:57:50 +01:00
Luck
51f215b8ac
Add PlayerDataSaveEvent
2018-05-06 18:21:14 +01:00