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

Better UX for unsupported R versions #1397

Open
jmcphers opened this issue Sep 25, 2023 · 5 comments
Open

Better UX for unsupported R versions #1397

jmcphers opened this issue Sep 25, 2023 · 5 comments
Assignees
Labels

Comments

@jmcphers
Copy link
Collaborator

jmcphers commented Sep 25, 2023

Positron Version:

Positron Version: 2023.09.0 (Universal) build 3750
Code - OSS Version: 1.82.0
Commit: 02bfc1e31b0bf6ed389ece3f50343eebda448718
Date: 2023-09-24T21:13:03.474Z
Electron: 25.8.0
ElectronBuildId: undefined
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Darwin arm64 22.6.0

Steps to reproduce the issue:

Install R 4.0.3 on your machine. Open Positron, start R, and attempt to produce any plot.

This results in the R kernel crashing with the following error (reported by Ferit):

thread 'ark-r-main-thread' panicked at 'R graphics engine version 12 is not supported by this version of Positron.',
crates/ark/src/plots/graphics_device.rs:514:5
stack backtrace:
[... 60 level backtrace follows ...]

What did you expect to happen?

  • The R kernel should not crash if the graphics engine isn't supported. It should print a warning to the console and continue.
  • Unsupported versions of R should either (a) not be registered at all, or (b) registered but with a user-friendly warning about degraded experience (assuming that, like 4.0.3, basic code execution does work).
@jmcphers jmcphers changed the title Better UX for unsupported versions (Inscrutable error when using older version) Better UX for unsupported R versions (Inscrutable error when using older R version) Sep 25, 2023
@jennybc
Copy link
Member

jennybc commented Sep 25, 2023

Unsupported versions of R should either (a) not be registered at all, or (b) registered but with a user-friendly warning about degraded experience (assuming that, like 4.0.3, basic code execution does work).

What are you thinking re: "unsupported versions of R"? As in, which versions are (not) supported?

It seems relevant to consider the tidyverse support policy, which is to support the current version (4.3 today), the devel version, and four previous versions of R (4.2, 4.1, 4.0, 3.6 today).

https://www.tidyverse.org/blog/2019/04/r-version-support/

Maybe the Positron R extension would adopt some similar stance?

@jmcphers
Copy link
Collaborator Author

I think that's a good starting place, and suggests that maybe in addition to doing better about handling unsupported versions we also may need to support graphics engine 12.

@jmcphers jmcphers added this to the Release Candidate milestone Feb 20, 2024
@jmcphers
Copy link
Collaborator Author

Probably needs to get fixed for RC since we have decided that Positron will only work with relatively recent versions of R, plus on Windows there are likely to be a number of old (and therefore incompatible) R installations.

There's also been some conversations on the Python side about what to do with Python environments that are unusable. We might need some visually congruent way (for all language packs) to help users see environments that were discovered but can't be used for one reason or another. It is probably going to be vital for troubleshooting to be able to distinguish between "didn't find it" and "found it but couldn't use it".

@wesm wesm added the lang: r label Feb 29, 2024
@jennybc
Copy link
Member

jennybc commented Mar 30, 2024

Related to #2440. I think I'll use #2440 to do as it says: hide unsupported / otherwise-invalid R version from the selection drop-down. I'll probably lay some groundwork for this issue, which will be about conveying some actionable information to the user (e.g., "unsupported R version", "non-orthogonal and non-current R version).

@jennybc jennybc changed the title Better UX for unsupported R versions (Inscrutable error when using older R version) Better UX for unsupported R versions Apr 16, 2024
@lionel-
Copy link
Contributor

lionel- commented Jul 2, 2024

User visible reporting of discarded/failed installations would have helped here: #3791

This could take the form of grayed out entries in the drop down menu with a hover explaining why the install is disabled, possibly with a link to more information (e.g. about orthogonality of R installs and how to fix with rig).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants