1. 21 Nov, 2016 1 commit
    • jgruber's avatar
      [debug-wrapper] Adapt tests, breakpoint.actual_location · 1834ab72
      jgruber authored
      Adapted various tests to restrictions of inspector protocol:
      
      * osr-typing-debug-change: Don't set function variable value.
      * debug-evaluate-locals: Add variable introduced by eval, run typeof
        inside evaluate().
      * regress-419663: Don't set duplicate breakpoints.
      * regress-crbug-465298: Compare against function name instead of value.
      * regress-crbug-621361: Make evaluate return string results.
      * debug-script: Various counts were off due to new way tests are called.
                      Added new inspector script type.
      
      Breakpoints now contain the actual break position, and remote object
      reconstruction has been extended a bit.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2505363002
      Cr-Commit-Position: refs/heads/master@{#41129}
      1834ab72
  2. 16 Nov, 2016 1 commit
    • jgruber's avatar
      [debug-wrapper] Further extend the debug wrapper · b06c4ce5
      jgruber authored
      This CL further extends the debug wrapper, migrates around 60 tests, and
      removes a few tests that use functionality we will not support anymore.
      
      In more detail:
      
      * Removed tests that use:
        * enable/disable individual breakpoints
        * invocationText()
        * the ScriptCollected event
        * showBreakPoints
        * evalFromScript (and similar)
        * mirror.constructedBy and mirror.referencedBy
        * event_data.promise()
      * Some frame.evaluate uses were adapted since due to differences between
        remote objects (inspector) and mirrors. For instance, exceptions are
        currently not recreated exactly, since the inspector protocol does not
        give us the stack and message separately. Other objects (such as
        'this' in debug-evaluate-receiver-before-super) need to be explicitly
        converted to a string before the test works correctly.
      * Ensure that inspector stores the script before sending ScriptParsed and
        ScriptFailedToParse events in order to be able to use the script from
        within those events.
      * Better remote object reconstruction (e.g. for undefined and arrays).
      * New functionality in wrapper:
        * debuggerFlags().breakPointsActive.setValue()
        * scripts()
        * execState.setVariableValue()
        * execState.scopeObject().value()
        * execState.scopeObject().property()
        * execState.frame().allScopes()
        * eventData.exception()
        * eventData.script()
        * setBreakPointsActive()
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2497973002
      Cr-Commit-Position: refs/heads/master@{#41019}
      b06c4ce5
  3. 08 Nov, 2016 3 commits
  4. 07 Nov, 2016 2 commits
  5. 20 Sep, 2016 1 commit
    • littledan's avatar
      Make Promise.all/Promise.race catch prediction conditional on DevTools · 37735851
      littledan authored
      To improve performance, this patch makes Promise.all and Promise.race not
      perform correct catch prediction when the debugger is not open. The case
      may come up if Promise.race or Promise.all is called, then DevTools is
      open, then a component Promise is rejected. In this case, the user would
      falsely get an exception event even if the "pause on caught exceptions"
      box is unchecked. There are tests which triggered this case; however, it
      seems both unlikely and and acceptable to have an event in this case.
      Many analogous events are already produced when DevTools is enabled
      during the operation of a program.
      
      BUG=v8:3093
      
      Review-Url: https://codereview.chromium.org/2350363002
      Cr-Commit-Position: refs/heads/master@{#39565}
      37735851
  6. 24 Aug, 2016 2 commits
    • littledan's avatar
      Do not trigger ExceptionEvents for another forwarding case · aae17eb3
      littledan authored
      This patch fixes up one last case of redundant ExceptionEvents being
      triggered in the debugger for Promises--it makes the default reject
      handler for Promises (e.g., if the second argument for
      Promise.prototype.then is missing) appear to the debugger as a
      rethrow.
      
      R=adamk@chromium.org,jgruber@chromium.org
      BUG=v8:5167
      
      Review-Url: https://codereview.chromium.org/2278643002
      Cr-Commit-Position: refs/heads/master@{#38876}
      aae17eb3
    • littledan's avatar
      Change which ExceptionEvents are triggered by Promises · 013e49f7
      littledan authored
      To make async/await catch prediction work well, this patch regularizes
      the exception events sent to DevTools from various places in the Promise
      lifecycle. The core is that there should be an exception event when the
      rejection first starts, rather than when it is propagated.
      
      - Several cases within Promise code which propagate errors are
        modified to not trigger a new ExceptionEvent in that case, such
        as .then on a rejected Promise and returning a rejected Promise
        from .then, as well as Promise.race and Promise.all.
      - Make Promise.reject() create an ExceptionEvent, subject to catch
        prediction based on the Promise stack. This is important
        so that, e.g., if "await Promise.reject()" will trigger a new
        throw (rather than a silent rethrow of something that never
        triggered an event in the first place).
      
      BUG=v8:5167
      
      Review-Url: https://codereview.chromium.org/2244003003
      Cr-Commit-Position: refs/heads/master@{#38847}
      013e49f7
  7. 22 Aug, 2016 1 commit
  8. 02 Aug, 2016 1 commit
  9. 22 Jul, 2016 1 commit
    • yangguo's avatar
      [debug] use catch prediction flag for promise rejections. · 6d0a4202
      yangguo authored
      This is in preparation to implementing exception prediction for async
      functions.  Each handler table entry can now predict "caught", "uncaught", or
      "promise". The latter indicates that the exception will lead to a promise
      rejection.
      
      To mark the relevant try-catch blocks, we add a new native syntax.
      try { } %catch (e) { } indicates a TryCatchStatement with the "promise"
      prediction.
      
      The previous implementation of using the function to tell the relevant
      try-catch apart from inner try-catch blocks will not work for async functions
      since these can have inner try-catch blocks inside the same function.
      
      BUG=v8:5167
      
      Review-Url: https://codereview.chromium.org/2161263003
      Cr-Commit-Position: refs/heads/master@{#37966}
      6d0a4202
  10. 10 Jun, 2016 1 commit
    • littledan's avatar
      Async/await event listener test · 5d7b9ece
      littledan authored
      This patch adds a test for async/await analogous to a previous Promise test.
      It also fixes a typo in promise.js and makes a previous Promise test more
      correct by ensuring that all assertions run before completion, fixing the
      test expectations for the real result (which seems correct).
      
      BUG=v8:4483
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      
      Review-Url: https://codereview.chromium.org/2037653002
      Cr-Commit-Position: refs/heads/master@{#36903}
      5d7b9ece
  11. 03 Jun, 2016 1 commit
  12. 21 Apr, 2016 1 commit
  13. 05 Apr, 2016 1 commit
  14. 10 Mar, 2016 1 commit
  15. 23 Feb, 2016 1 commit
    • littledan's avatar
      Ship ES2015 Symbol.species · 1353b37d
      littledan authored
      This patch moves the ES2015 Symbol.species feature from staging to
      shipping. @@species should be good to ship now that the regression
      from fast-path cases in concat, slice and splice have been addressed.
      
      R=adamk
      BUG=v8:4093
      LOG=Y
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      
      Review URL: https://codereview.chromium.org/1721993002
      
      Cr-Commit-Position: refs/heads/master@{#34226}
      1353b37d
  16. 16 Dec, 2015 1 commit
  17. 10 Dec, 2015 1 commit
    • littledan's avatar
      Unstage non-standard Promise functions · 88c8361b
      littledan authored
      This patch removes Promise functions and methods which are absent
      from the ES2015 specification when the --es-staging flag is on.
      The patch is being relanded after being reverted due to an
      unrelated bug. This version is slightly different as promise_chain
      is installed on the context regardless of the flag value, so that
      the Promise::Chain API continues to work until it is deprecated.
      
      BUG=v8:3237
      R=rossberg
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1513873002
      
      Cr-Commit-Position: refs/heads/master@{#32772}
      88c8361b
  18. 02 Dec, 2015 2 commits
  19. 24 Nov, 2015 3 commits
  20. 20 Oct, 2015 1 commit
  21. 15 Oct, 2015 1 commit
  22. 21 Jul, 2015 1 commit
  23. 09 Mar, 2015 1 commit
  24. 18 Aug, 2014 1 commit
  25. 14 Aug, 2014 1 commit
  26. 08 Aug, 2014 1 commit
  27. 06 Aug, 2014 1 commit