-
Notifications
You must be signed in to change notification settings - Fork 25
chore: remove unused psutil & rapidfuzz dependencies, make google-cloud-secret-manager optional 'dev' extra (WASM compatibility prep) #670
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…l for WASM compatibility - Remove psutil and rapidfuzz from main dependencies (marked as unused) - Move google-cloud-secret-manager to dev extras group - Add new 'system' extras group for psutil and rapidfuzz - Update deptry configuration comments to reflect optional status This enables airbyte-cdk to be installed in WASM environments like Pyodide by making problematic binary dependencies optional. Co-Authored-By: AJ Steers <[email protected]>
Automatic code formatting applied during dependency update process. Includes line wrapping and copyright header removal. Co-Authored-By: AJ Steers <[email protected]>
Original prompt from AJ Steers:
|
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
👋 Greetings, Airbyte Team Member!Here are some helpful tips and reminders for your convenience. Testing This CDK VersionYou can test this version of the CDK using the following: # Run the CLI from this branch:
uvx 'git+https://github.com/airbytehq/airbyte-python-cdk.git@devin/1753304576-wasm-compatibility-deps#egg=airbyte-python-cdk[dev]' --help
# Update a connector to use the CDK from this branch ref:
cd airbyte-integrations/connectors/source-example
poe use-cdk-branch devin/1753304576-wasm-compatibility-deps Helpful ResourcesPR Slash CommandsAirbyte Maintainers can execute the following slash commands on your PR:
|
Address PR feedback from @aaronsteers to fully remove psutil and rapidfuzz rather than making them optional dependencies. These packages are unused and were marked as TODO for removal. Changes: - Remove psutil and rapidfuzz from optional dependencies - Remove 'system' extras group (no longer needed) - Update deptry comments to reflect complete removal - Keep google-cloud-secret-manager in dev extras as requested Co-Authored-By: AJ Steers <[email protected]>
feat: make psutil, rapidfuzz, and google-cloud-secret-manager optional for WASM compatibility
Summary
This PR makes the airbyte-cdk package compatible with WASM environments like Pyodide by moving problematic binary dependencies to optional extras groups. The main changes:
psutil
andrapidfuzz
were marked as TODO for removal and are not used in core declarative manifest executiongoogle-cloud-secret-manager
is moved to thedev
extras group since it's only needed for development/secret management featuressystem
extra forpsutil
/rapidfuzz
and updateddev
extra to includegoogle-cloud-secret-manager
These changes enable
pip install airbyte-cdk
to work in Pyodide without requiring binary dependencies that can't be compiled to WASM.Review & Testing Checklist for Human
await micropip.install("airbyte-cdk")
works in Pyodide without errorsgoogle-cloud-secret-manager
to dev extras doesn't break any secret management features used in productionpoetry run poe check-ci
to ensure no regressions in test suiteRecommended test plan:
pip install airbyte-cdk[dev]
to verify secret manager functionality still works when explicitly installedDiagram
Notes
serpyco-rs
dependency refactor was explicitly deferred to a separate session as requesteddeclarative_component_schema.py
were applied automatically during the dependency update process