Releases: Deltik/SignEdit
v1.14.5 (2024-10-21)
Fixed
-
Missing cancelled
SignChangeEvent
validation when checking aSignChangeEvent
emitted by this plugin (#43)Only affects
compatibility.edit-validation: Extra
.
Under the Hood
- Updated copyright year 2024
- Switched CI provider from CircleCI to GitHub Actions
- Fully automated release in CI
- Updated Gradle to version 8.10.2
v1.14.4 (2023-07-31)
Fixed
java.lang.IllegalStateException: Unable to call method: getSide
on Bukkit 1.19.4 due to incomplete sign side support in that version of Bukkit
Under the Hood
SignHelpers.setEditableOldApi()
called the wrong Bukkit method (should beSign.setEditable()
instead ofSign.setWaxed()
), but this probably has no practical effect. It only affects the correctness of how this plugin interacts with Bukkit 1.13.2 through Bukkit 1.19.4.- The sign side calculation based on the player's relative position from the sign (
SideShim.fromRelativePosition
) will now say front on Bukkit 1.19.4 and older, as the back side had not yet been added in those versions of Bukkit.
v1.14.3 (2023-07-25)
Fixed
/sign ui
could be invoked by right-clicking a sign in Minecraft 1.20 when the player did not have thesignedit.sign.ui
permission.java.lang.IllegalArgumentException: Sign must be in same world as Player
in the right-click-on-sign event handler (#42)
v1.14.2 (2023-07-22)
Fixed
/sign ui
and the equivalent right-click override may incorrectly be hiding issues with the player opening the sign editor. (#42)
Under the Hood
- Remove ProGuard to improve the readability of stack traces
- Narrow down potential
/sign ui
issues by reducing thecatch
scopes to just methods and fields that are missing when opening the native sign editor GUI
v1.14.1 (2023-07-20)
Fixed
v1.14.0 (2023-07-17)
Added
- Support for Minecraft 1.20 sign sides (front and back)
- Support for Minecraft 1.20 honeycomb wax on signs
- On Minecraft 1.20+, opening an editable sign (without honeycomb wax) by right-click will open a sign editor handled by this plugin.
- (Minecraft 1.20+ only)
/sign wax
and/sign unwax
commands and permissions to apply and remove honeycomb wax from signs, respectively - New locale strings:
unwax_sign
–/sign unwax
pending action descriptionwax_sign
–/sign wax
pending action descriptionwax_removed
– Completed/sign unwax
actionwax_applied
– Completed/sign wax
actionbypass_wax_cannot_rewax
– Warning after a/sign
text change that wax was not reapplied because the player lacks permission to/sign wax
forbidden_waxed_sign_edit
– Error that a/sign
text change was blocked because the target sign is waxed and the player lacks permission to/sign unwax
Changed
- The documentation of
/sign undo
and/sign redo
has been clarified to indicate that they affect only the sign text, not the dyes or wax applied to the sign.
Fixed
-
Failure and error when editing hanging signs and wall hanging signs from Minecraft 1.20 when using
compatibility.edit-validation: Extra
(#34) -
Workaround for a Spigot 1.20 bug where using the stable API to have a player open a sign does not make the sign editable (SPIGOT-7391)
-
Error
java.lang.IllegalArgumentException: Invalid page number (1)
when usingcompatibility.sign-ui: EditableBook
and saving a blank book
Under the Hood
- Tacked on some adapters to make the plugin compatible with Bukkit 1.20
org.bukkit.block.sign.SignSide
- Increased the right-click event handling priority to the highest level to avoid interfering with other plugins that take over right-click events on signs (#36)
- Permission processing moved from
SignCommand.permitted(Player, String)
toInteractionCommand.isPermitted()
SignText.signChanged()
renamed toSignText.signTextChanged()
as part of clarification that only text changes count in/sign undo
and/sign redo
- Started pulling
org.bukkit.entity.Player
out of constructor injections, as various classes are being used in wider scopes. - Gradle 9.0 compatibility:
- Replaced Gradle 8.2 deprecations with recommended replacements
- Updated Gradle to version 8.2.1
- Added JDK toolchain resolver plugin to download Java 1.8
- Skip ProGuard for development builds
- Eliminated the dependency on
commons-lang:commons-lang
v1.14.0-beta7 (2023-07-16)
Pre-Release Notes
Since Previous Pre-Release
- Added a workaround for a Spigot 1.20 bug where having a player open a sign does not make the sign editable (SPIGOT-7391)
- Preserve the native honeycomb-on-sign action if the
signedit.sign.wax
permission is denied. - Locale changes:
wax_removed
andwax_applied
should just be those and not excessively wordy in what their effects are.- Eliminated
bypass_wax_before
andbypass_wax_after
to prefer only error messages, as users probably don't care if the implicit de/re-waxing is successful. - Reworded
bypass_wax_cannot_rewax
to make it clear that the wax that was previously on the sign was discarded.
Known Issues
- The new locale strings relating to waxed signs have not been proofread for the locales
zh-CN
,zh-TW
, andzh-HK
.
Added
- Support for Minecraft 1.20 sign sides (front and back)
- Support for Minecraft 1.20 honeycomb wax on signs
- On Minecraft 1.20+, opening an editable sign (sign without honeycomb wax) by right-click will open a sign editor handled by this plugin.
- (Minecraft 1.20+ only)
/sign wax
and/sign unwax
commands and permissions to apply and remove honeycomb wax from signs, respectively - New locale strings:
wax_removed
– Completed/sign unwax
actionwax_applied
– Completed/sign wax
actionbypass_wax_cannot_rewax
– Warning after a/sign
text change that wax was not reapplied because the player lacks permission to/sign wax
unwax_sign
–/sign unwax
pending action descriptionwax_sign
–/sign wax
pending action descriptionforbidden_waxed_sign_edit
– Error that a/sign
text change was blocked because the target sign is waxed and the player lacks permission to/sign unwax
Changed
- The documentation of
/sign undo
and/sign redo
has been clarified to indicate that they affect only the sign text, not the dyes or wax applied to the sign.
Fixed
-
Failure and error when editing hanging signs and wall hanging signs from Minecraft 1.20 when using
compatibility.edit-validation: Extra
(#34) -
Workaround for a Spigot 1.20 bug where having a player open a sign does not make the sign editable (SPIGOT-7391)
-
java.lang.IllegalArgumentException: Invalid page number (1)
when usingcompatibility.sign-ui: EditableBook
and saving a blank book
Under the Hood
- Tacked on some adapters to make the plugin compatible with Bukkit 1.20
org.bukkit.block.sign.SignSide
- Decreased the right-click event handling priority to the lowest level to avoid interfering with other plugins that handle right-click events on signs
- Permission processing moved from
SignCommand.permitted(Player, String)
toInteractionCommand.isPermitted()
SignText.signChanged()
renamed toSignText.signTextChanged()
as part of clarification that only text changes count in/sign undo
and/sign redo
- Started pulling
org.bukkit.entity.Player
out of constructor injections, as various classes are being used in wider scopes. - Gradle 9.0 compatibility:
- Replaced Gradle 8.2 deprecations with recommended replacements
- Updated Gradle to version 8.2-rc-2
- Added JDK toolchain resolver plugin to download Java 1.8
- Skip ProGuard for development builds
- Eliminated the dependency on
commons-lang:commons-lang
v1.14.0-beta6 (2023-07-13)
Pre-Release Notes
Since Previous Pre-Release
- When using
compatibility.edit-validation: Extra
, SignEdit for Bukkit could have submitted anull
rather than an air block for the block next to floating wall hanging signs, causing other plugins to fail to handle theBlockPlaceEvent
. Although not possible in normal Minecraft, SignEdit for Bukkit now simulates hanging wall hanging signs in the air for validation purposes. - Hopefully improved the machine translations of the wax-related locale strings
Known Issues
- When using the Spigot server,
/sign ui
edits are not registered due to a bug (SPIGOT-7391). Either switch to PaperMC or use/sign set
as a workaround. - The new locale strings relating to waxed signs have not been proofread for the locales
de
,nl
,zh-CN
,zh-TW
, andzh-HK
.
Added
- Support for Minecraft 1.20 sign sides (front and back)
- Support for Minecraft 1.20 honeycomb wax on signs
- On Minecraft 1.20+, opening an editable sign (sign without honeycomb wax) by right-click will open a sign editor handled by this plugin.
- (Minecraft 1.20+ only)
/sign wax
and/sign unwax
commands and permissions to apply and remove honeycomb wax from signs, respectively - New locale strings:
wax_removed
– Completed/sign unwax
actionwax_applied
– Completed/sign wax
actionbypass_wax_before
– Warning before a/sign
text change that wax will be removedbypass_wax_after
– Warning after a/sign
text change that wax was reappliedbypass_wax_cannot_rewax
– Warning after a/sign
text change that wax was not reapplied because the player lacks permission to/sign wax
unwax_sign
–/sign unwax
pending action descriptionwax_sign
–/sign wax
pending action descriptionforbidden_waxed_sign_edit
– Error when attempting to edit a waxed sign without permission to run/sign unwax
Changed
- The documentation of
/sign undo
and/sign redo
has been clarified to indicate that they affect only the sign text, not the dyes or wax applied to the sign.
Fixed
-
Failure and error when editing hanging signs and wall hanging signs from Minecraft 1.20 when using
compatibility.edit-validation: Extra
(#34) -
java.lang.IllegalArgumentException: Invalid page number (1)
when usingcompatibility.sign-ui: EditableBook
and saving a blank book
Under the Hood
- Tacked on some adapters to make the plugin compatible with Bukkit 1.20
org.bukkit.block.sign.SignSide
- Decreased the right-click event handling priority to the lowest level to avoid interfering with other plugins that handle right-click events on signs
- Permission processing moved from
SignCommand.permitted(Player, String)
toInteractionCommand.isPermitted()
SignText.signChanged()
renamed toSignText.signTextChanged()
as part of clarification that only text changes count in/sign undo
and/sign redo
- Started pulling
org.bukkit.entity.Player
out of constructor injections, as various classes are being used in wider scopes. - Gradle 9.0 compatibility:
- Replaced Gradle 8.2 deprecations with recommended replacements
- Updated Gradle to version 8.2-rc-2
- Added JDK toolchain resolver plugin to download Java 1.8
- Skip ProGuard for development builds
- Eliminated the dependency on
commons-lang:commons-lang
v1.14.0-beta5 (2023-07-13)
Pre-Release Notes
Since Previous Pre-Release
- Wax validation has been implemented for the entire plugin now that
/sign undo
and/sign redo
have the wax validation wrapper. - Fixed a regression breaking right-mouse click on a sign when the player's hand is empty
Known Issues
- When using the Spigot server,
/sign ui
edits are not registered due to a bug (SPIGOT-7391). Either switch to PaperMC or use/sign set
as a workaround. - The new locale strings relating to waxed signs have not been proofread for the locales
de
,nl
,zh-CN
,zh-TW
, andzh-HK
.
Added
- Support for Minecraft 1.20 sign sides (front and back)
- Support for Minecraft 1.20 honeycomb wax on signs
- On Minecraft 1.20+, opening an editable sign (sign without honeycomb wax) by right-click will open a sign editor handled by this plugin.
- (Minecraft 1.20+ only)
/sign wax
and/sign unwax
commands and permissions to apply and remove honeycomb wax from signs, respectively - New locale strings:
wax_removed
– Completed/sign unwax
actionwax_applied
– Completed/sign wax
actionbypass_wax_before
– Warning before a/sign
text change that wax will be removedbypass_wax_after
– Warning after a/sign
text change that wax was reappliedbypass_wax_cannot_rewax
– Warning after a/sign
text change that wax was not reapplied because the player lacks permission to/sign wax
unwax_sign
–/sign unwax
pending action descriptionwax_sign
–/sign wax
pending action descriptionforbidden_waxed_sign_edit
– Error when attempting to edit a waxed sign without permission to run/sign unwax
Changed
- The documentation of
/sign undo
and/sign redo
has been clarified to indicate that they affect only the sign text, not the dyes or wax applied to the sign.
Fixed
-
Failure and error when editing hanging signs and wall hanging signs from Minecraft 1.20 when using
compatibility.edit-validation: Extra
(#34) -
java.lang.IllegalArgumentException: Invalid page number (1)
when usingcompatibility.sign-ui: EditableBook
and saving a blank book
Under the Hood
- Tacked on some adapters to make the plugin compatible with Bukkit 1.20
org.bukkit.block.sign.SignSide
- Decreased the right-click event handling priority to the lowest level to avoid interfering with other plugins that handle right-click events on signs
- Permission processing moved from
SignCommand.permitted(Player, String)
toInteractionCommand.isPermitted()
SignText.signChanged()
renamed toSignText.signTextChanged()
as part of clarification that only text changes count in/sign undo
and/sign redo
- Started pulling
org.bukkit.entity.Player
out of constructor injections, as various classes are being used in wider scopes. - Gradle 9.0 compatibility:
- Replaced Gradle 8.2 deprecations with recommended replacements
- Updated Gradle to version 8.2-rc-2
- Added JDK toolchain resolver plugin to download Java 1.8
- Skip ProGuard for development builds
- Eliminated the dependency on
commons-lang:commons-lang
v1.14.0-beta4 (2023-07-13)
Pre-Release Notes
Since Previous Pre-Release
- Fixed the server crash when right-clicking a sign (#37)
- SignEdit for Bukkit now properly takes over the native Minecraft sign editor for unwaxed signs in Minecraft 1.20+. (#35)
- PaperMC no longer causes SignEdit for Bukkit to say "Sign edit forbidden by policy or other plugin" or "Modified by another plugin" on PaperMC when using
/sign ui
and any existing line begins with a formatting code and there are no other formatting codes on the line. - Fixed compatibility with other plugins that take control of right-click on signs (#36)
- Fixed documentation of
/sign undo
and/sign redo
in/? signedit
- Added a machine translation for the new locale strings in Hong Kong Cantonese (
zh-HK
)
Known Issues
/sign undo
and/sign redo
treat waxed signs as unwaxed signs.- When using the Spigot server,
/sign ui
edits are not registered due to a bug (SPIGOT-7391). Either switch to PaperMC or use/sign set
as a workaround. - The new locale strings relating to waxed signs have not been proofread for the locales
de
,nl
,zh-CN
,zh-TW
, andzh-HK
.
Added
- Support for Minecraft 1.20 sign sides (front and back)
- Support for Minecraft 1.20 honeycomb wax on signs
- On Minecraft 1.20+, opening an editable sign (sign without honeycomb wax) by right-click will open a sign editor handled by this plugin.
- (Minecraft 1.20+ only)
/sign wax
and/sign unwax
commands and permissions to apply and remove honeycomb wax from signs, respectively - New locale strings:
wax_removed
– Completed/sign unwax
actionwax_applied
– Completed/sign wax
actionbypass_wax_before
– Warning before a/sign
text change that wax will be removedbypass_wax_after
– Warning after a/sign
text change that wax was reappliedbypass_wax_cannot_rewax
– Warning after a/sign
text change that wax was not reapplied because the player lacks permission to/sign wax
unwax_sign
–/sign unwax
pending action descriptionwax_sign
–/sign wax
pending action descriptionforbidden_waxed_sign_edit
– Error when attempting to edit a waxed sign without permission to run/sign unwax
Changed
- The documentation of
/sign undo
and/sign redo
has been clarified to indicate that they affect only the sign text, not the dyes or wax applied to the sign.
Fixed
-
Failure and error when editing hanging signs and wall hanging signs from Minecraft 1.20 when using
compatibility.edit-validation: Extra
(#34) -
java.lang.IllegalArgumentException: Invalid page number (1)
when usingcompatibility.sign-ui: EditableBook
and saving a blank book
Under the Hood
- Tacked on some adapters to make the plugin compatible with Bukkit 1.20
org.bukkit.block.sign.SignSide
- Decreased the right-click event handling priority to the lowest level to avoid interfering with other plugins that handle right-click events on signs
- Permission processing moved from
SignCommand.permitted(Player, String)
toInteractionCommand.isPermitted()
SignText.signChanged()
renamed toSignText.signTextChanged()
as part of clarification that only text changes count in/sign undo
and/sign redo
- Started pulling
org.bukkit.entity.Player
out of constructor injections, as various classes are being used in wider scopes. - Gradle 9.0 compatibility:
- Replaced Gradle 8.2 deprecations with recommended replacements
- Updated Gradle to version 8.2-rc-2
- Added JDK toolchain resolver plugin to download Java 1.8
- Skip ProGuard for development builds
- Eliminated the dependency on
commons-lang:commons-lang