Lamp

A modern annotations-driven commands framework for Java and Kotlin

MIT License

Stars
197
Committers
16

Bot releases are hidden (Show)

Lamp - Lamp v4: Beta 14

Published by Revxrsal 26 days ago

  • Prevent duplicate suggestions
  • Send player suggestions if Brigadier is disabled
  • Bug fixes in auto-completion

Full Changelog: https://github.com/Revxrsal/Lamp/compare/4.0.0-beta.13...4.0.0-beta.14

Lamp - Lamp v4: Beta 13

Published by Revxrsal 27 days ago

  • Fix greedy strings on Minestom
  • Fix autocompletion not working when there are multiple successive spaces
  • Respect quotes in greedy strings
  • Ignore extra whitespace in executing commands

Full Changelog: https://github.com/Revxrsal/Lamp/compare/4.0.0-beta.12...4.0.0-beta.13

Lamp - Lamp v4: Beta 12

Published by Revxrsal 28 days ago

  • Fix annotation replacers not replacing annotations on classes
  • Natively unregister commands on Bukkit when they are unregistered on the Lamp side
  • Annotation safety: Lamp will require all your annotations to have @Retention(RUNTIME). This will prevent confusion when the user tries to query an annotation that does not have a runtime retention policy.
  • Fixed @Length not having runtime retention
  • Fixed Kotlin's default arguments not working with primitives
  • Fixed Kotlin's default arguments not working with methods when the method is declared with a context receiver.

Full Changelog: https://github.com/Revxrsal/Lamp/compare/4.0.0-beta.11...4.0.0-beta.12

Lamp - Lamp v4: Beta 11

Published by Revxrsal 30 days ago

  • Asynchronous suggestions (#108)
  • Fix flag autocompletion being broken
  • Minor internal cleanups

Full Changelog: https://github.com/Revxrsal/Lamp/compare/4.0.0-beta.10...4.0.0-beta.11

Lamp - Lamp v4: Beta 10

Published by Revxrsal about 1 month ago

Additions

  • Added @CommandPriority.Low
  • Clean up CommandRegistry and migrate to a user-friendly interface
  • Rename CommandRegistry#children() to CommandRegistry#commands()
  • Make sure @Switch is only usable on boolean parameters

Kotlin features

  • Added support for suspend functions
  • Added support for @Optional and nullable parameters
  • Added support for @Switch value: Boolean = true/false (default values for switches)

Full Changelog: https://github.com/Revxrsal/Lamp/compare/4.0.0-beta.9...4.0.0-beta.10

Lamp - Lamp v4: Beta 9

Published by Revxrsal about 1 month ago

  • Addition of @Flags
  • Addition of @Switches
  • Added BukkitCommandActor#reply(Component)
  • Added BukkitCommandActor#audience()
  • Added BukkitLampConfig#audiences(), #messageSender() and #errorSender() for Components
  • Expose ExecutableCommand and Lamp instances from CommandNodes
  • Fix suggestions not working with greedy strings
  • ⚠️ Changed SuggestionProvider's from Collection<String> getSuggestions(StringStream, ExecutionContext) to Collection<String> getSuggestions(ExecutionContext)
  • Minor improvements

Full Changelog: https://github.com/Revxrsal/Lamp/compare/4.0.0-beta.8...4.0.0-beta.9

Lamp - 4.0.0-beta.8

Published by Revxrsal about 1 month ago

  • Fixes in Minestom
  • Fixes naming parameters not working with annotation replacers

Documentation

Full Changelog: https://github.com/Revxrsal/Lamp/compare/4.0.0-beta.7...4.0.0-beta.8

Lamp - Lamp v4: Beta 7

Published by Revxrsal about 1 month ago

Iteration 7 for Lamp v4 (beta).

  • Fixes class annotations taking priority over method annotations

Documentation

Lamp - Lamp v4: Beta 6

Published by Revxrsal about 1 month ago

Iteration 6 for Lamp v4 (beta).

  • Filter help commands by permission and secrecy

Documentation

Lamp - Lamp v4: Beta 5

Published by Revxrsal about 1 month ago

Iteration 5 for Lamp v4 (beta).

  • paper module is no longer required for Minecraft 1.20.6+
  • New Help API
  • Added more options for construction of classes inside annotations, such as @BType, @SuggestWith and @ParseWith.
  • Added Lamp#unregisterAll() and Lamp#unregisterIf(Predicate)
  • Fix Brigadier on Bukkit 1.19.3 and 1.19.4
  • Fix unregistraton on Bukkit (still needs work)

Documentation

Lamp - Lamp v4: Beta 4

Published by Revxrsal about 1 month ago

Lamp - Lamp v4: Beta 4.1

Published by Revxrsal about 1 month ago

Lamp - Lamp v4: Beta 4

Published by Revxrsal about 1 month ago

Iteration 4 for Lamp v4 (beta). This version contains major bug fixes.

Documentation

Lamp - Lamp v4: Beta 4

Published by Revxrsal about 1 month ago

Iteration 4 for Lamp v4 (beta). This contains major bug fixes

Documentation

Lamp - Lamp v4: Beta 3

Published by Revxrsal about 1 month ago

Iteration 3 for Lamp v4 (beta).

Documentation

Lamp - Lamp v4: Beta 2

Published by Revxrsal about 1 month ago

#2 beta candidate for Lamp v4.

Documentation

Lamp - Lamp v4: Beta 1

Published by Revxrsal about 1 month ago

The first beta candidate for Lamp v4.

Documentation

Lamp - Lamp v3.2.1 Latest Release

Published by Revxrsal 7 months ago

  • Add a no-arg constructor to SendMessageException and CommandErrorException, to allow users to signal command failing without sending a message. This is useful if users want to use their own way of sending error feedback to the user.
  • (Bukkit) Add @LiteralEnum annotation and BukkitBrigadier#showEnumsAsNativeLiterals to make enums appear as native parameters. This allows commands to have literals between parameters.
  • (Velocity) Add a sender resolver for Audience, and a response handler for ComponentLike
Lamp - Lamp v3.2.0

Published by Revxrsal 7 months ago

  • Use native player completions for OfflinePlayer (#87)
Lamp - Lamp v3.1.9

Published by Revxrsal 9 months ago

What's Changed