Giter Club home page Giter Club logo

Comments (7)

denelon avatar denelon commented on May 18, 2024 2

We are running a background process to check and see if the "Sha256" for an installer is still valid for the manifests. There is still work to automatically generate new manifests when files change.

One of the primary use cases for package managers is to be able to install a specific version of a package. If we only have access to a "latest" version of a package from the source, this creates challenges. We're considering additional meta-data in the manifest to identify these kinds of packages.

from winget-pkgs.

denelon avatar denelon commented on May 18, 2024 2

We've introduced automation to generate a valid manifest with the correct hash with the installer has changed at the URL provided by a manifest.

from winget-pkgs.

Tyriar avatar Tyriar commented on May 18, 2024 1

Related discussion: https://github.com/microsoft/winget-pkgs/issues/278

from winget-pkgs.

denelon avatar denelon commented on May 18, 2024 1

The challenge here is the SHA256 hash of the installer. The "latest" manifest would become invalid as soon as the newer "version" showed up with a different hash. We also run static analysis on any binary before it is included in the repository.

May users are intentional about wanting specific versions of software.

from winget-pkgs.

Chaphasilor avatar Chaphasilor commented on May 18, 2024 1

How about including a list of versions inside the manifest?
There could be a 'lastest' version and then also additional, fixed versions if there are download URLs for those.

This would sovle the problem of wrong version numbers if there's only a dynamic download URL where a specific version can't be selected.

It would also enable functionality like winget show <app-name> --versions to list all available versions and executing winget install <app-name> -v 'x.x.x'.

The static versions could be kept up-to-date, but this solution would prevent packages from becoming outdated simply because the latest version hasn't been pushed to the repo yet, which sometimes is the case with (linux) package managers.

from winget-pkgs.

whoiskevinrich avatar whoiskevinrich commented on May 18, 2024 1

VLC is interesting in that the SHA is located next to the download for latest. I don't know if this is a common pattern, but would a SHA at the same directory of the download be an avenue to consider?

from winget-pkgs.

denelon avatar denelon commented on May 18, 2024

@Chaphasilor we're looking at a few options, but we're likely to avoid trying to list every version of a package in a single manifest. Any time any of them changed, or became unavailable, we'd have to modify the manifest. We do list the versions for all current manifests:

'winget show vscode --versions'
'winget show --name Git -e --versions'

from winget-pkgs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.