Better artifact choosing algorithm
LPGhatguy opened this issue · 0 comments
LPGhatguy commented
Right now, Foreman just picks the first artifact that has the name of your platform in it.
Some software like ripgrep has releases with lots of artifacts. For this release, 11.0.2, there are four Windows releases alone:
ripgrep-11.0.2-i686-pc-windows-gnu.zip
ripgrep-11.0.2-i686-pc-windows-msvc.zip
ripgrep-11.0.2-x86_64-pc-windows-gnu.zip
ripgrep-11.0.2-x86_64-pc-windows-msvc.zip
On my system, the ideal choice would be artifact 4, because it is 64-bit and compiled for MSVC, my preferred compiler.
We should change the artifact-choosing algorithm to extract "attributes" from an artifact based on its name. From there, we can rank artifacts and choose the best one for our platform. Some attributes we might pick include:
- Platform, like Windows or macOS
- Architecture, like i686/x86/32, x86_64/x64/64, arm, or aarch64
- Toolchain, like MSVC, GNU or MUSL