uranusjr commented on a change in pull request #17927:
URL: https://github.com/apache/airflow/pull/17927#discussion_r723764445



##########
File path: docs/apache-airflow/concepts/tasks.rst
##########
@@ -36,16 +36,30 @@ Relationships
 
 The key part of using Tasks is defining how they relate to each other - their 
*dependencies*, or as we say in Airflow, their *upstream* and *downstream* 
tasks. You declare your Tasks first, and then you declare their dependencies 
second.
 
-There are two ways of declaring dependencies - using the ``>>`` and ``<<`` 
(bitshift) operators::
+There are three ways of declaring dependencies:
+
+Option 1: using the ``>>`` and ``<<`` (bitshift) operators::
 
     first_task >> second_task >> [third_task, fourth_task]
 
-Or the more explicit ``set_upstream`` and ``set_downstream`` methods::
+Option 2: The more explicit ``set_upstream`` and ``set_downstream`` methods::
 
     first_task.set_downstream(second_task)
     third_task.set_upstream(second_task)
 
-These both do exactly the same thing, but in general we recommend you use the 
bitshift operators, as they are easier to read in most cases.
+Option 3: The @task decorator provided by TaskFlow API, see :ref:`TaskFlow 
<concepts:taskflow>`::
+
+    @task
+    def second_task(some_parameter):
+        ...
+    @task
+    def first_task():
+        ...

Review comment:
       ```suggestion
       @task
       def second_task(some_parameter):
           ...
   
       @task
       def first_task():
           ...
   ```
   
   (I hope the linter won't complain this needs two empty lines.)




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@airflow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to