Increase the nesting threshold before which setTimeout(..., <4ms) start being clamped, from 5 to 15. setTimeout(..., 0) is commonly used to break down long Javascript tasks and let other internal tasks run, which prevents the browser from hanging. setTimeouts and setIntervals with an interval < 4ms are not clamped as aggressively as they were before. This improves short horizon performance, but websites abusing the API will still eventually have their set setTimeouts clamped
{
"category": "JavaScript",
"flag_name": "unthrottled-nested-timeout",
"id": 5710690097561600,
"milestone": 108,
"name": "Increased max nesting level for setTimeout(0)",
"summary": "Increase the nesting threshold before which setTimeout(..., <4ms) start being clamped, from 5 to 15.\r\n\r\nsetTimeout(..., 0) is commonly used to break down long Javascript tasks and let other internal tasks run, which prevents the browser from hanging. setTimeouts and setIntervals with an interval < 4ms are not clamped as aggressively as they were before. This improves short horizon performance, but websites abusing the API will still eventually have their set setTimeouts clamped\r\n\r\n\r\n"
}
[
{
"author": {
"name": "Igor Sheludko",
"email": "ishell@chromium.org",
"time": "Thu Apr 27 09:11:32 2023"
},
"commit": "f4c70bc5e89b70ca4b040a3b89326733daffb3a5",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Thu Jun 01 12:52:24 2023"
},
"subject": "[M108-LTS][api] Fix v8::Object::SetAccessorProperty",
"milestone": 108
},
{
"author": {
"name": "Samuel Groß",
"email": "saelo@chromium.org",
"time": "Tue Oct 11 10:53:04 2022"
},
"commit": "e9775165b6fe77c4a94cf7802865ed40996197aa",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Tue Oct 11 13:43:43 2022"
},
"subject": "[sandbox] Introduce BoundedSize",
"milestone": 108
},
{
"author": {
"name": "Marja Hölttä",
"email": "marja@chromium.org",
"time": "Fri Oct 07 12:40:05 2022"
},
"commit": "283791d250fe8cce64e1d973116faf92ddd304e4",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Mon Oct 10 11:50:16 2022"
},
"subject": "[inspector] Remove Type Profiler",
"milestone": 108
},
{
"author": {
"name": "legendecas",
"email": "legendecas@gmail.com",
"time": "Wed Oct 05 03:00:18 2022"
},
"commit": "c3dffe6e2bdab79bb5bfb94be9fcc6a16adf6cf5",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Wed Oct 05 08:13:48 2022"
},
"subject": "[api] Expose parsed module source map urls",
"milestone": 108
},
{
"author": {
"name": "Frank Tang",
"email": "ftang@chromium.org",
"time": "Fri Sep 30 00:13:45 2022"
},
"commit": "39f0b4ad8a45d921bafa2bd331cce579152cdd1c",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Tue Oct 04 03:18:37 2022"
},
"subject": "[intl] Implement DurationFormat",
"milestone": 108
},
{
"author": {
"name": "Camillo",
"email": "cbruni@chromium.org",
"time": "Thu Sep 22 08:39:10 2022"
},
"commit": "4e23f53cdf2014db83155ed06d0de1195733010c",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Thu Sep 22 09:47:56 2022"
},
"subject": "[api] Implement v8::Context::HasTemplateLiteralObject",
"milestone": 108
},
{
"author": {
"name": "Liu Yu",
"email": "liuyu@loongson.cn",
"time": "Wed Sep 14 03:34:16 2022"
},
"commit": "56816d76c121c8dd5b406dc6019350eee05f4abd",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Thu Sep 22 02:08:22 2022"
},
"subject": "[loong64] Supplement a LoongArch support in include/v8config.h",
"milestone": 108
},
{
"author": {
"name": "Clemens Backes",
"email": "clemensb@chromium.org",
"time": "Thu Sep 15 14:57:53 2022"
},
"commit": "8b870395361633a134a257c604470378d06335ed",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Fri Sep 16 10:34:13 2022"
},
"subject": "[API] Remove second OnCriticalMemoryPressure",
"milestone": 108
},
{
"author": {
"name": "Samuel Groß",
"email": "saelo@chromium.org",
"time": "Wed Sep 14 14:15:08 2022"
},
"commit": "d7fcbba80e35e845a85e900cf4e3c479e3b69790",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Wed Sep 14 19:35:38 2022"
},
"subject": "[sandbox] Increase ExternalPointerTable maximum capacity to 512MB",
"milestone": 108
},
{
"author": {
"name": "Seth Brenith",
"email": "seth.brenith@microsoft.com",
"time": "Thu Sep 08 16:27:54 2022"
},
"commit": "3d59a3c2c16405eea59263300c5591c3283a2a0e",
"committer": {
"name": "V8 LUCI CQ",
"email": "v8-scoped@luci-project-accounts.iam.gserviceaccount.com",
"time": "Wed Sep 14 17:39:12 2022"
},
"subject": "Add option to report discarded allocations in sampling heap profiler",
"milestone": 108
}
]