Commit Graph

1067 Commits

Author SHA1 Message Date
Luck
e5ce64266f
Add option to pull server setting from the server.properties file 2017-12-11 19:42:24 +00:00
Luck
a765be0a6f
Fix compat with older hikari versions (#600) 2017-12-11 19:26:17 +00:00
Luck
dfb1b8f841
Work around message bug when parsing two consecutive color codes 2017-12-11 17:39:35 +00:00
Luck
322b522a52
propagate i/o errors to the futures returned by the dao 2017-12-10 01:47:00 +00:00
Luck
9dd4f71526
Remove the isAcceptingLogins storage state in favour of just throwing exceptions on usage 2017-12-09 19:02:23 +00:00
Luck
94b4e3d366
Validate checksums of downloaded dependencies 2017-12-09 18:36:08 +00:00
Luck
bbb2897d20
Fix compatibility with older Gson versions 2017-12-09 11:26:12 +00:00
Luck
a5e41e479a
Use static empty context set where appropriate, cache reversed comparator instances 2017-12-07 19:49:04 +00:00
Luck
2baea0ce13
Fix MongoDao issue causing unnecessary writes each time a user is loaded (#589) 2017-12-07 16:52:21 +00:00
Luck
0d9034504e
Run a sync task after completing a bulk update (#579) 2017-12-01 17:44:57 +00:00
Luck
2985cf7237
Don't run schema migrations for Postgre (#568) 2017-11-30 20:33:15 +00:00
Luck
003ddc51de
Rewrite the MongoDB storage impl to use the modern node serialisation format 2017-11-30 20:25:48 +00:00
Luck
c369ac6b90
Fix mongodb bulkupdate (#572) 2017-11-29 23:10:32 +00:00
Luck
1e105b4135
Cleanup sponge service impl 2017-11-25 15:56:02 +00:00
Luck
717835e5c1
Add config option for defining extra SQL connection properties (#563) 2017-11-25 11:37:30 +00:00
Luck
ae8fe0fe1e
Refactor configurate dao 2017-11-23 22:51:05 +00:00
Luck
d992d7f77c
Fix race condition when saving null config nodes to non-existent files 2017-11-23 20:15:29 +00:00
Luck
a7cb7ec1af
Remove character constraints on group names, cleanup legacy node (de)serialization system 2017-11-23 20:05:38 +00:00
Luck
3afeb30795
Implement system for shorter editor urls & display diff when changes are applied 2017-11-22 20:54:58 +00:00
Luck
26feeb125e
Don't allow user names to be set if the length exceeds 16 characters 2017-11-22 17:17:49 +00:00
Luck
211fb219a7
Catch and ignore exceptions thrown when migrating a specific entity 2017-11-22 16:59:19 +00:00
Luck
e71ef834c0
fix issue with the LP Vault impl and servers with more than one server context 2017-11-21 16:44:20 +00:00
Luck
29eba93ee3
Fix zero length prefixes from locale files 2017-11-21 15:44:22 +00:00
Luck
52ebfe9309
Bump SQLite version 2017-11-20 15:16:00 +00:00
Luck
b3e78c6dc1
Fix issue with loading tracks with configurate 2017-11-20 15:14:44 +00:00
Luck
cd0184970a
Don't try to run schema migrations for SQLite 2017-11-19 22:24:39 +00:00
Luck
6401480874
Fix compiling null AssignmentExpressions 2017-11-19 19:09:21 +00:00
Luck
6ca9eb13dd
General tidy up 2017-11-18 23:20:48 +00:00
Luck
987ea51264
Expose more connection pool settings in the config file 2017-11-14 19:39:46 +00:00
Luck
9a420403de
Attach extra data to the editor payload object to allow for tab completion 2017-11-11 22:57:25 +00:00
Luck
17da2807cf
Bump dependency versions 2017-11-10 20:16:44 +00:00
Luck
22fba0c172
Fix broken usage of LogEntry#getActed 2017-11-09 21:05:06 +00:00
Luck
14005563a3
Move #refreshCachedData up the type hierarchy into PermissionHolder 2017-11-08 22:59:22 +00:00
Luck
a115ff8ce2
Final bits of API refactoring, add group data caches, fix issue with LPPermissionAttachment fake map injection 2017-11-08 22:55:05 +00:00
Luck
d75b29f51d
Move a couple more methods around in the API 2017-11-08 15:48:55 +00:00
Luck
175a21c0e4
API 4.0 - this is a breaking change 2017-11-07 22:05:49 +00:00
Luck
76bfde4d77
Don't prevent modification of group.<group name> nodes with permission subcommands 2017-11-04 19:12:46 +00:00
Luck
d393a4c9ca
Alias /lp player --> /lp user 2017-11-03 16:26:54 +00:00
Luck
9ea6b0b8bb
Use "None" instead of "global" when no server name is specified 2017-11-02 19:32:13 +00:00
Luck
c20b91d5ea
Increase actor_name field length to account for changes to logging 2017-11-02 19:28:49 +00:00
Luck
fad8a38bdf
Use a string version of the full static context, as opposed to the server name 2017-11-02 19:25:35 +00:00
Luck
b7541c43c8
Add Sender#getNameWithLocation 2017-11-02 18:51:59 +00:00
Luck
0f10bb0bc9
Deprecate some unused methods in ImmutableNode, refactor #shouldApplyWithContext 2017-11-02 18:22:42 +00:00
Luck
357717886e
Refactor the log creation process 2017-10-30 21:06:45 +00:00
Luck
0e581cbcf3
Increase actions actor_name column length (#525) 2017-10-30 20:03:03 +00:00
Luck
230d9725e8
cleanup & fix build 2017-10-29 20:37:29 +00:00
Luck
dee41b315f
Inject our own subscription map into the plugin manager instead of registering permissions individually for each player 2017-10-29 15:16:48 +00:00
Luck
72e6c75433
Cleanup / tidy up a number of classes 2017-10-29 12:58:49 +00:00
Luck
ebe12f838c
Fix user exports 2017-10-28 00:15:34 +01:00
Luck
7279fdc25f
Fix changes not being saved for flatfile bulkupdate operations 2017-10-27 23:17:57 +01:00
Luck
af5c859385
Fix temporary group display format in parent info command (#518) 2017-10-24 13:17:27 +01:00
Luck
e8896fbdf7
Fix NPE on startup (#520) 2017-10-24 13:05:06 +01:00
Luck
54695b8046
Form more descriptive console & import usernames 2017-10-23 23:37:55 +01:00
Luck
c573c755d2
Add option to cancel failed logins on BungeeCord variant 2017-10-23 16:59:07 +01:00
Luck
a3a7198777
More storage refactoring 2017-10-22 20:09:53 +01:00
Luck
ca8cc91f37
Add group setdisplayname command (#493) 2017-10-22 16:58:53 +01:00
Luck
26c813c07b
Mode storage refactoring - write group nodes into their own section in flatfile types (#502) 2017-10-22 14:22:52 +01:00
Luck
f109cb684a
Apply PermissionAttachment permissions at a higher priority than normal nodes using the transient system (#515) 2017-10-22 10:24:04 +01:00
Luck
1baefaade4
Try to find the most appropriate primary group before just adding a user to default - closes #506 2017-10-22 09:16:04 +01:00
Luck
ecfbed00b1
Add config option to allow invalid usernames (#516) 2017-10-22 09:00:10 +01:00
Luck
6e429d6c78
Throw exception if directories cannot be created 2017-10-22 08:48:00 +01:00
Luck
fa4bb0447a
Rewrite flatfile storage (YAML & JSON) to use configurate, add HOCON storage method 2017-10-21 23:20:45 +01:00
Luck
aa0be40124
Cleanup verbose handler & only send sponge OP command notification if the sender has permission 2017-10-16 18:55:17 +01:00
Luck
04d5310c04
Ensure users are a member of their primary group (#506) 2017-10-16 18:53:02 +01:00
Luck
74069af309
Throw an exception if we're unable to create the lib dir 2017-10-16 15:28:02 +01:00
Luck
6bfeec6d16
Fix updating primary groups for players who've never joined the server with SQL storage types (#500) 2017-10-16 14:43:58 +01:00
Luck
0f4c057395
Add highest_inherited and lowest_inherited meta stack elements 2017-10-15 15:13:23 +01:00
Luck
2fd74f3b7e
fix MetaStackElement equality checks 2017-10-15 14:51:42 +01:00
Luck
fb171a57c2
Ensure stored primary groups are always lowercase'd 2017-10-15 14:32:57 +01:00
Luck
b26fc69e73
Remove usage of the now-redundant ExtractedContexts class, other misc cleanup 2017-10-15 14:23:51 +01:00
Luck
28961b1cfa
Primary groups should come first, not last, when ordering groups for inheritance (#500) 2017-10-15 11:22:38 +01:00
Luck
00cd8bb3f3
Prioritise primary groups when two inherited groups have the same weight (#500) 2017-10-14 22:50:50 +01:00
Luck
5732e60510
Remove cleanupUsers functionality
It was pretty useless (and wasn't implemented on SQL/Mongo storage types.) Data is naturally cleaned up over time as users are loaded/saved.
2017-10-12 20:38:08 +01:00
Luck
1a5f9683c2
Fix build (whoops) 2017-10-12 20:21:49 +01:00
Luck
8920396360
Remove context pre-processing (mostly)
This approach isn't very effective when contexts are frequently changing, and it is hard to guess in advance which contexts are going to be in-use.

The Sponge version has proven that this whole system isn't really necessary.

Contexts for 'allow all' and 'global' are still pre-processed, however this should be significantly less work for the server. (even if it is being done async)
2017-10-12 20:17:52 +01:00
Luck
9c505e4402
Move Track methods away from checked exceptions, refactor ContextManager & primary group holders 2017-10-12 19:43:42 +01:00
Luck
de4c6b384c
Export using the /lp alias 2017-10-12 18:47:35 +01:00
Luck
9e6788de2f
Refactor context manager 2017-10-03 19:02:14 +01:00
Luck
ec75fdddb5
Make verbose output more readable when a check is made against a lot of contexts 2017-09-27 20:11:17 +01:00
Luck
f4d2a0daf9
Bump dependency versions 2017-09-23 23:36:13 +01:00
Luck
de8fb8de90
Only load slf4j if it's not already present on the server 2017-09-23 21:15:45 +01:00
Luck
777c972bdc
Cache SubjectReference instances, general cleanup 2017-09-21 21:59:27 +01:00
Luck
f9efa15781
Re-add 'list' as an alias of 'permission info' - reverts #461, closes #473 2017-09-20 20:31:24 +01:00
Luck
1d1cd679dd
Fix tab completion inconsistencies caused by argument rewrites - closes #481 2017-09-20 20:27:46 +01:00
Luck
a9ed4686dd
Avoid loading slf4j when running on Sponge 2017-09-19 22:13:02 +01:00
Luck
5b742eb5b2
Only schedule a user cleanup when LuckPermsApi#cleanupUser is called 2017-09-18 20:50:50 +01:00
Luck
a3d78f4d0e
Always load dependencies into the plugin classloader, and not it's parent - fixes #479 2017-09-17 19:30:43 +01:00
Luck
214929e5e5
Fix group expiry time not being exported (#474) 2017-09-14 19:10:18 +01:00
Luck
67602b8d85
Fix startup deadlock 2017-09-13 21:24:35 +01:00
Luck
2412edaa3a
Cleanup subscription updates & UserManager#loadAllUsers 2017-09-13 20:18:48 +01:00
Luck
a14a416193
Make some ingame messages more consistent with the LP theme, general cleanup 2017-09-11 22:21:57 +01:00
Luck
096885d91f
Add tracing to /lp verbose, API updates/cleanup, add login process event, and utilise string interning for faster context/node comparisons 2017-09-10 21:25:00 +01:00
Frank Zhang
368700156c Added uranium server support to DependencyManager (#464) 2017-09-08 14:25:49 +01:00
Luck
81cf50520b
Fix NodeFactory#nodeAsCommand when unsetting meta nodes, fix meta unset command 2017-09-06 21:56:41 +01:00
Luck
649748c2d3
Bump caffeine and hikari versions (#462) 2017-09-05 23:56:45 +01:00
Luck
bf7a708440
Send some extra data to the editor data object 2017-09-05 14:54:22 +01:00
Luck
8faa4d137b
Fix some issues with the recent import/export changes 2017-09-04 23:20:21 +01:00
Luck
6bc7f1fca2
Refactor Importer/Exporter to use multiple threads (#317) 2017-09-04 22:24:07 +01:00
Luck
dadd8e2c50
Don't publish/broadcast log entries from the import process - towards #317 2017-09-04 20:47:45 +01:00
Luck
03f342a21c
Refactor command execution to use Locks per target instead of (effectively) one for all commands - towards #317 2017-09-04 20:42:21 +01:00
Luck
b6e1fd179e
Add type argument to 'meta clear' command (#457) 2017-09-04 17:25:59 +01:00
Luck
754c7d8e3b
Add config option to prevent primary group removal (#405) 2017-09-04 17:03:17 +01:00
Luck
925d3ccd1b
Remove "list" alias for holder info (#461) 2017-09-04 16:55:10 +01:00
Luck
d60d0ac9c5
Reduce buffer times, refactor MessagingService init 2017-09-04 16:49:43 +01:00
Luck
fbe9d9f128
Run user cleanup task async and not on Storage init 2017-09-03 16:16:21 +01:00
Luck
509826949d
Add login debug option 2017-08-27 13:54:26 +01:00
Luck
39aaa8a292
Update for latest Text version 2017-08-22 22:51:49 +01:00
Luck
069c76c53a
Fix time test for node expiry times 2017-08-22 16:30:46 +01:00
Luck
f45c0caa45
Refactor metastacks & primary group calculation 2017-08-21 15:45:29 +02:00
Luck
269aa39378
Fix comparator and ensure @Nonnull annotated methods never return null in LogEntry 2017-08-20 14:51:46 +02:00
Luck
ae8be97db7
Dispatch log entries via the messaging service 2017-08-20 13:32:52 +02:00
Luck
f0ad40825b
Refactor and cleanup Log classes 2017-08-20 01:35:03 +02:00
Luck
36d292747a
Format times in /lp log into a shorter form 2017-08-19 11:38:08 +02:00
Luck
b65d2262bf
Remove "... data was saved to storage" messages 2017-08-19 11:08:28 +02:00
Luck
c02fcb6508
Refactor weight lookups 2017-08-18 11:14:03 +02:00
Luck
07c38de44b
Allow permission info command to be filtered by context (#442) 2017-08-18 10:44:54 +02:00
Luck
188d62c99b
Fix issue with casting UUIDs in MongoDB backing (#443) 2017-08-18 10:35:56 +02:00
Luck
76b203ad10
Fix text dependencies being shaded 2017-08-17 10:12:08 +02:00
Luck
909844aef5
Update KyoriPowered/text dependency 2017-08-16 10:56:35 +02:00
Luck
046202719a
Correctly export meta/prefix/suffix nodes to command strings 2017-08-14 18:58:12 +02:00
Luck
ed15e2838d
Fix checkinherits command not returning the inheritance data 2017-08-14 09:38:08 +02:00
Luck
82466c2e5d
Properly implement Contexts#allowAll - bump API to 3.3 2017-08-13 22:21:04 +02:00
Luck
c598daf350
Fix negating group permissions to cancel inheritance 2017-08-13 19:40:59 +02:00
Luck
a40421fa1f
Optimizations to the core PermissionHolder class
- Remove usage of Java 8 streams from frequently called methods
- Use LinkedLists where appropriate to improve Iterator#remove speed
- Cache immutable multimap conversion
- Rename some methods to make the intended use/behaviour clearer
2017-08-13 19:24:00 +02:00
Luck
d98b464ce9
Cleanup verbose & treeview packages. Return known permissions from the PermissionVault as Sponge PermissionDescriptions 2017-08-13 12:07:05 +02:00
Luck
1d5e3205ac
Refactoring & misc cleanup 2017-08-12 19:34:14 +02:00
Luck
3951725852
Fix 'meta settemp' command using duration as the server context (#421) 2017-08-05 23:46:19 +02:00
Luck
3d2115ff3c
Remove unnecessary extra cache in ContextManager 2017-08-02 21:48:22 +01:00
Luck
234b9cafd7
Give default group if needed after "parent remove" (#405) 2017-07-30 21:08:05 +01:00
Luck
4ecd899bac
Fix IndexOutOfBoundsException with 'permission settemp' command (#403) 2017-07-30 15:23:42 +01:00
Luck
51898abb71
Don't load contexts file twice 2017-07-26 10:31:14 +01:00
Luck
e2f800dd63
Throw an NPE if a null delegate sender is passed to SenderFactory#wrap 2017-07-26 10:10:25 +01:00
Luck
d9e5bc9345
fix error with null subject in ContextManager removal listener - closes #392 2017-07-24 19:42:35 +01:00
Luck
e42cc101cc
Cleanup & document a number of Bukkit impl classes 2017-07-24 14:32:10 +01:00
Luck
845367e847
Flush storage buffer more frequently 2017-07-22 20:42:53 +01:00
Luck
90afd3c3ed
Cleanup handling of empty permissions when migrating data (closes #387) 2017-07-22 20:04:55 +01:00
Luck
b4aeb04d1b
Fix possible NPEs when calling API storage events - fixes #384 2017-07-22 00:06:37 +01:00
Luck
65b0d45738
Fix IllegalStateException in meta info command - closes #385 2017-07-22 00:00:58 +01:00
Luck
3c44388883
Update /lp info output 2017-07-19 22:15:12 +01:00
Luck
400f3a9156
Add option to disable colored logging (#382) 2017-07-18 17:58:40 +01:00
creator3
ad6e837aa5 Use single quotes in escapeStringForSql (#379) 2017-07-16 23:53:15 +02:00
Luck
7a6c0ab154
Improve /lp listgroups output - closes #368 2017-07-10 10:09:29 +01:00
Luck
1bb1f5ebb3
Fail silently when the Sponge Server is not available - closes #367 2017-07-10 09:18:58 +01:00
Luck
fce5b8430d
Use GA MySQL version 2017-07-09 18:05:08 +01:00
Luck
0befa6a491
Fix generating unset commands for temporary nodes 2017-07-07 19:39:31 +01:00
Luck
b12ce943f7
Make 'meta info' and 'parent info' clickable (#311) 2017-07-07 19:28:26 +01:00
Luck
d23b29aeb1
Update dependency versions 2017-07-07 14:48:42 +01:00
Luck
42d48c8da2
Implement argument based permissions for LP commands - closes #52, #170, #174 2017-07-07 12:43:13 +01:00
Luck
9e83a5e4d9
Add RedisBungee messaging service option for BungeeCord 2017-07-03 16:24:00 +01:00
Luck
d2bf940105
Add option to use the servers uuid cache/lookup facility (#354) 2017-07-03 16:07:33 +01:00
Luck
d7094909c0
Change verbose output slightly 2017-07-02 21:29:48 +01:00
Luck
770db2fee0
Export groups in order of weight, then alphabetically 2017-06-30 19:43:45 +01:00
Luck
fa0b66c2dc
Fix lp tree max recursion property 2017-06-26 16:31:30 +01:00
Luck
1b199fd2c7
Fix NPE when loading locale file - closes #338 2017-06-24 17:26:52 +01:00
Luck
2ffbeeef8e
Add jsr305 annotations to the API 2017-06-24 17:25:13 +01:00
Chris N
26ce8b8ab7 YAML/JSON batch permission defining (#337) 2017-06-22 10:41:29 +01:00
Luck
cf5318b92b
Make command defintion/usage messages translatable 2017-06-20 20:20:41 +01:00
Luck
e50fa17f7c
Store all accumulated meta values in MetaCache 2017-06-19 21:48:52 +01:00
Luck
413e304845
Fix NPE with null context in FileWatcher 2017-06-14 17:32:02 +01:00
Luck
c57947949c
Don't send messages to command blocks async 2017-06-13 17:30:01 +01:00
Luck
a9e751b4b8
Replace fanciful with KyoriPowered/text 2017-06-11 14:46:56 +01:00
Luck
3df1ae8ded
Fix argument validation for parent settrack command - closes #321 2017-06-11 10:27:26 +01:00
Luck
b4a2da0ea8
Add some missing tab completions, remove /lp log export command 2017-06-09 22:19:07 +01:00
Luck
5c5d1e8d0a
Fixes some issues with username storage and handling
- Fix the yaml/json UUID cache corrupting username data when performing uuid --> username checks
- Fix handling of usernames when users are loaded

Closes #301
2017-06-09 18:20:12 +01:00
Luck
ff0c988a1d
Don't store attributes for permissions with only 'value: true' in YAML/JSON storage files 2017-06-07 21:04:14 +01:00
Luck
b9fc8f4b5f
Add MongoDB collection prefix option 2017-06-05 16:09:02 +01:00
Luck
7b8654339c
Maybe fix usernames not being updated in storage after name changes (#301) 2017-06-03 16:40:16 +01:00
Luck
4109863aa9
Fix -s flag (#132) 2017-05-25 21:35:47 +01:00
Luck
139dd5302b
Cleanup login handling & reduce the amount of unnecessary logging output on startup 2017-05-18 22:30:01 +01:00
Luck
cc907b6530
Don't catch exceptions thrown inside i/o (#291) 2017-05-18 21:16:31 +01:00
Luck
ca1dacf2b6
Invalidate active context cache when a player changes world - closes #288 2017-05-16 21:52:46 +01:00
Luck
abc1c164cf
Expose MetaStacks in the API, general cleanup, release 3.2 2017-05-16 21:41:20 +01:00
Luck
dc801464ef
Refactor meta stacking to be mapped in MetaCache - towards lucko/LuckPermsPlaceholders#1 2017-05-16 19:13:08 +01:00
Luck
99c6fe20c2
Catch exceptions thrown by context calculators 2017-05-16 13:50:28 +01:00
Luck
a44dec0402 Fix typo 2017-05-15 12:07:59 +01:00
Luck
a081152baa Fix web editor url 2017-05-15 12:05:54 +01:00
Luck
9b50d48f46
fix compile 2017-05-14 22:41:25 +01:00
Luck
5121fc6b1f
Cleanup 2017-05-14 22:15:25 +01:00
Luck
d4ac261e85
Cleanup config keys, make editor URL configurable 2017-05-14 21:36:02 +01:00
Luck
2e9561371d
Implement initial web editor support 2017-05-13 20:36:05 +01:00
Luck
942fd3c4ce
Fix vault lookups with static context 2017-05-11 20:04:11 +01:00
Luck
8cf32752e9
Fix meta info only showing values in global context 2017-05-11 19:46:28 +01:00
Luck
b240ca9939
Add parent cleartrack command, cleanup Messages enum 2017-05-09 16:26:55 +01:00
Luck
e25d99129c
Implement parent settrack command - closes #112 2017-05-09 14:06:16 +01:00
Luck
1fee47e087
Implement default contexts - closes #241 2017-05-09 13:36:43 +01:00
Luck
030fb1262e
Fix being able to negate permissions/parents/meta in specific contexts 2017-05-08 22:27:46 +01:00
Luck
cedc5108fc
Refactor Patterns to PatternCache 2017-05-07 13:56:42 +01:00
Luck
65af3d0f54
Add data constraints - closes #256 2017-05-07 13:44:29 +01:00
Luck
7dc41e15d3
Fix users being cleaned up too early and then logging back into the server - closes #271 2017-05-06 18:24:44 +01:00
Luck
8326539d40
Refactor LP PermissionService to implement a modified API & add proxied classes 2017-05-03 20:14:31 +01:00
Luck
163e6e0f2a
Always load user data caches alongside user instances 2017-05-02 16:55:08 +01:00
Luck
f56bb251e9
Cleanup some stuff 2017-05-02 16:36:46 +01:00
Luck
152ca99276
Fix issue with bulk removing suffixes 2017-04-25 16:51:21 +01:00
Luck
7c398d2c67
Split up chat messages sent to console containing new lines 2017-04-23 20:51:24 +01:00
Luck
a526c942ca
Add config options to allow for finer control over how permissions are calculated, and set include-global to true on BungeeCord by default 2017-04-23 20:30:58 +01:00
Luck
af8fd15929
improve speed of NodeTools#removeSamePermission 2017-04-23 11:51:56 +01:00
Luck
7bfd5d4bc8
implement atomic group insertion 2017-04-22 22:53:29 +01:00
Luck
f43b9c96de
cleanup login handling & add CountdownLatch to ensure the plugin has started before logins are handled 2017-04-21 19:10:25 +01:00
Luck
c64f72e394
Fix issue with loading usernames on MongoDB - closes #257 2017-04-21 16:58:07 +01:00
Luck
9715c5394c
Fix NPE caused by AllParentsByWeight primary group selector - closes #252 2017-04-18 17:11:07 +01:00
Luck
67b5c72520
Cleanup handling of unknown/null usernames for users 2017-04-17 19:31:52 +01:00
Luck
3314e94a9a
Add not_on_track meta stack criteria 2017-04-16 11:06:05 +01:00
Luck
a27436b086
Fix getting primary groups for offline users 2017-04-15 20:32:03 +01:00
Luck
f305f8d822
Determine dynamic primary groups using current context 2017-04-15 19:08:04 +01:00
Luck
1f54bc41cc
Cleanup poms, update copyright header 2017-04-15 19:01:52 +01:00
Luck
c82d028429
fix yaml/json schema migration 2017-04-12 21:33:59 +01:00
Luck
be2a8b7b07
Fix incorrect chat meta command usage 2017-04-12 17:59:51 +01:00
Luck
261fc82016
Remove getuuid command
why did that ever exist anyways
2017-04-12 17:25:22 +01:00
Luck
37b940f3a5
Convert promote / demote commands to use new context system, update en locale with latest changes 2017-04-12 17:11:01 +01:00
Luck
0504e904a2
Only perform flatfile schema migration if the new dir doesn't exist 2017-04-12 14:28:39 +01:00
Luck
71bfdd9bfd
log the file name when exceptions are thrown during i/o 2017-04-12 14:09:51 +01:00
Luck
4fb07ff181
API changes for 3.1 2017-04-10 22:26:20 +01:00
Luck
4631dcf857
Ensure expired permissions are removed when users/groups are loaded for commands 2017-04-10 20:57:59 +01:00
Luck
f6f9840eb7
Re-implement bulk updates 2017-04-10 19:33:23 +01:00
Luck
242672f49d
Remove old bulk edit commands 2017-04-10 14:56:46 +01:00
creator3
c32c975a71 Fix accumulation of temporary perms with a world or server context (#235) 2017-04-08 20:49:10 +01:00
Luck
82e759d708
Make sure world names are lowercase'd 2017-04-08 17:00:36 +01:00
Luck
132d0cf578
Fix export command switchprimarygroup output, and log player uuid if their username isn't included 2017-04-07 19:59:53 +01:00
Luck
029dc9f8d9
Make the standard MySQL driver the default again 2017-04-06 11:30:17 +01:00
Luck
5567b1dad8
Use the mariadb driver by default 2017-04-05 21:23:18 +01:00
Luck
ea00ec64af
Refactor NodeModel into a more useful class, remove duplicate context serialization methods 2017-04-04 19:19:31 +01:00
Luck
7259e6be0a
Fixes for the verbose uploader 2017-04-04 17:17:57 +01:00
Luck
2e40557b39
Add '/lp group <group> listmembers' command - closes #203 2017-04-04 16:07:41 +01:00
Luck
e68fc7c558
Improve performance of resolve methods in PermissionHolder, other cleanup 2017-04-04 15:22:25 +01:00
Luck
055dfb000d
Only allow one server and one world in context sets parsed from command args 2017-04-04 13:47:50 +01:00
Luck
b997ab6e3f
Properly sort storage files - closes #227 2017-04-03 10:57:29 +01:00
Luck
25f31d0bb8
Cleanup sponge delegate classes 2017-04-03 10:27:31 +01:00
Luck
4cfd8a7e2c
Fix broken command parameter & update default locale file 2017-04-03 09:53:26 +01:00
Luck
0ec19a8fee
Implement accumulation of static contexts from a file 2017-04-03 01:42:49 +01:00
Luck
2749563f5d
Replace guava caches with caffeine 2017-04-03 00:53:04 +01:00
Luck
e7e2e3f7e0
Allow context pairs to be specified in commands, fix misuse of exceptions in the permission holder class 2017-04-02 18:44:05 +01:00
Luck
0a33c0aac5
Fix compatibility with older gson versions - closes #222 2017-04-01 07:26:05 +01:00
Luck
ae82807139
Add "use-vault-server" config option, depreciate vault primary group override feature 2017-03-27 17:35:28 +01:00
Luck
65147e1935
Remove missing permission nodes before adding new ones when saving users/groups with SQL storage 2017-03-27 16:54:59 +01:00
Luck
8e557d122b
Fix some concurrency issues with login handling 2017-03-26 18:40:09 +01:00
Luck
486b19aa90
Cleanup some misc stuff 2017-03-26 16:10:49 +01:00
Luck
14cb34ac95
Force some config options to be read as lower case 2017-03-25 23:23:20 +00:00
Luck
abfc23b04d
Provide tab completion for rewritten arguments & add some more rules 2017-03-25 20:27:33 +00:00
Luck
ebb24aefa1
Fix parent set command also adding default 2017-03-25 20:06:30 +00:00
Luck
2573f46f40
Fix removing temporary permissions/parents/meta in global context 2017-03-25 19:58:56 +00:00
Luck
5dcb8cd73a
Output group/track lists in alphabetical order 2017-03-25 19:48:17 +00:00
Luck
e4bfe09882
Don't bother loading test classes (#217) 2017-03-25 11:38:02 +00:00
Luck
671e2adc32
Cleanup remaining (un)setPermission methods 2017-03-25 11:04:25 +00:00
Luck
1137e476dd
Rewrite inheritance resolution implementation 2017-03-24 22:18:18 +00:00
Luck
c36b0d2975
Automatically push updates to other servers via the messaging service when commands are ran 2017-03-21 21:58:45 +00:00
Luck
f8ad562b95
Rename "debug" classes to "verbose" 2017-03-20 17:22:18 +00:00
Luck
c35ab38f36
Slight speed improvement for import processes 2017-03-19 20:52:35 +00:00
Luck
073b775566
Implement nicer json format for Sponge local data 2017-03-19 17:54:12 +00:00
Luck
85c7a7db8d
Implement new file layout for YAML / JSON storage files (#211) 2017-03-19 15:37:30 +00:00
Luck
1e134df27d
Clarify the file names of H2 and SQLite databases 2017-03-18 23:00:12 +00:00
Luck
bdff84885a
Enforce that ContextSets use the HashMultimap variant - closes #208 2017-03-18 20:18:18 +00:00
Luck
f1a9c3722c
Fix PM migration command not being registered 2017-03-18 17:26:44 +00:00
Luck
a0aec52661
Correct the case of group names when retrieved from Node instances 2017-03-18 14:43:34 +00:00
Luck
c2165e0196
Fix primary groups being selected in reverse order 2017-03-17 23:00:37 +00:00
Luck
2e75bc3f3b
Add some alternate options for primary group calculation 2017-03-17 22:54:18 +00:00
Luck
e91c2ca427
Add method to export Message enum and update language file 2017-03-17 21:17:59 +00:00
Luck
965ff04bcc
Fix ClassCastException with MongoDB user search 2017-03-17 20:54:40 +00:00
Luck
ac4bd418f3
Rename online-mode config option to use-server-uuids to better reflect/clarify its purpose 2017-03-17 20:51:06 +00:00
Luck
e9e844c1f7
Include internal weight value in meta output if not already present 2017-03-13 20:17:54 +00:00
Luck
aa2941fcdb
Refactor and cleanup commands 2017-03-13 20:03:03 +00:00
Luck
dbc909a317
Cleanup migration commands 2017-03-13 19:10:36 +00:00
Luck
f5007f94dc
Add server version info to the startup banner 2017-03-12 14:59:27 +00:00
Luck
d18ac2e6eb
Cleanup pom files, maybe improve build speed a bit 2017-03-12 14:28:35 +00:00
Luck
b9fc5c39ae
Listen for changes in data files and automatically update 2017-03-11 23:05:03 +00:00
Luck
9dc2278083
Cleanup a bit 2017-03-11 21:10:27 +00:00
Luck
281060a972
Make the clone commands work for existing tracks/groups too 2017-03-11 18:30:27 +00:00
Luck
91626f079d
Fix mistake in removeprefix/removesuffix command descriptions 2017-03-11 18:26:29 +00:00
Luck
7305c6c54b
Migrate group weightings onto the group itself as well as to the chat meta held by it 2017-03-11 18:24:25 +00:00
Luck
bce7fa871d
Fix getAllNodes cache not working properly, remove pre-process contexts on Bungee & cleanup some unused methods 2017-03-11 17:55:50 +00:00
Luck
680ad3c145
Update hikari version 2017-03-11 10:32:10 +00:00
Luck
2462eac497
Run exporter in own thread and process user exports concurrently 2017-03-10 20:44:19 +00:00
Luck
bb818c8942
Cleanup powerfulperms migration & remove support for older PP versions 2017-03-09 19:10:48 +00:00
Luck
ddc881af11
Add new argument util method for reading context pairs 2017-03-09 17:56:15 +00:00
Luck
838fba9173
Switch all usages of file reader/writers to use java nio methods - closes #204 2017-03-09 17:55:33 +00:00
Luck
0b6f326c18
Fallback to uuid in the search command if the username is unknown 2017-03-07 22:17:49 +00:00
Luck
ecf1d3790c
Fix issue where group nodes could be unset using the permission commands, and where users with per-server groups wouldn't be assigned to the default group globally 2017-03-05 19:05:05 +00:00
Luck
2862f0dfae
Fix creating delimiter patterns 2017-02-26 21:28:40 +00:00
Luck
fd4963c74b
Fix getUuid and getName API methods returning null for User, Group and Track instances 2017-02-26 20:46:37 +00:00
Luck
df99ef4481
misc cleanup 2017-02-26 12:43:35 +00:00
Luck
26afb69a14
Cleanup LuckPermsSubjectData (fixes #194) 2017-02-26 01:00:02 +00:00
Luck
e8c0c43e9d
misc cleanup 2017-02-24 19:31:45 +00:00
Luck
6798fb21b2
Events rewrite, remove most deprecated API methods (v3.0) 2017-02-19 14:57:20 +00:00
Luck
b328fa74a7
Clarify thrown exception when a null context is returned 2017-02-16 21:45:43 +00:00
Luck
8d86eed0a7
Don't bother adding checks to the listener queue if no listeners are registered 2017-02-15 19:39:24 +00:00
Luck
05f906a759
Add /lp tree command - closes #175 2017-02-15 19:21:27 +00:00
Luck
bd97a7c5d2
Respect prefix option set in subject - closes #149 2017-02-14 17:11:17 +00:00
Luck
a3a23d8870
Remove redundant SQL queries and fix issue where multiple uuids could be mapped to the same username - fixes #179 2017-02-14 16:23:54 +00:00
Luck
30bddceac5
import log should be sent to console too 2017-02-13 16:26:41 +00:00
Luck
3f17e8c3c8
Test verbose filters before registering them (#178) 2017-02-12 17:19:16 +00:00
Luck
1df6f4b9df
Allow negated group permissions 2017-02-08 21:04:34 +00:00
Luck
0d1f3b855f
Ignore commented lines on dump imports & add annotations to export files - closes #169 2017-02-05 09:58:24 +00:00
Luck
9b8d6e1dc7
Modify node escaping to use "\" characters, and remove all limits on node/server/world strings - closes #166 2017-02-04 12:18:45 +00:00
Luck
6540c695de
Add configurable duration handling when a holder already has a temporary permission/parent/option set - closes #152 2017-02-03 22:24:42 +00:00
Luck
c837dd5cc8
fix jedis shading - closes #158 2017-02-02 16:00:18 +00:00
Luck
d804c4be2a
fix build 2017-02-02 15:16:08 +00:00
Luck
ede413a213
Fix import/export handling - closes #159 2017-02-02 15:13:44 +00:00
Luck
9cee319ed9
Cleanup all migration commands - closes #63 2017-02-01 18:41:15 +00:00
Luck
f7b281f655
Fix build 2017-01-31 12:32:18 +00:00
Luck
8dbb083b90
Fix migration log being sent to the console twice 2017-01-31 12:29:06 +00:00
Luck
0be6d658ed
Refactor plugin and scheduler interfaces 2017-01-31 12:14:42 +00:00
Luck
1efce41767
Fix search command page number 2017-01-30 20:13:19 +00:00
Luck
da23b6ea9a
Fix search command page number 2017-01-30 20:13:19 +00:00
Luck
a61d3b3fd4
Fix sponge PEX/PM migration issue with defaults 2017-01-29 21:56:09 +00:00
Luck
ab9284b80f
Use reflection in the #getAllKeys method instead of a list 2017-01-29 14:52:42 +00:00
Luck
424af27a47
Change update messages to account for more than just redis messaging 2017-01-29 11:09:11 +00:00
Luck
a617675771
prettify the verbose paste output 2017-01-26 19:47:46 +00:00
Luck
86b203c21b
Compile with shaded redis version - fixes #150 2017-01-26 13:54:23 +00:00
Luck
73c5a1ad9b
Fix apache pool2 jar not loading correctly - closes #150 2017-01-25 22:07:50 +00:00
Luck
81c71777cb
Fix some usage messages 2017-01-24 21:48:47 +00:00
Luck
599072eef6
Fix null config values throwing exception - closes #147 2017-01-24 20:13:18 +00:00
Luck
02ea3afbe9
Add "!" delimiter to verbose matching 2017-01-23 22:47:39 +00:00
Luck
0c1a2e82bf
implement verbose expression matching 2017-01-23 22:43:52 +00:00
Luck
f89fb87c92
Log the file name when I/O fails 2017-01-23 21:15:25 +00:00
Luck
98d6cf842a
reword check result message slightly 2017-01-23 21:08:27 +00:00
Luck
69dc02b2c2
Add /lp check <user> <permission> command 2017-01-23 21:03:58 +00:00
Luck
8025f3a082
Fix all users sharing the same meta state 2017-01-22 22:19:29 +00:00
Luck
327c8b83be
Implement BungeeCord & LilyPad messaging services - closes #142 2017-01-22 21:46:22 +00:00
Luck
0f8c334de8
FIx stacking backwards compatibility 2017-01-22 19:01:34 +00:00
Luck
292d4cd450
Implement stacking prefixes - closes #60 2017-01-22 18:23:08 +00:00
Luck
38d1c9974b
Soften server checking regex - also towards #143 2017-01-22 16:36:06 +00:00
Luck
0be7300677
Fix node shorthand parsing - closes #143 2017-01-22 16:29:52 +00:00
Luck
c03585aeca
Fix using UTF-8 characters with MySQL - closes #129 2017-01-22 12:19:29 +00:00
Luck
d39dad3287
Fix config reloading causing ClassCastExceptions 2017-01-22 11:58:48 +00:00
Luck
0a3ca3affe
Add /lp reloadconfig command - closes #100 2017-01-21 20:14:25 +00:00
Luck
b7cf0e6bc7
Refactor config handling - towards #100 2017-01-21 15:36:13 +00:00
Luck
6dd093fe72
fix API ClassCastException 2017-01-19 21:29:54 +00:00
Luck
2e16844141
Remove console only commands - closes #137 2017-01-19 20:39:09 +00:00
Luck
241507228f
Colorize console info messages 2017-01-19 19:51:41 +00:00
Luck
01ac5382ea
Prevent some shutdown exceptions - closes #136 2017-01-19 18:56:22 +00:00
Luck
02b88a8357 Maybe fix default assignment parsing error with sponge 2017-01-18 22:40:25 +00:00
Luck
c99d6556db
Fix issues with default assignment loading on Sponge 2017-01-18 21:37:41 +00:00
Luck
aea44fc8bc
API changes for 2.17 - closes #123 2017-01-16 20:01:41 +00:00
Luck
c0da9d49d9
make clickable message invert filter more specific 2017-01-16 16:55:59 +00:00
Luck
148fe4c729
Make prefix/suffix string optional in the meta remove commands - related to #83 2017-01-15 15:11:35 +00:00
Luck
32fd484b58
Change promote / demote behaviour at the end of tracks - towards #112 2017-01-15 13:22:50 +00:00
Luck
7d24e748b7
Fix reading and writing UTF-8 characters from storage files - closes #129 2017-01-15 12:18:12 +00:00
Luck
6501e5cf8d
Fix bukkit permission subscriptions 2017-01-14 23:19:11 +00:00
Luck
cd4a684613 Fix demote command not removing old group 2017-01-14 08:27:09 +00:00
Luck
d06fda6d9d
Add /lp search command 2017-01-13 20:11:25 +00:00
Luck
7638b07e34
bump fanciful version 2017-01-12 21:48:16 +00:00
Luck
2b96b656a9
constants do not need getters 2017-01-12 21:14:27 +00:00
Luck
0fe251b6ec
Fix promote/demote commands and primary groups conflicting 2017-01-12 19:45:44 +00:00
Luck
a1afc70bcb
Cache regex permissions when they get processed 2017-01-12 19:45:15 +00:00
Luck
ced3e6959c
Add methods to get a list of users/groups with a specific permission 2017-01-11 21:25:57 +00:00
Luck
1c229d54d9
Cleanup 2017-01-11 18:55:46 +00:00
Luck
dd50193c18
Fix Sponge subjects from being unloaded and never reinitialized - closes #124 2017-01-10 19:17:45 +00:00
Luck
ab0f9bbdbd
Fix creating new tracks with SQLBacking 2017-01-09 19:24:12 +00:00
Luck
055d181c67
Fix KCauldron dependency loading - closes #121 2017-01-09 18:20:03 +00:00
Luck
7042c45deb
Fix retrieving log from SQLBacking 2017-01-08 20:12:33 +00:00
Luck
960c2291b6
Fully implement new SQL schema & add migration code 2017-01-08 19:33:27 +00:00
Luck
773bfe1407
Automatically sort YAML/JSON storage - closes #113 2017-01-08 11:02:13 +00:00
Luck
96035d5257
Fix clickable node list 2016-12-30 15:02:22 +00:00
Luck
9f2b59f2a2
Refactor SQLBacking - still towards #77 2016-12-30 14:27:43 +00:00
Luck
a54046907d
change first login event handling 2016-12-30 12:46:24 +00:00
Luck
2dad9f84fc
Fixes towards #77 2016-12-27 14:55:21 +00:00
Luck
a81a361a93
Fully implement new SQLBacking - towards #77 2016-12-27 14:27:05 +00:00
Luck
4660e68abf
Some small fixes for new SQL backing 2016-12-27 13:03:59 +00:00
bakatrouble
f8a77cf809 Change comments on configs; default ports for all storage backends 2016-12-27 12:39:54 +00:00
bakatrouble
0abe9598f6 It shouldn't be here 2016-12-27 12:39:54 +00:00
bakatrouble
20de713716 Some readability 2016-12-27 12:39:54 +00:00
bakatrouble
9dbef6acc2 Change providers syntax; fix port for PostgreSQL provider 2016-12-27 12:39:54 +00:00
bakatrouble
4c93bf7cf0 Fix connection leaking on batch inserts; fix IDEA analyser warning 2016-12-27 12:39:54 +00:00
bakatrouble
a8fea0fc49 Implement NodeDataHolder 2016-12-27 12:39:54 +00:00
Luck
6874cfd5b1
WIP: implement better sql schema - towards #77 2016-12-24 20:30:35 +00:00
Luck
d34013396a
woops 2016-12-23 16:59:01 +00:00
Luck
a35b0915ab
Refactor SQL storage - towards #77 2016-12-23 16:55:35 +00:00
Luck
b35f3b4375
Properly cleanup in the case of a reload - towards #100 2016-12-23 11:28:42 +00:00
Luck
f4f9612789
Fix MongoDB auth-less connection 2016-12-23 10:14:41 +00:00
Luck
bfc79c6051
Reduce page entry count to 15 - resolves #95 2016-12-22 22:06:41 +00:00
Luck
d3e60487bb
Download dependencies at runtime instead of shading them in the jar 2016-12-22 21:17:02 +00:00
Luck
f36f411a8d
Fix broken inheritance caching system - closes #97 2016-12-22 17:50:56 +00:00
Luck
8795383e7c
Make sync command reload sponge data too - resolves #98 2016-12-21 21:34:43 +00:00
Luck
0ae59bd3e6
show group weight value in the group info command output 2016-12-21 21:26:22 +00:00
Luck
61fd14c816
Add group setweight command - closes #94 2016-12-21 21:22:48 +00:00
Luck
c7d3d87b09
Fix verbose recording filters (again) 2016-12-20 13:59:56 +00:00
Luck
5e68f7b58c
Implement paginated permission listings - closes #80 2016-12-20 13:55:42 +00:00
Luck
8a692200d5
Improve memory footprint in low throughput caches 2016-12-20 12:42:20 +00:00
Luck
829eacb0fb
Fix verbose recording not taking note of filters 2016-12-20 02:53:37 +00:00
Luck
1bdb512826
Ease handling of group names containing spaces, after a faulty migration process 2016-12-19 21:50:34 +00:00
Luck
060fa6e5f7 change weight node 2016-12-19 18:22:32 +00:00
Luck
17406b448d
Add more detail to the group info command 2016-12-18 23:34:33 +00:00
Luck
b4b661a3ad
Set default port 2016-12-18 10:16:05 +00:00
Luck
4857969ca4
Cache calls querying parent groups in bridge subjects - closes #69 2016-12-18 09:57:39 +00:00
Luck
d9d01e09aa
Cache collation keys - resolves #90 2016-12-18 09:42:27 +00:00
Luck
4167460d28
Print true/false alongside permission info output for consoles without color. Closes #84 2016-12-16 19:21:36 +00:00
Eric Coan
1d8a60749d help tame mysql connection settings
this commit further helps tame the mysql connection pool (and really
reconnecting to the pool even when the underlying db goes down) further
from commit: #31a597c

this sets up `setValidationTimeout`, and `setConnectionTestQuery`
in order to better (more speedily(?)/fastly(?)/<other adective>ly(?))
handle connection timeouts in a timely manner. (although admittedly
this is already handeled well imo with the cache). however, it could
be better ™️.

in order to do this I did the following things:
  1. Switch to `TimeUnit.SECONDS.toMillis` instead of manually entering
     milliseconds, and having the time in seconds as a comment. just
     makes it more readable imo. if you want me to change it back I can
     I'm not like attached to this or anything.
  2. Perform more common validation timeouts with `setValidationTimeout`
     this allows us to potentially bump back up the connection timeout
     (although I see no harm leaving it where it is), although allows
     us to still "fail-fast" in a way when doing validations.
  3. Use `setConnectionTestQuery` for people who somehow someway
     may not be using a JDBC4 compliant driver.
2016-12-16 17:14:24 +00:00
Luck
31a597ca81
lower mysql connection timeout - may help with #81 2016-12-12 22:21:54 +00:00
Luck
41c3df41b4
Allow group weights as permission nodes - resolves #73 2016-12-12 19:30:42 +00:00
Luck
053066f1a7
add parent clear command - closes #67 2016-12-12 19:06:23 +00:00
Luck
21135dac07
Implement (partially) clickable permission lists - towards #68 2016-12-12 18:56:48 +00:00
Luck
22ccce3208
Default the value to true in set/settemp commands if no arg is given. Closes #82 2016-12-12 16:52:15 +00:00
Luck
70aa3964ee
Run all commands on the same thread - fixes #79 2016-12-11 11:34:18 +00:00
Luck
7dcdc59c8e
Fix IllegalArgumentException with BiMap#put 2016-12-08 16:30:00 +00:00
Luck
1e13ee87af
cleanup imports 2016-12-07 22:21:22 +00:00
Luck
2da7979d94
Partially add clickable command listings - towards #68 2016-12-07 22:09:11 +00:00
Luck
4ecb2c7c27
Closes #58 - Disable OP commands on Sponge 2016-12-07 21:27:50 +00:00
Luck
25511f898c
implement clickable message base - towards #68 2016-12-07 21:08:40 +00:00
Luck
d820f153a9 idk 2016-12-06 22:35:06 +00:00
Luck
77b06acad4
declare child states 2016-12-06 21:53:57 +00:00
Luck
6760a96527
Ensure holder state is always declared 2016-12-06 21:48:37 +00:00