Skip to content
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

terminal/starbind: fix starlark conversion of named consts #3802

Merged
merged 2 commits into from
Sep 3, 2024

Conversation

arvidfm
Copy link
Contributor

@arvidfm arvidfm commented Aug 30, 2024

If a value of a derived integer type matches a named constant, Delve will wrap the string representation of the value with the name of the constant, causing ParseInt/ParseUint to fail. This change removes the wrapping before attempting to parse the value before sending it to Starlark.

Fixes #3801

If a value of a derived integer type matches a named constant,
Delve will wrap the string representation of the value with
the name of the constant, causing ParseInt/ParseUint to fail.
This change removes the wrapping before attempting to parse
the value before sending it to Starlark.
Copy link
Member

@aarzilli aarzilli left a comment

Choose a reason for hiding this comment

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

LGTM but it would be better with a regression test. Tests for starlark go in pkg/terminal/starlark_test.go and _fixture/consts.go can be used for enums. If I understand correctly this test it could be enough to write this:

func TestStarlarkEnumValue(t *testing.T) {
	withTestTerminal("consts", t, func(term *FakeTerminal) {
		term.MustExec("continue")
		out := strings.TrimSpace(term.MustExecStarlark(`v = eval(None, "a"); print(v.Value)`))
		if out != "2" {
			t.Fatalf("expected 2 got %s", out)
		}
	})
}

@arvidfm
Copy link
Contributor Author

arvidfm commented Aug 30, 2024

@aarzilli Since there was already an existing test specifically for testing the results of expressions I figured it made sense to add the test cases there and the associated fixture, but let me know if you'd prefer me to move them to their own test

Copy link
Member

@aarzilli aarzilli left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Member

@derekparker derekparker left a comment

Choose a reason for hiding this comment

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

LGTM

@derekparker derekparker merged commit 2abf517 into go-delve:master Sep 3, 2024
2 checks passed
yurishkuro pushed a commit to jaegertracing/jaeger that referenced this pull request Sep 23, 2024
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[github.com/go-delve/delve](https://redirect.github.com/go-delve/delve)
| `v1.23.0` -> `v1.23.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgo-delve%2fdelve/v1.23.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fgo-delve%2fdelve/v1.23.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fgo-delve%2fdelve/v1.23.0/v1.23.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgo-delve%2fdelve/v1.23.0/v1.23.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>go-delve/delve (github.com/go-delve/delve)</summary>

###
[`v1.23.1`](https://redirect.github.com/go-delve/delve/releases/tag/v1.23.1)

[Compare
Source](https://redirect.github.com/go-delve/delve/compare/v1.23.0...v1.23.1)

#### What's Changed

- proc: move stepping test to their own file by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3784
- proc: fix step stuttering when entering range-over-func bodies by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3788
- proc: fix TestRangeOverFuncNext on linux/386 by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3795
- eval: Allow reslicing a slice up to its cap, rather than its length by
[@&#8203;Jille](https://redirect.github.com/Jille) in
[go-delve/delve#3796
- chore: fix function name by
[@&#8203;linchizhen](https://redirect.github.com/linchizhen) in
[go-delve/delve#3803
- terminal/starbind: fix starlark conversion of named consts by
[@&#8203;arvidfm](https://redirect.github.com/arvidfm) in
[go-delve/delve#3802
- proc: workaround for macOS section name truncation by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3799
- service/dap: make handlesMap generic by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3798
- service/dap: fix test failure with 1.24 by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3805
- proc: fix result type of division of untyped constants by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3794
- proc: improve Rosetta check by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3810
- proc: for optimized functions allow .closureptr to not exist by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3808
- proc: cache module data by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3800
- \*: release version 1.23.1 by
[@&#8203;aarzilli](https://redirect.github.com/aarzilli) in
[go-delve/delve#3816

#### New Contributors

- [@&#8203;Jille](https://redirect.github.com/Jille) made their first
contribution in
[go-delve/delve#3796
- [@&#8203;linchizhen](https://redirect.github.com/linchizhen) made
their first contribution in
[go-delve/delve#3803
- [@&#8203;arvidfm](https://redirect.github.com/arvidfm) made their
first contribution in
[go-delve/delve#3802

**Curated Changelog**:
https://github.com/go-delve/delve/blob/master/CHANGELOG.md#1231-2024-09-23

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/jaegertracing/jaeger).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC44MC4wIiwidXBkYXRlZEluVmVyIjoiMzguODAuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiY2hhbmdlbG9nOmRlcGVuZGVuY2llcyJdfQ==-->

Signed-off-by: Mend Renovate <bot@renovateapp.com>
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.

starlark: named constant values of derived integer types always get converted to 0
3 participants