Skip to content

Conversation

@ChrisPenner
Copy link
Member

@ChrisPenner ChrisPenner commented Aug 4, 2025

Overview

There's currently no good way to install a local project as a lib in another local project.

See this Discord conversation

And provides a better workflow for: #5099

Implementation notes

  • Adds new command lib.install.local
  • The new command is effectively a branch.squash but from a different local project into the current lib.
  • Slight alteration to the success message from: I installed foo as bar. -> I installed foo into lib.bar; IMO it's a little clearer where to look for things after they're installed, but happy to change it if others feel differently.

Interesting/controversial decisions

The controversial thing I could think of is if we just want to do something better, but that's a big design space and I think it's worth having this very practical fix in the meantime :)

Also, I didn't add any sort of checks for any existing lib that may be overwritten by a lib.install.local, I wanted it to be low friction when iterating on local deps a lot, and figure the user can always just undo if needed.

Test coverage

Added transcripts

Loose ends

I'd love to have some sort of local sym-link support or something, but that's a bigger separate discussion.

@ChrisPenner ChrisPenner requested a review from ceedubs August 4, 2025 18:41
@aryairani
Copy link
Contributor

Yeah as soon as we run out of things to do that feel more urgent we can definitely plan out the nicer version.

@aryairani aryairani merged commit ed459f8 into trunk Aug 4, 2025
31 checks passed
@aryairani aryairani deleted the cp/add-install-local branch August 4, 2025 21:36
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