diff --git a/Pathy/ChainablePath.cs b/Pathy/ChainablePath.cs index 57d475d..ddf32dc 100644 --- a/Pathy/ChainablePath.cs +++ b/Pathy/ChainablePath.cs @@ -608,9 +608,14 @@ namespace Microsoft.CodeAnalysis /// /// A special attribute recognized by Roslyn, that marks a type as "embedded", meaning it won't ever be visible from other assemblies. /// - [AttributeUsage(AttributeTargets.All)] - [ExcludeFromCodeCoverage] - internal sealed class EmbeddedAttribute : Attribute + /// + /// It is declared as partial so that a consumer that also uses another source-only package declaring this same + /// attribute (such as Reflectify) ends up with one merged type instead of a duplicate type error. For the parts to merge, + /// every declaration must have the same shape, so this one deliberately carries no type-level attributes. Adding + /// [AttributeUsage] back would break the merge with a duplicate attribute error, and it is redundant anyway because + /// is already the default. + /// + internal sealed partial class EmbeddedAttribute : Attribute { } }