[ 
https://issues.apache.org/jira/browse/SPARK-42235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Donggu Kang updated SPARK-42235:
--------------------------------
    Description: 
The typing stub `site-packages/pyspark/sql/pandas/functions.pyi` has a list of 
possible signatures of `pandas_udf`. It is missing a case
{code:java}
// code placeholder
{code}
{noformat}
// code placeholder
{noformat}
 


```
import pyspark.sql.functions as F
 # PySpark3's typing stub error
@F.pandas_udf(
returnType=LongType()
)
def my_udf(dummy_col: pd.Series) -> pd.Series:
...
```
 
The stub defined `pandas_udf(f, returnType, functionType)` but not 
`pandas_udf(f, returnType)`. The official documentation recommends using a 
return type hint instead of `returnType`.
 
```py
 # defined
@overload def pandas_udf( f: PandasScalarToScalarFunction, returnType: 
Union[AtomicDataTypeOrString, ArrayType], functionType: PandasScalarUDFType, ) 
-> UserDefinedFunctionLike: ...
 
 # not defined
@overload def pandas_udf( f: PandasScalarToScalarFunction, returnType: 
Union[AtomicDataTypeOrString, ArrayType]) -> UserDefinedFunctionLike: ...
```
 
 

  was:
The typing stub `site-packages/pyspark/sql/pandas/functions.pyi` has a list of 
possible signatures of `pandas_udf`. It is missing a case
 
```
import pyspark.sql.functions as F

# PySpark3's typing stub error
@F.pandas_udf(
returnType=LongType()
)
def my_udf(dummy_col: pd.Series) -> pd.Series:
...
```
 
The stub defined `pandas_udf(f, returnType, functionType)` but not 
`pandas_udf(f, returnType)`. The official documentation recommends using a 
return type hint instead of `returnType`.
 
```py
# defined
@overload def pandas_udf( f: PandasScalarToScalarFunction, returnType: 
Union[AtomicDataTypeOrString, ArrayType], functionType: PandasScalarUDFType, ) 
-> UserDefinedFunctionLike: ...
 
# not defined
@overload def pandas_udf( f: PandasScalarToScalarFunction, returnType: 
Union[AtomicDataTypeOrString, ArrayType]) -> UserDefinedFunctionLike: ...
```
 
 


> Missing typing for pandas_udf
> -----------------------------
>
>                 Key: SPARK-42235
>                 URL: https://issues.apache.org/jira/browse/SPARK-42235
>             Project: Spark
>          Issue Type: Bug
>          Components: PySpark
>    Affects Versions: 3.3.0
>            Reporter: Donggu Kang
>            Priority: Minor
>
> The typing stub `site-packages/pyspark/sql/pandas/functions.pyi` has a list 
> of possible signatures of `pandas_udf`. It is missing a case
> {code:java}
> // code placeholder
> {code}
> {noformat}
> // code placeholder
> {noformat}
>  
> ```
> import pyspark.sql.functions as F
>  # PySpark3's typing stub error
> @F.pandas_udf(
> returnType=LongType()
> )
> def my_udf(dummy_col: pd.Series) -> pd.Series:
> ...
> ```
>  
> The stub defined `pandas_udf(f, returnType, functionType)` but not 
> `pandas_udf(f, returnType)`. The official documentation recommends using a 
> return type hint instead of `returnType`.
>  
> ```py
>  # defined
> @overload def pandas_udf( f: PandasScalarToScalarFunction, returnType: 
> Union[AtomicDataTypeOrString, ArrayType], functionType: PandasScalarUDFType, 
> ) -> UserDefinedFunctionLike: ...
>  
>  # not defined
> @overload def pandas_udf( f: PandasScalarToScalarFunction, returnType: 
> Union[AtomicDataTypeOrString, ArrayType]) -> UserDefinedFunctionLike: ...
> ```
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to