nushell / nushell/nupm

towards Nupm workspaces

Open
#48 7 comments 0 reactions 1 assignee View on GitHub

@amtoine is already working on this.

Since Dec 11, 2023.

design
Dominant language
Nushell
Stars
335
Forks
24
PR merge metrics
No merged PRs in 30d

Description

i was once again working on NGM and was thinking about a few things related to Nupm 😏

  • installing multiple modules in a single package:
    in https://github.com/nushell/nupm/pull/33, we made it possible to install multiple distinct modules from a single package, e.g. nu-git-manager and nu-git-manager-sugar in NGM. However, after using this feature, it sounds a bit strange... it's a bit like having two separate src/ directories in a single Rust crate 🤔
    i think we should revert that feature and keep it simpler, i.e. a single module per module package, and move towards a "workspace" or "bundle" model
  • dependencies resolution:
    in NGM, i always have to write things like use ../../foo/bar.nu in the modules themselves or use ../src/nu-git-manager/ in the tests, which is not that great 🤔
    i think it would be great to have a nupm run that would resolve the dependencies and do that for the user, e.g. use module/foo/bar.nu and use nu-git-manager respectively: this would only be a trick with NU_LIB_DIRS to expose modules and activate overlays
  • "workspace" or "bundle" support:
    would be cool to have multiple module packages in a repo and a central top-level package.nuon that would define a "workspace" and allow maybe to install everything at once?, e.g. nupm install --workspace
  • rename package.nuon to nupm.nuon

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.