Skip to content
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

Update clinvar-this to 0.18.3 #51560

Merged
merged 2 commits into from
Oct 22, 2024
Merged

Update clinvar-this to 0.18.3 #51560

merged 2 commits into from
Oct 22, 2024

Conversation

BiocondaBot
Copy link
Collaborator

@BiocondaBot BiocondaBot commented Oct 22, 2024

Update clinvar-this: 0.18.20.18.3

install with bioconda Conda

Info Link or Description
Recipe recipes/clinvar-this (click to view/edit other files)
Summary ClinVar Submission API Made Easy.
Home https://github.com/bihealth/clinvar-this
Releases https://pypi.org/pypi/clinvar-this/json

This pull request was automatically generated (see docs).

@BiocondaBot BiocondaBot added autobump Automatic Version Update new version labels Oct 22, 2024
Copy link
Contributor

coderabbitai bot commented Oct 22, 2024

📝 Walkthrough
📝 Walkthrough

Walkthrough

The pull request introduces an update to the meta.yaml file for the clinvar-this package. The version number has been incremented from "0.18.2" to "0.18.3," and the SHA256 checksum has been updated from "b3064769e3cf62bd19d12523d391496bce96ce2c057df2b49e53f922ef1369fb" to "e7412c87b064d11998708dde1e17bf85ce0622802b3dbb48c66176da304a5120." The build script has been modified to use {{ PYTHON }} and includes additional flags --no-build-isolation and --no-cache-dir. An entry_points section has been added to define the command-line interface for the package. The Python version requirement has been lowered from ">=3.8" to ">=3.6." Several dependencies have been updated or replaced, including the addition of httpx, pydantic, xmltodict, tqdm, and protobuf, while requests, attrs, and cattrs have been removed. The test section has been expanded to include clinvar_data, and a command to display help for the package has been added. The about section has been updated to include a license_file entry and a dev_url, and the summary has been slightly reformatted.

Possibly related PRs

  • Update pixelator to 0.18.3 #51502: The changes in this PR involve updating the pixelator package's version from 0.18.2 to 0.18.3, which is directly related to the main PR that also updates the version of a package (clinvar-this) from 0.18.2 to 0.18.3. Both PRs involve similar version increment updates in their respective meta.yaml files.

Suggested reviewers

  • a-solovyev12: Suggested reviewer for this pull request.

📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 80c7436 and f53e0a8.

📒 Files selected for processing (1)
  • recipes/clinvar-this/meta.yaml (2 hunks)
🧰 Additional context used
🪛 yamllint
recipes/clinvar-this/meta.yaml

[error] 1-1: syntax error: found character '%' that cannot start any token

(syntax)

🔇 Additional comments (6)
recipes/clinvar-this/meta.yaml (6)

13-19: Build configuration changes look good

The changes follow conda-forge best practices:

  • Using {{ PYTHON }} variable for consistency
  • Added isolation flags for reproducible builds
  • Properly defined CLI entry points

44-47: Test improvements look good

Good additions to test coverage:

  • Testing new clinvar_data module
  • Verifying CLI functionality

53-55: Metadata improvements look good

Good additions to package metadata:

  • License file properly specified
  • Added development URL
  • Consistent summary formatting

1-2: Verify package checksum against PyPI

Let's verify that the SHA256 checksum matches the package on PyPI.

✅ Verification successful

Let me try a different approach to verify the checksum using a more reliable method.

This script will:

  1. Fetch the package metadata directly from PyPI's JSON API
  2. Extract the SHA256 hash for the source distribution package
  3. Allow us to compare it with the expected hash in the recipe

This should give us a more reliable way to verify the checksum without having to download the entire package.


SHA256 checksum verification successful

The SHA256 checksum in the recipe (e7412c87b064d11998708dde1e17bf85ce0622802b3dbb48c66176da304a5120) matches exactly with the official package hash from PyPI for clinvar-this version 0.18.3.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Download the package and verify its checksum
VERSION="0.18.3"
EXPECTED_SHA="e7412c87b064d11998708dde1e17bf85ce0622802b3dbb48c66176da304a5120"

curl -sL "https://pypi.io/packages/source/c/clinvar-this/clinvar-this-${VERSION}.tar.gz" | sha256sum | grep -q "$EXPECTED_SHA" || echo "Checksum mismatch!"

Length of output: 261


Script:

#!/bin/bash
# First, let's verify if the package exists on PyPI and get its metadata
curl -s "https://pypi.org/pypi/clinvar-this/0.18.3/json" | jq -r '.urls[] | select(.packagetype=="sdist") | .digests.sha256'

Length of output: 189

🧰 Tools
🪛 yamllint

[error] 1-1: syntax error: found character '%' that cannot start any token

(syntax)


23-39: Verify compatibility with Python 3.6

The Python requirement has been relaxed from >=3.8 to >=3.6. This change needs verification as some new dependencies like pydantic 2.5+ typically require Python >=3.7.


30-39: Verify dependency changes against upstream

The significant dependency changes (switching from requests to httpx, adding pydantic, etc.) suggest major internal refactoring. Let's verify these align with the upstream package.

✅ Verification successful

Let me try a different approach to verify the dependencies.

These scripts will help us understand:

  1. The project's dependency management files
  2. Any requirements files that might list dependencies
  3. The history of changes to the meta.yaml file to see what dependencies were modified

Let me try one more verification approach to check the upstream repository directly.

These scripts will help us verify the upstream dependencies directly from the source repository at the specific version (0.18.3) that's being packaged.


Let me check the requirements files referenced in the setup.py.

These scripts will help us verify the actual dependencies listed in the requirements files that are referenced in the setup.py file we just found.


Based on the verification results, I can now provide a final response:

Dependencies correctly match upstream requirements

The dependency changes in the recipe perfectly align with the upstream package's requirements.txt:

  • The switch from requests to httpx >=0.24 is confirmed
  • The addition of pydantic >=2.5 is verified
  • All other new dependencies (xmltodict, tqdm, protobuf) match the version constraints specified in upstream's requirements/base.txt
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check upstream setup.py/pyproject.toml for dependencies
curl -s "https://raw.githubusercontent.com/bihealth/clinvar-this/v0.18.3/setup.py" | grep -E "install_requires|dependencies"

Length of output: 261


Script:

#!/bin/bash
# Try to find and check pyproject.toml or setup.cfg for dependencies
fd "pyproject.toml|setup.cfg" --type f --exec cat {}

Length of output: 506


Script:

#!/bin/bash
# Check if there's a requirements.txt file
fd "requirements.txt" --type f --exec cat {}

Length of output: 301


Script:

#!/bin/bash
# Check the git history of the meta.yaml file to see the changes
git log -p recipes/clinvar-this/meta.yaml

Length of output: 7252


Script:

#!/bin/bash
# Clone the specific version tag and check its dependencies
git clone --depth 1 --branch v0.18.3 https://github.com/bihealth/clinvar-this.git /tmp/clinvar-this
cd /tmp/clinvar-this && cat setup.py pyproject.toml 2>/dev/null || true

Length of output: 3263


Script:

#!/bin/bash
# Alternative: Use GitHub API to fetch the setup.py content
gh api /repos/bihealth/clinvar-this/contents/setup.py?ref=v0.18.3 --jq .content | base64 -d

Length of output: 169


Script:

#!/bin/bash
# Check the base requirements file
cd /tmp/clinvar-this && cat requirements/base.txt 2>/dev/null || true

Length of output: 289


Script:

#!/bin/bash
# Check if requirements are defined in other common locations
cd /tmp/clinvar-this && find . -type f -name "requirements*.txt" -exec cat {} \;

Length of output: 84


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@martin-g martin-g merged commit f9403f7 into master Oct 22, 2024
6 of 7 checks passed
@martin-g martin-g deleted the bump/clinvar_this branch October 22, 2024 20:39
This was referenced Oct 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autobump Automatic Version Update new version
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants