{"action":"created","issue":{"url":"https://api.github.com/repos/Microsoft/vscode/issues/57551","repository_url":"https://api.github.com/repos/Microsoft/vscode","labels_url":"https://api.github.com/repos/Microsoft/vscode/issues/57551/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/vscode/issues/57551/comments","events_url":"https://api.github.com/repos/Microsoft/vscode/issues/57551/events","html_url":"https://github.com/Microsoft/vscode/issues/57551","id":355376501,"node_id":"MDU6SXNzdWUzNTUzNzY1MDE=","number":57551,"title":"When python.pythonPath includes ${workspaceFolder}, tasks that use ${config:python.pythonPath} fail to start","user":{"login":"brettcannon","id":54418,"node_id":"MDQ6VXNlcjU0NDE4","avatar_url":"https://avatars0.githubusercontent.com/u/54418?v=4","gravatar_id":"","url":"https://api.github.com/users/brettcannon","html_url":"https://github.com/brettcannon","followers_url":"https://api.github.com/users/brettcannon/followers","following_url":"https://api.github.com/users/brettcannon/following{/other_user}","gists_url":"https://api.github.com/users/brettcannon/gists{/gist_id}","starred_url":"https://api.github.com/users/brettcannon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brettcannon/subscriptions","organizations_url":"https://api.github.com/users/brettcannon/orgs","repos_url":"https://api.github.com/users/brettcannon/repos","events_url":"https://api.github.com/users/brettcannon/events{/privacy}","received_events_url":"https://api.github.com/users/brettcannon/received_events","type":"User","site_admin":false},"labels":[{"id":272689392,"node_id":"MDU6TGFiZWwyNzI2ODkzOTI=","url":"https://api.github.com/repos/Microsoft/vscode/labels/feature-request","name":"feature-request","color":"dcdcdc","default":false},{"id":292032114,"node_id":"MDU6TGFiZWwyOTIwMzIxMTQ=","url":"https://api.github.com/repos/Microsoft/vscode/labels/tasks","name":"tasks","color":"1d76db","default":false}],"state":"open","locked":false,"assignee":{"login":"isidorn","id":1926584,"node_id":"MDQ6VXNlcjE5MjY1ODQ=","avatar_url":"https://avatars2.githubusercontent.com/u/1926584?v=4","gravatar_id":"","url":"https://api.github.com/users/isidorn","html_url":"https://github.com/isidorn","followers_url":"https://api.github.com/users/isidorn/followers","following_url":"https://api.github.com/users/isidorn/following{/other_user}","gists_url":"https://api.github.com/users/isidorn/gists{/gist_id}","starred_url":"https://api.github.com/users/isidorn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/isidorn/subscriptions","organizations_url":"https://api.github.com/users/isidorn/orgs","repos_url":"https://api.github.com/users/isidorn/repos","events_url":"https://api.github.com/users/isidorn/events{/privacy}","received_events_url":"https://api.github.com/users/isidorn/received_events","type":"User","site_admin":false},"assignees":[{"login":"isidorn","id":1926584,"node_id":"MDQ6VXNlcjE5MjY1ODQ=","avatar_url":"https://avatars2.githubusercontent.com/u/1926584?v=4","gravatar_id":"","url":"https://api.github.com/users/isidorn","html_url":"https://github.com/isidorn","followers_url":"https://api.github.com/users/isidorn/followers","following_url":"https://api.github.com/users/isidorn/following{/other_user}","gists_url":"https://api.github.com/users/isidorn/gists{/gist_id}","starred_url":"https://api.github.com/users/isidorn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/isidorn/subscriptions","organizations_url":"https://api.github.com/users/isidorn/orgs","repos_url":"https://api.github.com/users/isidorn/repos","events_url":"https://api.github.com/users/isidorn/events{/privacy}","received_events_url":"https://api.github.com/users/isidorn/received_events","type":"User","site_admin":false},{"login":"dbaeumer","id":1931590,"node_id":"MDQ6VXNlcjE5MzE1OTA=","avatar_url":"https://avatars1.githubusercontent.com/u/1931590?v=4","gravatar_id":"","url":"https://api.github.com/users/dbaeumer","html_url":"https://github.com/dbaeumer","followers_url":"https://api.github.com/users/dbaeumer/followers","following_url":"https://api.github.com/users/dbaeumer/following{/other_user}","gists_url":"https://api.github.com/users/dbaeumer/gists{/gist_id}","starred_url":"https://api.github.com/users/dbaeumer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dbaeumer/subscriptions","organizations_url":"https://api.github.com/users/dbaeumer/orgs","repos_url":"https://api.github.com/users/dbaeumer/repos","events_url":"https://api.github.com/users/dbaeumer/events{/privacy}","received_events_url":"https://api.github.com/users/dbaeumer/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/Microsoft/vscode/milestones/8","html_url":"https://github.com/Microsoft/vscode/milestone/8","labels_url":"https://api.github.com/repos/Microsoft/vscode/milestones/8/labels","id":1412124,"node_id":"MDk6TWlsZXN0b25lMTQxMjEyNA==","number":8,"title":"Backlog","description":"Work not yet planned for a specific release.","creator":{"login":"chrisdias","id":1487073,"node_id":"MDQ6VXNlcjE0ODcwNzM=","avatar_url":"https://avatars0.githubusercontent.com/u/1487073?v=4","gravatar_id":"","url":"https://api.github.com/users/chrisdias","html_url":"https://github.com/chrisdias","followers_url":"https://api.github.com/users/chrisdias/followers","following_url":"https://api.github.com/users/chrisdias/following{/other_user}","gists_url":"https://api.github.com/users/chrisdias/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisdias/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisdias/subscriptions","organizations_url":"https://api.github.com/users/chrisdias/orgs","repos_url":"https://api.github.com/users/chrisdias/repos","events_url":"https://api.github.com/users/chrisdias/events{/privacy}","received_events_url":"https://api.github.com/users/chrisdias/received_events","type":"User","site_admin":false},"open_issues":2172,"closed_issues":3858,"state":"open","created_at":"2015-11-15T10:30:19Z","updated_at":"2018-08-30T13:08:52Z","due_on":null,"closed_at":null},"comments":4,"created_at":"2018-08-30T00:05:27Z","updated_at":"2018-08-30T14:38:21Z","closed_at":null,"author_association":"MEMBER","body":"_From @segevfiner on August 28, 2018 22:39_\n\n<!-- \r\nDo you have a question instead of a bug report or enhancement request? Please ask it on https://stackoverflow.com/questions/tagged/visual-studio-code+python. \r\n\r\nUnable to install a linter or formatter? 'No installers available'? \r\nWindows - https://stackoverflow.com/questions/4750806/how-do-i-install-pip-on-windows\r\nLinux - https://www.cyberciti.biz/faq/debian-ubuntu-centos-rhel-linux-install-pipclient/ , https://www.tecmint.com/install-pip-in-linux/\r\n\r\nPython configuration issues? Please check https://code.visualstudio.com/docs/python/python-tutorial#_prerequisites\r\n\r\nOtherwise **please** fill in the requested details below. \"XXX\" markers should not be present in the final bug report.\r\n\r\nIf you think a GIF of what is happening would be helpful, consider tools like https://www.cockos.com/licecap/, https://github.com/phw/peek or https://www.screentogif.com/ .\r\n-->\r\n\r\n## Environment data\r\n\r\n- VS Code version: 1.26.1\r\n- Extension version (available under the Extensions sidebar): 2018.7.1\r\n- OS and version: Windows 10.0.17134.228 x64\r\n- Python version (& distribution if applicable, e.g. Anaconda): CPython 3.7.0 x64\r\n- Type of virtual environment used (N/A | venv | virtualenv | conda | ...): virtualenv\r\n\r\n## Actual behavior\r\n\r\nWhen `python.pythonPath` includes `${workspaceFolder}`, tasks that use `${config:python.pythonPath}` fail to start:\r\n\r\n```\r\n> Executing task: ${workspaceFolder}\\venv\\Scripts\\python.exe setup.py build_ext --inplace <\r\n\r\nThe system cannot find the path specified.\r\nThe terminal process terminated with exit code: 1\r\n\r\nTerminal will be reused by tasks, press any key to close it.\r\n```\r\n\r\n## Expected  behavior\r\n\r\nThe tasks should start correctly. It's quite useful to use `${config:python.pythonPath}` in your tasks so as to use the Python version used by vscode-python to run the tasks.\r\n\r\n## Steps to reproduce:\r\n1. Create a virtualenv under your workspace: `virtualenv venv`\r\n2. Select it as the Python interpreter of VS Code using the status bar. (`python.pythonPath` should be set to a path using `${workspaceFolder}`).\r\n3. Create a task that uses `${config:python.pythonPath}` to run anything you want, and try to run it.\r\n\r\n## Logs\r\nNothing relevant under default log level.\n\n_Copied from original issue: Microsoft/vscode-python#2459_"},"comment":{"url":"https://api.github.com/repos/Microsoft/vscode/issues/comments/417343185","html_url":"https://github.com/Microsoft/vscode/issues/57551#issuecomment-417343185","issue_url":"https://api.github.com/repos/Microsoft/vscode/issues/57551","id":417343185,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNzM0MzE4NQ==","user":{"login":"segevfiner","id":24731903,"node_id":"MDQ6VXNlcjI0NzMxOTAz","avatar_url":"https://avatars0.githubusercontent.com/u/24731903?v=4","gravatar_id":"","url":"https://api.github.com/users/segevfiner","html_url":"https://github.com/segevfiner","followers_url":"https://api.github.com/users/segevfiner/followers","following_url":"https://api.github.com/users/segevfiner/following{/other_user}","gists_url":"https://api.github.com/users/segevfiner/gists{/gist_id}","starred_url":"https://api.github.com/users/segevfiner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/segevfiner/subscriptions","organizations_url":"https://api.github.com/users/segevfiner/orgs","repos_url":"https://api.github.com/users/segevfiner/repos","events_url":"https://api.github.com/users/segevfiner/events{/privacy}","received_events_url":"https://api.github.com/users/segevfiner/received_events","type":"User","site_admin":false},"created_at":"2018-08-30T14:38:21Z","updated_at":"2018-08-30T14:38:21Z","author_association":"NONE","body":"The `python.pythonPath` variable was generated by the extension after selecting an interpreter, and it was generated including `${workspaceFolder}`, rather than being directly specified by the user.\r\n\r\nBeing able to create tasks that use the workspace interpreter is needed to get development tasks that use packages installed in a virtualenv working correctly, without hardcoding an absolute path to Python which cannot be shared. You often install development tools for the project in a virtualenv rather than globally, and you likely want to define `setup.py` tasks too.\r\n\r\nThis use case is even mentioned in the documentation: [Tasks in Visual Studio Code - Variable Substitution](https://code.visualstudio.com/docs/editor/tasks#_variable-substitution)! Which is where I got the idea from, and than got suprised when it didn't work.\r\n\r\nIt's also possible to support this using a custom task type (Should it be like shell or like process... That distinction is kinda annoying for task types like this), a task type can even activate the virtualenv, so you will be able to use it to run shell scripts that use Python too (If you make sure it can launch arbitary commands and not only Python scripts).\r\n\r\nAnother option is a custom variable expansion like `${pythonPath}`, instead of the generic `${config:*}`, but I don't think there is an extension API for that.\r\n\r\nYet another option is to implement something like `${configExpanded:*}`, that's not exactly pretty though..."}}
{"actor":{"display_login":"segevfiner"}}