For example foo-1.2.3-x86_64-pc-windows-msvc.zip, package name will be inferred as foo-1.2.3-x86 and version will be inferred as 64, which is caused by regex pattern: "([a-zA-Z0-9_\\.-]+)[_-]v?(([0-9]+\\.)*[0-9]+[a-zA-Z0-9]*)", would it be better to replace ([a-zA-Z0-9_\\.-]+) with ([a-zA-Z0-9_-]+)?