Como faço para herdar corretamente de uma superclasse que tem um método __new__?

Vamos supor que temos uma classe 'Pai', que por alguma razão tem__new__ definida e uma classe 'Criança' que herda dela. (No meu caso eu estou tentando herdar de uma classe de terceiros que não posso modificar)

class Parent:
    def __new__(cls, arg):
        # ... something important is done here with arg

Minha tentativa foi:

class Child(Parent):
    def __init__(self, myArg, argForSuperclass):
         Parent.__new__(argForSuperclass)
         self.field = myArg

Mas enquanto

p = Parent("argForSuperclass")

funciona como esperado

c = Child("myArg", "argForSuperclass")

falha, porque 'Child' tenta chamar o__new__ método que herda de 'pai' em vez de seu próprio__init__ método.

O que eu tenho que mudar em 'Child' para obter o comportamento esperado?

questionAnswers(3)

yourAnswerToTheQuestion