| <<<Back 1 day (to 2020/01/22) | Fwd 1 day (to 2020/01/24)>>> | 20200123 |
avih | ator: as i said, the commit LGTM, and i saw at least one case fixed by it. are you going to push it, then make message/stackTrace, prototype non enumerable, then release 1.07? | 09:48.20 |
| (seems there have been good fixes since 1.0.6) | 09:49.00 |
| i like the compile time limits. maybe also increase stack to 128 just to allow deeper recursions? | 09:49.55 |
| (in my code 64 is not an issue for non recursive stacks, but recursion can get validly deep quickly) | 09:51.19 |
| maybe allow some desktop/embedded presets with different limits? | 09:54.24 |
ator | avih: I think I may have messed up with the eval scope commit, but the enumerability stuff has fixes on tor/master | 11:06.44 |
avih | ator: looks good (didn't test), and thx for recursion limit. why JS_DONTCONF for prototype? | 11:09.55 |
| ator: commit message of the enumerability has extra "x" at the end | 11:11.12 |
ator | avih: "the spec told me to do it" | 11:12.08 |
avih | hmm | 11:12.15 |
| aren't you supposed to be able to set a function's prototype? | 11:12.58 |
ator | "18. Call the [[DefineOwnProperty]] internal method of F with arguments "prototype", Property Descriptor | 11:14.16 |
| {[[Value]]: proto, { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: false}, and false. " | 11:14.16 |
| DONTCONF means 'don't delete' | 11:14.40 |
| READONLY is the 'don't write' | 11:14.45 |
avih | right. i mixed them. though for accessors it's also don't write | 11:16.55 |
| "It is not possible to change any attribute of a non-configurable accessor property. For data properties, it is possible to modify the value if the property is writable, and it is possible to change writable attribute from true to false. It is not possible to switch between data and accessor property types when the property is non-configurable." | 11:17.50 |
| (MDN) | 11:18.18 |
ator | 'attributes' are the writable/enumerable/configurable flags (so it means if it's non-configurable you can't change it to be configurable later) | 11:20.17 |
avih | ator: enum fixes seem to work. thanks. | 11:21.04 |
| ator: fwiw, i use this as test object for my object dump function: https://0x0.st/irAa.txt | 11:23.21 |
ator | avih: what does with_props do? | 11:25.46 |
avih | https://0x0.st/irAB.txt | 11:25.49 |
| forgot to copy with_props and get_args. this has them | 11:26.04 |
| that's how i found out that "00" on String didn't work. the isarrayindex fix fixed it though | 11:27.09 |
ator | avih: hmm, looks like your object exposes some bug or other in repr() | 11:29.09 |
avih | ator: that's my output of it: https://0x0.st/irAS.txt | 11:29.41 |
ator | JSON.stringify bugs out too (if I remove the cycles) | 11:30.52 |
| oh no, it's doing the right thing! | 11:31.35 |
| throw(1) | 11:31.52 |
avih | yeah, accessors can throw | 11:32.51 |
| that's my dump function. not too pretty, but it's ok https://0x0.st/irAj.txt | 11:33.12 |
| maybe i should keep the new String keys though. afterall, the object does have them, and i don't think it's common to use String objects. not 100% sure what would be better. | 11:46.54 |
| hmm.. bug items.unshift(["<value>: " + valof]) <- should be a plain string, eventhough it doesn't have consequences (tostring of array with one item is the same as tostring of that item) | 11:50.43 |
| i decided to display String keys. no special handling of it. | 12:01.16 |
| but the String keys still need to be enumerated like array, https://0x0.st/irA4.txt . also display String and Arguments with {..} rather than [..], but still enumerate them like arrays | 12:23.23 |
| much of my object handling depends on get_class(x) working reasonably. i think it should... | 12:26.37 |
| <<<Back 1 day (to 2020/01/22) | Forward 1 day (to 2020/01/24)>>> | |