-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Monorepo initial configuration #416
Conversation
Hey, as discussed in zalmoxisus/redux-devtools-extension/issues/468, I've had a look at these changes. They look good to me, and the tests are passing. A few thoughts:
I think your current approach with
For the release tags, I think the only thing we can do is go to the highest version. So either we go to the 3.x version in For publishing, we should be able to use Lerna's publish flow. That part is usually pretty straightforward. We can use Verdaccio as a local NPM registry to safely test publishing. I found this very helpful last time I worked on a monorepo.
Agreed, let's wait to hoist the
OK, I can add try moving some more packages when I have time and make a PR to this branch. |
@rufusraghunath thanks for helping with it!
I guess that will work only if we have all dependences in the root package and not different versions, otherwise we need to run it from inside the package. UPDATE: I see there's also
I think we could go for
Thanks for the hint. Definitely that would be useful at least for testing first release.
I'm still thinking on an option to move all the contribution history here. The problem is that packages commits conflict with the current repository, and after solving conflicts we're losing the contribution. Might try to make a script to override the history so it will look like everything was in I think it's good to merge this and have separate PR for every package. In case others want to help too, the most needed help for now would be with upgrading dependences (as most of packages weren't changed for more than 2 years) and adding tests. Also helping with docs is always appreciated. For now we have docs only for |
Won't this block other releases until all the monorepo stuff is done? At least until we have the publishing part sorted?
I think this works even if you have separate |
@rufusraghunath it'll block other releases if we intend to have the same version for every package on publishing, but I changed |
Merging this will let us move forward here instead of having changes for current packages outside (like in zalmoxisus/redux-devtools-instrument#24). Some packages like The plan is to release version I'll move the list in #412 and we can keep track of what was moved. |
If you'll have some time later, that would be a great contribution, moving tests to jest. I already moved to jest two years ago (when jest suddenly turned to be the most popular) for |
Sure. It probably makes sense to wait until all the packages are moved, though, because it sounds like a lot of them are still being rewritten. Apart from that, I'm not sure how helpful I can be. You asked for support with testing, but I don't really have much context on this project, so it would be hard for me to write tests. I'm happy to help with the Jest migration later, though. |
Thanks, also for the feedback here! |
I made a minimal implementation for the monorepo with lerna and using yarn workspaces, added scripts to run linting and tests inside packages, and for publishing. Probably would be great to have the same linting rules and dev dependences among packages, but let's keep it after moving them all.
The plan is to move packages gradually. For now we have the main part:
redux-devtools
(from current repo)redux-devtools-instrument
EDIT: Moved the list of other packages to #412, to keep the track there.