Skip to content

Proposal: Unified Extension points for Imports #4539

@Nirmal4G

Description

@Nirmal4G

W.R.T to #1686

If we do get a Base SDK and/or a Managed SDK that's above .NET SDK, then I would propose to unify the Import Extensibility points they offer.

Base SDK props

  • Directory.Build.props
  • <ProjectName>.<Vendor>.Before.props

Any SDK props

  • CustomBefore<SdkName>Props
  • <SDK props>
  • CustomAfter<SdkName>Props

Base SDK props

  • <ProjectName>.<Vendor>.After.props

Project File

  • CustomImportBeforeProject / CustomBefore<ProjectName> / Custom.Project.props
  • <Project File>
  • CustomImportAfterProject / CustomAfter<ProjectName> / Custom.Project.targets

Base SDK targets

  • <ProjectName>.<Vendor>.Before.targets

Any SDK targets

  • CustomBefore<SdkName>Targets
  • <SDK targets>
  • CustomAfter<SdkName>Targets

Base SDK targets

  • <ProjectName>.<Vendor>.After.targets
  • Directory.Build.targets

NOTE: Custom Before/After are user extensibility points. They are optional as they depend on the SDK implementers. MSBuildSdks already follows the Custom pattern I mentioned above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions