Commit Graph

532 Commits

Author SHA1 Message Date
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