Skip to main content

LANCommander 2.1.3 Release Notes

Full Release Notes

This is a patch release for the 2.1 series. For the complete feature overview and all patch notes, visit the LANCommander 2.1.0 release notes.

New Features

Allow Registration Setting

Servers now have an "Allow Registration" setting to control whether new users can register accounts. Resolves #408.

Server Autostop Delay

Server lifecycle management has been moved to a dedicated ServerManager, and servers can now be configured with an autostop delay so they shut down after a period of inactivity. Autostart/autostop for servers should be much more reliable now.

Close to System Tray

The launcher can now be closed to the system tray instead of exiting, keeping it running in the background.

Image Optimization Tool

A new server-side tool optimizes stored images to reduce disk usage and increase performance when displayed in the launcher.

Play Session Rework

Play session tracking has been reworked to be more reliable. Play sessions are now tracked in realtime with the launcher sending keepalives to the server. If a session is detected as stale (e.g. from a crash or improper shutdown), it will be automatically closed and the playtime will be calculated up to that point. This should result in more accurate playtime tracking and prevent issues with sessions that never end.

If, for some reason, a session is improperly created with a suspiciously long duration, a new server-side tool can be used to clean up these sessions and recalculate playtime under Settings > Tools > Long Play Session.

Working Directory from PCGamingWiki

Save paths pulled from PCGamingWiki will now attempt to set a working directory automatically.

Breaking Changes

MySQL/PostgreSQL Database Engine Reinitialization

Previous versions of LANCommander had major issues with MySQL/MariaDB and PostgreSQL database engines that would end up softlocking the server when certain operations were performed. This was caused by connections to the database being disposed of prematurely, causing the data access layer to throw exceptions and fail to recover. This has largely been resolved and should result in a much more stable experience using these other database engines.

However, due to support for MySQL/PostgreSQL falling into neglect, many of the database migrations had become out of sync and would fail to apply correctly. To resolve this, all MySQL/PostgreSQL migrations have been regenerated. This will require deployments using MySQL/PostgreSQL to recreate the database. Normally this type of change would be reserved for a major release, but given the state of the MySQL/PostgreSQL support being completely broken, this change is necessary to provide a stable experience for users of these database engines. If you are using MySQL/PostgreSQL, please make sure to back up your data and be prepared to recreate your database when updating to this version.

Improvements

  • Performance optimizations for game details were made in the launcher, fixing potentially high CPU usage and RAM allocation with games that have videos or screenshots in the media carousel.
  • Video players in the media carousel now only play when in view and pause when scrolled out of view or when the window is inactive.
  • Updated Notify.NET and fixed taskbar progress reporting
  • Localized remaining time and install progress status
  • Adjusted styling in the game description
  • Removed dead code and fixed video/screenshot loading that could block the UI
  • yt-dlp is now downloaded as a self-contained build removing the dependency on Python for Linux systems.

Bug Fixes

  • Fixed updating one-to-many relationships on the server. This should resolve various issues with redistributables, tags, genres, and platforms not saving correctly.
  • Fixed an extra gap on the compact list scrollbar in the launcher
  • Fixed the missing "Starting" text in the play button when a game is launching
  • Fixed an exception when adding a game without a SteamGridDB API key configured
  • Fixed an error thrown during first-time setup when no storage locations exist
  • Regenerated MySQL/MariaDB and PostgreSQL migrations
  • Fixed an issue where the identity database context could be disposed of prematurely, causing various issues with user management and authentication when using other database engines
  • Improved server process termination on Linux by directly calling kill via libc

Downloads

Loading release downloads…

Contributors

Loading contributors…