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

[rb] Relax base64 dependency version constraint #14678

Open
wants to merge 2 commits into
base: trunk
Choose a base branch
from

Conversation

chileung-b4b
Copy link

@chileung-b4b chileung-b4b commented Oct 29, 2024

User description

Description

Relax the selenium-webdriver gem dependency on base64 version constraint, including previous versions down to v0.1.1

Motivation and Context

To be able to specify the webdriver binary path i.e SE_CHROMEDRIVER environment variable, we want to use the 4.25.0 version at least of the gem which includes these changes

Version v0.2.0 of base64 has no functional differences with previous versions and some gems still require a previous version of base64.

Sometimes it's hard and/or time consuming to update the other gems depending on a specific base64 version and as both v0.1.1, v0.1.2 and v0.2.0 have no functional differences, I think selenium-webdriver should allow using a lower version of base64:

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • I have read the contributing document.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing tests passed (I could only run the small and medium tests correctly locally).

PR Type

Bug fix, Enhancement


Description

  • Relaxed the base64 gem dependency version in selenium-webdriver.gemspec to allow versions from 0.1.1 to below 0.3.
  • This change addresses compatibility issues with other gems that require earlier versions of base64, while maintaining functionality.
  • Ensures that the selenium-webdriver gem can work with a wider range of base64 versions without functional differences.

PRDescriptionHeader.CHANGES_WALKTHROUGH

Relevant files
Dependencies
selenium-webdriver.gemspec
Relax base64 dependency version constraints                           

rb/selenium-webdriver.gemspec

  • Relaxed the version constraint for the base64 dependency.
  • Changed from requiring ~> 0.2 to allowing versions >= 0.1.1 and < 0.3.

  • +1/-1     

    💡 PR-Agent usage: Comment /help "your question" on any pull request to receive relevant information

    @CLAassistant
    Copy link

    CLAassistant commented Oct 29, 2024

    CLA assistant check
    All committers have signed the CLA.

    Copy link
    Contributor

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 1 🔵⚪⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Dependency Change
    The PR relaxes the version requirement for the 'base64' gem. Verify if this change could potentially introduce compatibility issues with other dependencies or the project's functionality.

    Copy link
    Contributor

    PR Code Suggestions ✨

    Explore these optional code suggestions:

    CategorySuggestion                                                                                                                                    Score
    Best practice
    Tighten the upper bound of the 'base64' dependency version range

    Consider using a more specific upper bound for the 'base64' dependency to ensure
    compatibility with future versions while allowing for minor updates.

    rb/selenium-webdriver.gemspec [50]

    -s.add_dependency 'base64', ['>= 0.1.1', '< 0.3']
    +s.add_dependency 'base64', ['>= 0.1.1', '< 0.2.1']
    • Apply this suggestion
    Suggestion importance[1-10]: 8

    Why: The suggestion to tighten the upper bound of the 'base64' dependency version range is valid and important. It helps ensure compatibility with future versions by preventing potential breaking changes in versions above 0.2.1, while still allowing for minor updates.

    8

    💡 Need additional feedback ? start a PR chat

    @chileung-b4b chileung-b4b force-pushed the relax-ruby-base64-dependency-version branch from 57a4e8f to 78123a6 Compare October 30, 2024 09:14
    @chileung-b4b chileung-b4b changed the title [rb] Relax base64 dependency version [rb] Relax base64 dependency version constraint Oct 30, 2024
    Version 0.2.0 of base64 has no functional differences with previous versions and
    some gems still require a previous version of base64.
    @chileung-b4b chileung-b4b force-pushed the relax-ruby-base64-dependency-version branch from 758fbbb to 31da166 Compare November 1, 2024 09:26
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    2 participants