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 fastq-dl to 3.0.0 #51506

Merged
merged 6 commits into from
Oct 21, 2024
Merged

Update fastq-dl to 3.0.0 #51506

merged 6 commits into from
Oct 21, 2024

Conversation

BiocondaBot
Copy link
Collaborator

@BiocondaBot BiocondaBot commented Oct 20, 2024

Update fastq-dl: 2.0.43.0.0

install with bioconda Conda

Info Link or Description
Recipe recipes/fastq-dl (click to view/edit other files)
Summary A tool to download FASTQs associated with Study, Experiment, or Run accessions.
Home https://github.com/rpetit3/fastq-dl
Releases https://pypi.org/pypi/fastq_dl/json
Recipe Maintainer(s) @rpetit3

This pull request was automatically generated (see docs).

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

coderabbitai bot commented Oct 20, 2024

📝 Walkthrough
📝 Walkthrough

Walkthrough

This pull request introduces updates to the meta.yaml file for the fastq-dl package. The primary changes include an increment in the version number from "2.0.4" to "3.0.0". Correspondingly, the source URL has been modified to reflect the new version, changing from fastq_dl-2.0.4.tar.gz to fastq_dl-3.0.0.tar.gz. Additionally, the SHA256 checksum has been updated from 201a75f7e7b08d1eb56c625c98f92ad39e9e683e1921bb60a24a38a158a2daa8 to de85e3fcc60c2f2fb9313336df9706add440b0f89963f28a46fa75e5ff041a0a. The build section now includes a new script command for installation that specifies --no-build-isolation. The entry point for the package has been changed from fastq_dl.fastq_dl:main to fastq_dl.cli.download:main. The Python version constraint is updated from >=3.7 to >=3.9, and the dependency on poetry is replaced with poetry-core. Several new dependencies have been added with specific version constraints, while previous dependencies have been removed or updated. The test commands and the about section remain unchanged.

Possibly related PRs

  • Update slow5tools to 1.3.0 #51048: The changes in this PR involve updating the meta.yaml file for the slow5tools package, including a version bump and source URL modification, similar to the version update and source URL changes in the main PR for fastq-dl.
  • Update phylodm to 3.2.0 #51232: This PR updates the meta.yaml file for the phylodm package, including a version change and SHA256 checksum update, paralleling the version and checksum updates in the main PR for fastq-dl.
  • Update nf-core to 3.0.0 #51249: The nf-core package's meta.yaml file is updated in this PR with a version increment and SHA256 checksum change, reflecting similar updates made in the main PR for fastq-dl.
  • Update nf-core to 3.0.1 #51272: This PR updates the nf-core package's version and SHA256 checksum, mirroring the version and checksum updates in the main PR for fastq-dl.
  • Update srahunter to 0.0.3 #51300: The srahunter package's version and SHA256 checksum are updated in this PR, akin to the updates made in the main PR for fastq-dl.
  • Update nf-core to 3.0.2 #51333: This PR updates the nf-core package's version and SHA256 checksum, similar to the changes in the main PR for fastq-dl.

📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 5576d3c and 934176a.

📒 Files selected for processing (1)
  • recipes/fastq-dl/meta.yaml (2 hunks)
🧰 Additional context used
📓 Learnings (1)
recipes/fastq-dl/meta.yaml (1)
Learnt from: rpetit3
PR: bioconda/bioconda-recipes#51506
File: recipes/fastq-dl/meta.yaml:1-1
Timestamp: 2024-10-20T19:27:22.907Z
Learning: Ensure accurate detection of version updates in `recipes/fastq-dl/meta.yaml` to avoid false alerts about version mismatches.
🪛 yamllint
recipes/fastq-dl/meta.yaml

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

(syntax)

🔇 Additional comments (6)
recipes/fastq-dl/meta.yaml (6)

1-2: LGTM: Package name and version update.

The package name is now set using a variable, which is a good practice. The version has been correctly updated to 3.0.0, aligning with the PR objectives.

🧰 Tools
🪛 yamllint

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

(syntax)


49-51: LGTM: Added recipe maintainers.

The addition of the extra section with recipe maintainers is a good practice for package management. This helps in identifying who is responsible for maintaining the recipe.


1-2: Note on static analysis warning.

The static analysis tool (yamllint) reports a syntax error for the '%' character at the beginning of the file. This is a false positive. The '%' character is used for Jinja2 templating in Conda recipes and is valid in this context. No action is needed to address this warning.

🧰 Tools
🪛 yamllint

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

(syntax)


15-19: Review build changes and clarify --no-build-isolation usage.

  1. The addition of --no-build-isolation to the build script can speed up builds but may lead to inconsistencies. Can you clarify why this option is necessary?

  2. The entry point has been updated from fastq_dl.fastq_dl:main to fastq_dl.cli.download:main. Ensure that this change is intentional and documented for users who might be affected by this change in how they interact with the package.

  3. The new run_exports section is a good addition, ensuring that the package is correctly pinned when used as a dependency.

To verify the new entry point, you can run:

#!/bin/bash
# Verify the new entry point
grep -r "def main" . | grep "fastq_dl/cli/download.py" && echo "New entry point found" || echo "New entry point not found"

23-24: Review updated requirements and verify new dependencies.

  1. The Python version requirement has been updated to >=3.9. This might exclude users on older Python versions. Ensure this change is necessary and documented.

  2. The build system has switched from poetry to poetry-core. Verify that this change doesn't affect the build process negatively.

  3. Several new run dependencies have been added or updated. Ensure that these new versions are compatible with the package and don't introduce any conflicts.

To verify the new dependencies, you can run:

#!/bin/bash
# Verify new dependencies
for dep in pysradb requests rich-click sra-tools; do
  if pip install $dep; then
    echo "$dep installation successful"
  else
    echo "$dep installation failed"
  fi
done

Also applies to: 29-33


10-10: Verify the updated SHA256 checksum.

The SHA256 checksum has been updated for the new version, which is correct. However, it's important to verify that this checksum is accurate for the new source file.

To verify the SHA256 checksum, you can run the following command:


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.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Outside diff range and nitpick comments (1)
recipes/fastq-dl/meta.yaml (1)

1-33: Summary of major changes in fastq-dl 3.0.0

This update introduces significant changes to the fastq-dl package:

  1. Major version update from 2.0.4 to 3.0.0
  2. Tightened Python version requirement (>=3.9,<4.0)
  3. Updated build process with --no-build-isolation flag
  4. Changed entry point
  5. Added run_exports for better integration with Conda
  6. Significant updates to dependencies, including new additions

These changes may have implications for users of the package, particularly the stricter Python version requirement and the potential for changes in functionality due to the major version update. Users should be advised to review the changelog and test their workflows with this new version.

Consider adding a note in the package documentation or README to highlight these changes, especially the Python version requirement and any potential breaking changes introduced in this major version update.

🧰 Tools
🪛 yamllint

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

(syntax)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 55a6263 and 6fff7f0.

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

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

(syntax)

🔇 Additional comments (7)
recipes/fastq-dl/meta.yaml (7)

14-14: Build script update approved with a note on build isolation.

The build script has been updated to include the --no-build-isolation flag. This flag disables build isolation, which can be useful for reducing build times or when dealing with complex dependency situations. However, it's important to note that this might lead to less reproducible builds if the build environment is not carefully controlled.

To ensure this change doesn't introduce any issues, consider running a test build of the package.


17-18: Run exports addition approved.

A new run_exports section has been added, using pin_subpackage to pin the package to the same major and minor version when used as a dependency. This ensures that packages depending on fastq-dl will use a compatible version, reducing the risk of version conflicts.

This addition improves the package's integration with the Conda ecosystem and helps maintain consistency across dependent packages.


9-9: Source URL and checksum update approved.

The SHA256 checksum has been updated, which is consistent with the version change. Although not visible in the diff, ensure that the source URL has been updated to reflect the new version (fastq_dl-3.0.0.tar.gz).

To verify the source URL update and validate the checksum, run the following script:

#!/bin/bash
# Description: Verify source URL update and validate checksum

# Test: Check if the source URL is updated
rg 'url:.*fastq_dl-3\.0\.0\.tar\.gz' --type yaml

# Test: Validate the checksum
URL=$(rg 'url:.*fastq_dl-3\.0\.0\.tar\.gz' --type yaml -o | awk '{print $2}')
if [ -n "$URL" ]; then
  CHECKSUM=$(curl -sL "$URL" | sha256sum | awk '{print $1}')
  echo "Calculated checksum: $CHECKSUM"
  echo "Specified checksum:  de85e3fcc60c2f2fb9313336df9706add440b0f89963f28a46fa75e5ff041a0a"
  if [ "$CHECKSUM" = "de85e3fcc60c2f2fb9313336df9706add440b0f89963f28a46fa75e5ff041a0a" ]; then
    echo "Checksum validation passed"
  else
    echo "Checksum validation failed"
  fi
else
  echo "Source URL not found"
fi

22-23: Host requirements update approved with a note on Python version.

The host requirements have been updated:

  1. The Python version constraint has been tightened to >=3.9,<4.0. This change may affect compatibility with systems running older Python versions.
  2. poetry-core has been added as a host requirement, indicating a change in the build system.

To ensure these changes don't introduce any issues, run the following script:

#!/bin/bash
# Description: Verify host requirements

# Test: Check if poetry-core is used in the build system
rg 'build-system' pyproject.toml -A 5

# Test: Verify minimum Python version in the package
rg 'python_requires' pyproject.toml

16-16: Entry point update approved.

The entry point has been updated from fastq_dl.fastq_dl:main to fastq_dl.cli.download:main, which suggests a restructuring of the package's internal organization. This change is consistent with the major version update.

To ensure the new entry point is correct and functional, run the following script:

#!/bin/bash
# Description: Verify the new entry point

# Test: Check if the new entry point file exists
fd 'cli/download.py' --type f

# Test: Check if the main function is defined in the new entry point
rg 'def main\(' cli/download.py

26-33: Run requirements update approved.

The run requirements have been significantly updated with several new dependencies and specific version constraints:

  1. Python version constraint updated to >=3.9.0,<4.0.0
  2. New dependencies added: requests, pysradb, rich-click, executor, rich, markdown-it-py, and pandas

These changes suggest expanded functionality or changes in the package's implementation. The specific version constraints help ensure compatibility and reproducibility.

To ensure these new dependencies are necessary and correctly specified, run the following script:

#!/bin/bash
# Description: Verify new dependencies

# Test: Check if new dependencies are imported in the package
for dep in requests pysradb rich_click executor rich markdown_it_py pandas; do
  echo "Checking imports for $dep"
  rg "import.*$dep" --type python
  rg "from.*$dep" --type python
done

# Test: Verify dependency versions in pyproject.toml
rg 'dependencies' pyproject.toml -A 15

1-1: Version update to 3.0.0 approved.

The package version has been updated from 2.0.4 to 3.0.0, which is consistent with the PR objectives. Note that this is a major version update, which might indicate significant changes or potential breaking changes in the package.

To ensure the version update is consistent across the package, run the following script:

🧰 Tools
🪛 yamllint

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

(syntax)

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Outside diff range and nitpick comments (2)
recipes/fastq-dl/meta.yaml (2)

Line range hint 35-39: Consider updating test commands.

The test commands have remained unchanged despite the significant version update and new dependencies. Consider reviewing and potentially updating the test commands to ensure they cover any new functionalities or changes introduced in version 3.0.0.

🧰 Tools
🪛 yamllint

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

(syntax)


Line range hint 41-45: Consider updating the about section.

The about section has remained unchanged. Consider reviewing and potentially updating this section to reflect any changes in the package description, license, or summary that may have occurred with the update to version 3.0.0.

🧰 Tools
🪛 yamllint

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

(syntax)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 6fff7f0 and 446247c.

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

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

(syntax)

🔇 Additional comments (5)
recipes/fastq-dl/meta.yaml (5)

8-9: Source URL and checksum updates approved.

The source URL has been correctly updated to reflect the new version 3.0.0. The SHA256 checksum has also been updated, which is necessary for the new version. These changes are consistent with the package update.


1-1: Note on static analysis warning.

The static analysis tool (yamllint) reported a syntax error for the '%' character at the beginning of the file. This is a false positive as the '%' is part of a Jinja2 template syntax, which is commonly used in Conda recipes. No action is required to address this warning.

🧰 Tools
🪛 yamllint

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

(syntax)


14-18: Build section updates require attention.

  1. A new build script command has been added with --no-build-isolation. This might affect the build process and dependencies resolution.
  2. The entry point has changed from fastq_dl.fastq_dl:main to fastq_dl.cli.download:main, indicating a restructuring of the package's internal organization.
  3. A new run_exports section has been added, which may affect downstream dependencies.

These changes should be carefully tested to ensure they don't introduce any unexpected behavior.

To verify the entry point change:

#!/bin/bash
# Check for references to the old entry point
rg "fastq_dl.fastq_dl:main" recipes/
# Check for references to the new entry point
rg "fastq_dl.cli.download:main" recipes/

22-23: Host requirements updates need attention.

  1. The Python version requirement has been tightened from >=3.7 to >=3.9,<4.0. This change might affect compatibility with older Python versions.
  2. The poetry dependency has been replaced with poetry-core. This change in build system might impact the package build process.

Ensure that these changes are intentional and aligned with the package's compatibility goals.

To verify Python version usage:

#!/bin/bash
# Check for Python version references
grep -n "python" recipes/fastq-dl/meta.yaml

26-33: Run requirements have been significantly updated.

  1. The Python version requirement now matches the host requirement (>=3.9,<4.0).
  2. Several new dependencies have been added with specific version constraints:
    • requests >=2.31.0,<3.0.0
    • pysradb >=1.4.0,<2.0.0
    • rich-click >=1.6.1,<2.0.0
    • executor >=23.2.0,<24.0.0
    • rich >=13.3.1,<14.0.0
    • markdown-it-py 2.2.0
    • pandas >=2.2.3,<3.0.0

These new dependencies might introduce new functionalities or address security issues. However, the specific version constraints might affect compatibility with other packages in the Bioconda ecosystem.

Ensure that these changes are necessary and aligned with the package's functionality goals. Consider if any of these version constraints can be relaxed to improve compatibility.

To verify the new dependencies:

#!/bin/bash
# Check for usage of new dependencies in the package
for dep in requests pysradb rich-click executor rich markdown-it-py pandas; do
    echo "Checking usage of $dep:"
    rg "$dep" recipes/fastq-dl/
    echo ""
done

recipes/fastq-dl/meta.yaml Show resolved Hide resolved
@rpetit3 rpetit3 merged commit c248b98 into master Oct 21, 2024
7 checks passed
@rpetit3 rpetit3 deleted the bump/fastq_dl branch October 21, 2024 00:52
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