Maik Wild created AIRFLOW-6237:
----------------------------------

             Summary: apply_defaults decorator breaks inspect.getfullargspec
                 Key: AIRFLOW-6237
                 URL: https://issues.apache.org/jira/browse/AIRFLOW-6237
             Project: Apache Airflow
          Issue Type: Bug
          Components: operators, utils
    Affects Versions: 1.10.4
         Environment: Python 3.6.6 
Debian_9
            Reporter: Maik Wild


When using the 
[apply_defaults|https://github.com/apache/airflow/blob/master/airflow/utils/decorators.py#L31]
 
[inspect.getfullargspec|https://docs.python.org/3/library/inspect.html#inspect.getfullargspec]
 will not return any arguments . When I remove the decorator getfullargspec 
works as expected.

{code:python}
>>> import inspect
>>> from airflow.operators.dagrun_operator import TriggerDagRunOperator
>>> inspect.getfullargspec(TriggerDagRunOperator)
FullArgSpec(args=[], varargs='args', varkw='kwargs', defaults=None, 
kwonlyargs=[], kwonlydefaults=None, annotations={})
>>> inspect.signature(TriggerDagRunOperator)
<Signature (trigger_dag_id, python_callable=None, execution_date=None, *args, 
**kwargs)>
{code}

When i remove the decorator from __init__:


{code:python}
>>> import inspect
>>> from airflow.operators.dagrun_operator import TriggerDagRunOperator
>>> inspect.signature(TriggerDagRunOperator)
FullArgSpec(args=['self', 'trigger_dag_id', 'python_callable', 
'execution_date'], varargs='args', varkw='kwargs', defaults=(None, None), 
kwonlyargs=[], kwonlydefaults=None, annotations={})
<Signature (trigger_dag_id, python_callable=None, execution_date=None, *args, 
**kwargs)>
>>> inspect.getfullargspec(TriggerDagRunOperator)
{code}




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to