Him188
165f4d73b8
Move internal implementations of extensions into internal.extension
2020-09-12 21:20:53 +08:00
Him188
65cba4fd0b
API stabilization:
...
Extract ExtensionPoint;
Rename ExtensionPoint.extensionType;
Declare ExtensionPoint stable;
Improve ExtensionException
2020-09-12 21:17:08 +08:00
Him188
87373ef3ba
Review extensions:
...
Rename ScopedComponentStorage to PluginComponentStorage;
Add more extensions for PluginComponentStorage;
Misc improvements
2020-09-12 21:13:55 +08:00
Him188
9b3e96e3d3
Fix description checking
2020-09-12 20:38:06 +08:00
Him188
3b9414dc50
Fix typo
2020-09-12 20:28:58 +08:00
Him188
6b9ec05c98
Review plugins:
...
Move PluginLoader into plugin.loader;
Improve docs;
Change extension PluginLoader.description to member function PluginLoader.getPluginDescription;
Change builtIn loader lists with Lazy items;
Add Regex for testing plugin names and ids.
2020-09-12 20:20:41 +08:00
Him188
5c6b4aa8cc
Rename JarPluginLoader to JvmPluginLoader. Rename JvmPluginLoader.Companion to JvmPluginLoader.BuiltIn
2020-09-12 19:43:51 +08:00
Him188
c9ed804bf2
Fix plugin load
2020-09-12 19:34:28 +08:00
Him188
c5e68885c7
Public API stabilization: Review and remove ExperimentalPermission annotations
2020-09-12 19:26:36 +08:00
Him188
6ebad54856
Fix compilation
2020-09-12 19:10:41 +08:00
Him188
79136a2666
Add extensions for CommandSender.execute(Command,...)
2020-09-12 19:06:05 +08:00
Him188
3a45254fee
Rename BuiltInCommands.rootPermission to BuiltInCommands.parentPermission;
...
Update docs
2020-09-12 19:00:18 +08:00
Him188
7b8e9cc1c6
Review: Permission, PermissionService;
...
Lots of improvements;
Rename Permissible to Permittee, rename PermissibleIdentifier to PermitteeId;
Add docs for Permission system;
Remove ExperimentalPermission annotations on some targets
2020-09-12 18:51:40 +08:00
Him188
c7cde8e790
Fix PermissibleIdentifier.allParentsWithSelf
2020-09-12 16:26:12 +08:00
Him188
8fc4da127b
Extract executeCommandInternal
2020-09-12 16:25:58 +08:00
Him188
8a01dcc556
Support parsing self for PermissibleIdentifierArgumentParser
2020-09-12 16:25:36 +08:00
Him188
f24042f31e
Install built-in CommandArgumentParsers for PermissionId and PermissibleIdentifier
2020-09-12 16:25:24 +08:00
Him188
8f1cc48c6b
Fix buildscript
2020-09-12 16:11:53 +08:00
Him188
956e193d02
Correct class naming following Kotlin formal style
2020-09-12 13:31:34 +08:00
Him188
e41a2c0d09
Fix CombinedScope
2020-09-11 23:22:43 +08:00
Him188
a13ce6ff17
Redesign extensions;
...
Introduce ComponentStorage;
Add receiver ScopedComponentStorage to JvmPlugin;
Remove dynamic registers for PluginLoader;
Redesign plugin load flow;
2020-09-11 23:05:00 +08:00
Him188
ca4107b476
Fix PermissionImpl.equals, PermissionImpl.hashCode, PermissionImpl.toString
2020-09-10 20:55:08 +08:00
Him188
12662f4716
Remove duplications in BuiltInPermissionService.SaveData
2020-09-10 20:51:00 +08:00
Him188
829bd6d454
Rename PluginKind to PluginLoadPriority, revise load phases
2020-09-10 20:41:09 +08:00
Him188
d7fe94acbd
Reload BuiltInSingletonExtensionSelector on startup
2020-09-10 20:03:57 +08:00
Him188
cea884c3d7
Use Permission for Permission.parent
2020-09-10 19:53:27 +08:00
Him188
1c51456e07
Update docs
2020-09-10 18:34:43 +08:00
Him188
cd8f21d073
Rename scopeWithNotNull
to scopeWith
2020-09-10 18:34:01 +08:00
Him188
795d8040cb
Update docs
2020-09-10 18:04:50 +08:00
Him188
49eafe6699
Fix doc
2020-09-10 17:41:23 +08:00
Him188
76c277a9e7
Fix compiler error
2020-09-10 17:41:14 +08:00
Him188
7fe2d13544
Fix exception message
2020-09-10 13:01:40 +08:00
Him188
b242fc4eb8
Improve serialized configs
2020-09-10 12:56:07 +08:00
Him188
5cd35d7fbe
Fix permission duplication
2020-09-10 10:49:36 +08:00
Him188
8dd302073b
Add builtin Permission command
2020-09-10 10:44:49 +08:00
Him188
c76a6dacc9
Introduce JvmPluginDescriptionBuilder, add checks
2020-09-10 10:30:00 +08:00
Him188
a70e00464f
Ignore CancellationException on stop
2020-09-10 09:08:19 +08:00
Him188
405d8cd88f
Don't save registered permissions map
2020-09-10 09:05:34 +08:00
Him188
42a4c844e1
Ignore CancellationException on stop
2020-09-10 09:04:06 +08:00
Him188
6d4bc28ee5
Add serializers for PermissibleIdentifier
2020-09-10 08:48:01 +08:00
Him188
ba3fe945f7
Fix PermissionService config saving
2020-09-09 23:22:34 +08:00
Him188
a881235caa
Add serializers for PermissionId
2020-09-09 23:17:29 +08:00
Him188
cce8c2db16
Fix permission tips
2020-09-09 23:06:56 +08:00
Him188
9ce468db95
Install serializers for Permission objects
2020-09-09 23:01:01 +08:00
Him188
0c94ea96a8
Fix generated usage
2020-09-09 22:54:47 +08:00
Him188
a6bd7b7d63
Fix data comparison, fix commands
2020-09-09 22:49:48 +08:00
Him188
6ec3390b8d
Move extensions into PermissionService.Companion
2020-09-09 22:20:18 +08:00
Him188
4822a8c5fe
Rename AncestorPermission to RootPermission
2020-09-09 22:09:37 +08:00
Him188
a6109bb301
Rename Permission.parent to Permission.parentId
2020-09-09 22:08:50 +08:00
Him188
6429e400f1
Rename BasePermission to AncestorPermission
2020-09-09 22:08:15 +08:00
Him188
39ef007370
Review: Add duplication details for DuplicatedPermissionRegistrationException
2020-09-09 22:06:09 +08:00
Him188
703c4feae1
Add missing opt-in annotations
2020-09-09 22:00:25 +08:00
Him188
d3e3db9662
(internal) Use MutableList for grantedPermissionMap
2020-09-09 22:00:06 +08:00
Him188
a7777d008a
Change parameter permissionId: PermissionId
to permission: P
for PermissionService.testPermission;
...
Add PermissionService<P>.getOrFail
2020-09-09 21:55:48 +08:00
Him188
1abb0204a2
Update docs
2020-09-09 21:53:10 +08:00
Him188
6cdc85facd
Fix permissionType checks
2020-09-09 21:45:12 +08:00
Him188
c622c1b4fe
Fix NotNullMutableMap
2020-09-09 21:42:38 +08:00
Him188
8d115cd954
Don't infix for grantedWith
2020-09-09 21:41:20 +08:00
Him188
8661627607
Introduce NotNullMap and NotNullMutableMap
2020-09-09 21:34:08 +08:00
Him188
72df43db27
Cleanup
2020-09-09 20:07:32 +08:00
Him188
2926e55590
Introduce parentPermission for commands
2020-09-09 10:02:56 +08:00
Him188
44ef4e7c56
Introduce BasePermission
2020-09-09 08:59:39 +08:00
Him188
a830a095de
Add extensions for permission
2020-09-09 08:41:28 +08:00
Him188
3183bc4018
Init ConsoleInput and BotManager on start
2020-09-08 21:43:00 +08:00
Him188
9fec51977e
Remove the serializer of PluginKind
2020-09-08 21:41:32 +08:00
Him188
05cde028bf
Fix docs
2020-09-08 21:37:26 +08:00
Him188
6010d8c618
Remove CuiPluginCenter
2020-09-08 21:37:20 +08:00
Him188
48f6d68581
Add missing license
2020-09-08 21:35:52 +08:00
Him188
485e7ec9f7
Rearrange implementations
2020-09-08 21:35:30 +08:00
Him188
5cfaef0fcd
Use 'Console' for dataHolderName for builtins
2020-09-08 21:29:30 +08:00
Him188
bf4c82f1a5
ExtensionSelectors and improved extensions API
2020-09-08 21:28:56 +08:00
Him188
e1f8125163
Structured init phases; Load plugins and init services in order
2020-09-08 20:21:41 +08:00
Him188
2f7d7fb097
Add docs
2020-09-08 19:27:30 +08:00
Him188
60e13e73e9
Fix ExactMember, ExactTemp
2020-09-08 17:24:02 +08:00
Him188
5c2a9a9553
Integrate Command with PermissionService
2020-09-08 17:21:53 +08:00
Him188
7638a7e759
No more kapt
2020-09-08 15:51:45 +08:00
Him188
048a10cc50
Fix serializers for StorablePermissionService.SaveData
2020-09-08 12:34:20 +08:00
Him188
900eac58b4
Install serializer for PermissionImpl, make PermissionImpl final
2020-09-08 12:33:56 +08:00
Him188
9b3c7c1902
Install serializer for PermissionId
2020-09-08 12:33:12 +08:00
Him188
6af2094b8f
Don't require plugin to be enabled when registering extensions
2020-09-08 12:23:27 +08:00
Him188
fac66583ed
Make inheritors of AbstractPermissibleIdentifier data class
2020-09-08 09:54:39 +08:00
Him188
1f9705deaf
Permissions
2020-09-07 21:59:15 +08:00
Him188
8e3e328672
PermissionService fundamental
2020-09-07 12:12:27 +08:00
Him188
78d5f56c49
PermissionService fundamental
2020-09-06 14:24:50 +08:00
Him188
77176f5242
Adjust exception message for ExtensionException
2020-09-06 14:22:01 +08:00
Him188
7da6d33815
Add PostStartupExtension
2020-09-06 14:21:41 +08:00
Him188
52d417ad0e
Check forbidden plugin names
2020-09-06 11:54:16 +08:00
Him188
9add8f71ef
Add fake constructor for JvmPluginDescription
2020-09-06 11:44:16 +08:00
Him188
4fd379cfec
Add suffix ".yml" for data files
2020-09-04 21:42:55 +08:00
Him188
127e49953c
Use -jvm-default-all
2020-09-04 20:49:15 +08:00
Him188
bffecea0a1
Fix generic types
2020-09-04 20:49:02 +08:00
Him188
4ed8948e94
Add supertype Extension for AbstractExtensionPoint
2020-09-04 20:31:19 +08:00
Him188
a10e48cc36
Fix commands
2020-09-04 18:56:42 +08:00
Him188
21ec2c7786
Update docs
2020-09-04 15:34:34 +08:00
Him188
e8d96aaae2
Use MessageContent for CommandArgumentParser
2020-09-04 12:40:37 +08:00
Him188
d58e907d73
Correct file class name
2020-09-04 12:32:07 +08:00
Him188
4566403ece
Use MessageChain for arguments for executing commands
2020-09-04 11:44:56 +08:00
Him188
6713ba9a19
Update README
2020-09-04 10:57:32 +08:00
Him188
09b249e9da
Update docs: PluginData
2020-09-03 22:26:27 +08:00
Him188
623dd28a6e
Extract AutoSavePluginDataHolder
2020-09-03 22:00:03 +08:00