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

Roll this into the main repo? #108

Open
trusktr opened this issue Jun 18, 2020 · 6 comments
Open

Roll this into the main repo? #108

trusktr opened this issue Jun 18, 2020 · 6 comments

Comments

@trusktr
Copy link
Member

trusktr commented Jun 18, 2020

Would it be worth sticking this in the packages folder of the main repo, so it is easier to modify at the same time as other files in the main repo? F.e. updating CLI as well as docs at the same time and making one PR instead of two.

@anikethsaha
Copy link
Member

did you mean as a monorepo ?

@trusktr
Copy link
Member Author

trusktr commented Jun 18, 2020

Yeah, like with docsify-server-render

@anikethsaha
Copy link
Member

Actually I don't really prefer monorepo. It's just because the tools are not so good enough to solve most of the issues.
F.e releases, with monorepo, doing a release, and generating a changelog was never a comfortable process for me.

Though I don't mind moving, we may need to change the release script as well.

@trusktr
Copy link
Member Author

trusktr commented Jun 18, 2020

Another option is an "umbrella repo" as I like to call it: we can make the packages be git submodules. Then they have their own workflow, but the umbrella repo can test them in unison.

What issues did you have?

@trusktr
Copy link
Member Author

trusktr commented Jun 18, 2020

I've been using th umbrella approach.

For Example: http://guthub.com/lume/lume.

See in the packages folder. This repo has its own tests.yml file to test all the sub repos at once and working together (https://github.com/lume/lume/blob/develop/.github/workflows/tests.yml) and see the test script in package.json.

Then also click into the sub modules, and you'll see they have their own tests too (f.e. https://github.com/lume/element-behaviors/blob/master/.github/workflows/tests.yml) and see that repo's test script in package.json.

This has a nice advantage: with an umbrella repo (not a monorepo) you get

  • to track the version of all projects in the state that they all work together (difficult to do with individual repos)
  • test everything all at once
  • Plus! Because each package is its own repo, you can still clone it and work with it like you would any other repo, it is fully independent.
  • Furthermore, because each package is also an independent repo, it can be installed from git (and any other benefits of independent repos)

@trusktr
Copy link
Member Author

trusktr commented Jun 18, 2020

Though don't mind moving, we may need to change the release script as wel.

Yeah, it'll involve some changes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants