Skip to content

Undo v1.20.2 #37

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 6 commits into
base: upstream-v1.20.2
Choose a base branch
from
Draft

Undo v1.20.2 #37

wants to merge 6 commits into from

Conversation

mark-undoio
Copy link
Contributor

This pull request represents the differences between upstream Delve v1.20.2, and our fork at the same version. It is for review and not for merge.

Copy link
Contributor

@gareth-rees gareth-rees left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks fine to me, though obviously it is difficult to review thoroughly. I noted a few places where the diff could be simplified.

@mark-undoio
Copy link
Contributor Author

Thanks. I'm going to go investigate the disagreement between my go fmt and Delve's preferred formatting, it'd be nice to not need to manually fix things up.

Perhaps updating my Go (I'm on 1.18) will help, though I'm a bit surprised if they've decided to change their formatting as part of a version update.

gareth-rees and others added 5 commits May 24, 2023 17:06
In Undo, debuggee state is immutable during replay, so reading the G
pointer via code injection won't work; and in any case, this approach
is simpler.
* Update the documentation to mention UDB or LiveRecorder alongside rr.
* Add makefile support for testing the Undo backend.
* Add DLV_RECORD_REPLAY_BACKEND environment variable which overrides
  the record-replay backend, for use in GoLand.
* Implement checkpoints as a map from checkpoint number to time.
* Suppress resume call after restart.
* Implement "when" command using "get_time" serial command.
* Implement call injection using "set_debuggee_volatile".
* Implement "restart" using "goto_time".
* Enable or disable Undo backend appropriately in test cases.
@mark-undoio
Copy link
Contributor Author

@gareth-rees if you'd like to check my updates, feel free. Passes the local Delve tests I ran before, so I'll run it against my end-to-end tests too.

Copy link
Contributor

@gareth-rees gareth-rees left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants