{"items":[{"id":"29ae3d33-2e05-4df3-b7ba-aaa61d3d4afb","type":"push","org":"zhengqunkoo","repo":"ttyd","title":"Migrated from sprintf to snprintf to enhance memory safety","summary":"We have replaced all instances of the potentially dangerous sprintf function with snprintf across the codebase, specifically impacting the http, protocol, server, and utils modules. By mandating buffer sizes, we significantly reduce the risk of stack-based buffer overflows, ensuring more robust string handling throughout the application. Your code is now a little safer from memory corruption issues. 🛡️ ![buffer overflow prevention](https://www.meme-arsenal.com/memes/a29d1e6e923dfe8984ab59c7dbe2e1ce.jpg)","url":"https://nomit.dev/zhengqunkoo/ttyd/status/24358b271637e9a7e3e0c4bfbf8f9998a728096d9aa84403df7294322aa23f49","author":"tsl0922","contributors":["tsl0922"],"updated_at":"2026-02-22T06:20:53+00:00"},{"id":"02f7b363-0572-48ae-b3d3-6bb27e00136c","type":"push","org":"zhengqunkoo","repo":"ttyd","title":"Add --srv-buf-size option to configure server buffer size","summary":"We've added a new command-line option, `--srv-buf-size` (`-f`), to allow manual configuration of the maximum chunk size used when sending files. This gives users greater control over throughput performance, as increasing the buffer size can improve transfer speeds in certain environments. The default remains 4096 bytes.","url":"https://nomit.dev/zhengqunkoo/ttyd/status/7460f6f6b121ae010a84730f19198c85ff8f817f96c506fe1eea11fa1901ae16","author":"flpanbin","contributors":["flpanbin"],"updated_at":"2025-01-31T06:15:46+00:00"},{"id":"6947e03c-ce86-4380-a6d9-8c685d506ad2","type":"push","org":"zhengqunkoo","repo":"ttyd","title":"Updated the ttyd man pages to document newer client options so the CLI reference matches current browser-side behavior.","summary":"This change syncs the manual pages with the actual set of supported `-t` client options, adding documentation for `closeOnDisconnect`, `unicodeVersion`, and `trzszDragInitTimeout`. It doesn’t change runtime behavior, but it fixes a gap where useful terminal and reconnect-related settings existed without being visible in the main docs. The practical effect is simpler discovery and fewer surprises when configuring ttyd from the command line.","url":"https://nomit.dev/zhengqunkoo/ttyd/status/dd86edbf343e6ba4f47f3161a1851a483eb603ab64331b773b8232fc9d12be8b","author":"tsl0922","contributors":["tsl0922"],"updated_at":"2025-01-29T11:33:31+00:00"},{"id":"3be96a21-c0cf-4dcf-9c61-6ad8e3cb5d9d","type":"push","org":"zhengqunkoo","repo":"ttyd","title":"Added a closeOnDisconnect HTML client option so terminal sessions can automatically close their browser window when the backend disconnects.","summary":"This change introduces a new `closeOnDisconnect` client preference in the HTML terminal frontend and wires it into the xterm connection lifecycle. When enabled, the client now disables reconnect behavior and calls `window.close()` after the websocket closes, instead of showing the usual reconnect prompt. This is a small but useful UX improvement for embedded or popup terminal flows where a dead session should cleanly exit rather than linger.","url":"https://nomit.dev/zhengqunkoo/ttyd/status/d4ed1c357373103abbe390f098b25ff7d39fd70a017ae7e364b45fada33256b0","author":"elibosley","contributors":["elibosley"],"updated_at":"2025-01-11T04:27:37+00:00"},{"id":"8e859331-131b-4306-9cf6-ca182f5e5098","type":"push","org":"zhengqunkoo","repo":"ttyd","title":"Added GitHub Actions publishing to ghcr.io so Docker images are pushed to both Docker Hub and GitHub Container Registry.","summary":"The Docker release workflow now logs into ghcr.io with the GitHub token and publishes both the standard and Alpine multi-arch images there alongside the existing Docker Hub push. Tag selection still follows branch/tag builds, but images are now available under both registries without changing the build matrix or Dockerfiles. This improves distribution and gives users another reliable source for pulling images.","url":"https://nomit.dev/zhengqunkoo/ttyd/status/1383677b46969479677dd0d06c17159db11773b4e97f2580cbafde75081e7f88","author":"tsl0922","contributors":["tsl0922"],"updated_at":"2024-11-26T15:18:44+00:00"}],"pagination":{"offset":0,"limit":5,"has_more":true}}