middleware icon indicating copy to clipboard operation
middleware copied to clipboard

Meta: monorepo maintenance

Open BarryThePenguin opened this issue 10 months ago • 11 comments

Hi 👋🏻 would the Hono devs be interested in reviewing contributions to the configuration and maintenance of the monorepo? Some ideas I have include..

  • [x] #994
  • [x] #999
  • [x] #1003
  • [x] #1007
  • [x] #1020
  • [x] align build/test/prerelease/release scripts in workspaces
  • [x] include @arethetypeswrong/cli in the publish/release process
  • [x] #1090
  • [x] add type checking
  • [x] removing @eslint/eslintrc and the legacy FlatCompat
  • [x] upgrading eslint plugins
  • [x] cleanup migration to typescript-eslint
  • [ ] cleanup duplicate dependencies between workspaces
  • [ ] #628

I'm happy to volunteer, I'll aim to keep changes small and focused. I'm just gauging the interest of others to review the changes, and if these kinds of changes would be useful for the project 👀

BarryThePenguin avatar Mar 01 '25 21:03 BarryThePenguin

Hi @BarryThePenguin !

I am super interested in your proposal! The maintainability will be greatly improved.

All 5 thins you picked up are good to do. Regarding monorepo, we were discussing moving package manager to Bun and using Bun's workspace. https://github.com/honojs/middleware/issues/628

It may be good to start with migration using Bun.

cc: @gunta @nakasyou

yusukebe avatar Mar 02 '25 07:03 yusukebe

That's a good idea! However to use Bun, we need to match all packages with the latest Hono.

nakasyou avatar Mar 02 '25 07:03 nakasyou

However to use Bun, we need to match all packages with the latest Hono.

This will be a pain point. Ideally, all packages should pass the test using the latest version of Hono, but I think that's difficult.

It might be better to continue using yarn. We could use pnpm, but since we don't use it in any of the other projects in honojs, I think it's fine to use yarn.

yusukebe avatar Mar 02 '25 07:03 yusukebe

Ok, I think sticking with yarn for the short term would work best. With a longer term goal of adopting bun, once some of the more pressing maintenance issue have been resolved.

However to use Bun, we need to match all packages with the latest Hono.

I'll keep this in mind 👍🏻

BarryThePenguin avatar Mar 02 '25 11:03 BarryThePenguin

@BarryThePenguin Thanks! Can you proceed with it?

yusukebe avatar Mar 02 '25 21:03 yusukebe

Sure thing 👍🏻 I'll start with #994, then I'll look at what is involved in enabling vitest.workspace.

Please feel free to add/remove/rearrange items in the list above and I can work through them as I have time

BarryThePenguin avatar Mar 02 '25 21:03 BarryThePenguin

@BarryThePenguin Thaaaanks!

yusukebe avatar Mar 02 '25 21:03 yusukebe

Hey, @BarryThePenguin, I was thinking of working on the ESLint part of the repo. If no one else is working on it, I can start creating a PR for it.

MathurAditya724 avatar Mar 03 '25 14:03 MathurAditya724

Hi @MathurAditya724, sounds good! 👍🏻

BarryThePenguin avatar Mar 03 '25 19:03 BarryThePenguin

@MathurAditya724 how did you go with ESLint? I'm getting close to those items on the list, so I plan to take a look soon. Did you have any progress that you're able to contribute? I just wanted to check-in first, no pressure!

BarryThePenguin avatar Mar 20 '25 09:03 BarryThePenguin

Hey sorry for the delay, I will try to finish it today.

MathurAditya724 avatar Mar 20 '25 10:03 MathurAditya724

We got a lot done, so I'm going to close this now. I still plan to look into using bun as the package manager, so I'll keep that issue open. Thanks for the help everyone 👏🏻

BarryThePenguin avatar Jun 20 '25 11:06 BarryThePenguin

I'd like to say thank you for your great job!

nakasyou avatar Jun 20 '25 13:06 nakasyou

@BarryThePenguin thank you for the hard work. Awesome!

yusukebe avatar Jun 21 '25 01:06 yusukebe

Thank you for reviewing the many, many, pull requests 🥳

BarryThePenguin avatar Jun 21 '25 01:06 BarryThePenguin