Good practise about returning values

Hi everyone, general question about good practises.
I've noticed that in all of the OpenZeppelin contracts there's always a return value (even if it's just a return true at the end of the functions).
Why is that? Is this a good practise for security purposes?
Thanks.

This is only the case for ERC20, and perhaps other EIPs.

We only do this because it's required by the specifications.

Currently it is not really seen as necessary to always return a value. It may have been at the time ERC20 was created (in the early years of Ethereum) due to limitations of the EVM that no longer apply.