Releases
0.1.0
Compare
Sorry, something went wrong.
No results found
0.1.0 (2026-10-18)
🚀 Features
maple: add Object.preventExtensions and Object.isExtensible (eadeac5 )
maple: add the Maple interpreter (94eda74 )
maple: answer "in" for the methods of a value's type (b42e35f )
maple: carry the indices of a match made with the d flag (d50ea30 )
maple: convert Maple's own values to primitives through their class (97be6fe )
maple: ignore debugger statements and add escape and unescape (b61d9be )
maple: let scripts add properties to built-ins for the length of a run (13a968b )
maple: let scripts add properties to errors, functions and wrappers (09e5fe8 )
maple: run what js-interpreter runs (13eb8ed )
maple: support the cause option of the Error constructors (09c230f )
maple: take a method's receiver from the call (c1e71ac )
🩹 Bug Fixes
maple: add valueOf to numbers and strings (ede9d90 )
maple: cap the nesting of values copied from the host (d5eb307 )
maple: close the iterator when an iterator helper fails (02240a7 )
maple: close the iterator when take or drop rejects its count (9c2742a )
maple: convert the limit of split without a separator with ToUint32 (f8d23b1 )
maple: copy uncaught errors to the host without cycles and bounded in size (590b19e )
maple: count nested errors' text against an uncaught error's budget (d262f21 )
maple: drop constructor keys when a value leaves the sandbox (c0cfaae )
maple: give errors thrown inside a conversion a position and a stack (507f55b )
maple: give nested runs their own state for built-ins (8f6229e )
maple: give objects without a prototype no Object.prototype behaviour (e6d0d76 )
maple: hide host exception messages from scripts unless marked with exposed (5bc3109 )
maple: keep an error's name and message as assigned and convert them as JavaScript does (2ee7621 )
maple: keep holes as holes in sort and reverse (42833bf )
maple: keep lastIndex on a frozen RegExp (e851e9f )
maple: make Intl TypeErrors in Array.prototype.toLocaleString catchable (9d43f5d )
maple: name a value in an error message without converting it (7bcfb24 )
maple: name only the root in errors about deeply nested host values (16b71da )
maple: read a host exception's name and message defensively (fb7a1bd )
maple: read each element when the array callback methods reach it (ac97e1f )
maple: refuse a RegExp in startsWith, endsWith and includes (0549dd8 )
maple: reject a non-numeric RegExp lastIndex at the boundary (3fff312 )
maple: report values nested too deep for the boundary as script errors (9ce371f )
maple: return the element the predicate saw from find and findLast (405770d )
maple: revoke the sandbox handle once the intrinsic has returned (8496236 )
maple: run only source text that Maple parses itself (c06f57e )
maple: skip a key that for...in deletes before visiting it (64c6f8e )
maple: start setYear on an invalid Date from local midnight (d7675b8 )
playground: read js-interpreter's result on the host so the context cannot shadow it (2f70094 )
📖 Documentation
ai: make JavaScript the reference instead of js-interpreter (8158b0c )
cleanup maple documentation (557272e )
drop any mentions of outdated folder structure in AGENTS.md and spec.md (8803738 )
maple: define secure as isolation, not resource limits (011bcc4 )
maple: say JavaScript instead of "the language" (8f1cabf )
maple: update README (bba28e2 )
parity: group the divergences by whether Maple follows the language (0791c28 )
rewrite readmes and add AGENTS.md (6786c4a )
update READMEs (9a6762c )
🔧 Miscellaneous Chores
playground: add run limits, stats and inline errors (1686325 )
playground: compare Maple with js-interpreter (7703a3c )
playground: return the greeting in the default code (b492ee3 )
🛠️ Code Refactoring
maple: give each built-in type a prototype that holds its methods (a54d14e )
maple: give every own property of Maple's values JavaScript's attributes (493b18d )
maple: give Maple's own values a base class that holds their properties (1f37ca1 )
maple: restructure array builtin for better readability and discoverability (c241806 )
maple: restructure boolean builtin for better readability and discoverability (ee4fd87 )
maple: restructure date builtin for better readability and discoverability (ea68b50 )
maple: restructure error builtin for better readability and discoverability (355cc99 )
maple: restructure function builtin for better readability and discoverability (a058d53 )
maple: restructure iterator builtin for better readability and discoverability (b76b0a2 )
maple: restructure json builtin for better readability and discoverability (4027aa0 )
maple: restructure map builtin for better readability and discoverability (05bd0fe )
maple: restructure math builtin for better readability and discoverability (f3b955b )
maple: restructure number builtin for better readability and discoverability (4157a7f )
maple: restructure object builtin for better readability and discoverability (6cb88ef )
maple: restructure regexp builtin for better readability and discoverability (9ea2e4e )
maple: restructure set builtin for better readability and discoverability (59d1583 )
maple: restructure string builtin for better readability and discoverability (7895f7d )
maple: take substr from the host (45fd612 )
🧪 Tests
parity: hold Maple to everything js-interpreter runs (e116481 )
parity: run every case in Node as well (18b386b )
📦 Build System
🔄️ Continuous Integration
add changelog-preview comments (046dba9 )
enable npm publishing (e68b534 )
skip npm auth until the first release (8b8939d )
skip the changelog preview for pull requests from forks (c7ce28f )
You can’t perform that action at this time.