dependabot-core icon indicating copy to clipboard operation
dependabot-core copied to clipboard

update_not_possible message

Open lazytesting opened this issue 1 year ago • 3 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

Package ecosystem

pub

Package manager version

No response

Language version

3.1.5

Manifest location and content before the Dependabot update

./pubspec.yaml

dependabot.yml content

---
job:
  package-manager: pub
  source:
    provider: github
    repo: orgName/repoName
    directory: "/."
    branch: fix-dependabot
    api-endpoint: https://api.github.com/
    hostname: github.com
credentials:
  - type: pub_repository
    url: https://xxxxx
    token: xxxx

Updated dependency

I have the same problem with several dependencies both internal and external. This is an example of an internal one: pubspec.yaml: name: "my_home" version: ^2.2.0

pubspec.lock version 2.2.0

What you expected to see, versus what you actually saw

What happens: the module(s) are not updated what I would expect: this module gets updated to 2.4.0

I see the log message "Requirements to unlock update_not_possible" but it is not clear for me why it is not possible to update. I could not find any docs on this warning and I also could not find a way to further debug the issue.

Native package manager behavior

when running "flutter pub upgrade my_home" the module get's updated to 2.4.0

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

updater | 2024/01/26 09:03:37 INFO Checking if my_home 2.2.0 needs updating updater | 2024/01/26 09:03:37 INFO Latest version is 2.4.0 updater | 2024/01/26 09:03:37 INFO Requirements to unlock update_not_possible updater | 2024/01/26 09:03:37 INFO Requirements update strategy updater | 2024/01/26 09:03:37 INFO No update possible for my_home 2.2.0

Smallest manifest that reproduces the issue

No response

lazytesting avatar Jan 26 '24 09:01 lazytesting

Same issue! Any updates on this?

updater | 2024/07/16 14:33:01 INFO <job_856560749> Checking if logger 2.3.0 needs updating
updater | 2024/07/16 14:33:01 INFO <job_856560749> Latest version is 2.4.0
updater | 2024/07/16 14:33:01 INFO <job_856560749> Requirements to unlock update_not_possible
updater | 2024/07/16 14:33:01 INFO <job_856560749> Requirements update strategy 
updater | 2024/07/16 14:33:01 INFO <job_856560749> No update possible for logger 2.3.0

dependabot.yaml

version: 2
updates:
  - package-ecosystem: "github-actions"
    directory: "/"
    schedule:
      interval: "daily"
  - package-ecosystem: "pub"
    directory: "/"
    schedule:
      interval: "daily"

hls-app avatar Jul 16 '24 14:07 hls-app

Same issue

version: 2
updates:
  - package-ecosystem: "pub"
    directory: "/"
    schedule:
      interval: "daily"
    open-pull-requests-limit: 2
Screenshot 2024-08-21 at 08 47 21

pubspec.yaml

rxdart: ^0.27.7

Mik77o avatar Aug 21 '24 06:08 Mik77o

@hls-app Did you manage to solve this problem, or does it still occur for you?

Mik77o avatar Aug 21 '24 08:08 Mik77o

I noticed that dependency_services fails to resolve dependencies only after it has compiled into a executable, with the following error at version_solver.dart:133:

Because every version of flutter from sdk depends on collection 1.18.0 and analyzer >=6.8.0 depends on collection ^1.19.0, flutter from sdk is incompatible with
  analyzer >=6.8.0.
And because analyzer >=6.6.0 <6.9.0 depends on macros >=0.1.2-main.3 <0.1.3, if flutter from sdk and analyzer >=6.6.0 then macros >=0.1.2-main.3 <0.1.3.
And because macros >=0.1.2-main.2 <0.1.2-main.4 depends on _macros 0.3.1 from sdk and macros >=0.1.2-main.4 <0.1.3-main.0 depends on _macros 0.3.2 from sdk, if flutter
  from sdk and analyzer >=6.6.0 then _macros 0.3.1 or 0.3.2 from sdk.
And because _macros from sdk doesn't exist (could not find package _macros in the Dart SDK) and riverpod_lint >=2.6.1 <3.0.0-dev.0 depends on analyzer ^6.7.0, flutter
  from sdk is incompatible with riverpod_lint >=2.6.1 <3.0.0-dev.0.
So, because genshin_material depends on both flutter from sdk and riverpod_lint ^2.6.1, version solving failed.

Running directly from the source with dart command works well. (performance is obviously much worse.)

pub/lib/dependabot/pub/helpers.rb

(line 239)
            stdout, stderr, status = Open3.capture3(
              env.compact,
-             File.join(Helpers.pub_helpers_path, "dependency_services"),
+             "/opt/dart/dart-sdk/bin/dart",
+             "/home/dependabot/pub/helpers/bin/dependency_services.dart",
              command,
              stdin_data: stdin_data,
              chdir: command_dir
            )

UPDATE: also worked with AOT snapshots.

commit: https://github.com/chika3742/dependabot-core/commit/5cf46ece6c80c8ce2d64ddc915a69f5226a8c93f

pubspec.yaml

name: foo
environment:
  flutter: '>= 3.24.0'
  sdk: '^3.5.0'

dependencies:
  flutter:
    sdk: flutter
dev_dependencies:
  custom_lint: 0.6.7

Command Line

$ dependabot update pub _ --local .

Result

(before)

(nothing outputted)

(after applying fix)

...
updater | 2024/11/04 13:39:33 INFO Results:
updater | +-----------------------------------------------+
updater | |      Changes to Dependabot Pull Requests      |
updater | +---------+-------------------------------------+
updater | | created | custom_lint ( from 0.6.7 to 0.7.0 ) |
updater | +---------+-------------------------------------+
...

...but the cause is still unclear.

chika3742 avatar Oct 30 '24 03:10 chika3742