Our org has 3 modules we use for development, and we want to continue making more.
The trouble we've had is finding tooling that supports this sort of development environment.
Consider the following:
ModuleA ModuleB ModuleC
ModuleC depends on ModuleA and ModuleB ModuleB depends on ModuleA
When we make changes to ModuleB, we must manually bump ModuleC's package.json dependency on ModuleB (since it utilizes npm-shrinkwrap)
When we make changes to ModuleA, we don't necessarily have to bump ModuleB's dependency (since we can do semver pattern matching), unless it's a major version change, however, we do have to rebuild ModuleB and bump its version because it consumes ModuleA and provides a distributable. Then, we have to bump the dependencies for ModuleA and ModuleB in ModuleC's package.json.
This all feels incredibly mind-numbing, and further, it's a process that's brittle and feels like it could be automated.
How are other orgs approaching this issue? Is there actually a way to develop modules this way?