1. 28 11月, 2019 3 次提交
  2. 26 10月, 2019 1 次提交
  3. 22 10月, 2019 1 次提交
  4. 30 7月, 2019 2 次提交
    • D
      *: Add .cirrus.yml for FreeBSD testing (#1639) · f4eaad69
      Derek Parker 提交于
      * *: Add .cirrus.yml for FreeBSD testing
      
      * *: run go mod tidy
      
      * service/test: prefer 127.0.0.1 over localhost
      
      * dwarf/line: fix TestDebugLinePrologueParser
      
      * vendor: rerun go mod vendor
      f4eaad69
    • J
      terminal/command: add support for next [count] (#1629) · 1a478cdb
      Jeremy Faller 提交于
      * terminal/command: add support for next [count]
      
      * disallow negative counts.
      
      * handle github comments, and regen docs.
      
      * Fix the fact that we don't print the file info in the last step of the next count.
      
      * Fix a typo, cleanup a few other observations.
      1a478cdb
  5. 24 7月, 2019 1 次提交
  6. 13 7月, 2019 1 次提交
    • R
      *: FreeBSD initial support (#1480) · df65be43
      Robert Ayrapetyan 提交于
      * FreeBSD initial support
      
      * first code review fixes
      
      * regs slice upd
      
      * execPtraceFunc wrap
      
      * disabled concurrency tests
      fixed kill() issue
      
      * disabled concurrency tests
      fixed kill() issue
      
      * cleanup vendor related code
      
      * cleanup ptrace calls
      
      * vendoring latest changes
      
      * Revert "vendoring latest changes"
      
      This reverts commit 833cb87b
      
      * vendoring latest changes
      
      * requested changes
      df65be43
  7. 09 7月, 2019 1 次提交
  8. 03 7月, 2019 1 次提交
    • A
      terminal: adds embedded scripting language (#1466) · ed35dce7
      Alessandro Arzilli 提交于
      If the argument of 'source' ends in '.star' it will be interpreted as a
      starlark script.
      If the argument of 'source' is '-' an interactive starlark repl will be
      started.
      
      For documentation on how the starlark execution environment works see
      Documentation/cli/starlark.md.
      
      The starlark API is autogenerated from the JSON-RPC API by
      script/gen-starlark-bindings.go.
      In general for each JSON-RPC API a single global starlark function is
      created.
      When one of those functions is called (through a starlark script) the
      arguments are converted to go structs using reflection. See
      unmarshalStarlarkValue in pkg/terminal/starbind/conv.go.
      If there are no type conversion errors the JSON-RPC call is executed.
      The return value of the JSON-RPC call is converted back into a starlark
      value by interfaceToStarlarkValue (same file):
      
      * primitive types (such as integers, floats or strings) are converted
        by creating the corresponding starlark value.
      * compound types (such as structs and slices) are converted by wrapping
        their reflect.Value object into a type that implements the relevant
        starlark interfaces.
      * api.Variables are treated specially so that their Value field can be
        of the proper type instead of always being a string.
      
      Implements #1415, #1443
      ed35dce7
  9. 01 7月, 2019 1 次提交
    • A
      Go 1.13 support (#1546) · 55eed318
      Alessandro Arzilli 提交于
      * tests: fix tests for Go 1.13
      
      - Go 1.13 doesn't autogenerate init functions anymore, tests that
        expected that now fail and should be skipped.
      - Plugin tests now need -gcflags'all=-N -l' now, we were probably
        getting lucky with -gcflags='-N -l' before.
      
      * proc: allow signed integers as shift counts
      
      Go1.13 allows signed integers to be used as the right hand side of a
      shift operator, change eval to match.
      
      * goversion: update maximum supported version
      
      * travis: force Go to use vendor directory
      
      Travis scripts get confused by "go: downloading" lines, the exact
      reason is not clear. Testing that the vendor directory is up to date is
      a good idea anyway.
      55eed318
  10. 27 2月, 2019 1 次提交
  11. 05 1月, 2019 1 次提交
    • D
      *: Update import name to github.com/go-delve/delve · 4c9a72e4
      Derek Parker 提交于
      The repository is being switched from the personal account
      github.com/derekparker/delve to the organization account
      github.com/go-delve/delve. This patch updates imports and docs, while
      preserving things which should not be changed such as my name in the
      CHANGELOG and in TODO comments.
      4c9a72e4
  12. 12 10月, 2018 1 次提交
    • A
      proc: support position independent executables (PIE) · 74c98bc9
      aarzilli 提交于
      Support for position independent executables (PIE) on the native linux
      backend, the gdbserver backend on linux and the core backend.
      Also implemented in the windows native backend, but it can't be tested
      because go doesn't support PIE on windows yet.
      74c98bc9
  13. 03 10月, 2018 1 次提交
    • A
      proc/native,Makefile: allow compiling on macOS without native backend · 910f90c3
      aarzilli 提交于
      On macOS 10.14 Apple changed the command line tools so that system
      headers now need to be manually installed.
      
      Instead of adding one extra install step to the install procedure add a
      build tag to allow compilation of delve without the native backend on
      macOS. By default (i.e. when using `go get`) this is how delve will be
      compiled on macOS, the make script is changed to enable compiling the
      native backend if the required dependencies have been installed.
      
      Insure that both configuration still build correctly on Travis CI and
      change the documentation to describe how to compile the native backend
      and that it isn't normally needed.
      
      Fixes #1359
      910f90c3
  14. 31 8月, 2018 1 次提交
    • A
      proc,service,terminal: information about stack trace truncation · ac74944d
      aarzilli 提交于
      Add a flag to Stackframe that indicates where the stack frame is the
      bottom-most frame of the stack. This allows clients to know whether the
      stack trace terminated normally or if it was truncated because the
      maximum depth was reached.
      Add a truncation message to the 'stack' command.
      ac74944d
  15. 25 7月, 2018 1 次提交
    • A
      proc,service,terminal: read defer list · 8f1fc63d
      aarzilli 提交于
      Adds -defer flag to the stack command that decorates the stack traces
      by associating each stack frame with its deferred calls.
      
      Reworks proc.next to use this feature instead of using proc.DeferPC,
      laying the groundwork to implement #1240.
      8f1fc63d
  16. 22 6月, 2018 1 次提交
    • D
      *: Use structured logging · a208c897
      Derek Parker 提交于
      Implements structured logging via Logrus. This gives us a logger per
      boundry that we care about, allowing for easier parsing of logs if users
      have more than one log option enabled. Also, cleans up a lot of
      conditionals in the code by simply silencing the logger at creation as
      opposed to conditionally logging everywhere.
      a208c897
  17. 20 6月, 2018 1 次提交
    • A
      proc,command: fix optimized function warning in 1.9 · e19cbcef
      aarzilli 提交于
      A user complained on the mailing list about having continuous
      "optimized function warnings" on non-optimized functions when using 1.9.
      This commit fixes the problem by disabling optimized function detection
      on 1.9 and earlier (where it's impossible) and adds a test so we don't
      break it again in the future.
      e19cbcef
  18. 12 6月, 2018 1 次提交
    • A
      proc,service: display return values when stepping out of a function · 60c58acb
      aarzilli 提交于
      Displays the return values of the current function when we step out of
      it after executing a step, next or stepout command.
      
      Implementation of this feature is tricky: when the function has
      returned the return variables are not in scope anymore. Implementing
      this feature requires evaluating variables that are out of scope, using
      a stack frame that doesn't exist anymore.
      
      We can't calculate the address of these variables when the
      next/step/stepout command is initiated either, because between that
      point and the time where the stepout breakpoint is actually hit the
      goroutine stack could grow and be moved to a different memory address.
      60c58acb
  19. 09 6月, 2018 1 次提交
  20. 14 4月, 2018 1 次提交
    • A
      terminal: make printcontext use SelectedGoroutine · 4f70ff0a
      aarzilli 提交于
      printcontext should use SelectedGoroutine instead of trusting that the
      goroutine running on current thread matches the SelectedGoroutine.
      
      When the user switches to a parked goroutine CurrentThread and
      SelectedGoroutine will diverge.
      
      Almost all calls to printcontext are safe, they happen after a continue
      command returns when SelectedGoroutine and CurrentThread always agree,
      but the calls in frameCommand and listCommand are wrong.
      
      Additionally we should stop reporting an error when the debugger is
      stopped on an unknown PC address.
      4f70ff0a
  21. 23 3月, 2018 1 次提交
    • Y
      Extend the "frame" command to set the current frame. (#1110) · 82aff3f1
      Yasushi Saito 提交于
      * Extend the "frame" command to set the current frame.
      
      Command
      
        frame 3
      
      sets up so that subsequent "print", "set", "whatis" command
      will operate on frame 3.
      
        frame 3 print foo
      
      continues to work.
      
      Added "up", "down". They move the current frame up or down.
      
      Implementation note:
      
      This changes removes "scopePrefix" mode from the terminal/command.go and instead
      have the command examine the goroutine/frame value to see if it is invoked in a
      scoped context.
      
      * Rename Command.Frame -> Command.frame.
      82aff3f1
  22. 20 3月, 2018 1 次提交
  23. 28 1月, 2018 1 次提交
  24. 19 1月, 2018 1 次提交
    • Y
      command/terminal: allow restart to change process args (#1060) · c5c41f63
      Yasushi Saito 提交于
      * command/terminal: allow restart to change process args
      
      Add -args flag to "restart" command. For example, "restart -args a b c" will
      pass args a b c to the new process.
      
      Add "-c" flag to pass the checkpoint name. This is needed to disambiguate the
      checkpoint name and arglist.
      
      Reverted unnecessary changes.
      
      * Applied reviewer comments.
      
      Vendored argv.
      
      Change the syntax of restart. When the target is is in recording mode, it always
      interprets the args as a checkpoint. Otherwise, it interprets the args as
      commandline args. The flag "-args" is still there, to handle the case in which
      the user wants to pass an empty args on restart.
      
      * Add restartargs.go.
      
      Change "restart -args" to "restart -noargs" to clarify that this flag is used to
      start a process with an empty arg.
      c5c41f63
  25. 19 12月, 2017 1 次提交
    • A
      debugger/locations: locspec "+0" should always evaluate to the current PC · 3f2335f2
      aarzilli 提交于
      So far we have evaluated the locspec "+0" the same way we evaluate all
      "+n" locspecs, this means that we turn the current PC into a file:line
      pair, then we turn back the file:line into a PC address.
      
      Normally this is harmless, however all autogenerated code returns the
      source position "<autogenerated>:1" which resolves back to the very
      first autogenerated instruction in the code.
      
      This messes up the behaviour of the "disassemble" command which uses
      the locspec "+0" to figure out what code to disassemble if no arguments
      are passed.
      
      We should make +0 always resolve to the current PC (of the given scope)
      so that clients can use +0 as a default locspec.
      3f2335f2
  26. 29 11月, 2017 1 次提交
  27. 09 9月, 2017 1 次提交
  28. 31 8月, 2017 1 次提交
  29. 02 8月, 2017 1 次提交
  30. 27 7月, 2017 2 次提交
  31. 30 6月, 2017 1 次提交
  32. 21 6月, 2017 1 次提交
    • A
      api: add FrameOffset to Stackframe (#864) · 04c4b019
      Alessandro Arzilli 提交于
      Other debuggers can be instructed to decorate the stacktrace with the
      value of SP. Our SP equivalent is the frame offset, since we can add it
      to the Stackframe structure without incurring into added costs we
      should, so that frontends can use it if they want.
      04c4b019
  33. 09 5月, 2017 1 次提交
  34. 06 5月, 2017 1 次提交
  35. 20 4月, 2017 2 次提交