Releases: pterodactyl/wings
Releases · pterodactyl/wings
v1.4.1
Fixed
- Fixes a bug that would cause the file unarchiving process to put all files in the base directory rather than the directory in which the files should be located.
SHA256 Checksum
b8351b81defbf210b26d0a7a52cad77f66cab29722603d5a015880ffe173dc5d wings_linux_amd64
7e91edaa28397b764f4e7f99ef050162ed1666f3bbaf57d1c7ab6c78eb6069fb wings_linux_arm64
v1.4.0
Fixed
- [Breaking] Fixes
/api/servers
and/api/servers/:server
not properly returning all of the relevant server information and resource usage. - Fixes Wings improperly reading
WINGS_UID
and notWINGS_GID
when running in containerized environments. - Fixes a panic encountered when returning the contents of a file that is actively being written to by another process.
- Corrected the handling of files that are being decompressed to properly support
.rar
files. - Fixes the error message returned when a server has run out of disk space to properly indicate such, rather than indicating that the file is a directory.
Changed
- Improved the error handling and output when an error is encountered while pulling an image for a server.
- Improved robustness of code handling value replacement in configuration files to not potentially panic if a non-string value is encountered as the replacement type.
- Improves error handling throughout the server filesystem.
Added
- Adds the ability to set the internal name of the application in response output from the console using the
app_name
key in theconfig.yml
file.
SHA256 Checksum
4a8e73e1ae5c92963f343577fd92c979f368a7bc0219d330b8510b2bedbd8e5a wings_linux_amd64
7cfa1344ec54cfca2db1963684d91e7838e57be95380d41ce2eda50f1a77a868 wings_linux_arm64
v1.3.2
Fixed
- Correctly sets the internal state of the server as restoring when a restore is being performed to avoid any accidental booting.
SHA256 Checksum
adf6a86345ff619191b8444fcc5b53fc82888f5a4196d9c0cf6283d612548175 wings_linux_amd64
5247bacd5421e1082f611656aaabcecc9c0c5d02dbff059649be5c3e512717f9 wings_linux_arm64
v1.3.1
Fixed
- Fixes an error being returned to the client when attempting to restart a server when the container no longer exists on the machine.
Changed
- Updated server transfer logic to use newer file archiving tools to avoid frequent errors when transferring symlinked files.
SHA256 Checksum
bc6bd12125c41c5b1212fb83b1fa72607806f257276261e70c79c4d28f6b8ac6 wings_linux_amd64
60c89af83216d0f1a49ecf79ea48caef5874ba7a31d4b3e6f5c0e630835c2bdb wings_linux_arm64
v1.3.0
Fixed
- Fixes improper error handling when attempting to create a new Docker network.
- Fixes edge-case crash that would occur when a user triggers an install for a server that does not currently have a data directory present on the system.
- Fixes missing return on error when attempting to get the contents of a file from Wings.
- Fixes certain stop signals not being properly handled and parsed by Wings.
- Fixes server build settings not always being updated properly if set to their zero-value.
- Fixes context leak when waiting on a server instance to be stopped.
- Fix potential application panic when chowning a file if there is an error getting file details.
- Fixes
Filesystem.Chown
unintentionally touching all of the files within a given directory tree which could cause some games to trigger a full refresh thinking files had been changed. - Fixes
Content-Disposition
header not being properly escaped causing some browsers to not report the correct filename on downloads.
Added
- Adds support for restoring server backups (including remote backups) with the ability to reset the current file state for a server.
- Adds underlying support for allowing Eggs to mark specific files (or patterns) as being inaccessible to users within the file manager.
Changed
- Refactored SFTP subsystem to be less of a standalone package and more integrated with the underlying server logic in Wings. This significantly simplified the logic and makes it much easier to reason about.
- Refactored much of the underlying API logic to be more extensible down the road, support automatic retries, and be more testable.
- Refactored much of the underlying HTTP middleware logic to be packaged differently and easier to reason about in the codebase.
- System defined
TZ
variable will be used if present rather than attempting to parse the timezone usingdatetimectl
. - Improves error handling and reporting for server installation process to improve debugging in the future if things break.
SHA256 Checksum
2b0e7c63854ae70435174577f109376de8505365b5cd167858fc8545cad066c3 wings_linux_amd64
7d9058f86a05ca5851f9f9db5b97f2eeb6bb9e59b9ea123d9c8a4ab7127eb783 wings_linux_arm64
v1.2.3
Fixed
- [Security] Fixes a remaining security vulnerability in the code handling remote file downloads for servers relating to redirect validation.
Added
- Adds a configuration key at
api.disable_remote_download
that can be set totrue
to completely download the remote download system.
SHA256 Checksum
0ab9225646ce7cfb2d8ebcc3876a234643f36a60a7efefe48065a74b69d1926c wings_linux_amd64
2cbfc2f41f3ed00e5585573d81f3bec8f50b9f2d945bbbb24c3d52080cfae1eb wings_linux_arm64
v1.2.2
Fixed
- Reverts changes to logic handling blocking until a server process is done running when polling stats. This change exposed a bug in the underlying Docker system causing servers to enter a state in which Wings was unable to terminate the process and Docker commands would hang if executed against the container.
Changed
- Adds logic to handle a console stream unexpectedly returning an EOF when reading console logs. New code should automatically re-attach the stream avoiding issues where the console would stop live updating for servers.
SHA256 Checksum
743761d28030a88c7d0c65fb20b0275ecf0ecd19195b509b0689c0b33357da7c wings_linux_amd64
a7f796be461bbd062737db895b7d2fcce52e6d63278a4237a7f51e8ace151c6f wings_linux_arm64
v1.2.1
Fixed
- Fixes servers not be properly marked as no longer transfering if an error occurs during the archive process.
- Fixes problems with user detection when running Wings inside a Docker container.
- Fixes filename decoding issues with multiple endpoints related to the file manager (namely move/copy/delete).
- [Security] Fixes vulnerability allowing a malicious user to abuse the remote file download utilitity to scan or access resources on the local network.
- Fixes network
tx
stats not correctly being reported (was previously reportingrx
for bothrx
andtx
).
Changed
- Cleans up the logic related to polling resources for the server to make a little more sense and not do pointless
io.Copy()
operations.
SHA256 Checksum
53ace3d6a4fdd0a971a4488b5496ba61bec48cfde91f5148abc343b41d958a81 wings_linux_amd64
982096c65f02b8b6fc7cefc8f701280bf8af7d2d9b9963373290f2609daf7aca wings_linux_arm64
v1.2.0
Fixed
- Fixes log compression being set on the Docker containers being created to avoid errors on some versions of Docker.
- Cleaned up logic handling server resource usage to avoid race conditions in the future and make the logic simpler.
- Fixes directories being created when writing a file before checking if there was space for the file to even be written to the disk.
- Significant performance and resource usage fixes to backups and server transfers to avoid obliterating machine
i/o
and causing excessive resource exhaustion on busy systems or low end machines. - Fixes server install process to not unintentionally exit and cause invalid states if a line during the install process was too long.
- Fixes symlink error handling in backups to not unexpectedly tank a request. Any errors due to a symlink are now ignored and will not impact the generation of a backup (including for server transfers).
Changed
- Changed
--debug
flag to no longer ignore certificate errors on requests. Use--ignore-certificate-errors
to ignore any certificate errors encountered when in development environments. - Changed all Filesystem related errors to be of the same internal error type making error checking significantly easier and less error prone.
- Improves log output stacktraces to be more accurate as to the source of the issue.
Added
- Adds support for downloading files to a server's data directory and optionally checking the status of or canceling in-progress downloads.
- Adds a
context.Context
toserver.Server
structs allowing for cancelation of long running background tasks when a server is deleted without additional complexity on developer's end.
SHA256 Checksum
9d396deec0057ee2a856c0880a06bae3e051ba10d61e4e5463fd9e411c2a3bfc wings_linux_amd64
7f29dfac3e73e35dce7fb37679977478770ecf3f24a299dd43678316f3792d5c wings_linux_arm64
v1.1.3
Fixed
- Fixes
archive/tar: write too long
error when creating a server backup. - Fixes server installation docker images not using authentication properly during the pull.
- Fixes temporary transfer files not being removed after the transfer is completed.
- Fixes TLS certificate checking to be all lowercase to avoid any lookup issues when an all-caps domain is provided.
- Fixes multiple interfaces with the same port not being publishable for a server.
- Fixes errors encountered during websocket processes being incorrectly passed back to the Panel as a JWT error rather than a generic Wings error for admin users.
Added
- Added logic to notify the Panel when archive generation fails.
- Added endpoint to run
chmod
commands against server files and updated API response to include the mode bits when requesting files.
Changed
- Updated internals to call
Server.Environment.State()
rather than deprecatedServer.GetState()
functions. - Improved error handling logic and massively simplified error passing around the codebase.
SHA256 Checksum
d0dcbf80dc114734437d3a3bd7a6f062173aa121607637bd89f7b280334b32f8 wings_linux_amd64
a4e0b5154833f7daf70a6a50702bb4089704e289b203d233bf0937b194c2bf9d wings_linux_arm64
739a7f08eacd5c6314f086dc1cc8ac0dd52e2efb88e2886767a9bbdacef86185 wings_linux_arm