Skip to content

v1.12.3 (2020-08-19)

Compare
Choose a tag to compare
@Deltik Deltik released this 19 Aug 23:39
· 123 commits to main since this release
v1.12.3
54edf9f

Major Bug Notice (#22)

Affected Versions

  • v1.12.2
  • v1.12.3
  • v1.12.4
  • v1.12.5
  • v1.12.6
  • v1.12.7
  • v1.12.8

Upgrade Paths

  • v1.12.x → v1.13.4

Description

On affected versions, Standard or Extra sign edit permission validation (compatibility.edit-validation: Standard or compatibility.edit-validation: Extra) may ignore the result of changed sign lines by other plugins.

This bug bypasses sign content/text restrictions imposed by other plugins for anyone using /sign subcommands that change the text of a sign.

All users who run affected versions and have enabled sign edit permission validation (this is the default behavior) should upgrade to v1.13.4 immediately to prevent exploitation of this bug.

Workaround

If you are unable to upgrade to v1.13.4, you should downgrade to v1.12.1 or disable SignEdit for Bukkit.

Added

  • Tab completion for multi-line selection (e.g. /sign 1,2,… and /sign cut 3-4,1-…)
  • If another plugin changes the sign text after using this plugin to edit a sign, a warning will be displayed.
    The example below shows the warning when another plugin strips out formatting codes from the execution of /sign set 3 &b&lSignEdit:
    "Modified by another plugin" warning
  • New locale strings:
    • modified_by_another_plugin – Warning to the player that another plugin changed their applied sign text
    • section_decorator – Theme to apply to the text shown at the end of before_section and after_section

Changed

  • /sign subcommands are now case-insensitive. For example, /sign ClEaR is now the same as /sign clear.
    Previously, capitalized subcommands would not be understood as valid subcommands.
  • /sign ui with the native sign editor no longer modifies the real sign on the server to present human-editable formatting codes.
    Only the player who invoked the command will see the reformatted sign.
  • If a different plugin undoes the sign edit but does not cancel the corresponding SignChangeEvent, this plugin will now tell the player "Sign edit forbidden by policy or other plugin" instead of "Sign did not change".
  • Changed locale strings:
    • before_section now takes one argument ({0}) for optional text that may be shown at the end of the same line as the section.
    • after_section now takes one argument ({0}) for optional text that may be shown at the end of the same line as the section.

Fixed

  • /sign cut only put empty lines into the clipboard (#17)
  • /sign ui with the native sign editor incorrectly puts the de-formatted sign text into the history (regression from = 1.12.2)
  • /sign ui on Minecraft 1.16.2+ loses all formatting codes when opening the default (native) sign editor GUI.
  • /sign ui with the native sign editor would not show the actual "after" sign lines if another plugin modified the SignChangeEvent originating from the Minecraft client.
  • Line selection validation for /sign cut and /sign copy
  • Line selection validation should not accept empty delimiters at the end (e.g. /sign set 1,3,,,,)