Commit Graph

1044 Commits

Author SHA1 Message Date
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
Luck
64838708ab
Release version 4.2.0
blaze it
2018-05-06 17:16:36 +01:00
Luck
91b7af52ac
Use the servers uuid cache in the output to /lp search if LP doesn't have data (#974) 2018-05-06 16:20:08 +01:00
Luck
022b385c0a
Fix /lp search query (#972) 2018-05-05 18:39:13 +01:00
Luck
7ee9b93365
Convert bulkupdate & search functionality to use PreparedStatements (#972) 2018-05-05 18:17:48 +01:00
Luck
c4c98aaabf
Improve the behaviour of the APIs (now somewhat redundant) holder refresh method 2018-05-04 23:17:06 +01:00
Luck
10c0efaa5d
Fix bad caching logic resulting in super high CPU usage 2018-05-04 23:12:46 +01:00
Luck
d8a7d8de4a
Throw a more detailed error when database connection info is missing 2018-05-04 21:27:57 +01:00
Luck
ab8b675bae
Add flag to exclude users from an export (#961) 2018-05-04 18:19:52 +01:00
Luck
194b602fd6
Implement different comparison methods for /lp search (#917) 2018-05-04 18:11:11 +01:00
Luck
7da0c58b76
Improve consistency of contextual primary group caching 2018-05-04 17:24:40 +01:00
Luck
2dbbea4993
Remove the locks in NodeMap to ease thread contention when lots of processes are resolving inheritance & refactor the way LocalizedNodes are created (#734) 2018-05-04 16:16:12 +01:00
Luck
a6facf7492
Refactor the way holder caches are invalidated in order to improve consistency (#734) 2018-05-03 19:36:10 +01:00
Luck
b8a1871cf1
Fix guava being accidentally shaded 2018-05-03 13:46:17 +01:00
Luck
f556c75d94
Allow display names to be set in specific contexts (#963) 2018-05-02 21:27:21 +01:00
Luck
58bd7de66a
Implement equals, hashcode and toString for NodeTypes 2018-05-02 20:35:20 +01:00
Luck
4547b52748
Refactor extended node types, general cleanup 2018-05-02 20:18:57 +01:00
Luck
b9acb84119
Optimize WildcardProcessor 2018-05-01 00:20:39 +01:00
Luck
e3a783c546
Maybe fix problems with symlinks (#956) 2018-04-30 14:44:09 +01:00
Luck
2e136666be
Remove storage buffers 2018-04-29 11:33:51 +01:00
Luck
7d089cb5f0
Refactor configurate deo serialization of permission data, add support for the TOML format 2018-04-28 21:26:59 +01:00
Luck
fef6ebf793
Context set values should be lowercase'd too 2018-04-26 19:51:05 +01:00
Luck
316e177c1d
Exclude temporary file changes from FileWatcher (#945) 2018-04-26 18:44:53 +01:00
Luck
4cdff14c7c
Apply improvements to the caches in AbstractContextManager (#929) 2018-04-25 21:14:16 +01:00
Luck
97121bc719
Add some missing null check annotations 2018-04-25 21:02:17 +01:00
Luck
1312aac349
Add promote and demote methods to the API (#938) 2018-04-25 19:58:56 +01:00
Bogdan
8a5c9ddef2 Added explicit column names in INSERT queries. (#939) 2018-04-25 18:27:28 +01:00
Luck
ba51f803ba
add more logging to the importer 2018-04-25 17:15:30 +01:00
Luck
7d90dba08b
Update some dependency versions 2018-04-21 23:26:34 +01:00
Luck
f11ebe6166
Replace file logger with json based system 2018-04-21 18:16:35 +01:00
Luck
1b917f0901
Fix init error in SeparatedConfigurateDao (#924 & #925) 2018-04-21 17:03:59 +01:00
Luck
328353d053
Implement the option to combine yaml/json/hocon storage files into one 2018-04-20 21:59:32 +01:00
Luck
4e87489dc1
Output meta in inheritance order in the 'meta info' command (#908) 2018-04-20 15:04:29 +01:00
Luck
8e5bcdd5ea
Move schema files to a namespaced package (#899) 2018-04-20 14:59:06 +01:00
Luck
4704c5c975
Add full diff to the log when webeditor data is applied (#922) 2018-04-20 14:06:35 +01:00
Luck
957365ab91
refactor inheritance graphs slightly 2018-04-20 14:00:50 +01:00
Luck
cb185e4827
Minor misc changes 2018-04-08 22:58:15 +01:00
Luck
f5c6b9e3d4
Add 'permission clear' command (#893) 2018-04-04 18:46:01 +01:00
Luck
f33c540efb
Register Sponge PermDescriptions to the LP permission registry 2018-04-03 21:56:15 +01:00
Luck
7684ac5d3a
Add extra parameter to EventBus#subscribe which allows a handler to be bound to a plugin 2018-04-02 17:26:02 +01:00
Luck
c13b01da01
misc cleanup 2018-04-02 16:02:55 +01:00
Luck
3453f05aca
Copy usernames in the GroupManager migration (#883) 2018-04-02 13:34:30 +01:00
Luck
c8bb85a06b
Don't intern strings in permission checking process 2018-03-31 22:13:10 +01:00
Luck
2aabc9902f
Rename verbose paste to verbose upload 2018-03-31 22:09:58 +01:00
Luck
6dba778e60
Catch exceptions thrown in repeating tasks to avoid subsequent executions from being cancelled 2018-03-31 11:13:27 +01:00
Luck
cbeaaca7af
Fix shutdown hang (#881) 2018-03-31 11:11:42 +01:00
Luck
0e69c8902d
Revert f63d6cf 2018-03-31 10:26:22 +01:00
Luck
f63d6cfced
Properly escape sql query for loadTrack (#877) 2018-03-30 21:50:03 +01:00
Luck
509e89b9cf
Clarify the showtracks output (#862) 2018-03-30 11:58:32 +01:00
Luck
90cce19baf
Make the world-rewrite map case insensitive (#863) 2018-03-30 11:54:17 +01:00
Luck
e4e93b1af1
Improve the way player uuid data is saved/stored. Add a warning message to catch ip forwarding issues 2018-03-29 21:46:55 +01:00
Luck
4923d10b86
Encode editor payload using UTF-8 (#841) 2018-03-18 20:58:33 +00:00
Luck
bd3a4e1ad7
Fix Sql messenger table name & bug which meant entries were only received after a 1 min delay 2018-03-18 18:58:53 +00:00
Luck
0f99a6c5ca
Fix recursive proxying in PhasedStorage
ugh
2018-03-18 18:31:30 +00:00
Luck
0150da94a8
Apply table prefix to the SQL messenger 2018-03-18 17:38:52 +00:00
Luck
b8da286f64
Replace huge forwarding classes with java Proxy instances 2018-03-18 17:36:07 +00:00
Luck
da797f154d
Implement Messaging Service using SQL (#534) 2018-03-18 16:02:04 +00:00
Luck
d1e76f401a
Reorganise the default configuration 2018-03-17 21:03:50 +00:00
Luck
4773934481
Fix race condition in the import process (#833) 2018-03-14 22:01:52 +00:00
Luck
dbfc524180
Fix NPE in Message#asString (fixes #822, #823, #824) 2018-03-13 15:30:35 +00:00
Luck
60aa7c6104
Fix compile 2018-03-12 21:27:23 +00:00
Luck
907d716929
Reorganise commands 2018-03-12 21:25:39 +00:00
Luck
1689a8abe2
Fix adding null json values (#818) 2018-03-12 19:01:38 +00:00
Luck
5db3820df4
A few minor API javadoc changes 2018-03-12 18:58:11 +00:00
Luck
cde2306079
Compress editor/verbose/treeview data using gzip before uploading 2018-03-09 16:21:45 +00:00
Luck
f6c440c172
Further improvements to the Sponge service design 2018-03-08 21:51:25 +00:00
Luck
1b98667365
Fix IsolatedClassLoader on Java 9 (#815) 2018-03-08 18:36:41 +00:00
Luck
bf69d5314e
Implement Sponge subject lookup queries using CachedData from LP common 2018-03-07 23:50:23 +00:00
Luck
0d89840179
Reduce the number of entries sent to the verbose viewer, cleanup old hikari try..catches 2018-03-03 20:41:46 +00:00
Luck
68e4d36f40
Extract common plugin behaviour into an abstract class 2018-03-03 16:26:37 +00:00
Luck
cd5447de38
Submit users/groups to the editor in weight order 2018-03-01 18:26:32 +00:00
Luck
6c0bb61cb1
Remove sponge migration commands 2018-03-01 11:03:22 +00:00
Luck
8f82ef7eb4
Add copyFrom method to Node.Builder 2018-03-01 09:19:26 +00:00
Luck
fbe84322b5
Cleanup parts of the sponge service implementation 2018-03-01 08:48:39 +00:00
Luck
98fb9946e4
Refactor Contexts class 2018-02-28 19:13:21 +00:00
Luck
984bc5860f
Set allow-invalid-usernames to true by default for Nukkit (#798) 2018-02-26 17:35:34 +00:00
Luck
6704ac4b46
Fully relocate the jedis driver 2018-02-24 18:20:56 +00:00
Luck
4e4ec8e608
Bump caffeine & hikari version 2018-02-24 14:15:51 +00:00
Luck
b2175e885f
Fix compat with older Gson versions (#791) 2018-02-24 13:50:38 +00:00
Luck
168e712324
Update API to 4.1 2018-02-23 22:13:41 +00:00
Luck
2889c28815
Separate prefix/suffix/meta nodes into their own section within yaml/json/hocon storage files 2018-02-23 15:59:12 +00:00
Luck
966bf8bf51
Replace deprecated method usage in NodeTools 2018-02-23 14:20:30 +00:00
Luck
63ff3c34b3
Fix default assignment expressions checking temporary permissions (#783) 2018-02-22 23:38:26 +00:00
Luck
736105cc12
Add node equality predicates, and provide way to determine hasPermission behaviour using them (#782) 2018-02-22 23:34:35 +00:00
Luck
31d435dc2b
Update web related functionality to point to new locations and APIs (#770) (#784) 2018-02-22 22:09:37 +00:00
Luck
da9977a30f
Fix compile and some minor formatting errors 2018-02-20 20:15:48 +00:00
Andrew
9c92522564 MongoDB Replica Set connections cannot resolve (#776 & #777) 2018-02-20 19:59:29 +00:00
Luck
31e436868d
Nukkit support (#764) 2018-02-18 15:10:35 +00:00
Luck
794455d728
Refactor bulkupdate comparisons 2018-02-16 22:25:19 +00:00
Luck
0adf85746d
Abstract out the process of traversing the inheritance tree, add configurable option to choose which algorithm to use (#719) 2018-02-16 17:46:17 +00:00
Luck
765f9d2545
Remove old schema migration code, cleanup a bit 2018-02-16 13:19:43 +00:00
Luck
0b5588a7dd
Cleanup temporary permission auditing process 2018-02-16 12:35:25 +00:00
Luck
4fda89d5c8
Wrap unimportant sql migrations in try..catch (#755) 2018-02-16 12:13:15 +00:00
Luck
b8c5c60ece
try to fix null proxySelector issue with okhttp 2018-02-15 22:20:11 +00:00
Luck
a3730aceeb
i'm a dummy 2018-02-15 22:08:42 +00:00
Luck
df5240a67c
Lazily initialise Http client 2018-02-15 22:03:53 +00:00
Luck
620b0c898c
Add ability to edit multiple users/groups in the same editor session 2018-02-12 22:04:39 +00:00
Luck
02ac4bc48b
Allow temporary-add-behaviour to be defined as an argument to the add/set commands (#747) 2018-02-10 22:04:53 +00:00
Luck
d14310768c
Allow bulkupdates without constraints (#746) 2018-02-10 21:51:57 +00:00
Luck
63f8e8849f
extract WeightCache out of PermissionHolder 2018-02-10 21:27:02 +00:00
Luck
7e7268bb5a
Filter expired entries from user/group bulk permission search results (#736) 2018-02-07 18:03:25 +00:00
Luck
fd937e3209
Refactor permission processors, misc cleanup 2018-02-04 18:39:34 +00:00
Luck
31df29194b
Add source to UserPromote & UserDemote events (#722) 2018-02-01 21:33:32 +00:00
Luck
fe200ca1ec
Add API methods to load users/groups/tracks and return a future encapsulating the resultant object instead of a success flag 2018-01-30 15:55:36 +00:00
Luck
7f7116e1c7
Use OkHttp for web requests 2018-01-30 00:08:00 +00:00
Luck
0cc1c4e5a7
fix build, refactor Bukkit model classes 2018-01-28 14:18:53 +00:00
Luck
2bc56de1c3
Don't store API delegate instances for all users 2018-01-28 00:26:58 +00:00
Luck
e28d15456c
Update some dependencies 2018-01-25 23:31:31 +00:00
Luck
54dbede130
Add /lp debug command 2018-01-24 19:13:29 +00:00
Luck
982254ff5e
Reduce the amount of unnecessary data in info command outputs a bit 2018-01-23 19:55:21 +00:00
Luck
6923c4e247
Log the name of the calculator when an exception is thrown 2018-01-23 16:52:50 +00:00
Luck
0eba5f1cbc
Add a means to provide a custom Storage dao implementation (#590) 2018-01-22 23:21:47 +00:00
Luck
4858e59b70
Don't relocate H2 or SQLite depends in favour of loading into isolated classloaders (fixes #704) 2018-01-22 21:32:31 +00:00
Luck
1f70ad978f
Cleanup usages of loadUser/loadGroup/loadTrack - eliminate possibility for unloading race condition (#706) 2018-01-22 17:34:15 +00:00
Luck
40294b10f5
ensure that we always use the shaded JDBC driver 2018-01-21 22:20:00 +00:00
Luck
8d045be0b0
misc cleanup 2018-01-21 21:35:25 +00:00
Luck
e24a482deb
Don't call events for changes to transient nodes 2018-01-21 20:31:48 +00:00
Luck
72d4e5cf7a
Remove the 'use-server-uuids' option and internal UuidCache system
The feature has stuck around since the early days - and solves a problem which really should never occur.
2018-01-21 20:18:13 +00:00
Luck
4c3e28ba85
Only show enduring nodes in command output, encapsulate the Node multimaps in PermissionHolder into separate class 2018-01-21 19:53:20 +00:00
Luck
821dc4ef56
Expose a means to implement the plugin's MessagingService via the API 2018-01-19 23:35:41 +00:00
Luck
612712f015
fix accidentally marking guava as compile in the previous commit 2018-01-19 19:29:34 +00:00
Luck
03a93b1186
Apply dependency remapping using an isolated classloader
* Fixes the issue which prevented LP from loading on Java 9
* Should also fix #697
2018-01-19 19:27:08 +00:00
Luck
04ffd00c0e
fix typo in /lp <u/g> editor message 2018-01-19 16:31:15 +00:00
Luck
a74475d4cd
serialise -> serialize 2018-01-18 19:21:02 +00:00
Luck
05ac7e6041
refactor the way verbose filters are parsed - tokenize on first init as opposed to on each check 2018-01-17 19:30:05 +00:00
Luck
5ae90f2a4b
Log verbose checks for the console, commandblocks & entities when running on Bukkit 2018-01-16 19:20:06 +00:00
Luck
b800db03fc
Nest the 'switchprimarygroup' command under the 'parent' subcommand 2018-01-15 21:09:42 +00:00
Luck
7cd5eea6d3
Display tracks relating to the group itself when the showtracks command is performed on a group 2018-01-15 20:39:18 +00:00
Luck
ed223f0e4e
Don't allow empty context keys/values (#688) 2018-01-15 20:06:20 +00:00
Luck
8a374aed04
add javadocs to Command class 2018-01-15 19:55:21 +00:00
Luck
9ceacdb739
Refactor some Sponge service details 2018-01-15 18:07:27 +00:00
Luck
39daed23c4
fix ~~minor~~ typo 2018-01-13 23:53:44 +00:00
Luck
19e6d4e4c8
Relocate dependency packages to prevent conflicts with other plugins 2018-01-13 23:27:55 +00:00
Luck
22006617d0
misc refactor for PermissionHolder & DummySender 2018-01-12 23:51:59 +00:00
Luck
3201d10bdd
Rewrite the way user instances are cleaned up and unloaded - towards #674 2018-01-10 21:28:33 +00:00
Luck
ea94bd8696
move bukkit-legacy module to a separate project, cleanup poms 2018-01-08 20:01:02 +00:00
Luck
f646c04d09
Remove lombok from the project 2018-01-07 18:40:23 +00:00
Luck
17ff9ac328
Allow shorthand nodes with single element lists (#665) 2018-01-03 19:25:47 +00:00
Luck
6c8f04f829
Implement PermissionsBukkit migration 2018-01-01 21:11:50 +00:00
Luck
505a10a8b1
misc refactoring 2018-01-01 19:48:20 +00:00
Luck
764665cf15
Populate Subject cache when obtaining SubjectReferences for instances which already exist 2017-12-30 15:23:31 +00:00
Luck
b9dfd7db54
Execute commands sequentially on a single thread executor 2017-12-30 12:16:34 +00:00
Luck
e09c5622f7
Recompile against new powerfulperms namespace (#651) 2017-12-29 22:44:42 +00:00
Luck
717347273d
Revert Spigot PluginClassLoader workaround 2017-12-29 20:40:43 +00:00
Luck
9bb1ba12b2
Fix issue with slf4j loading 2017-12-29 16:52:11 +00:00
Luck
bff9715e7f
Implement nasty workaround for Spigot's changes to the PluginClassLoader (#648) 2017-12-29 15:25:49 +00:00
Luck
cfcd896c59
Fix broadcasting log entries 2017-12-29 00:41:45 +00:00
Luck
aaa50cacda
Allow spaces in world names 2017-12-29 00:39:54 +00:00
Luck
3413adf16f
Send a different type of update ping for user changes, and only apply the change if the user is loaded 2017-12-28 13:37:55 +00:00
Luck
3d6aa69ca1
Improve various javadocs, add LogNotifyEvent 2017-12-27 17:00:54 +00:00
Luck
ab115c4a6b
Fix NodeFactory#nodeAsCommand (closes #639) 2017-12-27 10:30:13 +00:00
Luck
6602b23f09
misc cleanup 2017-12-23 23:51:42 +00:00
Luck
0b72507e2d
Correctly close flatfile database connections on disable, catch all exceptions when performing initial data load 2017-12-22 22:35:13 +00:00
Luck
cc3ddd51fd
fix copyright headers 2017-12-21 11:09:42 +00:00
Luck
f793fd5010
pass and account for the holder type when building PermissionCalculators 2017-12-19 22:48:53 +00:00
Luck
fb92fd9357
Extract out common constants & magic values into factory classes 2017-12-18 22:19:25 +00:00
Luck
a415a2705f
Return the loaded objects from storage methods as opposed to success flags 2017-12-18 17:03:59 +00:00
Luck
765f140121
Various fixes for log commands 2017-12-17 21:20:22 +00:00
Luck
cb47f9f94b
Change log output format, refactor log pagination 2017-12-17 17:47:10 +00:00
Luck
d0fb9f6aee
Update text version 2017-12-17 17:14:43 +00:00
Luck
9d424f5122
Fix more broken message coloring 2017-12-17 13:41:37 +00:00
Luck
f71237ea95
Send more helpful message when /lp is executed without any arguments 2017-12-17 13:31:45 +00:00
Luck
fb5925e1e8
Add user clone command (#530) 2017-12-17 12:59:36 +00:00
Luck
f86bdb7619
Misc cleanup 2017-12-17 12:17:46 +00:00
Luck
ad5299d0cd
Send a message when an editor upload begins 2017-12-16 23:29:50 +00:00
Luck
904bb90385
Refactor paginated command output, add flags for ordering 'permission info' entries, fix crashes caused by long messages (#591) 2017-12-16 21:05:43 +00:00
Luck
2e7a08c006
Fix promote / demote command inconsistencies (#609) 2017-12-14 21:43:44 +00:00
Luck
38e75da92f
Fix user demote command success message (#609) 2017-12-14 18:31:52 +00:00
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