Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: added gitlab support, simplified version sorting with ls-remote
This allows for easier access to both GitHub and GitLab releases, without having to modify anything new. It also simplifies sorting by using git ls-remote's built-in --sort functionality. Since not all projects strictly follow semver, attempts were made to normalize it, such as if there is no `-` between a patch version and `rc`, `prerelease`, etc. NOTE: this does require git >= 2.18.0, so that is checked for. NOTE: `versionsort.prereleaseSuffix` was deprecated in favor of `versionsort.suffix`, but per its commit will be retained. See git/git@c026557 It also removes the -C - parameter from curl, which was attempting to resume downloads, querying the server for the byte range to do so. This is not universally supported, and if the server doesn't support it, the download will fail. Finally, where possible, it uses shell built-ins like parameter substitution over calling external commands. If this isn't possible, it minimizes the number of spawned subshells by combining commands rather than piping. This speeds up the asdf ecosystem as a whole, by minimizing syscalls.
- Loading branch information