-
Notifications
You must be signed in to change notification settings - Fork 145
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
Suggestion: CITGM for a module dependants #84
Comments
We would definitely use such a tool in Level too (we've had Level/abstract-leveldown#184 open for a while, no time to implement it). |
Maybe the engine of https://github.com/nodejs/citgm could be extended to allow testing git checkouts of modules. cc @nodejs/citgm |
This would be great, and I am sure we would want to integrate that into express. Currently we have some important modules in the core CITGM, but as expressjs/express#3813 shows, it wold be helpful to go further into our dependency tree. Further than the core CITGM is meant to do IMO. |
I think leveraging CITGM so that maintainers can re-use it is a great idea. |
So here's a proposal on how CITGM for package ecosystems can be implemented. Basically, the idea is to leverage the existing CI setup, in a similar way that various dependency update management tools do. The implementation could be a bot, which:
Am I missing something necessary/obvious? I think the MVP/PoC for the above would be:
The rest can be build on top of it. This does differ from the existing approaches in that it does not try to clone/install all of the dependents in a single big task, which does have its pros and cons. This does not provide a way to run everything locally, but that does not mean it can't be achieved, just that I personally would find less value in my laptop fans spinning, when I can leverage the existing infra. 1 GH branch restrictions only apply to new commits, but not to branch creation, IIRC - which may not be an issue for people with commit access. |
Great work and good idea! |
@BethGriggs FYI as I know you've been thinking about this as well. |
There's a PR over in CITGM at the moment to extend it to test module dependencies -nodejs/citgm#765 |
Thanks! I will definitely take a look! |
|
Developing a library at scale is hard, and as a maintainer the goal is to avoid unwanted breakage and regression. Especially when doing breaking changes, it's of critical importance to validate the impact of those changes, more or less how we do it in core.
In pino, we have done https://github.com/pinojs/pino-integration. In Fastify, we have done https://github.com/fastify/fastify-citgm. I think there is a space to build a generic and supported tool for testing dependant projects, so that we avoid breakages when doing releases.
The text was updated successfully, but these errors were encountered: