ULN2003 Issues

These are very widely used as relay, magnet and motor drivers in conjunction with microcontrollers or FPGAs. Unfortunately they are very sensitive to reverse current into their output pins. This can be caused by electrostatic discharge or ringing with stray capacitance in the magnet coils or catch diode charge.
This circumstance can occur when the Vcc supplied to the chip is more than twice the supply voltage to magnet (relay or stepper motor) windings driven by the chip. In this case the capacitance of the winding causes a small amount of charge to flow back into the chip, and which can destroy it.
The only way to protect against this is to place a reverse biased diode between each output pin and the ground pin. It is a pity that such a useful device is not better protected against such conditions.