Commit graph

840 commits

Author SHA1 Message Date
Jason Penilla
4179bc4290 Fix #388 2022-08-26 11:49:37 -07:00
Jason Penilla
73a0386a85 fix formatting 2022-08-26 11:49:37 -07:00
Jason Penilla
32a756f033 Fix #387 2022-08-26 11:49:37 -07:00
Jason Penilla
abf662a51d bukkit/paper : Fix ItemStackPredicateArgument reflection 2022-08-26 11:49:37 -07:00
Jason
08242519dd Update PaperBrigadierListener.java 2022-08-26 11:49:37 -07:00
Jason Penilla
20087b357f Bump testing Paper version 2022-08-26 11:49:37 -07:00
Jason Penilla
158a8121a8 Use Paper raw command API when available 2022-08-26 11:49:37 -07:00
Jason Penilla
6ba9afd6a3 Set forceExecutor true for Paper Brigadier 2022-08-26 11:49:37 -07:00
Jason Penilla
90da6b0801 1.7.1-SNAPSHOT 2022-08-26 11:49:37 -07:00
Citymonstret
6219d30e4e
docs: improve the README pitch 2022-07-03 11:53:50 +02:00
Jason Penilla
2d45210734 release: Version 1.7.0 2022-06-18 22:52:58 -07:00
Alexander Söderberg
ec535dad7f feat(core): add repeatable flags (#378)
implements #209.
2022-06-18 22:52:58 -07:00
Citymonstret
d3864414aa feat(annotations): use TypeToken in AnnotationParser 2022-06-18 22:52:58 -07:00
Alexander Söderberg
296539d56c chore(core): deprecate prefixed accessors/mutators in CommandManager (#377)
chore(core): deprecate prefixed accessors/mutators in CommandManager.java

All prefixed (actual) getters/setters in CommandManager have been deprecated, and non-prefixed alternatives have been introduced. I've also put some effort into improving the JavaDocs of these methods.
2022-06-18 22:52:58 -07:00
Jason Penilla
687cd4c536 bukkit/paper: Update for commodore 2.0 2022-06-18 22:52:58 -07:00
Citymonstret
2dfbefdd7a fix(bukkit): only update commands if the method exists 2022-06-18 22:52:58 -07:00
Citymonstret
de22d70669 fix(bukkit): use Server#getMinecraftVersion when available 2022-06-18 22:52:58 -07:00
Citymonstret
89ec3fbf29 chore: make code style consistent 2022-06-18 22:52:58 -07:00
Jason Penilla
a2cea2f33e bukkit/paper: NamespacedKeyParseException cleanup 2022-06-18 22:52:58 -07:00
Jason
c250aa642f bukkit/paper: Add NamespacedKeyArgument (#376) 2022-06-18 22:52:58 -07:00
Jason Penilla
a441f42666 bukkit/paper: Deprecate unused BukkitCommandSender and inheritors 2022-06-18 22:52:58 -07:00
Jason Penilla
ef2582edc3 bukkit/paper: Fix BlockPredicateArgument on 1.18.2 2022-06-18 22:52:58 -07:00
Jason Penilla
9f6fb76a2a bukkit/paper: Fix BukkitBrigadierMapper#mapSimpleContextNMS on 1.18.2 2022-06-18 22:52:58 -07:00
Jason Penilla
52e6a53175 bukkit/paper: Fix Holder#value reflection in obf environment 2022-06-18 22:52:58 -07:00
Jason
1fe1b4a0d3 bukkit/paper: Update reflection for Minecraft 1.19 (#374) 2022-06-18 22:52:58 -07:00
Alexander Söderberg
2572b73c4b feat(bukkit/paper): add root command deletion support (#371) 2022-06-18 22:52:58 -07:00
Jason Penilla
17491c17c7 build: feed gradle more ram 2022-06-18 22:52:58 -07:00
zml
63f2c9299f fabric: Support 1.19 (#356)
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
2022-06-18 22:52:58 -07:00
Alexander Söderberg
28ff5d3003 feat(core): support root command deletion & standardize capabilities (#369) 2022-06-18 22:52:58 -07:00
Brian
08a97b2c4f fix: make BooleanArgument suggestions lowercase (#336) 2022-06-18 22:52:58 -07:00
Brian
f0e9b80c77 docs: fix typos (#344) 2022-06-18 22:52:58 -07:00
Citymonstret
16ea203a79 docs: add annotation processing instructions 2022-06-18 22:52:58 -07:00
Alexander Söderberg
4360847852 chore(core): add apiguardian @API annotations (#368) 2022-06-18 22:52:58 -07:00
Alexander Söderberg
d4ab593460 feat(core): flag yielding arguments (#367)
Implements https://github.com/Incendo/cloud/issues/218
Also confirmed to fix https://github.com/Incendo/cloud/issues/321.

Both `StringArgument` and `StringArrayArgument` now have flag-yielding modes. For annotated command method users, this can be activated using ´@FlagYielding`
2022-06-18 22:52:58 -07:00
Citymonstret
e889811380 chore(core): add @This annotations 2022-06-18 22:52:58 -07:00
Alexander Söderberg
74fd40f403 feat(annotations): add @CommandMethod annotation processing (#366)
We now verify the following at compile time:
- That `@CommandMethod` annotated methods are non-static (error)
- That `@CommandMethod` annotated methods are public (warning)
- That the `@CommandMethod` syntax and specified `@Argument`s match
- That no optional argument precedes a required argument
2022-06-18 22:52:58 -07:00
Alexander Söderberg
f1582fb64e feat(annotations): add command containers (#364)
This is the first part of the introduction of annotation processing to cloud. A new `@CommandContainer` annotation has been introduced, which can be placed on classes to have the annotation parser automatically construct & parse the classes when `AnnotationParser.parseContainers()` is invoked.

A future PR will introduce another processor that will scan for `@CommandMethod` annotations and verify the integrity of the annotated methods (visibility, argument annotations, etc.).
2022-06-18 22:52:58 -07:00
Alexander Söderberg
d613fd0208 feat(core): add MulticastDelegateFutureCommandExecutionHandler (#363)
This PR also adds a `handler()` getter to the command builder class. This will allow for things along the line of https://github.com/Incendo/cloud/issues/189 to be achieved.
2022-06-18 22:52:58 -07:00
Citymonstret
c39e0517fa chore: add test for issue #281
cannot replicate the issue (anymore).
2022-06-18 22:52:58 -07:00
Citymonstret
0ee576657b chore: add tests for issue #262
Add tests in order to try to replicate #262. The issue cannot be replicated.
2022-06-18 22:52:58 -07:00
Alexander Söderberg
09044b9c1b feat(core): add unit tests for the standard parsers (#362)
* feat(core): add BooleanParser unit tests

* feat(core): add ByteParser unit tests

* feat(core): add IntegerParser, LongParser & ShortParser unit tests

* feat(core): add EnumParser unit tests

* feat(core): add CharacterParser unit tests

* feat(core): add DoubleParser & FloatParser unit tests

* feat(core): add UUIDParser & StringArrayParser unit tests
2022-06-18 22:52:58 -07:00
Alexander Söderberg
46a3f7129f build: add revapi to core api modules (#361)
this way we can detect API/ABI breaks between versions. it'll compare to the previous tag.
2022-06-18 22:52:58 -07:00
Citymonstret
236cd34a32 build: add test results as comment 2022-06-18 22:52:58 -07:00
Citymonstret
ebb25e9d41 chore(core): improve (some) tests 2022-06-18 22:52:58 -07:00
Jason Penilla
db17fb5d10 Update paper repo 2022-06-18 22:52:58 -07:00
Jason Penilla
5849f471a7 Remove no longer needed licenser references 2022-06-18 22:52:58 -07:00
Jason Penilla
21aa30eab7 Switch plugin application order on fabric module
Fixes natives download on macOS by allowing loom to put mojang's repo first
2022-06-18 22:52:58 -07:00
Jason Penilla
1e2b7f8b8a Update gradle wrapper & add .gitattributes 2022-06-18 22:52:58 -07:00
Citymonstret
4ffd077165 chore: update CHANGELOG.md 2022-06-18 22:52:58 -07:00
Alexander Söderberg
f3e95070ce fix: #337 NPE thrown on empty command tree (#358)
Fixes #337 by making an empty command three throw NoSuchCommandException instead of NullPointerException.
2022-06-18 22:52:58 -07:00