Releases: A248/LibertyBans
Belated Thanksgiving Release
In this release, many spectacular translations have been added. Many thanks to those who contributed translations as well as other improvements. In lieu of writing the contributors out here, they are mentioned in /libertybans
.
Notices:
- A bug was fixed regarding the detection of alt accounts. Previously, some alt accounts went undetected.
- Therefore, you may find /alts and the alts auto-show feature to detect alt accounts which were not previously detected.
- This bug-fix does not relate to punishment enforcement, meaning you will see no change in which players are affected by IP-bans and IP address-based punishments; rather, the fix relates only to alts detected by /alts and the alts auto-show feature.
- Another bug allowed staff members to IP-ban with inadequate permission, in certain cases. The full extent of this security vulnerability is described over discord; the extent is limited, but you are permitted to be the judge of that. The bug is patched in this release.
Enter the change-log.
Bugs fixed:
- Disallow kicking offline players. #91
- Fixed a bug in alt detection which caused some alts to go undetected. fe3b7f0
- Fix a bug allowing staff members to IP-ban with inadequate permission. 4db08c2
- Solved tab-completion. #54
Features added:
- Sparkling Russian translation. #79
- Shimmering Chinese (Simplified) translation. #83
- Shining Hungarian translation. #89
- New "silent" punishment feature -- enacts punishments without sending notifications. #59
- Added the /accounthistory command. #64
Other:
- Added a warning when using MySQL 5.7 or MariaDB 10.2. These are older database versions which will become unsupported in LibertyBans 1.0.0. 3f5f00a
- Documented the %TARGET% variable. 567ccb0
- Added issue templates and updated the README #84
- The /libertybans command now shows those who have contributed to LibertyBans in all variety of manners. a316dfd
- Various internal and minor changes: 652a539, #74, 87f403f
A Major Milestone: The Largest Update Since Inception
This is quite a large update. If you are somewhat paranoid about bugs, you are free to conduct additional manual testing. Nevertheless, this update is already deployed by several users and is quite stable due to an extensive automated test framework - test coverage which other plugins unfortunately lack.
Notice: In this release, the times of durations have changed very slightly to be more accurate. For example, a year is now 365.24 days instead of exactly 365 days. A month is now 30.44 days instead of 30 days.
In addition to the typical change-log, I wanted to recognize others' contributions to this release as well as past releases. While I have taken care of the software, it would not have been possible without the incredibly useful bug reports I receive from everyday users:
- 4drian3d
- AGI
- BumbleTree
- copyandexecute
- D3adhkwen
- Dejay
- Deactivation
- hawkfalcon
- LaurenceBarnes
- Michael Sykes
- ox
- Simon (KoxSosen)
- SleepingTea
- tommasobenatti
- VanironCZ
Above are all the users who have submitted bug reports identifying problems with LibertyBans - If I forgot to add you here, please tell me! I also want to thank FranMC23, for providing the Spanish translation.
Some of these users are even extraordinary, submitting multiple bug reports of high calibre. I'm especially grateful for their thorough and extensive bug descriptions. They are truly honorable people, and they know who they are.
I considered creating some special status of badge of honor to commend the work of the top bug reporters, and to devise some criteria for it. However, I felt this would detract from the grace and selflessness with which honest users report bugs, by turning the process into another competition. Nevertheless, as I believe their work is commendable, and indeed I myself honor them for it, I am open to suggestions for the purpose of providing recognition.
Now, cue the change-log.
Bugs fixed:
- Fix history, warns, and blame showing wrong output when unknown target player specified. #67
- Solve %TIME_REMAINING% usage when time has elapsed. #66
- Fix LiteBans import failure when IP address is "#undefined#". 4da304a
- Include found operator and victim UUIDs when importing from AdvancedBan; solves names shown as "-NameUnknown-". #61
- Use correct duration permissions. #51
- Fix tab completion (argument index was shifted). #50 and #42
- Solve 11 months 4 weeks issue by using exact durations. #56
Features added:
- Include a Spanish translation, messages_es.yml. Thanks to FranMC23 and 4adrian3d 00c9580
- Add /alts command and alt-detection notification when a suspected player joins. #34
- Allow using weeks as a duration argument. 92fcb27
- Add %TARGET% variable in punishment command messages. #33
- Added three-valued reason handling to allow fully denying blank reasons. #49
- Allow using /unban with an explicit IPv4 address to undo IP bans. e233799
- Reworked tab completion of player names - added option to complete offline player names. Tab completion now includes the sending player, where previously the sending player was excluded. #52
- Add basic support for JPMS. 7f0563e
Other:
- Large internal refactor to use the adventure library. cf24e05
- Solve warning message emitted by Flyway when using HSQLDB. ee4c784
- Miscellaneous internal improvements.
- Add compatibility section to readme. 3143587
Extra: You may have noticed this update comes on September 11, a.k.a "Patriot Day" in the United States. The introduction to LibertyBans on the SpigotMC resource page is intended as a still-to-ripen developing satire.
More Bugs Fixed, Geyser/Floodgate Support, Velocity 3 Compatibility
- Fixed mutes not being enforced on BungeeCord. b8d26fe
- Solved more bugs importing from LiteBans. Add more tests for it. d0b8be8, b72f131, 595bb56
- Added compatibility with Velocity 3. 9714d35
- Added support for Geyser/Floodgate usernames with a configurable prefix. f29ac7a
- Increased the strength and urgency of the warning message when other plugins fail to relocate. 7d2ebb5. Lack of relocation, a bug in other plugins, has led to incompatibilities with LibertyBans
- Miscellaneous: updated dependencies and improved overall documentation. 808c424 and other commits
Bugs Fixed, Importing Stabilized, Full Multi-Proxy Support
- The feature of importing from other plugins has been tested and stabilized.
- Full multi-instance support, including multi-proxy support, has come to LibertyBans
- Multi-proxy users can configure the exact details of the mute cache. 85a04e7
- From this version onward, multiple versions of LibertyBans can stably co-exist with the same database. Previously, if you installed 2 versions of LibertyBans, started the new one, and then started the old one, the old one would refuse to use the database. 59dc656
- Removed log spam ("0 rows affected") by upgrading flyway. 27082f8
- More tests.
- Cleared all hurdles to building and compiling LibertyBans from source. You can now rest assured that you can easily compile the latest sources of LibertyBans, making any changes you desire, and having those changes be immediately reflected in the jar once you rebuild it. 8f572f2
- Velocity users who experienced issues with tab completion: if you have some time to debug, you can help solve the issue sooner. There is now a debug message which is logged every time a command is executed. To see this message, you'll need to configure Log4j which is used by Velocity. Contact me if you need help on how to do this - it's a valuable thing to know in general. 712ceff
Critical bug for Velocity users now fixed
Bugs fixed:
- For Velocity users, the 0.7.3 release contained a bug which prevented bans and mutes from being checked. #32 solved by 9af3738
- Fixed illegal reflective access to URLClassLoader#addUrl 8c9f4a0 . This caused a warning most of the time, and an error on JDK 16.
- Default messages configuration now use correct variables #30
Improvements:
- Dependency downloading mechanism improved 8c9f4a0
- Contributing to the source code is now easier 885ce21
You may delete the plugins/LibertyBans/libs
folder and its contents. The libraries
folder is now used.
The importing feature should still be considered mostly experimental.
Several bug-fixes and improvements
Import From Other Plugins
Note about Importing: This feature should be considered experimental, as it has not been heavily tested. Please back-up your data (you should do this anyway). Importing from other plugins is not an exact science, so be prepared for a possible issue.
- Fix a bug causing empty messages to be sent on Velocity
- Add importing functionality for AdvancedBan, LiteBans, and vanilla bans.
- Dramatically expend internal unit testing
Revision 2 of 0.6.0-SNAPSHOT
Ready for testing
Design Restructure + Many Changes
See the commit log for more info
Initial proto-type
The first functional version of LibertyBans. Supports adding and removing punishments as well as enforcement of punishments. Bans, mutes, warns, and kicks are enabled.
Duration permissions, listing punishments, IP address-based punishments, and importing from other plugins are features not yet implemented.