When we talk about copyrights, there's always an argument made in their favour which is basically 'we have to engineer incentives in order to get people to make good new stuff'. Why does that apply to copyright law but not to regulating tech monopolies like Youtube?
I would like a tool which allows me to examine Git histories of multiple files in a repo, with some notion of 'distance' between files. So if source file A includes classes or functions which are defined in source file B, then A and B are distance 1 apart (neighbors). B's other neighbors are distance 2 from A and so on.
As an example, I'm looking into a bug which I know is related to file X. I would like to see the most recent change which affects files within distance 5 from X. Or, of all the commits between point 1 and point 2 in the git history, I would like to see the ones which changed files the closest to X.
In another context, for every commit in a release, I want to see how big the n-neighbourhood of the commit is for different values of n, in the same way I can currently see how many files were changed by that commit (the 0-neighbourhood). In all these cases I would want to look at the path of connections between files and what symbols it is based on.
In an ideal world, the 'change distance' and 'change neighborhood' concepts would actually reflect the semantics of what was changed and how it could affect other classes etc. So a whitespace change would have empty neighborhoods since the code in no other file could have been affected. But even with a naive interpretation that any change to a file affects all the linked files would be very useful.