Skip to content

Tests: Install ConnectorX with the test extra - #429

Merged
amotl merged 1 commit into
panodata:mainfrom
hampsterx:fix/connectorx-test-extra
Oct 25, 2026
Merged

amotl merged 1 commit into
panodata:mainfrom
hampsterx:fix/connectorx-test-extra

Conversation

@hampsterx

Copy link
Copy Markdown
Contributor

Summary

test_cdc_on_an_empty_source_clears_it_with_connectorx, added with the cdc strategy in #422, calls pytest.importorskip("connectorx"). No extra installs ConnectorX, so it has been skipped on every CI lane since it landed: both the .[full,develop,test] integration lane and the .[develop,test] unit lane resolve without it. The pin it was written to hold has never actually run in CI.

  • connectorx<0.5; python_version<'3.15' joins the test extra.
  • The marker is there because ConnectorX 0.4.6 publishes wheels for cp310 to cp314 only, with no sdist, and the 0.4.7a1 pre-release adds no cp315 wheel either. Without the marker the test extra fails to resolve on Python 3.15 (uv pip compile --python-version 3.15 --extra test: "all versions of connectorx have no wheels with a matching Python ABI tag"), which would get in the way of Verify support for Python 3.15 #386. Once ConnectorX ships a 3.15 wheel, the marker can go.
  • I put it in test and not in a user-facing extra. --sql-backend connectorx already exists, and the docs say to install connectorx alongside it, so this PR only makes the existing test run. Whether ConnectorX should get its own extra, or end up in full, goes with ConnectorX #118 and is your call.
  • No changelog entry, since nothing changes for users.

Test plan

  • On main (948a3a01), the Tests run reports the test as SKIPPED, and uv pip compile for both CI extra sets resolves no connectorx.
  • Unit lane on a fork (macOS and Windows, Python 3.10 and 3.14): + connectorx==0.4.6 installed, and test_cdc_on_an_empty_source_clears_it_with_connectorx PASSED on all four.
  • Locally, Python 3.14, .[develop,test]: the unit-lane command gives 1257 passed, 59 skipped. With connectorx uninstalled, the test reports SKIPPED ... could not import 'connectorx' again.
  • uv pip compile --extra test resolves connectorx==0.4.6 for 3.14 and leaves it out for 3.15.
  • validate-pyproject and ruff are clean. pyproject-fmt --check accepts the new line; its only proposed change is an unrelated 3.15 classifier.

Review

One independent review read the commit. Its single finding said ConnectorX would mis-read the sqlite:///C:\... URL on Windows and fail this test there. The Windows lanes above pass it on 3.10 and 3.14, so no change was made.

The cdc test for an empty source read through `--sql-backend connectorx`
skips unless ConnectorX is importable, and no extra installed it, so it
skipped on every CI lane. ConnectorX publishes no sdist and no Python 3.15
wheel, so the pin is marked `python_version<'3.15'`; without the marker the
`test` extra does not resolve on 3.15.
@coderabbitai

coderabbitai Bot commented Oct 24, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one): 1
  • coderabbit-review

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codecov

codecov Bot commented Oct 24, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 60.24%. Comparing base (948a3a0) to head (7e3a664).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #429   +/-   ##
=======================================
  Coverage   60.24%   60.24%           
=======================================
  Files         201      201           
  Lines       10344    10344           
=======================================
  Hits         6232     6232           
  Misses       4112     4112           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@amotl
amotl merged commit b509b76 into panodata:main Oct 25, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants