Releases: zhaojh329/lua-eco
Releases · zhaojh329/lua-eco
v4.0.0
Features
- mqtt: Support one-time subscribe multiple topics (Jianhui Zhao)
- log: split multiline log messages into separate entries (Jianhui Zhao)
- socket: add method
open_tun(Jianhui Zhao) - uci: support yield in callback for
foreach(Jianhui Zhao) - file: make dir iterator tolerate missing directories (Jianhui Zhao)
Bug Fixes
- nl80211: Fix crash in
parse_bss_ie(Jianhui Zhao) - uci: Resolve
c:eachcrash with non-existent config (Jianhui Zhao) - mqtt: set DUP flag only for retransmitted PUBLISH packets (Jianhui Zhao)
- mqtt: handle password independently in CONNECT packet (Jianhui Zhao)
- mqtt: cancel
wait_conacktimer on error (Jianhui Zhao) - socket: cancel read operation on close (Jianhui Zhao)
- prevent inherited fd leak at startup (Jianhui Zhao)
Code Refactoring
- core: migrate to epoll-based runtime (Jianhui Zhao)
- shared: replace with real mmap(MAP_SHARED) (Jianhui Zhao)
- mqtt: split packet processing into dedicated handlers (Jianhui Zhao)
- mqtt: prefer will.payload while keeping will.message compatibility (Jianhui Zhao)
- mqtt: centralize remaining length encoding in packet packer (Jianhui Zhao)
Performance Improvements
- mqtt: reset keepalive timer on outbound packets (Jianhui Zhao)
- mqtt: Set PUBLISH DUP flag on retransmit (Jianhui Zhao)
v3.19.1
Features
- file: make dir iterator tolerate missing directories (Jianhui Zhao)
- bump version 3.19.1 (Jianhui Zhao)
Bug Fixes
- mqtt: handle password independently in CONNECT packet (Jianhui Zhao)
- mqtt: cancel
wait_conacktimer on error (Jianhui Zhao) - sys: Hardened sys.exec pipe handling with CLOEXEC (Jianhui Zhao)
- prevent inherited fd leak at startup (Jianhui Zhao)
v3.19.0
Features
- uci: support yield in callback for
foreach(Jianhui Zhao) - Add support explicit require
eco(Jianhui Zhao) - bump version 3.19.0 (Jianhui Zhao)
Bug Fixes
- nl80211: Fix crash in
parse_bss_ie(Jianhui Zhao) - uci: Resolve
c:eachcrash with non-existent config (Jianhui Zhao)
Chores
- mqt: remove redundant opts reassignment in
mqtt.new(Jianhui Zhao)
v3.18.0
Features
- log: add size-based log rotation with retention (Jianhui Zhao)
- bump version 3.18.0 (Jianhui Zhao)
Bug Fixes
- examples: use integer keepalive for MQTT example (Jianhui Zhao)
- mqtt: retransmit pending QoS only on session resume #9 (Jianhui Zhao)
- mqtt: handle zero-length packet payload in read_packet (Jianhui Zhao)
Performance Improvements
- dns: cache hosts and resolv.conf parsing by mtime (Jianhui Zhao)
- dns: move DNS parsing from Lua to C module (Jianhui Zhao)
v3.17.0
Features
- nl: introducing three high-level helpers (Jianhui Zhao)
- ubus: add auto subscribe support (Jianhui Zhao)
- bump version 3.17.0 (Jianhui Zhao)
Bug Fixes
- nl80211: use RATE_INFO_BITRATE in parse_bitrate fallback (Jianhui Zhao)
- ubus: unregister subscriber when subscribe fails (Jianhui Zhao)
- ubus: release subscriber userdata when target object disappears (Jianhui Zhao)
- sys: Handle ENOEXEC fallback in lua_exec (Jianhui Zhao)
Continuous Integration
- remove obsolete libmnl-dev from build dependencies (Jianhui Zhao)
v3.16.0
Features
- http: allow body_to_file to be a callback function (Jianhui Zhao)
- Link liblua to modules for standalone use with native Lua (Jianhui Zhao)
- core: print stack traceback while panic in coroutines. (Jianhui Zhao)
- socket: add timeout support for accept() #18 (chenyk)
- bump version 3.16.0 (Jianhui Zhao)
Bug Fixes
- socket: fix type validation in lua_inet_ntoa (Jianhui Zhao)
- http: fix CRLF handling in header parsing (Jianhui Zhao)
- ssh: Fix crash in
scp_send_data(Jianhui Zhao) - mqtt: require integer keepalive and use integer default (Jianhui Zhao)
- mqtt: correct QoS ack flags and PUBREL handling (Jianhui Zhao)
- mqtt: guard close() when socket is nil (Jianhui Zhao)
- mqtt: correct remaining length max multiplier (Jianhui Zhao)
- ubus: detect circular table references and raise Lua error (Jianhui Zhao)
- http/client: harden body metatable checks (Jianhui Zhao)
- http/client: avoid mutating multipart form payload (Jianhui Zhao)
- http/client: correct clear internal socket field on close (Jianhui Zhao)
- http/client: validate content-length before reading body (Jianhui Zhao)
- http/client: make status line parsing more tolerant (Jianhui Zhao)
- http/client: parse headers by first colon and trim safely (Jianhui Zhao)
- http/client: normalize error returns in response body handling (Jianhui Zhao)
- uci: Fix stack overflow in
lua_uci_foreach(Jianhui Zhao) - ssl: bump ssl submodule to latest upstream (Jianhui Zhao)
- ubus: validate message size before sending to libubus (Jianhui Zhao)
- socket: return correct binary length in inet_pton (Jianhui Zhao)
- sha1: fix length counter overflow on large inputs (Jianhui Zhao)
- http.server: prevent docroot path traversal in static file serving (Jianhui Zhao)
- http.server: validate Content-Length to avoid malformed request crashes (Jianhui Zhao)
- http.url: support bracketed IPv6 literal hosts in URL parsing (Jianhui Zhao)
- ip: use IFF_ALLMULTI in allmulticast change mask (Jianhui Zhao)
- log: bump log submodule to latest upstream (Jianhui Zhao)
Performance Improvements
- file: harden dir iterator error paths (Jianhui Zhao)
Chores
- socket: remove stray character in IPv6 sockaddr parsing (Jianhui Zhao)
Commits
- 0f22128: Revert "feat: detect and report coroutine blocking" (Jianhui Zhao)
- remove redundant bss nil check in get_link() (Jianhui Zhao)
v3.15.0
Features
- detect and report coroutine blocking (Jianhui Zhao)
- nl80211: add Lua binding for 320MHz channel width constant (Jianhui Zhao)
- Link liblua to modules for standalone use with native Lua (Jianhui Zhao)
- bump version 3.15.0 (Jianhui Zhao)
Bug Fixes
- ssl: increase handshake timeout from 5s to 15s (Jianhui Zhao)
- nl80211: add bounds check for RSN parsing (Jianhui Zhao)
Performance Improvements
- http: optimize performance (Jianhui Zhao)
Commits
- add DeepWiki Badge (Jianhui Zhao)
v3.14.0
Features
- nl80211: add support keep info elems in scan result (Jianhui Zhao)
- nl80211: Add IE support to scan requests (Jianhui Zhao)
- net: introduce net module with initial ping support (Jianhui Zhao)
- netlink: Add support route (Jianhui Zhao)
- http: add method
redirectfor connection (Jianhui Zhao) - http: add field
query_stringfor connection (Jianhui Zhao) - bump version 3.14.0 (Jianhui Zhao)
Bug Fixes
- examples: Fix usage of
sys.sh(Jianhui Zhao) - socket: return closed status instead of discarding it (Jianhui Zhao)
- nl80211: Fix freq_to_channel (Jianhui Zhao)
- dns: Fix parse /etc/resolv.conf (Jianhui Zhao)
Styles
- nl80211: parse BSS IEs using named IEEE 802.11 element constants (Jianhui Zhao)
Performance Improvements
- nl80211: optimize code (Jianhui Zhao)
- http: Add
Content-Length: 0if no content (Jianhui Zhao)
v3.13.0
Features
- sys: Add new method
getpwnam(Jianhui Zhao) - bump version 3.13.0 (Jianhui Zhao)
Bug Fixes
- mqtt: Fix MQTT ping response timeout race condition (Jianhui Zhao)
v3.12.0
Features
- socket: add support socketpair (Jianhui Zhao)
- add a new module
shared(Jianhui Zhao) - add field
raw_pathin http server (Jianhui Zhao) - file: skip
.and..forfile.dir()(Jianhui Zhao) - file: add new method
walkto traversal directory (Jianhui Zhao) - nl80211: add method
get_link(Jianhui Zhao) - nl80211: add method
get_surveys(Jianhui Zhao) - bump version 3.12.0 (Jianhui Zhao)
Bug Fixes
- ssl: Set the server_name before the handshake (Jianhui Zhao)