• Maya Lekova's avatar
    Revert "Implement top-level await for REPL mode" · 99005f33
    Maya Lekova authored
    This reverts commit 5bddc0e1.
    
    Reason for revert: Possible culprit for https://bugs.chromium.org/p/chromium/issues/detail?id=1029863
    
    Original change's description:
    > Implement top-level await for REPL mode
    > 
    > Design doc: bit.ly/v8-repl-mode
    > 
    > This CL allows the usage of 'await' without wrapping code in an async
    > function when using REPL mode in global evaluate. REPL mode evaluate
    > is changed to *always* return a Promise. The resolve value of the
    > promise is the completion value of the REPL script.
    > 
    > The implementation is based on two existing mechanisms:
    >   - Similar to async functions, the content of a REPL script is
    >     enclosed in a synthetic 'try' block. Any thrown error
    >     is used to reject the Promise of the REPL script.
    > 
    >   - The content of the synthetic 'try' block is also re-written the
    >     same way a normal script is. This is, artificial assignments to
    >     a ".result" variable are inserted to simulate a completion
    >     value. The difference for REPL scripts is, that ".result" is
    >     used to resolve the Promise of the REPL script.
    > 
    >   - ".result" is not returned directly but wrapped in an object
    >     literal: "{ .repl_result: .result}". This is done to prevent
    >     resolved promises from being chained and resolved prematurely:
    > 
    >     > Promse.resolve(42);
    > 
    >     should evaluate to a promise, not 42.
    > 
    > Bug: chromium:1021921
    > Change-Id: I00a5aafd9126ca7c97d09cd8787a3aec2821a67f
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900464
    > Reviewed-by: Yang Guo <yangguo@chromium.org>
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    > Commit-Queue: Simon Zünd <szuend@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#65273}
    
    TBR=yangguo@chromium.org,leszeks@chromium.org,verwaest@chromium.org,szuend@chromium.org
    
    # Not skipping CQ checks because original CL landed > 1 day ago.
    
    Bug: chromium:1021921
    Change-Id: I9eaea584e2e09f3dffcbbca3d75a3c9bcb0a1adf
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1948719Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
    Commit-Queue: Maya Lekova <mslekova@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#65333}
    99005f33
Name
Last commit
Last update
..
bugs/harmony Loading commit data...
debug Loading commit data...
protocol Loading commit data...
regress Loading commit data...
wrapper Loading commit data...
BUILD.gn Loading commit data...
OWNERS Loading commit data...
debugger.status Loading commit data...
test-api.js Loading commit data...
testcfg.py Loading commit data...