Git Product home page Git Product logo

Comments (5)

 avatar commented on May 27, 2024 1

I think we can detect the "correct" version from the installer file with high confidence only if it's an MSI or an MSIX. The example you showed is an .exe, which can have all sorts of different behaviors depending on how the installer is made. One way for .exe is to look at the FileVersion / ProductVersion file property (that @wingetbot uses in its automation). The problem with that approach is that not all publishers set this value and even if they do, it does not match the actual version written to Registry / Apps&Features, resulting in a lot of false matches.

If wingetcreate auto-fills a version for a user, I think it should be the one that's the actual DisplayVersion written to Registry, and for that I think the implementation should first target MSIX and MSIs, and then optionally see if something can be done for .exe's.

The wingetcreate new command already fetches the version for MSIX's, so as a first step, we can look to replicate that behavior for the update command

wingetcreate new correctly identified version for same exe when I initially submitted the package, but during wingetcreate update it is not detected. That is what I am saying.

from winget-create.

github-actions avatar github-actions commented on May 27, 2024

Hi I'm an AI powered bot that finds similar issues based off the issue title.

Please view the issues below to see if they solve your problem, and if the issue describes your problem please consider closing this one and thumbs upping the other issue to help us prioritize it. Thank you!

Open similar issues:

Closed similar issues:

Note: You can give me feedback by thumbs upping or thumbs downing this comment.

from winget-create.

 avatar commented on May 27, 2024

It does automatically parse it if you run wingetupdate -i wingetcreate update -i, not that that helps.

#177 comment mentions that -i should detect version from installer, but it also doesn't do that.

from winget-create.

mdanish-kh avatar mdanish-kh commented on May 27, 2024

I think we can detect the "correct" version from the installer file with high confidence only if it's an MSI or an MSIX. The example you showed is an .exe, which can have all sorts of different behaviors depending on how the installer is made. One way for .exe is to look at the FileVersion / ProductVersion file property (that @wingetbot uses in its automation). The problem with that approach is that not all publishers set this value and even if they do, it does not match the actual version written to Registry / Apps&Features, resulting in a lot of false matches.

If wingetcreate auto-fills a version for a user, I think it should be the one that's the actual DisplayVersion written to Registry, and for that I think the implementation should first target MSIX and MSIs, and then optionally see if something can be done for .exe's.

The wingetcreate new command already fetches the version for MSIX's, so as a first step, we can look to replicate that behavior for the update command

from winget-create.

 avatar commented on May 27, 2024

wingetcreate update already downloads and parses the installer, so why can't it check for the same like wingetcreate new.
Using -i with command should show a similar flow with version number suggested which is detected from installer.
In my example, the package has correct display version in registry/app&features with each new version.

Screenshot 2024-01-17 202146

from winget-create.

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.