Skip to content

Conversation

@cottsay
Copy link
Member

@cottsay cottsay commented Jan 13, 2026

Basic Info

Info Please fill out this column
Ticket(s) this addresses resolves #88
Primary OS tested on Ubuntu
Is this a breaking change? No
Does this PR contain AI generated software? No

Description of contribution in a few bullet points

This presents vcs2l as a wholesale replacement for vcstool and should satisfy any existing dependencies on vcstool without requiring changes to vcs2l itself. It operates under the fact that the existing vcs2l API is similar enough to vcstool that it can simply be installed and used under that name.

When the vcs2l API deviates from vcstool enough, this commit may be reverted and the shim module dropped.

Thanks to @j-rivero for presenting this as a significantly lighter-weight alternative to #90

Description of how this change was tested

  • Performed linting validation using pre-commit run --all
  • Verified that the code passes all tests using python3 -m pytest -s -v test
  • Verified that debs satisfy dependency on python3-vcstool

@cottsay cottsay requested a review from j-rivero January 13, 2026 23:12
@cottsay cottsay self-assigned this Jan 13, 2026
@cottsay cottsay added the enhancement New feature or request label Jan 13, 2026
@cottsay cottsay force-pushed the cottsay/vcstool-shim-alt branch from 849e3d6 to a84055d Compare January 13, 2026 23:13
@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 26.96%. Comparing base (a9022f0) to head (a84055d).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #94   +/-   ##
=======================================
  Coverage   26.96%   26.96%           
=======================================
  Files          31       31           
  Lines        2240     2240           
  Branches      393      393           
=======================================
  Hits          604      604           
  Misses       1576     1576           
  Partials       60       60           

☔ View full report in Codecov by Sentry.
📢 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.

Copy link

@j-rivero j-rivero left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great!

@claraberendsen claraberendsen self-requested a review January 20, 2026 20:01
@cottsay cottsay marked this pull request as ready for review January 20, 2026 21:56

import vcs2l
from vcs2l import * # noqa: F403

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure whether this would count as an improvement, but we can add a warning that the shim will be removed in the future when the API breaks.

Suggested change
warnings.warn(
"The 'vcstool' import is deprecated. Please update your code to use 'vcs2l' instead. "
'This shim will be removed in a future version.',
DeprecationWarning,
stacklevel=2,
)

Copy link
Member

@leander-dsouza leander-dsouza left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[packaging] Make python3-vcs2l fulfill python3-vcstool dependency.

7 participants