is there a jetbrains annotations source only package?

if not is there any technical reason one should not exist?

@simoncropp judging by https://www.jetbrains.com/help/resharper/Code_Analysis__External_Annotations.html#creating I am not sure that they would be used. Searching for external annotations does surface an outdated plugin though: https://plugins.jetbrains.com/plugin/11652-community-external-annotations And of course I regularly browse https://github.com/JetBrains/ExternalAnnotations
External annotations | ReSharper

ReSharper Help

@simoncropp I don’t think such a package exists, only the one with the binaries does, which I avoid to use. https://www.nuget.org/packages/JetBrains.Annotations

I can’t think of a technical reason why such a package should not exist, it probably would help keeping my copies of the annotation up to date in my projects.

I guess the package does not exist because Rider/R# is able to generate them which is more or less good enough. I think they haven’t changed the annotations for a long time.

JetBrains.Annotations 2024.3.0

JetBrains.Annotations help reduce false positive warnings, explicitly declare purity and nullability in your code, deal with implicit usages of members, support special semantics of APIs in ASP.NET and XAML frameworks and otherwise increase accuracy of JetBrains Rider and ReSharper code inspections. All usages of JetBrains.Annotations attributes are erased from metadata by default, which means no actual binary reference to 'JetBrains.Annotations.dll' assembly is produced. If you need to preserve these attributes in metadata, just define 'JETBRAINS_ANNOTATIONS' conditional compilation symbol in your projects.

@bitbonk @simoncropp There is also "copy to clipboard" and then paste into a file in your own project
@maartenballiauw @simoncropp Thats the way we do it in all our projects that produce nupkgs for public consumption. We always keep the *internal* checkbox checked and the *conditional* checkbox unchecked.
@maartenballiauw @bitbonk but wouldn’t a source only package be easier?
@simoncropp @maartenballiauw It would probably force a decision on whether to make the types internal and whether to make them conditional.
@bitbonk @simoncropp @maartenballiauw Could have different packages for each option, though.
@simoncropp I'm surprised there is a source generator that generates the annotations or something that doesn't require referencing a 3rd binary you have to deploy.
@simoncropp Afair, it is only used at compile time, what is the problem with the NuGet package with binaries?
@xoofx hmm. thats a good point. i will check that out
@simoncropp It's built into JetBrains Rider, and you just need to copy and paste it into your project.
JetBrains.Annotations.Sources 2025.2.0

JetBrains.Annotations help reduce false positive warnings, explicitly declare purity and nullability in your code, deal with implicit usages of members, support special semantics of APIs in ASP.NET and XAML frameworks and otherwise increase accuracy of JetBrains Rider and ReSharper code inspections.