Incorrect Dependency Resolution During fivetran deploy
Issue
During deployment with the Fivetran Connector SDK CLI, the tool uses pipreqs
to validate that the imports in your code match the packages listed in requirements.txt
.
In some cases, pipreqs
incorrectly resolves an import to the wrong PyPI package. This can cause your connector to work locally but fail after deployment.
Environment
Fivetran Connector SDK
Resolution
If deployment fails due to a missing or incorrect package:
- Manually review and update
requirements.txt
to ensure it lists the correct PyPI package. - Verify package names against PyPI before accepting CLI prompts.
Example: MySQL Connector
If your code contains:
import mysql.connector
pipreqs
may suggest adding: mysql_connector_repackaged
. This is incorrect. The correct dependency is: mysql-connector-python
Update your requirements.txt
accordingly and redeploy your connector.
Cause
pipreqs
uses static mappings to infer package names from imports. Some packages, such as mysql.connector
, are incorrectly mapped, leading to misleading dependency suggestions during deployment validation.