tgstation-server-v5.13.4
Please refer to the README for setup instructions.
Component Versions
Core: 5.13.4
Configuration: 4.7.1
HTTP API: 9.11.0
DreamMaker API: 6.5.2 (Interop: 5.6.1)
Web Control Panel: 4.22.0
Host Watchdog: 1.3.0
Patch 4
Core
- Slightly improved the performance of applying CodeModifications to deployments. (#1608 @Cyberboss)
Host Watchdog
- Fixed manual Windows service setup always pointing the configuration directory to
C:/ProgramData/tgstation-server
. (#1608 @Cyberboss)
Patch 3
Core
- Fixed the Windows Service having an unexpected dependency on
Microsoft.WindowsDesktop.App
. (#1601 @Cyberboss)
Patch 2
Configuration
- Added strict URL parsing the the
Elasticsearch:Host
option. (#1600 @Cyberboss)
Core
- Fixed default option for
Elasticsearch:Host
in the setup wizard not working. (#1600 @Cyberboss) - Fixed the behavior of system channels being inverted. (#1600 @Cyberboss)
Patch 1
Core
- Fixed
tgs-configure
script selecting/opt/tgstation-server
as the config directory instead of/etc/tgstation-server
. (#1597 @Cyberboss) - Fixed SystemD constantly killing TGS due to it not properly communicating. (#1597 @Cyberboss)
DreamMaker API
- Removed a bad version check that would error builds. (#1597 @Cyberboss)
Update 13.X
Configuration
- The new configuration version is 4.7.0. (#1584 @Cyberboss)
- Added
Swarm:PublicAddress
this address is simply included in the response to/
on the main HTTP API. Clients can use this as a hint to talk to other servers in the swarm without additional user input. (#1584 @Cyberboss)
Core
- Docker image is now based off of debian bookworm(12). (#1591 @alexkar598)
- Fixed a swarm node collection desync that could occur if a controller health check triggered while a node was in the process of registering. (#1585 @Cyberboss)
- TGS now ships with a Debian (Ubuntu compatible) package and provides apt repository to download it from. This is available at the /tg/station apt repository https://github.com/tgstation/tgstation-ppa. See
README.md
for details. (#1571 @Cyberboss) - Added SystemD
notify-reload
support. Seebuild/tgstation-server.service
for a unit example. Note, when running under SystemD, the majority of standard output messages will be suppressed unlessFileLogging:Disable
is set totrue
in order not to duplicate log output. (#1571 @Cyberboss) - A stub
HeadInclude.dm
andTailInclude.dm
will be generated in theConfiguration/CodeModifications
directory on instance startup if said directory didn't previously exist. (#1547 @Cyberboss) - Fixed
HeadInclude.dm
andTailInclude.dm
if the deployement's target.dme
wasn't in the root of the game directory. (#1547 @Cyberboss) - The
prs
chat command now supports a--staged
argument that will give you the test merges in the revision staged for deployment if any. (#1513 @Cyberboss) --repo
parameter forprs
andrevision
commands no longer block until the repository is available. (#1513 @Cyberboss)- Configuration changes no longer auto-reload via a TGS restart. The restart must be performed manually. (#1570 @Cyberboss)
- Event scripts executed by the main deployment pipeline now respect the
Session:LowPriorityDeploymentProcesses
config. (#1570 @Cyberboss) - Windows firewall rule names for DreamDaemon now include the BYOND version number. (#1464 @Cyberboss)
- Fix priority topic sends not being able to be interrupted. (#1464 @Cyberboss)
- Sending SIGUSR2 to the main TGS process now act as if TGS received a restart request (i.e. the watchdog will detach and the TGS main process will exit) except it won't come back without system operator intervention. (#1561 @Cyberboss)
- Fixed a warning that could occur with GitHub deployments enabled. (#1584 @Cyberboss)
- Server update packages can now be provided through the API. Note that if an update package that doesn't match the tgstation-server update protocol is uploaded or if the actual uploaded version doesn't match the version specified in the POST API request, undefined behavior will occur. (#1535 @Cyberboss)
- Fixed an error that occurred if a static file upload ticket was abandoned. (#1535 @Cyberboss)
- Fixed potential memory leak in the non-GitHub OAuth login procedures. (#1535 @Cyberboss)
- Minor performance improvement in the non-GitHub OAuth login procedures. (#1535 @Cyberboss)
- Fixed double read occurring when downloading log files through the API. (#1535 @Cyberboss)
- Swarm distributed update downloads are now only performed on the initiating server. Other servers then download the update package from the initiator. (#1535 @Cyberboss)
- Fixed several edge cases in swarm distributed update process. (#1535 @Cyberboss)
- tgstation-server no longer holds a .NET Framework 4.7.2 dependency for running the Windows service. (#1572 @Cyberboss)
- tgstation-server now ships an
.exe
installer for Windows. It automatically downloads and installs the required .NET dependency if needed. You can either download it from GitHub Releases or install it viawinget install Tgstation.Server
. Once initially installed, it can be used to perform seamless updates same as using the HTTP API would. (#1572 @Cyberboss) - Fixed the internal configuration setting
General:DesignTime
being exposed inappsettings.Prodution.yml
s the setup wizard generates. (#1572 @Cyberboss) - The setup wizard now has default recommendations for the majority of its options that can be quickly navigated through. (#1572 @Cyberboss)
- The configuration directory (where the
appsettings.yml
files are loaded from) can now be specified with the command line argument--appsettings-base-path=XXX
. Remember that this is meant to be passed through either the console or service host watchdog. (#1572 @Cyberboss) - When specifying a relative path to an SQLite database, the base directory will now be the configuration directory. (#1572 @Cyberboss)
- The TGS console window title will now reflect the version being run or if you're running the setup wizard. (#1572 @Cyberboss)
- Fixed Windows service creating a
BYOND
directory in the installation folder. (#1572 @Cyberboss) - Fixed deployments failing if creating GitHub deployments was enabled and GitHub returned bad data. (#1579 @Cyberboss)
- Fixed deployments failing if the GitHub repository ID could not be retrieved under certain circumstances. (#1579 @Cyberboss)
- Fixed deployments failing if posting test merge comments was enabled and the GitLab request failed. (#1579 @Cyberboss)
- On Windows, TGS will request administrator privileges when needed. (#1566 @Peliex)
- Fixed incorrect wording in the error message embed TGS sends when receiving bad input from DM code. (#1565 @Cyberboss)
- Fixed a deadlock that could happen if a directory copy operation was cancelled. (#1565 @Cyberboss)
- Fixed a memory leak that sometimes occurred if DreamDaemon crashed during a
TgsReboot()
bridge request. (#1559 @Cyberboss)
DreamMaker API
- Added compile compatibility for back to BYOND version 510. (#1596 @Cyberboss)
- Added the ability for the event_handler to process health check events (#1516 @Cyberboss)
Host Watchdog
- Sending SIGUSR1 or SIGUSR2 to the host watchdog now forwards the signal to the main server process. (#1554 @Cyberboss)
- Windows service command
128
is equivalent to stopping the service. (#1572 @Cyberboss) - Windows service command
129
issues a graceful shutdown. The service will stop once all instances shutdown and instances will shutdown if their game servers are offline or once they call/world/proc/TgsReboot()
. (#1572 @Cyberboss) - Windows service command
130
will stop the service and leave DreamDaemon instances running. It can be started later to reattach them. (#1572 @Cyberboss) - Added descriptions to
Tgstation.Server.Host.Service.exe
command line options. (#1572 @Cyberboss) - Added
-p=XXX
option toTgstation.Server.Host.Service.exe
which can be used to pass arguments to the main server. (#1572 @Cyberboss) - Windows executables are now signed against the root certification authority maintained by @Cyberboss. Please consider adding this CA to your
Trusted Root Certificates
(OCSP Server: http://ocsp.dextraspace.net). Validate the thumbprint:4b2e06b195a1c2535e9571797565c4cee84a2cd3
. (#1572 @Cyberboss) - Improved
dotnet
executable searching. (#1572 @Cyberboss)
HTTP API
- When configuration file access conflicts occur, error code
46
will be returned. (#1553 @Cyberboss) - Deprecated DreamDaemon model fields
dumpOnHeartbeartRestart
andheartbeatSeconds
in favor ofdumpOnHealthCheckRestart
andhealthCheckSeconds
respectively. (#1546 @Cyberboss) - Renamed
heartbeart
enums tohealth check
s in preparation for a future change. (#1516 @Cyberboss) - Added the
mapThreads
field to the DreamDaemon model. This can be set to 0 to use the default value or a higher number to be added to DreamDaemon command lines. Only applies to supported BYOND versions. (#1464 @Cyberboss) - Added DreamDaemon right
524288
for changing themapThreads
field. (#1464 @Cyberboss) - Added
isSystemChannel
field to ChatChannel model. Defaults to on for pre-existing ChatChannels. Defaults to off for new ones. These can be used to limit the channels TGS restart and update messages get sent to. (#1489 @Cyberboss) - Added Administration right
128
for uploading custom server update packages. (#1535 @Cyberboss) - POST
/Administration
now accepts a booleanuploadZip
field. If set, and the request succeeds, afileTicket
will be generated in the response. This ticket can be used to upload a.zip
server update package using the/Transfer
route. (#1535 @Cyberboss)
Web Control Panel
- Updated to v4.22.0. (#1596 @Cyberboss)