Protocols with more than one method should have all of them optional so that you can implement the ones you want.
Protocols with ONE method will stay required: if you implement the protocol, it's because you want to implement the method, right?