What NuGet Could Not Find
The package ID exists, but none of the versions available from the enabled feeds satisfy the requested version range or exact pin.
Validation
Re-run the failing command and confirm the original code/message is gone, and confirm expected artifacts or outputs exist (packages restored, build/publish succeeds).
Confirm the exact package you asked for
Verify which versions exist in the feed and compare them to your constraint, update PackageReference or PackageVersion to an available compatible version, and ensure the correct feed is enabled and allowed, then rerun with dotnet restore.
Why It Was Not Found
Usually this comes down to pinned or exact version isn’t on the feed, the constraint is too strict and excludes existing versions, or source mapping blocks the feed that has the required version.
Prove the Source Resolves Correctly Now
dotnet restore succeeds without NU1102.
The resolved version in project.assets.json matches expectations.
Typical Output
error NU1102: Unable to find package MyPackage with version (>= 2.0.0) Mechanism
NuGet enumerates available versions from the applicable feeds. If none match your version range or pin, it emits NU1102.
Avoid Version and Source Drift
To prevent this, use CPM or lock files to keep versions consistent and reproducible, and mirror critical packages and versions into a stable internal feed.
Docs and source code
NU1102 message template
User-facing message template. - GitHub
<data name="Error_NoPackageVersionsExistInRange" xml:space="preserve">
<value>Unable to find package {0} with version {1}</value>
</data>
<data name="Error_NoStablePackageVersionsExist" xml:space="preserve">