Karlatemp
5f6873e347
Change SubCommandDescriptor calling from callSuspend
to callSuspendBy
...
- Support optional argument now.
2020-09-19 15:56:57 +08:00
Him188
48f5c947b6
Add experimental API notes
2020-09-19 13:49:01 +08:00
Him188
ceb689066e
Introduce RestrictedScope for further resolution for IDE plugin
2020-09-19 13:48:23 +08:00
Him188
3fa7c9e128
Support ILLEGAL_COMMAND_NAME, ILLEGAL_PERMISSION_NAME, ILLEGAL_PERMISSION_ID, ILLEGAL_PERMISSION_NAMESPACE
2020-09-19 00:22:38 +08:00
Him188
78ebdf038d
Extract AbstractCommand
2020-09-19 00:02:36 +08:00
Him188
4c0daefd67
Replace with static import
2020-09-18 23:50:57 +08:00
Him188
b0e082000c
Introduce ResolveContext for permission and command
2020-09-18 23:50:02 +08:00
Him188
16598ee8ec
Fix docs
2020-09-18 23:33:08 +08:00
Him188
ca40a292cf
Add serializersModule
2020-09-18 23:30:40 +08:00
Him188
f40dd189f2
Fix commands
2020-09-18 23:26:16 +08:00
Him188
5a34d58975
Check command names on init
2020-09-18 23:15:29 +08:00
Him188
8b5c6dfa27
Fix returnType and add JvmBlockingBridge for ConsoleCommandSender.sendMessage
2020-09-18 23:03:21 +08:00
Him188
7762ea2f65
Separate Command.names into Command.primaryName and Command.secondaryNames such that primaryName is compulsory while secondaryNames are optional.
2020-09-18 22:55:19 +08:00
Him188
899c6266dd
Improve docs
2020-09-18 21:21:06 +08:00
Him188
8654172872
Remove redundant @JvmDefault
2020-09-18 21:10:38 +08:00
Him188
f2d8b1620e
API stabilization for PluginData:
...
Add warnings for PluginConfig
2020-09-18 21:10:11 +08:00
Him188
da68027b7c
API stabilization for PluginData:
...
Enforce explicit saveName on init
2020-09-18 20:53:08 +08:00
Him188
2fe2d2a681
API stabilization for PluginData:
...
Move members valueNodes, ValueNode, track from PluginData to AbstractPluginData;
Move findBackingFieldValue, findBackingFieldValueNode from PluginData.kt to AbstractPluginData.kt;
Mark unstable APIs with `@ConsoleExperimentalApi`
2020-09-18 20:35:36 +08:00
Him188
53890bcb5d
API stabilization: move provideDelegate from PluginData to AbstractPluginData
2020-09-18 20:19:39 +08:00
Him188
179c89b48f
Fix Pair and Triple values
2020-09-18 20:06:03 +08:00
Him188
cd86878307
Merge remote-tracking branch 'origin/master'
2020-09-18 20:01:10 +08:00
Him188
7244cb76c4
Introduce inspection NOT_CONSTRUCTABLE_TYPE for PluginData.value
2020-09-18 15:36:03 +08:00
Karlatemp
8fe2506e75
Terminal ( #179 )
...
* Rename ConsolePure to ConsoleTerminal
* Fix the way to close console with Ctrl+C
* Fix windows pipeline error. Fix EndOfFileException
* Add ConsoleExperimentalApi
* Collect imports
* Review
- Change old CLI main deprecation level to ERROR
- Update documents
- Update tasks from pure to terminal
* Fix error in closing console.
* Fix terminal closing and Ctrl+C closing.
* Add console shut-downing status
* Don't invokeOnCompletion when console shut-downing
* Fix Input interrupt
* Ensure active unless console is shut downing
* Change MiraiConsole.isShutDowning to `!job.isActive`
* Code Review
- Update Message on MiraiConsolePureLoader.kt
- Change MiraiConsole.isShutDowning to MiraiConsole.isActive
- Change MiraiConsole.shutdown to ConsoleInternalApi
* run catching
* Fix console input
* Update shutdown
* Fix module
* Revert 5199395
* Typo
2020-09-18 12:43:57 +08:00
Karlatemp
f990b7ce8c
Remove redundant code
2020-09-18 12:40:18 +08:00
Karlatemp
a49efda337
Add serializer for SemVersion
2020-09-18 12:37:40 +08:00
Karlatemp
001fac65cc
Update SemVersion rules
2020-09-18 12:34:30 +08:00
Him188
961bbfba53
Make dsl markers BINARY to be resolved
2020-09-18 01:50:41 +08:00
Him188
5dbf596582
Support checking plugin name and plugin id (ILLEGAL_PLUGIN_DESCRIPTION)
2020-09-18 01:49:08 +08:00
Him188
7bcef7997a
Introduce ResolveContext for resolve
2020-09-17 22:07:45 +08:00
Karlatemp
dc81835b68
Sem Version ( #164 )
...
* Sem Version
* Review: Add missing logic
* Review code
- Removed @JvmField
- Comments
- Fix Compare Logic
- Add tests from SemVer.org
* Deleted redundant statement
* Rename RangeChecker to RangeRequirement
* Code Review
- Move SemVersion#compareTo to SemVersionInternal#compareInternal
- Move top-level functions to companion object
- Make SemVersion comparable
* KDoc
* Update KDoc; fix parseRangeRequirement
* Update KDoc
* Update comment
* Update KDoc
* Update KDoc
* Typo
* Typo
2020-09-17 20:52:57 +08:00
Him188
466b067d9f
Throw IllegalStateException when restarting MiraiConsoleImplementation
2020-09-17 10:24:48 +08:00
Him188
cd6e78d36c
Add getInstance for front-end implementers
2020-09-17 10:23:29 +08:00
Him188
be311923d0
Add descriptions for permissions
2020-09-14 12:48:38 +08:00
Him188
18bf3bd563
Fill MiraiConsoleBuildConstants for debug use
2020-09-13 02:19:54 +08:00
Him188
c25733b8ac
Use Plugin.name for JvmPlugin.logger
2020-09-13 02:16:49 +08:00
Him188
e554b8596d
Add Semver warnings
2020-09-13 01:59:01 +08:00
Him188
3ded2cc87b
Add docs
2020-09-13 01:52:46 +08:00
Him188
6a34c0a673
Add User.permitteeId, etc.
2020-09-13 01:46:20 +08:00
Him188
6f7cc1a78d
Add "command." prefix to command permissions
2020-09-13 01:15:20 +08:00
Him188
9139d62a7c
Update docs
2020-09-13 01:13:45 +08:00
Him188
235391e658
Rename PermissionId.id to PermissionId.name
2020-09-13 01:12:46 +08:00
Him188
854528357f
Remove ExperimentalPermission
2020-09-13 00:51:34 +08:00
Him188
d59d67ad9e
Init all command properties on register
2020-09-13 00:29:23 +08:00
Him188
aa3c8baccb
Add Java bridge for implementing ConsoleInput
2020-09-13 00:26:50 +08:00
Him188
7d9d181002
Make ConsoleCommandSender an object
2020-09-13 00:26:23 +08:00
Him188
5250e3779f
Update docs
2020-09-12 23:25:16 +08:00
Him188
712ecb5a80
Use strict version
2020-09-12 23:00:47 +08:00
Him188
b173b9ad30
Avoid resolution ambiguity
2020-09-12 22:46:41 +08:00
Him188
fd23a03618
Introduce version DSL
2020-09-12 22:34:15 +08:00
Him188
807df3bbcd
Check PluginDependency.id on init
2020-09-12 21:22:47 +08:00
Him188
f303b0d21a
Remove deprecated functions
2020-09-12 21:21:29 +08:00
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