Skip to content

Conversation

@mcdonnnj
Copy link
Member

@mcdonnnj mcdonnnj commented Jul 13, 2025

🗣 Description

This pull request updates the llnl-scraper dependency to a version constraint so that it is installed from PyPI.

💭 Motivation and context

Now that a release with support for newer versions of cloc is available on PyPI we should prefer installation of the package from there. This resolves #148.

🧪 Testing

Automated tests pass.

✅ Pre-approval checklist

  • This PR has an informative and human-readable title.
  • Changes are limited to a single goal - eschew scope creep!
  • All relevant type-of-change labels have been added.
  • I have read the CONTRIBUTING document.
  • These code changes follow cisagov code standards.
  • All relevant repo and/or project documentation has been updated to reflect the changes in this PR.
  • All new and existing tests pass.
  • Bump major, minor, patch, pre-release, and/or build versions as appropriate via the bump_version script if this repository is versioned and the changes in this PR warrant a version bump.

✅ Post-merge checklist

  • Create a pre-release (necessary if and only if the pre-release version was bumped).

mcdonnnj added 3 commits July 13, 2025 16:13
Now that support for newer versions of `cloc` is available from a
version installable from PyPI it makes sense to adjust the requirement
to reference a version string instead of installing from a commit in a
GitHub repository.
Update the dependencies installed in the Python virtual environment by
running `pipenv lock` in the `src/` directory.
@mcdonnnj mcdonnnj requested review from a team and Copilot July 13, 2025 21:13
@mcdonnnj mcdonnnj self-assigned this Jul 13, 2025
@mcdonnnj mcdonnnj requested review from dav3r and jsf9k as code owners July 13, 2025 21:13
@mcdonnnj mcdonnnj added improvement This issue or pull request will add or improve functionality, maintainability, or ease of use version bump This issue or pull request increments the version number dependencies Pull requests that update a dependency file labels Jul 13, 2025
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR switches the llnl-scraper dependency from a direct GitHub tarball to a PyPI release, bumps the project version to 0.3.0-rc.7, and updates all README references accordingly.

  • Bump version in src/version.txt from 0.3.0-rc.6 to 0.3.0-rc.7
  • Change llnl-scraper source in src/Pipfile to use >=0.15.0 from PyPI
  • Update all occurrences of the old version in README.md to 0.3.0-rc.7

Reviewed Changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.

File Description
src/version.txt Bumped project version to 0.3.0-rc.7
src/Pipfile Replaced GitHub tarball pin with PyPI llnl-scraper >=0.15.0
README.md Updated Docker commands and documentation to use rc.7 tag
Comments suppressed due to low confidence (1)

src/Pipfile:13

  • [nitpick] Rewrite this comment for clarity, for example: "# Minimum version to support newer versions of cloc and avoid GitHub tarball pinning."
# Minimum version with newer versions of cloc compatibility

# equivalent.
llnl-scraper = {file = "https://api.github.com/repos/LLNL/scraper/tarball/536a72ce1ceb2e209281ff72a2ed59e735d45c33"}
# Minimum version with newer versions of cloc compatibility
llnl-scraper = ">=0.15.0"
Copy link

Copilot AI Jul 13, 2025

Choose a reason for hiding this comment

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

Consider adding an upper bound to this dependency (e.g., ">=0.15.0,<0.16.0") to follow semver and prevent unintended breaking changes, and regenerate the Pipfile.lock to lock down the updated version.

Suggested change
llnl-scraper = ">=0.15.0"
llnl-scraper = ">=0.15.0,<0.16.0"

Copilot uses AI. Check for mistakes.
Copy link
Member Author

Choose a reason for hiding this comment

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

Due to the slow developmental cycle of the llnl-scraper project I am not particularly worried about an upper bound. @cisagov/vm-dev any preference?

Copy link
Member

Choose a reason for hiding this comment

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

I don't have strong feelings either way here, though it probably doesn't hurt to have an upper bound.

Copy link
Member Author

Choose a reason for hiding this comment

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

So we can either do a <1 or just pin to a hard minor version because the history of releases for this project has been 0.x.0 versions.

Copy link
Member

Choose a reason for hiding this comment

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

My vote is to pin to a specific minor version.

Copy link
Member

Choose a reason for hiding this comment

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

I couldn't care less. Do what thou wilt.

Copy link
Member Author

@mcdonnnj mcdonnnj Jul 14, 2025

Choose a reason for hiding this comment

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

A key reminder here is that this is just a general requirements specification. It is only used when locking the lockfile. The lockfile specifies what specific version of a package is to be installed.

Copy link
Member

@dav3r dav3r left a comment

Choose a reason for hiding this comment

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

👍 👍

# equivalent.
llnl-scraper = {file = "https://api.github.com/repos/LLNL/scraper/tarball/536a72ce1ceb2e209281ff72a2ed59e735d45c33"}
# Minimum version with newer versions of cloc compatibility
llnl-scraper = ">=0.15.0"
Copy link
Member

Choose a reason for hiding this comment

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

I don't have strong feelings either way here, though it probably doesn't hurt to have an upper bound.

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

Labels

dependencies Pull requests that update a dependency file improvement This issue or pull request will add or improve functionality, maintainability, or ease of use version bump This issue or pull request increments the version number

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Install the llnl-scraper package from PyPI

5 participants