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

CMake Debugger does not display properties #3303

Open
Neumann-A opened this issue Aug 17, 2023 · 3 comments
Open

CMake Debugger does not display properties #3303

Neumann-A opened this issue Aug 17, 2023 · 3 comments
Labels
enhancement an enhancement to the product that is either not present or an improvement to an existing feature Feature: CMake Debugger
Milestone

Comments

@Neumann-A
Copy link

Brief Issue Summary

Currently the CMake Debugger only seems to show variables and not properties associated with the current directory or global scope:

image

Note: using cmake-tools build from #3277 to attach to an external cmake debugging session.

(Could also be a CMake issue not passing the required info via DAP? But the CMake issues about the debugger seems to indicate that this is implemented?)

CMake Tools Diagnostics

No response

Debug Log

No response

Additional Information

No response

@gcampbell-msft
Copy link
Collaborator

@Neumann-A What type of values are you expecting? I see the "Directories" dropdown in the screenshot. Is that not what you're looking for?

Also, to ensure that this is tracked in the CMake debugger itself, can you post an issue here: https://gitlab.kitware.com/cmake/cmake?

Thanks!

@gcampbell-msft gcampbell-msft added bug a bug in the product upstream Bugs related to issues in an upstream project Feature: CMake Debugger labels Aug 23, 2023
@gcampbell-msft gcampbell-msft added this to the 1.16 milestone Aug 23, 2023
@gcampbell-msft gcampbell-msft added the more info needed More info is needed from the community for us to properly triage and investigate. label Aug 23, 2023
@Neumann-A
Copy link
Author

Neumann-A commented Aug 23, 2023

What type of values are you expecting?

I want to see the values of properties vcpkg_global_prop_test and vcpkg_dir_prop_test and all other properties cmake normally has in the scope. So ideally there would be a Properties drop down with entries like global|directory|target|.... which then lists the properties accordingly.

I see the "Directories" dropdown in the screenshot. Is that not what you're looking for?

No. I don't remember exactly what those showed but it was also just some normal variable names.
image
I don't know what CMake does here but those are just normal local variables where CMakes somehow knows they are directories? (Probably due to file(MAKE_DIRECTORY "${CURRENT_BUILDTREES_DIR}" "${CURRENT_PACKAGES_DIR}"))

Also, to ensure that this is tracked in the CMake debugger itself, can you post an issue here:

The question is if it is already implemented and just missing a request for it here. I read https://gitlab.kitware.com/cmake/cmake/-/issues/21510, https://gitlab.kitware.com/cmake/cmake/-/issues/21510#note_867714 and https://gitlab.kitware.com/cmake/cmake/-/issues/21510#note_1371272 and for me it seemed like that?

See:
One downside to using DAP is that the protocol as specified may not have first-class support for features unique to certain debuggers. For example DAP has no notion of a CMake target or target properties. This proposal solves these issues by leveraging how DAP clients ignore unknown fields to allow vendors to declare their support for extensions during protocol initialization and falling back to represent CMake-specific concepts using more general DAP messages if extension support is not declared.
https://gitlab.kitware.com/cmake/cmake/-/issues/21510#scopes-request

I mean I could also be wrong with that and the support from the cmake side is missing.

@gcampbell-msft gcampbell-msft removed the upstream Bugs related to issues in an upstream project label Aug 23, 2023
@gcampbell-msft
Copy link
Collaborator

gcampbell-msft commented Aug 23, 2023

From the reading you linked to, I think you may be right. I'll confer with the team and assess whether any code fixes need to go into upstream or if it's simply modifications with the VS Code integration.

Thanks for calling this out!

@gcampbell-msft gcampbell-msft added enhancement an enhancement to the product that is either not present or an improvement to an existing feature and removed bug a bug in the product more info needed More info is needed from the community for us to properly triage and investigate. labels Aug 23, 2023
@benmcmorran benmcmorran modified the milestones: 1.16, 1.17 Oct 4, 2023
@gcampbell-msft gcampbell-msft modified the milestones: 1.17, On Deck Nov 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement an enhancement to the product that is either not present or an improvement to an existing feature Feature: CMake Debugger
Projects
Status: Pending Prioritization
Development

No branches or pull requests

3 participants