Parent class has a property called 'deserialize' that is static and abstract with one argument. Each Child class implemented that method. Now I have a situation that Child class needs more than one argument. When I add options=None to Parent class, children classes complain that they have a different signature(warning). I have to add options=None to each class. That is a refactoring. I want to know if I can omit the warning and continue, or there is a better solution? Or do I have to refactor?
class Serializable:
    __metaclass__ = ABCMeta
    @staticmethod
    @abstractmethod
    def deserialize(json_obj, options=None):
        pass
class ChildWithNoExtraArguments(Serializable):
   # warning is here...
   @staticmethod        
   def deserialize(json_obj):
        # some implementation
class ChildWithExtraArgumnets(Serializable):
    @staticmethod
    def deserialize(json_obj, options):
        # some implementation, I need options
 
     
    