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

refactor(Get-Manifest): Select actual source for manifest #6142

Open
wants to merge 21 commits into
base: develop
Choose a base branch
from

Conversation

HUMORCE
Copy link
Member

@HUMORCE HUMORCE commented Sep 19, 2024

Description

TODOs:

  • Consistency on scoop-list result
  • Error handling and a better prompt when manifest file missing(removed/unavailable/inaccessible) from actual source

Motivation and Context

Relates to #2719, #3441, #3870, #5172, #5709

How Has This Been Tested?

before: LEFT pane, after: RIGHT pane

f6ce496: Select actual source for manifest

manifests with same name from different bucket:
bucket

manifest that installs with URI:
local_and_remote_manfiest

Fallback to installed manifest:
removed_from_sources_manifest

e7155ea: handling deprecated manifest
deprecated

c525005:
standalone manifest: any query or installation that does not install with app name, e.g. PATH or URI

result of scoop-info will drop Installed version and available update when source of queried and installed are different.

BOTH pane are after effects

standalone_same_source

c38fc63: depends support for standalone manifest

❯ scoop depends .\ack.json

Source                                 Name
------                                 ----
main                                   perl
C:\Users\humorce\Desktop\6142\ack.json ack


❯ scoop depends http://127.0.0.1/ack.json

Source                    Name
------                    ----
main                      perl
http://127.0.0.1/ack.json ack

a65c84a: deprecated tag/mark on scoop-list

main on  master
❯ mv .\bucket\d2.json .\deprecated\
main on  master [✘?]
❯ scoop list d2
Installed apps matching 'd2':

Name Version Source Updated             Info
---- ------- ------ -------             ----
d2   0.6.6   main   2024-09-24 10:52:07 Deprecated package
                                        ↑

61b3259: show message when multiple buckets contain [querying app]

current on  refctor/parse_app-n-get-manifest
❯ scoop info d2
WARN  Multiple buckets contain manifest 'd2', the current selection is 'main/d2'.

Name        : d2
Description : A modern diagram scripting language that turns text to diagrams.
Version     : 0.6.6
Source      : main
Website     : https://d2lang.com
License     : MPL-2.0
Updated at  : 8/2/2024 4:29:10 AM
Updated by  : github-actions[bot]
Binaries    : bin\d2.exe

current on  refctor/parse_app-n-get-manifest
❯ scoop install d2
WARN  Multiple buckets contain manifest 'd2', the current selection is 'main/d2'.
Installing 'd2' (0.6.6) [64bit] from 'main' bucket
Loading d2-v0.6.6-windows-amd64.tar.gz from cache
Checking hash of d2-v0.6.6-windows-amd64.tar.gz ... ok.
Extracting d2-v0.6.6-windows-amd64.tar.gz ... done.
Linking ~\scoop\apps\d2\current => ~\scoop\apps\d2\0.6.6
Creating shim for 'd2'.
'd2' (0.6.6) was installed successfully!

Checklist:

  • I have read the Contributing Guide.
  • I have ensured that I am targeting the develop branch.
  • I have updated the documentation accordingly.
  • I have updated the tests accordingly.
  • I have added an entry in the CHANGELOG.

@HUMORCE HUMORCE changed the title refactor(core): Parse/Select installed apps/manifests first refactor(Get-Manifest): Select actual source for installed manifest Sep 20, 2024
@HUMORCE HUMORCE marked this pull request as ready for review September 20, 2024 02:20
@HUMORCE HUMORCE changed the title refactor(Get-Manifest): Select actual source for installed manifest refactor(Get-Manifest): Select actual source for manifest Sep 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant