Is the SRP of SOLID (or any) principle relevant to the grouping of packages?
Specific example question: I am writing multiple different software packages, in different repos, that each do different things. Many of these packages produce something that we want to visualise/plot. Do I bundle plot functionality in each package or do I write a separate package to do the plotting? The S in SOLID (Single Responsibility Principle) would imply "write a plotting package". However, new users contributing to this group of packages would need to make changes across two files in two packages, instead of bundling together their new contribution as a change in one location that bundles plot functionality. Can these trade-offs ever be avoided in the general case?
![Is the SRP of SOLID (or any) principle relevant to the grouping of packages?](https://cdn.sstatic.net/Sites/softwareengineering/Img/apple-touch-icon@2.png?v=1ef7363febba)
Specific example question:
I am writing multiple different software packages, in different repos, that each do different things. Many of these packages produce something that we want to visualise/plot. Do I bundle plot functionality in each package or do I write a separate package to do the plotting?
The S in SOLID (Single Responsibility Principle) would imply "write a plotting package". However, new users contributing to this group of packages would need to make changes across two files in two packages, instead of bundling together their new contribution as a change in one location that bundles plot functionality. Can these trade-offs ever be avoided in the general case?