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

Error processing <package> (NoMethodError): undefined method `split' #8003

Closed
1 task done
adam-hotait-voodoo opened this issue Sep 11, 2023 · 3 comments · Fixed by #8037
Closed
1 task done

Error processing <package> (NoMethodError): undefined method `split' #8003

adam-hotait-voodoo opened this issue Sep 11, 2023 · 3 comments · Fixed by #8037
Labels
T: bug 🐞 Something isn't working

Comments

@adam-hotait-voodoo
Copy link

Is there an existing issue for this?

  • I have searched the existing issues

Package ecosystem

pip

Package manager version

No response

Language version

Python 3.11

Manifest location and content before the Dependabot update

requirements/requirements.txt:

boto3==1.28.32
fastapi==0.101.1
⋮
[private packages here]
⋮
gunicorn==21.2.0
pydantic==2.2.1
redis==5.0.0
uvicorn==0.23.2

requirements/tests.txt:

coverage==7.3.0
fakeredis==2.18.0
⋮
[private packages here]
⋮
httpx==0.24.1
moto==4.1.15
pytest-mock==3.11.1
pytest==7.4.0
requests==2.31.0

requirements/dev.txt:

mypy
pylint

types-requests
types-redis

dependabot.yml content

version: 2
registries:
  python-codeartifact:
    type: python-index
    url: https://<private>.d.codeartifact.us-west-2.amazonaws.com/pypi/<private>/simple/
    username: aws
    password: ${{secrets.<secret for internal repository>}}
    replaces-base: true
updates:
  - package-ecosystem: "pip"
    directory: "/requirements"
    insecure-external-code-execution: allow
    target-branch: "develop"
    registries:
      - python-codeartifact
    schedule:
      interval: "weekly"
    commit-message:
      prefix: "deps"
    groups:
      non-major-versions:
        update-types:
          - "minor"
          - "patch"
    open-pull-requests-limit: 10
    reviewers:
      - <internal GitHub group>

Updated dependency

All dependencies are affected. See below Dependabot's logs for requests, all dependencies show the same error.

What you expected to see, versus what you actually saw

Dependabot ran successfully last week. Now we get the following issue (here I just copy/pasted the Dependabot logs for requests, but we get the same issue for every package):

⋮
updater | 2023/09/11 09:13:33 INFO <job_720270953> Checking if requests 2.31.0 needs updating
  proxy | 2023/09/11 09:13:33 [070] GET https://<private-repository>.d.codeartifact.us-west-2.amazonaws.com:443/pypi/<private>/simple/requests/
  proxy | 2023/09/11 09:13:33 [070] * authenticating python index request (host: <private-repository>.d.codeartifact.us-west-2.amazonaws.com)
  proxy | 2023/09/11 09:13:34 [070] 200 https://<private-repository>.d.codeartifact.us-west-2.amazonaws.com:443/pypi/<private>/simple/requests/
updater | 2023/09/11 09:13:34 INFO <job_720270953> Latest version is 2.31.0
updater | 2023/09/11 09:13:34 INFO <job_720270953> Sending event b4cfd6d0b90644c5a0132e83d950bdde to Sentry
  proxy | 2023/09/11 09:13:34 [072] POST https://sentry.io:443/api/1451818/store/
  proxy | 2023/09/11 09:13:34 [072] 200 https://sentry.io:443/api/1451818/store/
updater | 2023/09/11 09:13:34 ERROR <job_720270953> Error processing requests (NoMethodError)
updater | 2023/09/11 09:13:34 ERROR <job_720270953> undefined method `split' for #<Dependabot::Python::Version 2.31.0>
updater | 
updater |         version, @local_version = version.split("+")
updater |                                          ^^^^^^
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/python/lib/dependabot/python/version.rb:31:in `initialize'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /usr/local/lib/ruby/3.1.0/rubygems/version.rb:204:in `new'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /usr/local/lib/ruby/3.1.0/rubygems/version.rb:204:in `new'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:221:in `semver_rules_allow_grouping?'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:127:in `compile_updates_for'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:40:in `block in compile_all_dependency_changes_for'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:28:in `each'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:28:in `compile_all_dependency_changes_for'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/create_group_update_pull_request.rb:43:in `perform'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:105:in `run_update_for'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:89:in `block in run_grouped_dependency_updates'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:74:in `each'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:74:in `run_grouped_dependency_updates'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:42:in `perform'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:63:in `run'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/update_files_command.rb:38:in `perform_job'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> /home/dependabot/dependabot-updater/lib/dependabot/base_command.rb:52:in `run'
updater | 2023/09/11 09:13:34 ERROR <job_720270953> bin/update_files.rb:23:in `<main>'
⋮

Native package manager behavior

No response

Images of the diff or a link to the PR, issue, or logs

No response

Smallest manifest that reproduces the issue

No response

@adam-hotait-voodoo adam-hotait-voodoo added the T: bug 🐞 Something isn't working label Sep 11, 2023
@fredrikaverpil
Copy link
Contributor

fredrikaverpil commented Sep 14, 2023

I'm seeing the same problem on my end. I'm using Poetry 1.6.1 (pyproject.toml and poetry.lock) and by adding grouping to my config, I also got this error:

updater | 2023/09/14 09:33:53 ERROR <job_721897648> Error processing pytz (NoMethodError)
updater | 2023/09/14 09:33:53 ERROR <job_721897648> undefined method `split' for #<Dependabot::Python::Version 2023.3.post1>
updater | 
updater |         version, @local_version = version.split("+")
updater |                                          ^^^^^^

This diff of .dependabot.yml illustrates how adding groups caused the issue on my end:

version: 2

updates:
  - package-ecosystem: "github-actions"
    directory: "/"
    registries: "*"
    schedule:
      interval: "weekly"
      day: "tuesday"
  - package-ecosystem: "pip"
+     groups:
+       production-dependencies:
+         dependency-type: "production"
+         update-types:
+           - minor
+           - patch
+       development-dependencies:
+         dependency-type: "development"
+         update-types:
+           - minor
+           - patch
    insecure-external-code-execution: allow
    directory: "/"
    registries: "*"
    schedule:
      interval: "weekly"
      day: "tuesday"
    ignore:
      - dependency-name: "dr"
    open-pull-requests-limit: 50
    allow:
      - dependency-name: "*"
        dependency-type: all
    commit-message:
      prefix: "chore"
      include: "scope"
    versioning-strategy: increase-if-necessary

registries:
  github:
    type: git
    url: https://github.com/
    username: x-access-token
    password: ${{secrets.REDACTED_TOKEN}}

  cloudsmith:
    type: python-index
    url: https://dl.cloudsmith.io/<REDACTED>/<ORG>/<REPO>/python/simple/
    replaces-base: true

Dependabot log:

updater | 2023/09/14 09:33:52 INFO <job_721897648> Checking if pytz 2023.3 needs updating
  proxy | 2023/09/14 09:33:52 [054] GET https://dl.cloudsmith.io:443/<REDACTED>/python/simple/pytz/
  proxy | 2023/09/14 09:33:52 [054] * authenticating python index request (host: dl.cloudsmith.io)
  proxy | 2023/09/14 09:33:52 [054] 302 https://dl.cloudsmith.io:443/<REDACTED>/python/simple/pytz/
  proxy | 2023/09/14 09:33:52 [056] GET https://pypi.python.org:443/simple/pytz
  proxy | 2023/09/14 09:33:52 [056] 301 https://pypi.python.org:443/simple/pytz
  proxy | 2023/09/14 09:33:52 [058] GET https://pypi.org:443/simple/pytz
  proxy | 2023/09/14 09:33:52 [058] 301 https://pypi.org:443/simple/pytz
  proxy | 2023/09/14 09:33:52 [060] GET https://pypi.org:443/simple/pytz/
  proxy | 2023/09/14 09:33:52 [060] 200 https://pypi.org:443/simple/pytz/
updater | 2023/09/14 09:33:53 INFO <job_721897648> Latest version is 2023.3.post1
updater | 2023/09/14 09:33:53 INFO <job_721897648> Sending event 07c6884f6a5843ff8db154b432f2172e to Sentry
  proxy | 2023/09/14 09:33:53 [062] POST https://sentry.io:443/api/1451818/store/
  proxy | 2023/09/14 09:33:53 [062] 200 https://sentry.io:443/api/1451818/store/
updater | 2023/09/14 09:33:53 ERROR <job_721897648> Error processing pytz (NoMethodError)
updater | 2023/09/14 09:33:53 ERROR <job_721897648> undefined method `split' for #<Dependabot::Python::Version 2023.3.post1>
updater | 
updater |         version, @local_version = version.split("+")
updater |                                          ^^^^^^
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/python/lib/dependabot/python/version.rb:32:in `initialize'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /usr/local/lib/ruby/3.1.0/rubygems/version.rb:204:in `new'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /usr/local/lib/ruby/3.1.0/rubygems/version.rb:204:in `new'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:222:in `semver_rules_allow_grouping?'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:128:in `compile_updates_for'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:41:in `block in compile_all_dependency_changes_for'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:29:in `each'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/group_update_creation.rb:29:in `compile_all_dependency_changes_for'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/create_group_update_pull_request.rb:44:in `perform'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:106:in `run_update_for'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:90:in `block in run_grouped_dependency_updates'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:75:in `each'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:75:in `run_grouped_dependency_updates'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater/operations/group_update_all_versions.rb:43:in `perform'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:64:in `run'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/update_files_command.rb:39:in `perform_job'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> /home/dependabot/dependabot-updater/lib/dependabot/base_command.rb:53:in `run'
updater | 2023/09/14 09:33:53 ERROR <job_721897648> bin/update_files.rb:24:in `<main>'

@jakecoffman
Copy link
Member

#8037 is deployed now if you want to try again

@fredrikaverpil
Copy link
Contributor

@jakecoffman many thanks, I successfully get grouped dependabot PRs now so I can confirm this fixed that issue! 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T: bug 🐞 Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants