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

Document how to think about Rproj files and related workflows in Positron #34

Merged
merged 22 commits into from
Jan 22, 2025

Conversation

jennybc
Copy link
Member

@jennybc jennybc commented Jan 16, 2025

This topic has been in our sights re: helping folks map their RStudio mindset and workflows onto Positron and it's on our list of the top irritating things to fix/address before release.

I've initiated a new section for guides where we can gradually add more articles re: migration.

Existing mega-issue on migration topics we'd like to address:

posit-dev/positron#4157

@jennybc jennybc requested a review from juliasilge January 16, 2025 00:31
Copy link

netlify bot commented Jan 16, 2025

Deploy Preview for positron-posit-co ready!

Name Link
🔨 Latest commit 0c6124e
🔍 Latest deploy log https://app.netlify.com/sites/positron-posit-co/deploys/67906631e2853a0008e63e4e
😎 Deploy Preview https://deploy-preview-34--positron-posit-co.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
@jennybc
Copy link
Member Author

jennybc commented Jan 16, 2025

@DavisVaughan @gadenbuie @hadley and any other interested parties. Here's a rough start on some docs around coping with the lack of an .Rproj equivalent in Positron. Would love to get feedback and ideas.

@jennybc
Copy link
Member Author

jennybc commented Jan 16, 2025

Also paging @jthomasmock

rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
Copy link
Contributor

@gadenbuie gadenbuie left a comment

Choose a reason for hiding this comment

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

I think this is great! I've focused on the big stuff (although I could make small copy-edit suggestions too if you'd like).

The content and flow are great. When you're ready, a few choice images will make a big impact, both to reinforce the text and to visually break up the text.

(Side note: I prefer your original wording for all of the places flagged by the vale contractions rules.)

rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
@jennybc
Copy link
Member Author

jennybc commented Jan 16, 2025

Thanks @gadenbuie that's exactly the kind of feedback I am looking for. Yeah I think I started strong with a vision and it slowly morphed into just logging information I know we need to share as my enthusiasm waned.

@jennybc jennybc force-pushed the project-manager-and-raycast branch from e851bfc to 277089f Compare January 16, 2025 18:21
rstudio-rproj-file.qmd Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Show resolved Hide resolved
rstudio-rproj-file.qmd Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
@jennybc
Copy link
Member Author

jennybc commented Jan 17, 2025

OK interested people, I consider this PR ready to go.

* R package: Presence of a `DESCRIPTION` file.
* renv project: Presence of an `renv.lock` file.
* Quarto project: Presence of a `_quarto.yml` file.

Copy link
Contributor

Choose a reason for hiding this comment

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

Is it worth including .here empty file? I worry that folks might miss the one-off sentence about .here later on. Also see comment above re "advertises" sentence.


## Explicit project-hood

Most data science project folders advertise their project-hood in one or more ways, such as:
Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe reframe as "advertise their project-hood and/or project root in..." to let us include .here?

Copy link
Member Author

Choose a reason for hiding this comment

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

My feeling about this, which also encompasses your next comment, is that I'm trying to walk this line: I really want this article to be mostly about project launching.

But I couldn't pass up the chance to give a second concrete example of a gesture that absolutely relies on the notion of a project. I also want to combat some FUD out there around Positron not playing nicely with here.

So I'm pretty satisfied with the current coverage (or lack thereof) of here and .here.

Copy link
Contributor

Choose a reason for hiding this comment

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

I can live with that 🫡

rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
Co-authored-by: Garrick Aden-Buie <[email protected]>
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
In RStudio, you can designate the folder for a particular project (lowercase "p") as an [RStudio Project](https://docs.posit.co/ide/user/ide/guide/code/projects.html) (uppercase "P").
Concretely, this means that RStudio places a special file in that folder, where it stores Project-specific settings.
This file is usually named after the Project and has the `.Rproj` extension, so we're going to refer to them as Rproj files here.
For example, the source of the dplyr R package is kept in a folder named `dplyr` and, inside of that, is the `dplyr.Rproj` file.
Copy link

Choose a reason for hiding this comment

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

IMO this feels like a natural place to say: "That's not the case for Positron"

Copy link
Member Author

Choose a reason for hiding this comment

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

I've done some rewording/rearranging.

Then a hotkey can be associated with the intention "hey, I want to launch an RStudio Project" and, after typing just enough characters to disambiguate the target, a new RStudio is instance is launched.

So, the Rproj file has become load-bearing and plays a key role in some workflows that go beyond its original purpose of storing metadata for the RStudio IDE.
This begs the question: what is the equivalent of the Rproj file in Positron?
Copy link

Choose a reason for hiding this comment

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

I think you take a little bit too long to get to this point — something alluding to this needs to go in the very first paragraph.

Copy link
Member Author

Choose a reason for hiding this comment

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

I've done some rewording/rearranging.


Most data science project folders advertise their project-hood in one or more ways, such as:

* RStudio Project: Presence of an Rproj file.
Copy link

Choose a reason for hiding this comment

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

I like this summary. Is it worth also mentioning .here here?

Copy link
Member Author

@jennybc jennybc Jan 22, 2025

Choose a reason for hiding this comment

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

@jthomasmock and I discussed this above: #34 (comment)

I don't really want to mention .here at that point because this really isn't about here/rprojroot, I don't think many people use .here, and .here doesn't solve the project launch problem. I do mention it a bit further down.

<!-- vale Posit.Headings = YES -->

<!-- vale Posit.Contractions = NO -->
The concept in Positron that's most analogous to an RStudio Project is a **workspace** and this is inherited directly (and intentionally) from VS Code.
Copy link

Choose a reason for hiding this comment

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

The folder drop down menu at the top-right talks about projects, not workspaces.

And in general, I'm confused by the difference between projects and workspaces in Positron. Are they two words for the same thing?

Copy link
Member Author

Choose a reason for hiding this comment

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

I'm about to push some changes that touch on this and hopefully reduce confusion within the context of this guide.

But we also have an issue open about tackling the confusion more generally: posit-dev/positron#4787

rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
rstudio-rproj-file.qmd Outdated Show resolved Hide resolved
@jennybc jennybc merged commit cc3af68 into main Jan 22, 2025
5 checks passed
@jennybc jennybc deleted the project-manager-and-raycast branch January 22, 2025 03:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants