-
Notifications
You must be signed in to change notification settings - Fork 129
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
R executable selection #1143
R executable selection #1143
Conversation
I'll have access to windows later today, so I should be able to work on the windows side to get to feature parity |
An issue I've found that on windows side, if an R executable isn't openable it causes an annoying popup when loading the extension. It doesn't look like fs.access or fs.stat checks for this on windows |
- Use R --version for details - Only create executables when calling refreshPaths()
Prevent outputting malformed tooltips when executable arch or version is undefined
Executables access is now handled purely through the RExecutableManager, rather than any member classes
- Revert language service changes - need to look at how python does it - Recommend binaries that are in the workspace or are specified by a renv lockfile - Fix possibly undefined issues - Normalise path for windows - Update vscode types and engine to 1.65 - Async init method for the manager
Use an enum to restrict the input for the setting: r.rmarkdown.codeLensCommands
Enum change was pushed to package.json for some reason
QP items now grouped into - recommended - virtual - global - Changed various functions into arrow functions to pass `'this'
- rpath is machine-overridable - task rpath dependent on active workspace executable - quickpick shows arrow for active path
Error is triggered when selecting an R installation that cannot be opened
- Create R terminal now injects conda env values where appropriate - Conda env values are saved in /tmp/ for injection into processes
Minor stylistic changes, no behaviour change
Coming back to this PR, I think it's probably okay if support for "all" virtual environments is scaled back to just conda and renv? |
I think it's almost the same as conda, but also mamba? |
Add tests for pathStorage, make rPath === activeExecPath again, linter
terminals once again respect activeExecutable
- Add documentation for various classes - Ensure that superfluous `await`s are removed - Rename some types for clarity
I'm reasonably happy with the executable UI & the executable locator services. main issue for this PR right now are conda activation (seems a little fragile in terms of how I'm handling it) and also feature parity on windows devices |
I'm waiting eagerly for the R executable selection with conda/mamba support. Any chance to have this PR finalized & merged in the near future? |
Hi @floriandeboissieu, thank you for your interest in the PR. Unfortunately this year has been pretty chock-a-block and I haven't had much time to do open source projects unless they are directly related to work. Having said that, I will have plenty of free time over the Christmas break, so I'm hoping to jump back into things then. |
Thank you all for the feedback. I am closing this PR in favour of work on a new branch (#1473). |
WIP R executable selection
Major contribution: extended R executable selection. Related issues #696 #1130 #1148 #747
This PR may need to be split into two parts: (1) R executable selection and (2) improved multi-root support
Screenshots
TODO
R Executable
Multi-root
Multi-root executable support potentially requires modification of many vscode-R features
Other features should probably be deferred to another PR