CarterFendley / fast-dep

MIT License
1 stars 1 forks source link

Document and standardize the directionality of the graph. #3

Open CarterFendley opened 3 months ago

CarterFendley commented 3 months ago

This issue is for tracking the directionality implications of different terminology. I switched up back and forth a little bit when creating this project on terms and even graph structure.

CarterFendley commented 3 months ago

First, the use of <terminal> when building initial ModuleSpec objects here implies that the direction is pointed upwards towards dependent files. For example if you have the following:

# File: file_one.py
import file_two

Then using <terminal> for file_one.py, as would be the case if you pointed the GraphBuilder at the source code of file_one.py, implies the DAG might look like the following.

file_one.py <-- file_two.py

This style is makes the dependencies in the DAG represent "is used by" relationship not a "dependency" relationship. My bias at the moment is to remove <terminal> in favor of another term. NOTE: Should solve #4 at same time if this option is taken.

SchwartzCode commented 3 months ago

root feels like the proper name?