Skip to content

add property for controlling escaping arguments for the runInTerminal request #305

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

Merged
merged 6 commits into from
Jul 19, 2022

Conversation

roblourens
Copy link
Member

Fixes #146

@roblourens roblourens changed the base branch from main to gh-pages July 15, 2022 01:41
overview.md Outdated
@@ -131,10 +131,7 @@ After the debug adapter has been initialized, it is ready to accept requests for
Two requests exist for this:
- [**launch**](./specification#Requests_Launch) request: the debug adapter launches the program ("debuggee") in debug mode and then starts to communicate with it.
Since the debug adapter is responsible for the debuggee, it should provide options for the end user to interact with the debuggee.
Copy link
Member Author

Choose a reason for hiding this comment

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

Since the debug adapter is responsible for the debuggee, it should provide options for the end user to interact with the debuggee.

I'm not sure what this means exactly

Copy link
Contributor

@weinand weinand Jul 15, 2022

Choose a reason for hiding this comment

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

Yes, "interact" is a bit misleading. What is meant here:

Since the debug adapter is responsible for launching and tracking the debuggee, it (the DA) should contribute launch configuration properties so that the end user can configure the debuggee, e.g. passing arguments, specifying a working directory etc.

Please add (a sanitized version of) my text to the overview.

Copy link
Contributor

@weinand weinand left a comment

Choose a reason for hiding this comment

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

@roblourens Nicely integrated into the existing overview document!

overview.md Outdated
@@ -131,10 +131,7 @@ After the debug adapter has been initialized, it is ready to accept requests for
Two requests exist for this:
- [**launch**](./specification#Requests_Launch) request: the debug adapter launches the program ("debuggee") in debug mode and then starts to communicate with it.
Since the debug adapter is responsible for the debuggee, it should provide options for the end user to interact with the debuggee.
Copy link
Contributor

@weinand weinand Jul 15, 2022

Choose a reason for hiding this comment

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

Yes, "interact" is a bit misleading. What is meant here:

Since the debug adapter is responsible for launching and tracking the debuggee, it (the DA) should contribute launch configuration properties so that the end user can configure the debuggee, e.g. passing arguments, specifying a working directory etc.

Please add (a sanitized version of) my text to the overview.

@weinand weinand added the feature-request Request for new features or functionality label Jul 15, 2022
@@ -734,14 +734,18 @@
"allOf": [ { "$ref": "#/definitions/Request" }, {
"type": "object",
"title": "Reverse Requests",
"description": "This optional request is sent from the debug adapter to the client to run a command in a terminal.\nThis is typically used to launch the debuggee in a terminal provided by the client.\nThis request should only be called if the client has passed the value true for the 'supportsRunInTerminalRequest' capability of the 'initialize' request.",
"description": "This optional request is sent from the debug adapter to the client to run a command in a terminal.\nThis is typically used to launch the debuggee in a terminal provided by the client.\nThis request should only be called if the client has passed the value true for the 'supportsRunInTerminalRequest' capability of the 'initialize' request.\nClient implementations of runInTerminal are free to run the command however they choose including issuing the command to a command line interpreter (aka 'shell'). Argument strings passed to the runInTerminal request must arrive verbatim in the command to be run. As a consequence, clients which use a shell are responsible for escaping any special shell characters in the argument strings to prevent them from being interpreted (and modified) by the shell\nSome users may wish to take advantage of shell processing in the argument strings. For clients which implement runInTerminal using an intermediary shell, the argsCanBeInterpretedByShell property can be set to true. In this case the client is requested not to escape any special shell characters in the argument strings.",
Copy link
Member

Choose a reason for hiding this comment

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

Tiny nit: argsCanBeInterpretedByShell in this can be wrapped in backticks

Copy link
Member Author

@roblourens roblourens Jul 15, 2022

Choose a reason for hiding this comment

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

We are very inconsistent with backticks vs single quotes, we should normalize this.

@roblourens roblourens marked this pull request as ready for review July 18, 2022 22:11
@roblourens roblourens changed the base branch from gh-pages to next July 18, 2022 22:54
@roblourens roblourens changed the base branch from next to gh-pages July 18, 2022 23:15
@roblourens roblourens force-pushed the roblourens/issue146 branch from 4153ca0 to 1f9fad8 Compare July 19, 2022 00:03
@roblourens roblourens changed the base branch from gh-pages to main July 19, 2022 16:58
@roblourens roblourens merged commit 0a2b48b into main Jul 19, 2022
@roblourens roblourens deleted the roblourens/issue146 branch July 19, 2022 17:15
weinand pushed a commit that referenced this pull request Jul 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request for new features or functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

add property for controlling escaping arguments for the runInTerminal request
3 participants