mirror of
https://github.com/storytold/effectcraft.git
synced 2026-11-11 23:32:17 +00:00
* Scripting: run-time compiled code passes the nesting check; bounded file masks, socket line search and file reads eval and the Function constructors compiled script-built strings without the bracket-nesting check the script itself passes, so a short script could overflow the parser's stack. A host hook now checks every dynamic compilation. Folder.getFiles turned masks into a backtracking regular expression; a two-pointer wildcard match replaces it. Socket readln rescanned the whole buffer after every read; only new bytes are searched. Script files that are not regular files (pipes, devices) are not read. * address review: check_nesting scans template interpolations, file masks keep wildcard length * address review: file masks fold case as /i does; the nesting check skips regular expression literals * address review: nesting scan reads ++/-- and keyword-named properties as division context * address review: property-name state set at each word start; a number's decimal point is not a property dot * address review: a leading hashbang line is a comment for the nesting scan; eval source is checked as it stands