I usually try to make sure my object instances comply with the Liskov Substitution Principle, but I've always wondered is do people think LSP should apply to constructors too?
I've tried googling for this but I haven't been able to find any strong opinions either way.
I should note that most of my coding is in Ruby, but I sometimes find that my subclass constructors are slightly different from the parent class. They take the same base set of arguments, and often extra args. Sometimes this also happens with other class methods.
In the back of my head this has always felt like an LSP violation, but I wanted to see if anyone else feels this way too.