Sending a password at any time for any reason is bad UX.
This applies equally to email and sms text messages. Even if the password is temporary it can lower the credibility of your brand. Building a relationship of trust is one of the most important things we do and emailing passwords always feels wrong.
When sending a reset link it is also important to let the user know that the link itself will expire after a certain period of time (30 minutes - 1 hour). This is okay because most people requesting a password reset are doing so because they are trying to log in right now and having clickable links in email that reset passwords indefinitely is just as bad as sending out temporary passwords.
Finally, make sure the system that sends out the reset email is very reliable and fast. Users don't want to wait around too long for an email telling them how to proceed and may even request multiple resets if the system doesn't perform fast enough. The issue is compounded when the first reset email link arrives after the reset button is pressed a second or third time resulting in a link that no longer works even though it appears to the user it should. Be sure to let the user know when to expect an email as soon as they click the password reset button in order to properly set expectations.