Skip to content

Releases: RedlanceMinecraft/wings

v2

26 Oct 14:58

Choose a tag to compare

SHA256 Checksum

547c8ef7677147f47c9af0d2d80ac93e5aadc5cbdadfc7b2d3558397c9f6dafb  wings_linux_amd64
88362ce5dcb0561f72a2073b66844159069701086d29f237c7aefcf1a26e8236  wings_linux_arm64

v1

26 Oct 14:30

Choose a tag to compare

v1

Added

  • Support relative file paths for the Wings config (#180)

Fixed

  • Folders not being sorted before files properly (#5078

Fixed

Fixed

  • Archives randomly ignoring files and directories (#5027)
  • Crash when deleting or transferring a server (#5028)

Changed

  • Release binaries are now built with Go 1.20.10 (resolves CVE-2023-44487)
  • Updated Go dependencies

Fixed

Fixed

Fixed

  • Backups being restored from remote storage (s3) erroring out due to a closed stream.
  • Fix IP validation logic for activity logs filtering out valid IPs instead of invalid IPs

Added (since 1.7.2)

  • More detailed information returned by the /api/system endpoint when using the ?v=2 query parameter.

Changed (since 1.7.2)

  • Send re-installation status separately from installation status.
  • Wings release versions will now follow the major and minor version of the Panel.
  • Transfers no longer buffer to disk, instead they are fully streamed with only a small amount of memory used for buffering.
  • Release binaries are no longer compressed with UPX.
  • Use POST instead of GET for sending the status of a transfer to the Panel.

Fixed (since 1.7.2)

  • Fixed servers outgoing IP not being updated whenever a server's primary allocation is changed when using the Force Outgoing IP option.
  • Fixed servers being terminated rather than gracefully stopped when a signal is used to stop the container rather than a command.
  • Fixed file not found errors being treated as an internal error, they are now treated as a 404.
  • Wings can be run with Podman instead of Docker, this is still experimental and not recommended for production use.
  • Archive progress is now reported correctly.
  • Labels for containers can now be set by the Panel.
  • Fixed servers becoming deadlocked when the target node of a transfer goes offline.

Changed

  • Wings release versions will now follow the major and minor version of the panel.
  • Transfers no longer buffer to disk, instead they are fully streamed with only a small amount of memory used for buffering.
  • Release binaries are no longer compressed with UPX.

Fixed

  • Wings can be run with podman instead of Docker, this is still experimental and not recommended for production use.
  • Archive progress is now reported correctly.
  • Labels for containers can now be set by the Panel.

Fixed

Fixed

  • The S3 backup driver now supports Cloudflare R2

Added

  • During a server transfer, there is a new "Archiving" status that outputs the progress of creating the server transfer archive.
  • Adds a configuration option to control the list of trusted proxies that can be used to determine the client IP address.
  • Adds a configuration option to control the Docker username space setting when Wings creates containers.

Changed

  • Releases are now built using Go 1.18 — the minimum version required to build Wings is now Go 1.18.

Fixed

  • Fixes multi-platform support for Wings' Docker image.

Added

  • Adds support for tracking of SFTP actions, power actions, server commands, and file uploads by utilizing a local SQLite database and processing events before sending them to the Panel.
  • Adds support for configuring the MTU on the pterodactyl0 network.

Fixed

  • Fixes SFTP authentication failing for administrative users due to a permissions adjustment on the Panel.

Fixed

  • Fixes error that would sometimes occur when starting a server that would cause the temporary power action lock to never be released due to a blocked channel.
  • Fixes a bug causing the CPU usage of Wings to get stuck at 100% when a server is deleted while the installation process is running.

Changed

  • Cleans up a lot of the logic for handling events between the server and environment process to make it easier to make modifications to down the road.
  • Cleans up logic handling the StopAndWait logic for stopping a server gracefully before terminating the process if it does not respond.

Fixed

  • Rewrote handler logic for the power actions lock to hopefully address issues people have been having when a server crashes and they're unable to start it again until restarting Wings.
  • Fixes files uploaded with SFTP not being owned by the Pterodactyl user.
  • Fixes excessive memory usage when large lines are sent through the console event handler.

Changed

  • Replaced usage of encoding/json throughout the codebase with a more performant encoder (goccy/go-json) to hopefully improve overall performance for JSON operations.
  • Added custom ContainerInspect function to handle direct calls to Docker's CLI and make use of the new JSON encoder logic. This should reduce the total number of memory allocations and be more performant overall in a hot pathway.

Fixed

  • Fixes SSL paths being improperly converted to lowercase in environments where the path is case-sensitive.
  • Fixes a memory leak due to the implemention of server event processing.

Changed

  • Selecting to redact information now redacts URLs from the log output when running the diagnostic command.

Added

  • Adds support for modifying the default memory overhead percentages in environments where the shipped values are not adequate.
  • Adds support for sending the Access-Control-Request-Private-Network header in environments where Wings will be accessed over a private network. This is defaulted to off.

Fixed

  • Fixes servers not properly re-syncing with the Panel if they are already running causing them to be hard-stopped when terminated, rather than stopped with the configured action.

Changed

  • Changes SFTP server implementation to use ED25519 server keys rather than deprecated SHA1 RSA keys.

Added

  • Adds server uptime output in the stats event emitted to the websocket.

Fixed

  • Fixes a race condition when setting the application name in the console output for a server.
  • Fixes a server being reinstalled causing the file_denylist parameter for an Egg to be ignored until Wings is restarted.
  • Fixes YAML file parser not correctly setting boolean values.
  • Fixes potential issue where the underlying websocket connection is closed but the parent request context is not yet canceled causing a write over a closed connection.
  • Fixes race condition when closing all active websocket connections when a server is deleted.
  • Fixes logic to determine if a server's context is closed out and send a websocket close message to connected clients. Previously this fired off whenever the request itself was closed, and not when the server context was closed.

Added

  • Exposes 8080 in the default Docker setup to better support proxy tools.

Changed

  • Releases are now built using Go 1.17 — the minimum version required to build Wings remains Go 1.16.
  • Simplifed the logic powering server updates to only pull information from the Panel rather than trying to accept updated values. All parts of Wings needing the most up-to-date server details should call Server#Sync() to fetch the latest stored build information.
  • Installer#New() no longer requires passing all of the server data as a byte slice, rather a new Installer#ServerDetails struct is exposed which can be passed and accepts a UUID and if the server should be started after the installer finishes.

Removed

  • Removes complicated (and unused) logic during the server installation process that was a hold-over from legacy Wings architectures.
  • Removes the PATCH /api/servers/:server endpoint — if you were previously using this API call it should be replaced with POST /api/servers/:server/sync.

Fixed

  • Environment variable starting with the same prefix no longer get merged into a single environment variable value (skipping all but the first).
  • The start_on_completion flag for server installs will now properly start the server.
  • Fixes socket files unintentionally causing backups to be aborted.
  • Files extracted from a backup now have their preior mode properly set on the restored files, rather than defaulting to 0644.
  • Fixes logrotate issues due to a bad user configuration on some systems.

Updated

  • The minimum Go version required to compile Wings is now go1.16.

Deprecated

Both of these deprecations will be removed in Wings@2.0.0.

  • The Server.Id() method has been deprecated in favor of Server.ID().
  • The directory field on the /api/servers/:server/files/pull endpoint is deprecated and should be updated to use root instead for consistency with other endpoints.

Added

  • [security] Adds support for limiting the total number of pids any one container can have active at once to prevent malicious users from impacting other instances on the same node.
  • Server install containers now use the limits assigned to the server, or a globally defined minimum amount of memory and CPU rather than having unlimited resources.

Fixed

  • Fixes the ~ character not being properly trimmed from container image names when creating a new server.

Changed

  • Implemented exponential backoff for S3 uploads when working with backups. This should resolve...
Read more