This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch v3-3-test
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/v3-3-test by this push:
     new 05df5501a02 [v3-3-test] Document native template rendering type 
coercion (#34641) (#69152) (#69389)
05df5501a02 is described below

commit 05df5501a028fb14376fc233899eea03309e2522
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Sun Jul 5 15:52:22 2026 +0200

    [v3-3-test] Document native template rendering type coercion (#34641) 
(#69152) (#69389)
    
    (cherry picked from commit b5a60ceae6b6bbe4434782d682aba275d4034e17)
    
    Co-authored-by: Deepak Jain <[email protected]>
---
 airflow-core/docs/core-concepts/operators.rst | 7 +++++++
 airflow-core/docs/core-concepts/params.rst    | 5 +++++
 2 files changed, 12 insertions(+)

diff --git a/airflow-core/docs/core-concepts/operators.rst 
b/airflow-core/docs/core-concepts/operators.rst
index ac460183c2f..6bcf4a3c714 100644
--- a/airflow-core/docs/core-concepts/operators.rst
+++ b/airflow-core/docs/core-concepts/operators.rst
@@ -303,6 +303,13 @@ Alternatively, Jinja can also be instructed to render a 
native Python object. Th
             python_callable=transform,
         )
 
+.. note::
+
+    ``NativeEnvironment`` renders values according to Python literal rules. 
This is useful when a template
+    should produce a list, dict, number, or boolean, but it also means a 
string that looks like a number,
+    such as ``"42"``, can be rendered as the integer ``42``. Keep the default 
string rendering, use a
+    callable template field, or add explicit quoting if the task needs the 
value to stay a string.
+
 
 .. _concepts:reserved-keywords:
 
diff --git a/airflow-core/docs/core-concepts/params.rst 
b/airflow-core/docs/core-concepts/params.rst
index ac5df462fac..2f70611e88c 100644
--- a/airflow-core/docs/core-concepts/params.rst
+++ b/airflow-core/docs/core-concepts/params.rst
@@ -145,6 +145,11 @@ This way, the 
:class:`~airflow.sdk.definitions.param.Param`'s type is respected
         ),
     )
 
+Because ``render_template_as_native_obj=True`` uses Jinja's native rendering, 
values that look like
+Python literals can also be converted. For example, a string value of ``"42"`` 
may be rendered as the
+integer ``42``. Leave native rendering disabled, use a callable template 
field, or quote the value
+explicitly when the task must receive a string.
+
 Another way to access your param is via a task's ``context`` kwarg.
 
 .. code-block::

Reply via email to