Changelog
All the changes on code we have made.
Backend
API Changelog
v2.10.3
Fixed issues with database connection pool management Security patches Security patches Added er...
v2.10.2
Minor bug fixes Adjusted rate limit Added support to centralized database connection pool Use s...
v2.10.1
Respect launch params when setting host, port and workers Switched to use https protocol for ste...
v2.10.0
Added task plugin Added cancel user deletion request audit log Fixed boolean data in dlog export
v2.9.5
Improved banner generator: Ability to choose whether to show division or rank as front row in ...
v2.9.4
Fixed data inconsistency due to outdated transactions, see details below: Since we use connectio...
v2.9.3
Updated dependencies
v2.9.2
Added distance_note and bonus_note to PATCH /member/points Updated GET /member/bonus/history U...
v2.9.1
Added audit log category attribute Available categories: announcement, application, auth, challe...
v2.9.0
This update focus on stability and performance improvements and does not include feature updates....
v2.8.10
Improved param validation and added error response when page, page_size, order, order_by is inva...
v2.8.9
Fixed Internal Server Error caused by email validating (NoneType) This includes: accepting a us...
v2.8.8
Fixed issue updating multiple account connections at the same time Renamed config.smtp_passwd to...
v2.8.7
Reordered config keys Fixed error loading languages files with utf-8 encoding Fixed error handli...
v2.8.6
Fixed minor issue with dlog statistics Added global MFA requirement to POST /user/mfa/disable A...
v2.8.5
Added POST /status/database/restart to manually restart database pool There is no access contro...
v2.8.4
Fixed Trucky job format conversion issues Added ?bypass_tracker_check=true|false to /trucky/impo...
v2.8.3
Minor improvements on string table and apidoc.json Deduplicated roles and event attendees on up...
v2.8.2
Fixed Trucky webhook handling issues Fixed update-connection failure when the provided connectio...
v2.8.1
Added POST /trucky/import/{jobid} to import jobs from Trucky Added user_joined_company Trucky we...
v2.8.0
Removed company_driver.detached tracksim event listening Added "update discord email" when user ...
v2.7.15
Enforced deepcopy for most large dicts to prevent constants being changed Renamed config.deliver...
v2.7.14
1.Blocked large logo and avatar (larger than 10MB or 3400x3400) 2.Added logo and avatar resizing ...
v2.7.13
1.Added minimum_seconds_spent, maximum_seconds_spent, maximum_distance, minimum_detour_percentage...
v2.7.12
1.Added customizable host, port, workers for banner generator 2.Improved banner generator to dele...
v2.7.11
1.Removed secret data from GET /application/types 2.Removed config.application_types[].discord_ro...
v2.7.10
1.[Internal code changes] 2.Fixed 500 error in challenge plugin when invalid job_requirements is ...
v2.7.9
1.Renamed announcement_type to type 2.Renamed challenge_type to type 3.Removed ?after|before quer...
v2.7.8
1.Added handling of autoPark field on dlog export -> This should be a TrackSim issue 2.Added retr...
v2.7.7
Added user note (private / global) -> To remove the note, provide an empty string on note field w...
v2.7.6
1.Improved discord embed handler -> Support any fields, so no update is needed to catch up with t...
v2.7.5
1-2. [Internal code changes] 3.Removed percentage from config.ranks[].daily_bonus.streak_type to ...
v2.7.4
1.Fixed update member points audit log 2.Added detailed description to specific errors
v2.7.3
1-4. Internal code changes 5.Fixed 500 error on POST /member/bonus/claim when config.ranks[].dail...
v2.7.2
1.Improved value size limit handling 2.Fixed inappropriate default query value 3.Added ?after and...
v2.7.1
1.Minor bug fixes and improvements 2.Added algo to config.ranks[].daily_bonus.streak_type - A gen...
v2.7.0
Added poll plugin
v2.6.3
1.Added user role history 2.Added user ban history 3.Added config.ranks[].daily_bonus and bonus n...
v2.6.2
1.Added order_id and is_pinned to announcement, challenges 2.Removed "forward to Discord" functio...
v2.6.1
1.Fixed /user/profile returning incorrect ban data 2.Added config.privacy check to GET /dlog/stat...
v2.6.0
1.Fixed inaccurate data of GET /dlog/statistics/chart|summary 2.Separated ETS2/ATS data of GET /d...
v2.5.11
1.Added ?after to GET /audit/list 2.Added ?after_logid to GET /dlog/list 3.Added ?after_userid, ?...
v2.5.10
Fixed issues related to Discord role connection Other internal changes and improvements
v2.5.9
Internal changes
v2.5.8
1.Fixed BannerGen app loading issue 2.Fixed rare issue of UpdateRoleConnection 3.Renamed myth_poi...
v2.5.7
1.Improved /user/list to attach banned info when any connections match 2.Improved /user/profile t...
v2.5.6
1.Fixed incorrect driver value in GET /dlog/statistics/chart 2.Fixed email connection validation ...
v2.5.5
1.Moved add/remove member_welcome discord roles from when driver role is added to when member is ...
v2.5.4
1.Fixed audit log on user resignation and when removing driver from tracker company 2.Fixed PATCH...
v2.5.3
1.Fixed BannerGen 500 error 2.Added thousands separator to distance in banners
v2.5.2
Added Discord Role Connection Hints i) POST /discord/role-connection/enable must be called to ena...
v2.5.1
1.Added economy-merch Hint The company owns all the merch. Member will transfer balance to the co...
v2.5.0
1.Improved /dlog/statistics/summary query performance Note Cache expiry for this endpoint was red...
v2.4.4
Backend v2.4.4 [Internal code changes]
v2.4.3
1.Fixed redirect route for downloads plugin 2.Fixed issue banning user who has NULL connection(s)...
v2.4.2
1.Renamed start_time/end_time in query param to after/before 2.Added after/before query param to ...
v2.4.1
1.Fixed notifications not being sent to uid = 0 2.Fixed errors with MFA (due to auth_ticket) 3.[C...
v2.4.0
Mainly backend code changes, in preparation of v2.4.1
v2.3.1
1.Created a tool to automatically fix ultra-high User ID / UID 2.Removed support of navio due to ...
v2.3.0
1.Added economy plugin 2.Bug fixes and improvements
v2.2.4
1.Fixed db creating ratelimit TABLE with ip COLUMN rather than identifier COLUMN 2.Fixed Discord ...
v2.2.3
1.Fixed banner generator 2.Fixed application permission control
v2.2.2
1.Fixed POST /auth/register not checking config.register_methods 2.Fixed in-Discord-guild check b...
v2.2.1
Added support to Email/Password registration and updating email -> Added smtp_server, smtp_port, ...
v2.2.0
1.Automated discord_callback_url and discord_oauth_url generation, hence removed it from config 2...
v2.1.6
1.Added support to custom avatar and name (Updated PATCH /user/profile) -> Disabled automatic syn...
v2.1.5
1.Fixed issue preventing status update of all notifications 2.Improved ratelimit to identify sess...
v2.1.4
1.Fixed challenge system required_roles validation 2.Updated routes, request json data format, re...
v2.1.3
1.Fixed steam/truckersmp connection validation when adding driver role 2.Fixed error when sending...
v2.1.2
1.Fixed AutoMessage cannot be sent when using webhook 2.Removed member_leave on driver role remov...
v2.1.1
1.Fixed upgrader failure due to ./upgrades/ does not exist by removing file log 2.Fixed applicati...
v2.1.0
Breaking changes ⚠️ Note: This is a release focusing on updating the user system, to allow every ...
v2.0.1 (pre-release)
1.Fixed user activity caching issue 2.Added user language cache
v2.0.0 (pre-release)
Breaking changes ⚠️ Note: This is a pre-release focusing on request and response formats, major f...
v1.22.15
1.Increased database connection timeout by 1 second (to 2 seconds) 2.Fixed traceback log corrupts...
v1.22.14
1.Improved error formatter to prevent corrupted results 2.Fixed error when adding/removing a role...
v1.22.13
1.Fixed point2rank seires functions going wrong when there's only one rank 2.Fixed error not bein...
v1.22.12
1.Removed 50 session limit 2.Improved application token to allow multiple applications 3.Fixed th...
v1.22.11
[BannerGen] 1.Changed Since YYYY/(M)M/(D)D to Joined: YYYY/MM/DD 2.Replaced license fonts with op...
v1.22.10
1.Prevented restarting database connection pool for multiple times when it is already restarting ...
v1.22.9
1.Removed wait_timeout that closes connections Note Closed connections are not released to pool 2...
v1.22.8
1.Added legacy database connection pool management solution back 2.Added timeout when acquiring c...
v1.22.7
1.Merged 500 error handler into middleware 2.Added database connection close on request fail
v1.22.6
1.Fixed Unknown Error on Discord callback when email is not provided in form data 2.[Internal Upd...
v1.22.5
1.Fixed TrackSim setup webhook 2.Added allowed_tracker_ips update on TrackSim setup
v1.22.4
1.Removed try / except when adding job to database 2.Improved delivery rule block handling
v1.22.3
1.Removed exit on restart and left the restart job to systemctl 2.Fixed error when a navio / trac...
v1.22.2
1.Fixed has_police_enabled error when exporting dlog 2.Fixed database connection timeout due to s...
v1.22.1
1.Renamed config.navio_* to config.tracker_* 2.Added async requests 3.Added full role management ...
v1.21.22
1.Improved restart handler 2.Added config.mysql_pool_size 3.Changed config.allowed_navio_ips to c...
v1.21.21
1.Improved error handler 2.Prevented index to connect to database when Authorization header is no...
v1.21.20
1.Converted database error to 503 error 2.Fixed 500 error handler exception 3.Added 422 error han...
v1.21.19
1.Added 500 Internal Server Error handler 2.Added auto-restart on too many errors 3.Added wait_ti...
v1.21.18
1.Fixed file encoding error 2.Fixed duplicate ID issue
v1.21.17
Optimized database connection management
v1.21.16
Implemented database connection pool for better stability
v1.21.15
1.Added asyncio support to database operation 2.Added shutdown event handler 3.Removed dependency...
v1.21.14
1.Fixed database connection issue caused by v1.21.13 2.Fixed bug navio_api_error not declared 3.C...
v1.21.13
Improved database connection management and reduced resource consumption
v1.21.12
1.Prevented crash on certain types of invalid config 2.Fixed GET /downloads/redirect 500 error wh...
v1.21.11
Added end_time request param to GET /dlog/statistics/chart
v1.21.10
1.Fixed manually-added distance leading to inaccurate result of leaderboard division point 2.Fixe...
v1.21.9
Removed unncessary convert_quotation that led to \' visible by user
v1.21.8
1.Improved internal / external API handling to prevent 500 errors when request failed 2.Added con...
v1.21.7
1.Fixed POST /user/tip 500 error 2.Fixed GET /division returns incorrect data
v1.21.6
1.Fixed the bug being unable to parse 204 response which led to errors 2.Added numeric value chec...
v1.21.5
[BannerGen] 1.Prevented sending request to BannerGen when cache exists 2.Improved avatar caching ...
v1.21.4
1.Improved Discord Notification to send batched embeds (less messages, more embeds) 2.Added dista...
v1.21.3
[BannerGen] 1.Merged ConsolaBold with SansSerif to support a larger character set 2.Added unicode...
v1.21.2
Improved GET /dlog/statistics/chart, removed scale param, added ranges and interval params for be...
v1.21.1
[Bug fixes] 1.Fixed the bug that PATCH /member/roles/rank is always returning discord_integration...
v1.20.3
1.Fixed GET /config 500 error when content related to disabled plugins are not in config 2.Fixed ...
v1.20.2
Fixed the bug that program cannot shut down fully
v1.20.1
[Bug fixes] 1.[Auth] Fixed the bug that ban check is not performed on steam & password login 2.[A...
v1.19.6
Hard-coded English String Table
v1.19.5
1.Fixed the bug that GET /dlog/list returns same delivery for multiple times due to challenge rec...
v1.19.4
[BanerGen] 1.Reduced workers to 1 worker 2.Reduced resolution to 1700x300 3.General improvements ...
v1.19.3
[Challenge] Added new challenge type Personal (Recurring) (original Personal type renamed to Pers...
v1.19.2
1.Fixed the bug that is_private is not updated when PATCH /announcement 2.Fixed GET /dlog/list an...
v1.19.1
[Minor changes] 1.[Dlog] Improved dlog to support empty delivery log data (detail) 2.[Auth] Updat...
v1.18.3
1.Fixed GET /challenge/list param must_have_completed not working correctly 2.Changed order of ch...
v1.18.2
1.[Event] Separated single-event query from event-list query 2.[Announcement] Separated single-an...
v1.18.1
[Minor changes] 1.[Challenge] Added multiple item support to source_city_id, source_company_id, d...
v1.17.1
[Bug fixes] 1.[Member] Fixed PATCH /member/roles/rank giving highest role when there is no point ...
v1.16.1
1.Fixed application setting user[userid=0] as last_update_staff when nobody updated the applicati...
v1.15.11
1.Removed detailed per-user statistics from GET /division 2.Updated GET /dlog/leaderboard respons...
v1.15.10
1.Fixed speed limit not working for /dlog/list and /dlog/leaderboard 2.Added status parameter (0:...
v1.15.9
1.Fixed announcement plugin 500 error 2.Added avatar to announcement and audit log embed
v1.15.8
Moved Steam & TruckersMP connection check to when adding driver role instead of when accepting us...
v1.15.7
Improved response format GET /audit - Added detailed user info GET /auth/tip - Added detailed use...
v1.15.6
1.Improved TOTP function to accept OTP of bigger time range 2.Added MFA secret base32 check 3.Add...
v1.15.5
Fixed leaderboard skipping rank due to deleted users
v1.15.4
Fixed GET /config returning malformed roles data
v1.15.3
Fixed bannergen showing username as company name
v1.15.2
1.Fixed POST /reload 500 error when MFA is not enabled 2.Changed tip form field to token for POST...
v1.15.1
Added Multiple Factor Authentication i) New endpoints: PUT, POST, DELETE /auth/mfa ii) Endpoint t...
v1.14.5
1.Removed 'vtc' element 2.Added points field to GET /event response 3.Added config.discord_bot_dm...
v1.14.4
1.Fixed isdivision (boolean) response being stringified to "True" / "False" 2.Added Unknown Error...
v1.14.3
Improved role & config update validator to prevent admin users removing their own admin permission
v1.14.2
Added steam login
v1.14.1
1.Improved config validation on PATCH /config 2.Removed automatic reload on PATCH /config 3.Added...
v1.13.2
1.Added 400 response when required form data is not provided 2.Added "real deletion" for announce...
v1.13.1
1.Added ability to edit meta elements of automated embeds in Discord (Welcome, Team Update, Rank ...
v1.12.9
1.Fixed the bug that updating event point without updating attendee doesn't work 2.Added DELETE /...
v1.12.8
1.Fixed 500 error when submitting division validation request 2.Fixed 500 error when Drivers Hub ...
v1.12.7
Improved endpoint path and response format for better readability
v1.12.6
Improved Banner Generator: i) Fixed 500 error when image is invalid ii) Fixed transparent logo ba...
v1.12.5
1.Fixed 500 error on /user when config.privacy = false and no authorization header is provided 2....
v1.12.4
1.Fixed 500 error on /dlog/stats when config.privacy = true 2.Added Discord Login requirement to ...
v1.12.3
Improved leaderboard ordering
v1.12.2
1.Added cache for /dlog/stats (5min), /dlog/leaderboard (5min), /user/banner (1hr) 2.Removed stat...
v1.12.1
1.Added cache for /dlog/stats (5min), /dlog/leaderboard (5min), /user/banner (1hr) 2.Removed stat...
v1.11.5
1.Fixed the bug that leaderboard is not loading 2.Improved authentication system 3.Removed possib...
v1.11.4
Improved Banner Generator to save memory
v1.11.3
1.Merged /member and /user to /user for both member and public user, added discordid, steamid, tr...
v1.11.2
Added requirement to login with discord to revoke specific / all token
v1.11.1
1.Improved application plugin: i) Added support to per-type webhook ii) Added support to per-type...
v1.10.10
Added revoke-all-token when updating password
v1.10.9
Removed regex email validation
v1.10.8
Fixed the bug that application webhook contains words in applicant's language
v1.10.7
1.Removed GET /dlog/newdrivers 2.Removed sort_by_highest_role parameter from GET /members 3.Added...
v1.10.6
1.Added support to email & password login 2.Added time-range query for /dlog/stats 3.Added more d...
v1.10.5
1.Removed staff_of_the_month and drivers_of_the_month 2.Added roles and sort_by_highest_role para...
v1.10.4
1.Added data compression for dlog.detail and application.detail 2.Added upgrade plugin 3.Added ve...
v1.10.3
1.Fixed admin.py bug overwriting original tconfig which causes 500 on GET /admin/config 2.Improve...
v1.10.2
1.Fixed minor bugs 2.Added pagelimit parameter for all list response
v1.10.1
1.Config format update (Use config_upgrade.py in release to upgrade config to v1.10.1) a) Item na...
v1.9.12
1.Added expense, net_profit column in exported .csv table 2.Updated delivery webhook post
v1.9.11
Added zlib compression for telemetry data (saving ~40% storage)
v1.9.10
1.Changed config.telemetry_innodb_dir to mysql_ext 2.Moved announcement, dlog, division, event, a...
v1.9.9
1.Fixed the bug that User ID replaced User Name on /dlog 2.Updated telemetry data encoding method
v1.9.8
1.Updated IP check mechanism 2.Allowed admin roles to be updated with API 3.Added response status...
v1.9.7
Added config.perms.hrm who has higher permission than config.perms.hr
v1.9.6
Added config.perms.announcement for announcement permission control
v1.9.5
Added limituser argument for /dlog/leaderboard
v1.9.4
1.Fixed the issue that delivery webhook post would fail when config.delivery_gifs = [] 2.Added au...
v1.9.3
1.Added PATCH /user/unbind endpoint to unbind connections 2.Added DELETE /user/delete endpoint to...
v1.9.2
1.Fixed bugs with role detection 2.Updated driver detection mechanism for application
v1.9.1
1.Added Rate Limiter 2.Added response status code for 401 and 404 errors 3.Updated delivery webho...
v1.8.13
1.Removed function to not create database table for disabled plugins 2.Updated delivery webhook p...
v1.8.12
Fixed bug of navio webhook not accepting WoT jobs due to non-int meta distance
v1.8.11
Fixed bug of welcome_roles failing to remove roles
v1.8.10
Fixed bug of welcome_roles failing to remove roles
v1.8.9
API 1.Removed intcolor from config.json and calculate it with hexcolor on start 2.Removed /versio...
v1.8.8
Fixed Discord and Steam ID JSON precision lose
v1.8.7
1.Fixed apis/navio config.external_plugins mistaked for external_plugins 2.Fixed apis/member to u...
v1.8.6
1.Added custom team update message, accept {mention} {vtcname} variable 2.Added custom welcome me...
v1.8.5
1.Added option to remove TruckersMP Account requirement 2.Fixed bug that translate function does ...
v1.8.4
1.Fixed bugs of config editing and improved data check 2.Fixed bugs that delivery embed cannot be...
v1.8.3
Fixed bugs of config editing
v1.8.2
1.Fixed bug allowing user to edit telemetry_innodb_dir and language_dir from API 2.Added Spanish ...
v1.8.1
1.Supported multiple language 2.Improved division to support certain point for each division 3.Re...
v1.7.4
1.Added telemetry_innodb_dir config option to store telemetry table on external storage 2.Bug fix...
v1.7.3
1.Added permission control for audit log 2.Removed non-driver (but member) from leaderboard
v1.7.2
Initial version code since public release
Frontend
Client changelog
v3.4.2
Added TruckersMP user info in applications Added export member list (csv) Added login screen tip...
v3.4.1
Added inputable page number in tables Added debounce in table page change to reduce unnecessary ...
v3.4.0
Replaced vars.users with Context API users, and reworked UserCard component, thus: Supported us...
v3.2.0
Added batch role update (advanced staff function) Added batch tracker update (advanced staff fun...
v3.1.0
Fixed permission issues on displaying user management buttons Fixed api config editing issues by...
v2.7.0
1.Added Steam Sign Up 2.Added Connect Discord 3.Added QRCode when enabling MFA 4.Fixed extension
v2.6.x
v2.6.6 Added update custom profile v2.6.5 Updated to be compatible with API v2.1.5 v2.6.4 Updated...
v2.5.7
1.Replaced UniSans with OpenSans 2.Fixed name/role display 3.Added support to multiple applicatio...
v2.5.6
1.Added shortcut button to update division status 2.Fixed sigfig showing undefined suffix for num...
v2.5.5
1.Removed lazy load 2.Downgraded SimpleBar 3.Changed mini leaderboard in overview tab to monthly ...
v2.5.4
1.Added TSR Card (Removable) -> If you want it back after removing it, Clear Cache in Settings 2....
v2.5.3
1.Added pending application count badge
v2.5.2
1.Updated Turkish Translation 2.Added application min-length attribute
v2.5.1
1.Added 2022 Wrapped 2.Added tab title 3.Changed default chart scale to 360d
v2.4.8
1.Fixed chart stretching endlessly when resizing window 2.Fixed user profile tab some title / but...
v2.4.7
0.Changed CDN domain to cdn.chub.page 1.Updated to be compatible with API v1.21.7 2.Fixed HR cann...
v2.4.6
0.Added nighty release 1.Fixed the bug that dropup banner does not display on regular / premium p...
v2.4.5
1.Fixed the issue that <td> are not in <tr> 2.Fixed profile dropup stuck visible when disabled 3....
v2.4.4
1.[Announcement] Fixed announcement editing showing original content 2.[Application] Fixed defaul...
v2.0.0
Brand new design / Increased usability / General Improvements
v1.5.6
Added partial MFA support
v1.5.5
1.Removed Dark Mode transition 2.Added SimpleBar for menu 3.Improved svg icons - Genuine FontAwes...
v1.5.4
1.Fixed staff controls not showing up 2.Fixed staff positions not showing up 3.Fixed event detail...
v1.5.3
Templatized all tables
v1.5.2
1.Fixed LoadCache() is not called which made entire website not loading 2.Fixed User Profile does...
v1.5.1
1.Fixed the bug that event details are not loading 2.Updated endpoint paths / methods to catch up...
v1.4.6
1.Fixed the bug that event details are not loading 2.Updated endpoint paths / methods to catch up...
v1.4.5
Updates to catch up with API v1.12.7
v1.4.4
1.Fixed staff application "Agree to terms" not working 2.Added button to save downloads content
v1.4.3
1.Added redirect for /banner/{userid} 2.Improved <a> text color in dark mode 3.Added load timeout...
v1.4.2
Updates to catch up with API v1.12.2
v1.4.1
Updates to catch up with API v1.12.1
v1.3.6
Updates to catch up with API v1.11.3
v1.3.5
1.Fixed the bug that announcement is sending test as message content 2.Fixed the bug that applica...
v1.3.4
1.Updated note under "Update Member Points" 2.Updated ETS2 ProMods settings to support latest map...
v1.3.3
Updated API config wizard to support API v1.11.1
v1.3.2
Added custom style (css)
v1.3.1
Added custom application
v1.2.3
Delivery Tab 1.Resumed Driver of the Day (Counting from 0:00 UTC instead of using relative -24h c...
v1.2.2
Updates to catch up to API v1.10.6
v1.2.1
1.Added support to editing web config 2.Added better redirect for /images (to drivershub-cdn.char...
v1.1.8
1.Added support to editing web config 2.Added better redirect for /images (to drivershub-cdn.char...
v1.1.7
Updated footer
v1.1.6
Various bug fixes, including: Application submission error showing "UNHANDLED" even if there's e...
v1.1.5
Added telemetry data decoder for v5 (API v1.9.9)
v1.1.4
Updates to catch up to API v1.9.4
v1.1.beta3
1.Added Unbind Account Connection function 2.Added Delete User function 3.Added Export Delivery L...
v1.1.beta2
1.Fixed <select> doesn't work with translations 2.Removed guest login and redirect to /login when...
v1.0.5-beta.1
1.Removed "Manager" / "Lead" role name detection for higher role 2.Updated Profile Page 3.Added f...
v1.0.4-beta.3
1.Updated font 2.Updated login page title & subtitle 3.Removed Detail button for delivery table a...
v1.0.4-beta.2
1.Fixed overview incorrect data display 2.Added more administrator config fields
v1.0.4-beta.1
1.Load .js plugins based on enabled_plugins by .php 2.Fixed leaderboard not showing today's stati...
v1.0.3
1.Load .js plugins based on enabled_plugins by .php 2.Fixed leaderboard not showing today's stati...
v1.0.2
Bug fixes
v1.0.1
Bug fixes
v1.0.0.beta
1.Bug fixes 2.Added admin functions
v1.0.0.pre2
Restructured code
v1.0.0.pre1
Basic templatization