Nixpkgs 23.05 manual | Nix & NixOS says
A dependency is said to be propagated when some of its other-transitive (non-immediate) downstream dependencies also need it as an immediate dependency
What do “downstream” and “upstream” dependencies mean?
What are “non-immediate” and “immediate” dependencies?
Is the concept of a dependency propagating about the dependent relationship between the dependencies of a package?
Could you explain using an example or diagram?