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

Proposal: [Discuss] [Core] Remove custom Package manager from osd-pm #294

Open
mihirsoni opened this issue Apr 15, 2021 · 2 comments
Open
Labels
discuss enhancement New feature or request proposal technical debt If not paid, jeapardizes long-term success and maintainability of the repository.

Comments

@mihirsoni
Copy link
Contributor

As of now the Dashboards project entirely depends on custom build logic inside osd-pm The main purpose was to support OSS v/s non OSS development and distribution. This adds up lots of extra overheads over custom build system maintenance.

Describe the solution you'd like
This issue is to provide idea / PoC / designs to use more OSS and community friendly tool such as lerna, yarn workspace Or latest release of Npm workspace.

Note: This issues doesn't intent any immediate changes or ongoing implementation but more on to collect idea and how can we improve overall developer experience with community friendly tooling.

@mihirsoni mihirsoni added enhancement New feature or request discuss labels Apr 15, 2021
@mihirsoni mihirsoni changed the title [Discuss] [Core] Remove custom Package manager from osd-pm Proposal: [Discuss] [Core] Remove custom Package manager from osd-pm Apr 15, 2021
@ahopp
Copy link
Contributor

ahopp commented Mar 3, 2022

@mihirsoni Where are we at with this?

@tmarkley tmarkley added the technical debt If not paid, jeapardizes long-term success and maintainability of the repository. label May 25, 2022
@joshuarrrr
Copy link
Member

It would be helpful to have some sense of our intended direction here, particularly because the osd-pm README contains some text that may be misleading or at odds with our plans.

This issue description is also a bit confusing because osd-pm claims to actually use yarn workspaces under the hood:

For packages that are referenced within the OpenSearch Dashboards repo itself, we are leveraging
Yarn's workspaces feature. This allows yarn to optimize node_modules within

In addition, the README contains lots of information about the other tools suggested here and why this approach was chosen:

## Technical decisions
### Why our own tool?
While exploring the approach to static dependencies we built PoCs using npm 5
(which symlinks packages using [`file:` dependencies][npm5-file]), [Yarn
workspaces][yarn-workspaces], Yarn (using `link:` dependencies), and
[Lerna][lerna].
In the end we decided to build our own tool, based on Yarn, and `link:`
dependencies, and workspaces. This gave us the control we wanted, and it fits
nicely into our context (e.g. where publishing to npm isn't necessarily
something we want to do).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discuss enhancement New feature or request proposal technical debt If not paid, jeapardizes long-term success and maintainability of the repository.
Projects
None yet
Development

No branches or pull requests

4 participants