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

Ac/pm 14415/add vs code extension cli option #468

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

JimmyVo16
Copy link

🎟️ Tracking

https://bitwarden.atlassian.net/browse/PM-14415

📔 Objective

Add a CLI option to install VS code extensions quickly. This uses the VS code executable, so no extra dependencies are needed.

⏰ Reminders before review

  • Contributor guidelines followed
  • All formatters and local linters executed and passed
  • Written new unit and / or integration tests where applicable
  • Protected functional changes with optionality (feature flags)
  • Used internationalization (i18n) for all UI strings
  • CI builds passed
  • Communicated to DevOps any deployment requirements
  • Updated any necessary documentation (Confluence, contributing docs) or informed the documentation
    team

🦮 Reviewer guidelines

  • 👍 (:+1:) or similar for great changes
  • 📝 (:memo:) or ℹ️ (:information_source:) for notes or general info
  • ❓ (:question:) for questions
  • 🤔 (:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed
    issue and could potentially benefit from discussion
  • 🎨 (:art:) for suggestions / improvements
  • ❌ (:x:) or ⚠️ (:warning:) for more significant problems or concerns needing attention
  • 🌱 (:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt
  • ⛏ (:pick:) for minor or nitpick changes

@JimmyVo16 JimmyVo16 requested a review from a team as a code owner November 4, 2024 12:50
@JimmyVo16 JimmyVo16 self-assigned this Nov 4, 2024
@JimmyVo16
Copy link
Author

I know we’re no longer on BEEEP day, but I thought this would be a good opportunity to practice pushing MRs here, lol. I followed this doc and used Vince’s example MR as a guide.
Please let me know if there’s anything I should change. We can also move the feedback to the MR if that’s easier.

@withinfocus
Copy link
Contributor

How can these tool installation commands map to the suggestions above this change? I think it would flow better if a CLI command was tied to that. You could also use the URL handler to launch these in the UI too, but the Marketplace site will also offer that so it may be moot.

@eliykat
Copy link
Member

eliykat commented Nov 5, 2024

Thanks for adding to the documentation @JimmyVo16 !

vscode also supports "recommended extensions" for a workspace - see the current list here. Here's how it looks:

Screenshot 2024-11-05 at 9 50 00 AM

I think adding them in the workspace file would make them more discoverable and easier to add, and then you could mention this "recommended extensions" functionality in this document as well.

This can be done as well as or in addition to the CLI commands, your choice.

@JimmyVo16
Copy link
Author

How can these tool installation commands map to the suggestions above this change? I think it would flow better if a CLI command was tied to that. You could also use the URL handler to launch these in the UI too, but the Marketplace site will also offer that so it may be moot.

I envisioned a use case where a user might want to install all the extensions in one go. Instead of manually clicking through each extension individually, they could simply run this script. Like you mentioned, for cases where someone wants only specific extensions, the current format already accommodates that.

I don't think it's practical to try accounting for more granular cases, like installing half the extensions or specific subsets, because that would introduce significant complexity with the permutations involved.

@JimmyVo16
Copy link
Author

Thanks for adding to the documentation @JimmyVo16 !

vscode also supports "recommended extensions" for a workspace - see the current list here. Here's how it looks:

Screenshot 2024-11-05 at 9 50 00 AM

I think adding them in the workspace file would make them more discoverable and easier to add, and then you could mention this "recommended extensions" functionality in this document as well.

This can be done as well as or in addition to the CLI commands, your choice.

That's a great idea for the future! I believe the current PR brings value as it stands, so we should merge it and potentially revisit this option at a later time.

Copy link
Contributor

@withinfocus withinfocus 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 Thomas has a valid point in just directing this to the recommended extension method, and this is backed up by the VS Code documentation. As-is this would create a second location to maintain the list, and while the recommendations probably should have been updated in the past it's good to have one place for it, now. Any number of things could have additional setup needs or even error out and one sequential script could obscure that feedback, whereas the UI makes that clear visually. The recommendation method also allows the user to pick and choose what they might want, and I would argue that we should just remove this entire list here in favor of that experience.

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.

3 participants