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

Compatibility with Rtools 3.5 #2636

merged 1 commit into from Apr 16, 2018

Compatibility with Rtools 3.5 #2636

merged 1 commit into from Apr 16, 2018


Copy link

NOTE: This PR should not be merged as it's just a starting point for testing. I don't currently have a working Windows dev setup for RStudio (my VM got borked a few weeks back) so hope that someone who does can validate that these changes are correct and complete).

RTools is doing a minor update to v3.5 as part of the upcoming R 3.5 release. According to Jeroen:

The toolchain is unchanged, but I updated the build utilities (make,
sh, tar, etc) and refactored the installer. The scripts are now
available at:

RStudio needs to have knowledge of various versions of Rtools for 2 reasons:

  1. When we scan the registry for installed versions of Rtools we need to know which versions of R they are compatible with as well as what directories to add to the PATH as well as what directories should be made available to libclang for code completion.

  2. When we prompt for the installation of Rtools we need to know which version to suggest based on the current version of R as well as it's URL.

As you can see from this change based on Jeroen's description of Rtools 3.5 being just an update to embedded tools we basically treat Rtools 3.4 and 3.5 exactly the same. We should test to ensure that this is in fact the case.

Note that another part of this change is asserting that Rtools 3.4 will work for versions of R >= 3.5. Current installed versions of the IDE contain the assertion that Rtools 3.4 only works up to R 3.4, which means that anyone running R 3.5 pre-releases (or the final release later this month) will not be able to use Rtools with RStudio! This implies that we need this change to be backported to the public release as soon as we've validated it.

So the remaining work here is to validate that this change:

  1. Successfully identifies and uses Rtools 3.5 when it's available (this applies to both package building and use of libclang autocomplete and diagnostics)

  2. Allows the use of Rtools 3.4 for R version 3.5 (to test this you need to make sure that Rtools 3.5 is NOT installed)

  3. Prompts for and successfully installs Rtools 3.5 when no version of Rtools is currently available.

Copy link

In my testing everything works correctly with this change:

  1. When RTools is not installed, RTools 3.5 is installed for R 3.4.
  2. When RTools is not installed, RTools 3.5 is installed for R 3.5 (beta).
  3. When RTools 3.5 is installed, the RTools dependency is satisfied, and no further RTools installation prompts are issued.
  4. When Rtools 3.4 is installed with R 3.5, the RTools dependency is satisfied.
  5. libclang-based autocompletion works with RTools 3.5.
  6. package building works with RTools 3.5.

I'll merge and backport, and we'll have the QA team do some additional testing of these scenarios on the 1.1 branch before releasing.

@jmcphers jmcphers merged commit 61f99b2 into master Apr 16, 2018
Copy link
Member Author

Awesome, thanks! Glad it was that easy :-)

@jjallaire jjallaire deleted the feature/rtools-3.5 branch January 22, 2020 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
None yet

Successfully merging this pull request may close these issues.

None yet

2 participants