gitlab crafty-controller/crafty-4 v4.0.0-alpha-3.5

latest releases: v4.4.0, v4.3.2, v4.3.1...
2 years ago

Changelog Alpha 3 -> Alpha 3.5

Stats📊: --Since last merge to master--

  • 525 Commits
  • 110 Pipelines Ran
  • 134 Changes [+19291, -6514]

-- Project Codebase--

  • Roughly 69264 total lines of CSS
  • Roughly 38915 total lines of JavaScript
  • Roughly 11854 total lines of Python
  • Roughly 8054 total lines of HTML 128,087 Lines Total-ish Project Size

UI Design & Improvements🖼️:

  • Crafty 4.0 is now available in 13 different languages (Thank you translators, you rock!)
  • The Wiki is Back from Holiday :> (We'll be updating it very soon)
  • Added nginx config examples
  • Server Reordering
  • Live credits page updates (Thank you for your support! <3 Ko-fi ☕ stats coming soon...)
  • Made navigation sidebar collapsible

Codebase Features & Improvements⚙️:

  • Complete Backup system overhaul (This was chonky)

  • BEDROCK SUPPORT ✨ (You asked for it we delivered, with love)

  • Complete Overhaul to Schedules w/ APScheduler (It's super cool)

  • Cron syntax support in Tasks (Oh my god, yes!)

  • Chain-reaction Tasks (This is Filth!)

  • Zip imports (This is seamless)

  • Super users (That's super, that is)

  • Entire Codebase lint implemented (A lot smelly code removed, many sleepless night)

  • Gravatar Profile Picture Support added (This is real nice)

  • Reworked api authentication to use JWT (api's are super cool)[api still to be built]

  • CI/CD Pipeline Optimizations and security improvements

  • Improved Tasks View for Mobile

  • Server Details moved to websockets

  • Make max_audit_logs user configurable for performance

  • Made server stats polls asynchronous

  • Check if server is downloaded before attempting launch

  • Hardened Javascript to reduce risk of injection

  • Sanitize inputs to the best of our ability

  • Migrations added for backups

  • Removed Minecraft specific naming/stats (Application/Hosting Neutrality)

  • Ability to disable languages in config.json

  • Improved session.lock checking

  • Added browser language detection for auto lang

  • Backup compression

  • Bedrock server stats collection reverse engineered

  • Added server download status indicator

  • Improved performance of stats collection

Docker Support/Changes:docker::

  • Rebase back to ubuntu from alpine for bedrock support (sadface)[I'm gonna make alpine work, just not now.]

  • Reworked Dockerfile for non-root function, following root group practice by the likes of OpenShift & Kubernetes

  • Unraid xml added

  • Updated Wrapper to apply correct required permissions to mounted volumes on container start

  • Removed deprecated code from Build Pipes

  • Reduced EXPOSEd ports in the compose file to match Dockerfile (100 ports should be plenty)

  • Bumped the pip version in dependency layer

  • Added import dir mount for organising server imports

  • In the docker-compose.yml added missing environment variable for time-zone

  • Added some trash files to the .dockerignore that are not required in the image

  • Added docs warning regarding WSL2 / Win11 / Docker Desktop, Shredding worlds on /stop /restart

Bugs Squashed!🐛:

  • Fixed crash when trying to edit own language
  • Fixed bug where users could not be created because of a bad logical check for system user
  • Massively improved File Loading, caching issues, loading too much data at once
  • Fixed Port checking / mc serv fresh start detection
  • Fixed various command dispatch issues
  • Added Missing Translations (TY Translators <3)
  • Fixed Notifications so they are only visible to valid server users
  • Fixed permissions error causing crashing when posting api key from regular user
  • Fixed bug with dependencies crashing crafty on fresh dep install
  • Fixed a bug where motd was crashing stats
  • Fixed duplicate encoding argument on windows migration that set the world on fire
  • Fixed server reporting not updating
  • Fixed bug where server_obj method was not defined breaking a lot of things
  • Fixed bug where stopping a server without crash detection would crash crafty...(ironic, I know.)
  • Fixed drag and drop anchors in dashboard rows so people can't be silly (They will still try i'm sure)
  • Binned a codeblock that would cause js to vomit
  • Fixed bug so chain-reaction schedule cannot be assigned to itself (People trying to be silly)
  • Fixed bug where schedules would not be able to be created
  • Fixed server restarts getting borked at some point
  • Fixed some values in websocket stats causing things to go abit funky
  • Fixed permissions application to bedrock_binary executables on import
  • Fixed SIG[15] handling (again)
  • Fixed bug in unzip where we tried copying a file instead of directory
  • Fixed Server order so it's the same as user-defined dashboard server order
  • Fixed a bunch of breaks caused when moving away from shutil (mostly user error, transcoding method calls)
  • Fixed Unzipping methods breaking spectacularly
  • Fixed backups so listed excluded paths do not include entire file structure.
  • Fixed critical bug when excluded paths was '' the entire crafty working directory would be rm -rf'd (Whoops!)
  • Minimize Shutil usage so cwd would not be changed by methods like make_archive & rm_tree
  • Removed server stats for servers that are not running (this just looked confusing)
  • Correctly handle if a server jar does not exist (useful information, ya'know?)
  • Fixed path exception when importing regular & non-zip bedrock servers
  • Fixed issue in file manager indenting and visual order (It's back to being pretty & readable)
  • Fixed bug where int mc ping was not defined for bedrock servers
  • Removed unnecessary print statements
  • Fixed issue where guid was a string trying to be made into bytes
  • Fixed bug where windows connection forcibly closing wasn't caught causing crash
  • Fixed bug in schedule creation where if interval was days an exception
  • Fixed display of Translators on Credit Page
  • Fixed backup restoring
  • Ensure stats schedule is removed on server start
  • Fix 'server_id' not defined bug in download file
  • Fix Dashboard 'Kill' causing stats scheduler to stack [This is just scratching the surface, a lot broke and got fixed during this last stint of development.]

Don't miss a new crafty-4 release

NewReleases is sending notifications on new releases.