src: support (de)serialization of DOMException#57372
src: support (de)serialization of DOMException#57372jazelly wants to merge 1 commit intonodejs:mainfrom
DOMException#57372Conversation
c73bc7f to
b039fee
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #57372 +/- ##
==========================================
- Coverage 90.22% 90.10% -0.12%
==========================================
Files 630 630
Lines 185259 185332 +73
Branches 36245 36247 +2
==========================================
- Hits 167143 166998 -145
- Misses 11063 11285 +222
+ Partials 7053 7049 -4
🚀 New features to boost your workflow:
|
0aec3cf to
96f824c
Compare
legendecas
left a comment
There was a problem hiding this comment.
Private symbols are per-isolate data and initialized before an Environment is created (in IsolateData). It does not depend on an Environment. Yet, it needs a bit of refactor on the NewContext and GetPerContextExports so that InitializePrimordials can access the private symbols.
947742c to
ee1dacf
Compare
IIUC, we need to pass |
440dcd7 to
cded81b
Compare
| constructor(message = '', options = 'Error') { | ||
| ErrorCaptureStackTrace(this); | ||
|
|
||
| this[is_dom_exception] = true; |
There was a problem hiding this comment.
Maybe use class property syntax to set this using [[Define]] semantics?
class DOMException {
[is_dom_exception] = true;
constructor(message = '', options = 'Error') {
...
}
}cded81b to
2ec57d7
Compare
|
Opened #57479 to help tackle this. That one, as the first step, works fine, but I need a bit of time working on this, as with current manual (de)serialize approach there is a
|
2ec57d7 to
ed31a8c
Compare
Added serialization and deserialization support for
DOMException. Ideally we shouldn't do this in native, but since it's compiled before an Environment exists, we cannot mark it askCloneableand provide associated serialization methods in JS land.Fixes: #49181