Here we use Passé composé because the use of the negation ne ... pas insists on the fact that the action stopped happening at the specific time mentioned (since/for) in the past.
If we used Présent indicatif here, it would make it sound like the action "keeps on stopping" during the given length of time.
To say that a (recurring) action in the past has now stopped happening with depuis, you can also use Présent indicatif with ne ... plus (not any more) instead of ne ... pas:
Tu ne bois plus d'alcool depuis cinq ans.You haven't drunk alcohol for five years.What is the difference between these two?