Skip to content

Evaluate minimum pip version and native pip freeze exclusions #916

Closed

Description

@tdstein

Consider raising the minimum supported pip version and using pip freeze --exclude rsconnect-python --exclude rsconnect for dependency inspection.

In the review of #909, @amol- suggested using pip's native exclusion flags to simplify filtering. Those flags are unavailable in pip 20. Changing the supported pip versions deserves a separate compatibility decision from the requirement-filtering fix in #899.

Source: #909 (comment)
Original proposal: #909 (comment)

Scope

  • Determine the minimum pip version that supports the proposed flags and assess the impact on supported Python and deployment environments.
  • Decide whether to raise the minimum version, retain a compatibility fallback, or keep the current approach. Document the compatibility decision.
  • If adopted, use the exclusion flags when inspecting dependencies with pip and update compatibility checks and documentation as needed.
  • Preserve the shared requirement filter for user-provided requirements files and other dependency sources; pip flags do not cover those paths or replace local editable-install validation.

Validation

  • Exercise dependency inspection at the chosen minimum pip version and a current version.
  • Verify that rsconnect distributions are excluded while unrelated packages and paths containing rsconnect are preserved.
  • Verify the selected behavior for older pip versions, including a clear error if support is dropped.
  • Keep coverage for requirements-file filtering and local editable dependencies.

Related: #899, #857, #909.

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions