Skip to content

Release 4.0

Latest
Compare
Choose a tag to compare
@Tiger-Tom Tiger-Tom released this 13 Oct 21:49
1dc4dec

From QOL 3.1 to release 4.0:

Additions:

  • Major:

    • Added a wiki (https://github.com/Tiger-Tom/RunServerDotPy/wiki)
    • Added mod reloader command
    • Added commands to display links to go to RS.PY's Github page and Wiki
    • Added a web interface. This interface shows everything that is outputted to users, as well as the results of any ChatCommands that it uses
  • Minor:

    • Added protections for "speedtest" command failing
    • TPS test command now actually shows something when it can't be run due to being ran to recently, before it just did nothing

Changes:

  • Major:
    • ChatCommands are "selected" in a different way - using the new "case-match" system in Python 3.10
    • A lot of ChatCommands were also rewritten and maybe optimized
    • Cleaned up modloader function a bit Completely overhauled the modloading system
    • Modding can now have custom runtimes - functions that run at certain times. Current times are firstStart, everyStart, lastStop, and everyStop
    • Help text version checker now fingerprints both the current version and the (potentially newer) online version and compares them, instead of relying on cached help version data
    • You can now change where RunServerDotPy checks for updates (it still has to be a GitHub repository), and where it checks for and downloads new help texts (which can be any JSON file)
    • The queue.Queue for inputQueue (used for "injecting" ChatCommands synchronously from the console) has been replaced with the more efficient collections.deque
  • Minor:
    • Uptime command now shows in seconds, minutes, hours, days, and weeks format
    • Cleaned up imports section & grouped similar imports further

Removals:

  • Major:
    • Removed the antivirus scan command and the update/upgrade command
  • Minor:
    • Removed some chat and console spam
    • Removed some unusable features
    • Removed battery sensor for sysinfo command

Bugfixes:

  • Major:

    • Emoticon page menu now suggests text to run command instead of running a "/tag" command to set a flag, as this doesn't actually work without OP
    • Tellraw functions fixed ("safeTellRaw" function specifically)
    • Fixed an issue with the time calculations for "uptime" by replacing time.monotonic() with time.time()
    • Fixed an issue where modules would be installed in the wrong version if "pip3" didn't correspond to the correct Python version
    • Fixed an issue where "requests" module wasn't in the "non-standard" group that would be automatically installed if they were missing (I thought that that was build-in...)
    • Speedtest command now prevents any user from running it again if a speedtest is already running
  • Minor:

    • Fixed a bug which would cause the "sysinfo" command to still check for battery(when it still existed)/temperature, even if these don't actually exist, therefore causing an exception
    • Fixed an issue where an exception would be displayed in console if ";sudo" or ";root" was entered without any commands
    • Fixed an issue where some outputs of the sysinfo command were being broadcast to all user and some weren't. Now all of them just go to the target user
    • Fixed a bug with the (semi)automatic EULA agree-er
  • Typo/misspelling:

    • Fixed a misspelling that caused a log's start time to be "Y%" instead of STRFTimed "%Y"
    • Fixed an issue where the help menu for sudo commands would show ";sudo[command]" without spacing upon hovering over or inserting a command, instead of ";sudo [command]"