Skip to content

Commit 5623a07

Browse files
authored
Preview tag support (#428)
find prerelease version if version contains tag but prerelease parameter not used
1 parent 93c0f88 commit 5623a07

File tree

1 file changed

+19
-10
lines changed

1 file changed

+19
-10
lines changed

src/code/FindHelper.cs

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,25 @@ private IEnumerable<PSResourceInfo> FindFromPackageSourceSearchAPI(
251251
SourceCacheContext sourceContext)
252252
{
253253
List<IPackageSearchMetadata> foundPackagesMetadata = new List<IPackageSearchMetadata>();
254+
VersionRange versionRange = null;
255+
256+
if (_version != null)
257+
{
258+
if (!Utils.TryParseVersionOrVersionRange(_version, out versionRange))
259+
{
260+
_cmdletPassedIn.WriteError(new ErrorRecord(
261+
new ArgumentException("Argument for -Version parameter is not in the proper format"),
262+
"IncorrectVersionFormat",
263+
ErrorCategory.InvalidArgument,
264+
this));
265+
yield break;
266+
}
267+
268+
if (_version.Contains("-"))
269+
{
270+
_prerelease = true;
271+
}
272+
}
254273

255274
// filter by param: Name
256275
if (!pkgName.Contains("*"))
@@ -382,16 +401,6 @@ private IEnumerable<PSResourceInfo> FindFromPackageSourceSearchAPI(
382401
}
383402
else
384403
{
385-
if (!Utils.TryParseVersionOrVersionRange(_version, out VersionRange versionRange))
386-
{
387-
_cmdletPassedIn.WriteError(new ErrorRecord(
388-
new ArgumentException("Argument for -Version parameter is not in the proper format"),
389-
"IncorrectVersionFormat",
390-
ErrorCategory.InvalidArgument,
391-
this));
392-
yield break;
393-
}
394-
395404
// at this point, version should be parsed successfully, into allVersions (null or "*") or versionRange (specific or range)
396405
if (pkgName.Contains("*"))
397406
{

0 commit comments

Comments
 (0)