Releases: CatalysmsServerManager/7-days-to-die-server-manager
v2.2.0
Changes
🚀 Features
- feat: refactor restart permissioning @niekcandaele (#1436)
- feat: add economy log for deleted claimed items @niekcandaele (#1434)
- Increase performance of managedGuilds API call @niekcandaele (#1423)
- feat: add helper for lookupPlayer @niekcandaele (#1418)
- Readd admin ticket notifications @niekcandaele (#1409)
🐛 Bug Fixes
- fix: do not clear isConnecting flag on errors @niekcandaele (#1421)
- Fix chat bridge duplicating messages to the game server @niekcandaele (#1415)
- Disable provenance on images so Watchtower can work with them again @niekcandaele (#1411)
v2.1.1
Changes
🚀 Features
- Add timeDiff and timeDiffPretty helpers @niekcandaele (#1407)
- Make user dashboard more compact, allowing to fit more servers @niekcandaele (#1405)
🐛 Bug Fixes
- fix: add a workaround for inconsistent data for banned items @niekcandaele (#1398)
- sendDiscord should fetch channel info instead of assuming it's cached @niekcandaele (#1395)
- Fix some issues with GBL module @niekcandaele (#1392)
- fix: adjust logic of donor check @niekcandaele (#1390)
- fix: executing command on all servers when servers are not connectable @niekcandaele (#1386)
v2.1.0
Changes
This release contains a BIG overhaul of the variables page on the playground. A HUGE thank you to @Expostech for making that happen! You can now sort, filter and edit variables inside the table. You can lock variables to prevent their deletion. There's also a new helper listVar
allowing you much easier access to existing variables for use in hooks or commands.
🚀 Features
- feat: allow executing a command on all servers that are linked to a Discord guild @niekcandaele (#1384)
- Playground backend improvements @Expostech (#1188)
- Chatbridge use member nickname if they have one set @niekcandaele (#1376)
- feat: event deduper @niekcandaele (#1361)
- feat: increase maximum number of iterations with times helper to 250 @niekcandaele (#1360)
- feat: adjust styling of shop to have better mobile support @niekcandaele (#1348)
- feat: add a removeTele custom function @niekcandaele (#1342)
- feat: auto-detect player objects via XBL id in hooks @niekcandaele (#1338)
- Add more aliases to tp @mixels (#1322)
- Allow restarting CSMM via Discord by owners set in env file @niekcandaele (#1323)
🐛 Bug Fixes
- fix: clear connecting timeout after a period of no activity @niekcandaele (#1374)
- fix: keep alive should trigger even when there is no eventsource object @niekcandaele (#1372)
- fix: fix playerLevel detection for XBL players @niekcandaele (#1370)
- fix: make SSE reconnection logic simpler @niekcandaele (#1366)
- fix: ensure banned items tables still render data even if some of it is incomplete @niekcandaele (#1359)
- Do not try to load writeable Discord channels if no guild is configured @niekcandaele (#1331)
- Fix timeout of slash command reply if API requests to gameserver take too long @niekcandaele (#1329)
- Fix how we access Discordjs caches @niekcandaele (#1327)
- Fix permission flag bit when checking owned servers @niekcandaele (#1326)
- Send a message if a command fails to execute @niekcandaele (#1324)
V2.0.0
💥 Breaking change
Due to dependency updates, the minimum node version is now 16.6. If you installed CSMM using Docker, this will not be an issue as the Docker container was updated to a newer nodejs version. However, if you installed CSMM on your host you might need to upgrade you node install.
🚀 Features
- feat: add Discord notification when a server gets SSE throttled @niekcandaele (#1285)
- feat: add caching for available items via Redis @niekcandaele (#1261)
- fix an issue populating data during event detection @niekcandaele (#1180)
- Support for cross IDs @niekcandaele (#1176)
- Add a keepAlive mechanism to SSE event detector @niekcandaele (#1175)
- Add server name on Discord console command output @niekcandaele (#1165)
- Clean up chat messages when listing teleports @niekcandaele (#1163)
- feat: datePassed helper @Expostech (#1154)
- feat: allow higher donor tiers to keep economy data for longer @niekcandaele (#1143)
- Times helper for handlebars (aka for loop) @niekcandaele (#1129)
- Configurable SSE reconnect interval @niekcandaele (#1127)
- Add
execCmd
helper to Handlebars @niekcandaele (#1091) - Expose persistent variables as custom CSMM functions @niekcandaele (#1090)
- feat: persistent variables @niekcandaele (#1013)
- Add error boundary around game server connection errors to provide cleaner messages @niekcandaele (#1033)
- feat: implement customizable replies for custom commands @niekcandaele (#1032)
🐛 Bug Fixes
- fix: usage of send-message helper when no input embed is given @niekcandaele (#1320)
- fix: add a workaround when steam auth servers are not behaving @niekcandaele (#1316)
- Fix: Discord status command needs the he dependency @niekcandaele (#1314)
- fix: typo in concurrency + ensure first param is always a number @niekcandaele (#1299)
- Set disabled status when fetching donor status @niekcandaele (#1297)
- fix: soft-delete servers that fail donor check @niekcandaele (#1293)
- fix: allow more time when fetching list of items @niekcandaele (#1259)
- fix: drawing of land claims if we cannot find the owner @niekcandaele (#1256)
- fix: disconnection detection of XBL players @niekcandaele (#1226)
- fix: inventory tracking for XBL players @niekcandaele (#1217)
- fix: bump api wrapper package for better inventory support @niekcandaele (#1204)
- fix some issues with new XBL_ players @niekcandaele (#1193)
- fix: use cross ID as argument when banning players @niekcandaele (#1192)
- fix: issue loading related player data from arbitrary log lines @niekcandaele (#1184)
- fix an issue populating data during event detection @niekcandaele (#1180)
- fix: allow cross ID to be null while the system still fills in these IDs @niekcandaele (#1178)
- Setting persistent variable to 0 causes an error @niekcandaele (#1173)
- fix: an logging connection when adding servers @niekcandaele (#1140)
- Use keep-alive header instead of a reconnect interval for controlling SSE connection @niekcandaele (#1122)
- Fix using persistent vars inside scoped blocks like #each @niekcandaele (#1059)
- API endpoint for rendering templates should retain properties on data.server if they exist @niekcandaele (#1042)
- Prevent overloading server object by passing certain data in POST body when rendering template for playground @niekcandaele (#1041)
- Fix for tracking inventory changes table @niekcandaele (#1029)
- Fix issue when server gets throttled and quickly returns back to normal resulting in broken connection(s) @niekcandaele (#1028)
🧰 Maintenance
- Add dev docs to README @niekcandaele (#1306)
- Upgrade to Discord.js 14 @niekcandaele (#1302)
- Make queue concurrency configurable @niekcandaele (#1295)
- chore: better error logging when a command fails @niekcandaele (#1278)
- Filter out a specific error from Sentry reporting @niekcandaele (#1267)
- chore: add test and log line when playerCleanup runs @niekcandaele (#1231)
- Clean up stdout logs @niekcandaele (#1076)
- Add tests for custom hook API @niekcandaele (#1074)
- Provide a better error message when not passing correct parameters to persistent vars @niekcandaele (#1065)
- chore: small fixes, formatting and log changes to SSE @niekcandaele (#1035)
🔧 Dependencies
- deps: bump mocha from 9.1.4 to 10.0.0 @dependabot (#1183)
- deps: bump bull from 4.2.0 to 4.2.1 @dependabot (#1066)
- deps: bump lint-staged from 12.1.7 to 12.2.2 @dependabot (#1073)
- deps: bump docker-compose from 0.23.16 to 0.23.17 @dependabot (#1070)
- deps: bump supertest from 6.2.1 to 6.2.2 @dependabot (#1071)
- deps: bump grunt-bower-task from 0.5.0 to 0.6.1 @dependabot (#1063)
- deps: bump sequelize-cli from 6.3.0 to 6.4.1 @dependabot (#1061)
- deps: bump sails-mysql from 1.0.3 to 2.0.0 @dependabot (#956)
- deps: bump winston from 3.3.3 to 3.4.0 @dependabot (#1060)
- deps: bump lint-staged from 12.1.2 to 12.1.7 @dependabot (#1056)
- deps: bump @babel/eslint-parser from 7.16.3 to 7.16.5 @dependabot (#1057)
- deps: bump mocha from 9.1.3 to 9.1.4 @dependabot (#1062)
- deps: bump @sentry/node from 6.15.0 to 6.16.1 @dependabot (#1052)
- deps: bump sails from 1.5.0 to 1.5.2 @dependabot (#1054)
- deps: bump docker-compose from 0.23.15 to 0.23.16 @dependabot (#1058)
- deps: bump supertest from 6.1.6 to 6.2.1 @dependabot (#1050)
- deps: bump dotenv from 10.0.0 to 12.0.4 @dependabot (#1055)
- deps: bump eslint from 8.4.0 to 8.7.0 @dependabot (#1053)
- deps: bump @types/bull from 3.15.6 to 3.15.7 @dependabot (#1047)
- deps: bump sails-hook-orm from 3.0.2 to 4.0.1 @dependabot (#1037)
- deps: bump docker-compose from 0.23.14 to 0.23.15 @dependabot (#1044)
- deps: bump geoip-lite from 1.4.2 to 1.4.3 @dependabot (#1051)
- deps: bump concurrently from 6.4.0 to 7.0.0 @dependabot (#1049)
- deps: bump sails-hook-grunt from 4.0.1 to 5.0.0 @dependabot (#845)
- deps: bump sequelize from 6.11.0 to 6.13.0 @dependabot (#1045)
- deps: bump @sentry/core from 6.15.0 to 6.16.1 @dependabot (#1046)
- deps: bump async from 3.2.1 to 3.2.3 @dependabot (#1031)
- deps: bump cron-parser from 3.5.0 to 4.2.1 @dependabot (#1002)
- chore(deps): bump validator from 13.6.0 to 13.7.0 @dependabot (#936)
- deps: bump bull from 3.29.3 to 4.2.0 @dependabot (#1001)
v1.28.0
Changes
🚀 Features
- Logic for disconnecting and reconnecting to a server when SSE throttles @niekcandaele (#1022)
🐛 Bug Fixes
- Fix date sorting on tracking page @niekcandaele (#1025)
- Write back a players role to the database after running custom business logic @niekcandaele (#1024)
- Make sure SSE can reconnect when no messages have been received for an extended period of time @niekcandaele (#1023)
- Users with manageServer permission unable to set roles @niekcandaele (#1020)
- Correctly apply Discord chatbridge suffix and prefix after setting them on the website @niekcandaele (#1017)
- Prevent doubling of log messages @niekcandaele (#1014)
- Issues when setting or removing a player role @niekcandaele (#1012)
🧰 Maintenance
- Limit how many CI jobs are created when making git changes @niekcandaele (#1019)
- Do not require strict version numbers for apk packages in Docker image @niekcandaele (#1016)
v1.27.4
Changes
🐛 Bug Fixes
- fix: handle caching of Discord roles better when adding a new server @niekcandaele (#1009)
- TypeError: Request path contains unescaped characters @niekcandaele (#1005)
- fix: ban button to use steam ID again @niekcandaele (#1003)
- fix: Discord error handling when gameserver is offline @niekcandaele (#999)
- fix(logger): add more checks before handling metadata @niekcandaele (#990)
- fix(discordNotification): select name field from player role @niekcandaele (#988)
- fix: for when blocked prefixes contains an empty string @niekcandaele (#987)
🧰 Maintenance
- ci(docker): remove Snyk @niekcandaele (#995)
- Default to SSE for 7D2D event detection @niekcandaele (#993)
- ci(docker): run Docker build for PRs @niekcandaele (#991)
v1.27.3
Changes
🚀 Features
- Allow setting prefix and suffix for username in Discord chatbridge @MadCatzAno (#983)
🐛 Bug Fixes
- fix: unban player button @niekcandaele (#985)
v1.27.2
🐛 Bug Fixes
- fix: chat message time display inconsistency @niekcandaele (#981)
- fix: loading of dashboard for offline servers @niekcandaele (#977)
v1.27.1
Bug fixes for A20 stuff :)
🐛 Bug Fixes
- fix: partial loading of players on server @niekcandaele (#975)
- fix: handling of player disconnect logs with bad data @niekcandaele (#974)
- fix: metadata for log line of lastDeathLocation @niekcandaele (#973)
- ci: install python3 in docker env @axe312ger (#967)
- fix: sending chat messages from dashboard @niekcandaele (#970)
- fix: tele command should use entityId @niekcandaele (#969)
🧰 Maintenance
- chore: add detected logs to job data, so error tracking is easier @niekcandaele (#971)
v1.27.0
1.27.0
This versions adds support for A20 experimental and lots of small fixes and improvements.
🚀 Features
- feat: add 'object' helpers to handlebars @niekcandaele (#923)
- feat: add a logline when events get discarded @niekcandaele (#914)
- feat: add rate limiting to SSE events @niekcandaele (#911 & #910)
- Save state of table after page refreshes @Hetjax (#900)
- feat: add status and type labels to http logs @niekcandaele (#861)
🐛 Bug Fixes
- fix: adjust index usage for tracking stats endpoint @niekcandaele (#948)
- fix(Playertable): Restore State + height @Hetjax (#934)
- fix: sorting of economy table on player profile page @niekcandaele (#931)
- Take more edge cases into account for SSE rate limiter @niekcandaele (#929)
- fix: Do not parseint for keys in throttled function @niekcandaele (#921)
- fix: throttledFunction should account for current hour too @niekcandaele (#918)
- fix: tweak rate limiter default settings @niekcandaele (#916)
- fix: fix rendering of players table on mobile @niekcandaele (#907)
- fix: directly pass server id to logger to reduce load @niekcandaele (#905)
- fix: server.config variables in hooks @niekcandaele (#902)
- fix(Players Overview): Sorting @Hetjax (#888)
- Tune SSE Reconnect interval @niekcandaele (#880)
- fix: add fail safe when logging hook does not load fast enough @niekcandaele (#875)
- fix: also init the discord hook after sdtdLogs hook @niekcandaele (#873)
- fix: change some event listeners to after instead of on @niekcandaele (#871)
- fix: change load order of hooks so CSMM web is online faster @niekcandaele (#866)
- Fix edit hook button being broken in certain configurations @niekcandaele (#864)
- fix: pass only the serverId for set-balance log @niekcandaele (#863)
- Fix duplication of playtime earner interval after changing configs @niekcandaele (#856)
🧰 Maintenance
- chore: address all faker deprecation warnings @niekcandaele (#961)
- chore: tune the SSE rate limiter a bit @niekcandaele (#912)
- Run CI for forked PRs @niekcandaele (#897)
- Add more logging to sendDiscord @niekcandaele (#881)
- fix: slim down logs, dont send tons of data @niekcandaele (#874)
- Logging rework @niekcandaele (#855)
🔧 Dependencies
- deps: bump lint-staged from 11.1.2 to 12.1.2 @dependabot (#951)
- deps: bump @sentry/core from 6.13.1 to 6.13.2 @dependabot (#879)
- deps: bump @sentry/node from 6.12.0 to 6.13.1 @dependabot (#870)
- deps: bump @sentry/core from 6.12.0 to 6.13.1 @dependabot (#869)
- deps: bump @sentry/tracing from 6.12.0 to 6.13.1 @dependabot (#868)
- deps: bump sails-hook-grunt from 4.0.1 to 5.0.0 @dependabot (#845)
- deps: bump husky from 4.3.8 to 7.0.4 @dependabot (#924)
- deps: bump discord.js from 12.5.3 to 13.3.1 @dependabot (#932)
- deps: bump node from 14-alpine to 17-alpine @dependabot (#933)
- deps: bump cron-parser from 3.5.0 to 4.2.0 @dependabot (#952)