diff --git a/ModuleFast.psm1 b/ModuleFast.psm1 index 6db00f6..d6bdb62 100644 --- a/ModuleFast.psm1 +++ b/ModuleFast.psm1 @@ -1816,11 +1816,11 @@ function Find-LocalModule { #We can fast filter items that are below the lower bound, we dont need to read these manifests if ($ModuleSpec.Min) { - #HACK: Nuget does not correctly convert major.minor.build versions. + #HACK: Nuget does not correctly convert major.minor.build versions [version]$originalBaseVersion = ($modulespec.Min.OriginalVersion -split '-')[0] [Version]$minVersion = $originalBaseVersion.Revision -eq -1 ? $originalBaseVersion : $ModuleSpec.Min.Version - if ($minVersion -lt $ModuleSpec.Min.OriginalVersion) { - Write-Debug "${ModuleSpec}: Skipping $folder - below the lower bound" + if ($version -lt $minVersion) { + Write-Debug "${ModuleSpec}: Skipping $folder - $version is below the lower bound of $minVersion" return } } diff --git a/ModuleFast.tests.ps1 b/ModuleFast.tests.ps1 index 4c30cdb..5c2f557 100644 --- a/ModuleFast.tests.ps1 +++ b/ModuleFast.tests.ps1 @@ -259,6 +259,14 @@ Describe 'Get-ModuleFastPlan' -Tag 'E2E' { } ModuleName = 'PrereleaseTest' }, + @{ + Spec = 'PrereleaseTest>=0.0.1-prerelease' + Check = { + $actual.Name | Should -Be 'PrereleaseTest' + $actual.ModuleVersion | Should -Be '0.0.2-prerelease' + } + ModuleName = 'PrereleaseTest' + }, @{ Spec = 'PrereleaseTest:*' ModuleName = 'PrereleaseTest'