tessl install tessl/pypi-apache-airflow-providers-ftp@3.13.0Provider package for Apache Airflow that enables FTP file transfer protocol operations including hooks, operators, and sensors for workflow integration.
Agent Success
Agent success rate when using this tile
84%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.06x
Baseline
Agent success rate without this tile
79%
{
"context": "This criteria evaluates how well the engineer uses the apache-airflow-providers-ftp package to implement file download operations from FTP servers. The focus is on proper usage of FTPHook for retrieving files and FTPFileTransmitOperator for batch transfers.",
"type": "weighted_checklist",
"checklist": [
{
"name": "FTPHook instantiation",
"description": "Correctly instantiates FTPHook or FTPSHook with the ftp_conn_id parameter to establish connection to the FTP server",
"max_score": 15
},
{
"name": "Single file download",
"description": "Uses FTPHook.retrieve_file() method to download a single file from remote to local path, passing remote_full_path and local_full_path_or_buffer parameters",
"max_score": 25
},
{
"name": "Batch download implementation",
"description": "Uses FTPFileTransmitOperator with operation='get' parameter or implements batch downloads using lists of file paths for both local_filepath and remote_filepath",
"max_score": 20
},
{
"name": "List length validation",
"description": "Validates that local_filepaths and remote_filepaths lists have matching lengths before processing batch downloads, raising ValueError if they don't match",
"max_score": 10
},
{
"name": "Intermediate directory creation",
"description": "Implements automatic creation of local parent directories using create_intermediate_dirs=True parameter on FTPFileTransmitOperator or manually creates directories with Path.mkdir(parents=True, exist_ok=True)",
"max_score": 15
},
{
"name": "Return values",
"description": "Returns the correct values as specified in the API: local file path(s) for successful downloads",
"max_score": 10
},
{
"name": "Error handling",
"description": "Properly propagates exceptions from FTP operations when files don't exist or downloads fail, without catching and suppressing FTP-related errors",
"max_score": 5
}
]
}