CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-apache-airflow-providers-ftp

Provider package for Apache Airflow that enables FTP file transfer protocol operations including hooks, operators, and sensors for workflow integration.

84

1.06x
Quality

Pending

Does it follow best practices?

Impact

84%

1.06x

Average score across 10 eval scenarios

SecuritybySnyk

Pending

The risk profile of this skill

Overview
Eval results
Files

criteria.jsonevals/scenario-3/

{
  "context": "This criteria evaluates how well the engineer uses the apache-airflow-providers-ftp package to implement FTP connection management functionality. It focuses on proper usage of FTPHook and FTPSHook classes and their connection management methods.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "FTPHook instantiation",
      "description": "Creates instances of airflow.providers.ftp.hooks.ftp.FTPHook class for standard FTP connections with appropriate connection parameters",
      "max_score": 20
    },
    {
      "name": "FTPSHook instantiation",
      "description": "Creates instances of airflow.providers.ftp.hooks.ftp.FTPSHook class for secure FTPS connections when use_ftps=True",
      "max_score": 20
    },
    {
      "name": "get_conn() method",
      "description": "Uses the get_conn() method from FTPHook or FTPSHook to obtain the underlying ftplib.FTP or ftplib.FTP_TLS connection object",
      "max_score": 20
    },
    {
      "name": "Passive mode handling",
      "description": "Configures passive mode on the FTP connection by calling set_pasv() method on the ftplib connection object obtained from get_conn()",
      "max_score": 15
    },
    {
      "name": "Connection lifecycle",
      "description": "Implements proper connection lifecycle using __enter__ and __exit__ methods, ensuring FTPHook connection is established and closed appropriately",
      "max_score": 15
    },
    {
      "name": "Connection validation",
      "description": "Uses FTPHook methods such as list_directory() or test_connection() to validate that the FTP connection is working",
      "max_score": 10
    }
  ]
}

tile.json