Skip to content

Lock the public API surface before 1.0 #2

Description

@WailedParsley36

The public-API analyzer (Microsoft.CodeAnalysis.PublicApiAnalyzers) is wired into Socigy.OpenSource.DB.Core with empty PublicAPI.Shipped.txt / PublicAPI.Unshipped.txt, so it currently only warns (RS0016).

Before tagging 1.0:

  • Populate the baseline (IDE "Add all to public API" fix, or apply the RS0016 fixer) so the current surface is recorded in PublicAPI.Unshipped.txt.
  • Curate publicinternal. Socigy.OpenSource.DB.Core exposes many types that are implementation detail. Caution: several "internal-looking" types are referenced by generated code in consumer assemblies (e.g. Parsers/Postgresql/* visitors, SocigyDatabaseFactoryBase) and must stay public — verify each demotion still compiles the Example.* and test projects. The 0.3.3 additions (KeyringFieldEncryptor, FieldReencryptor, IReencryptableEncryptor, the new Vault encryptors/options) should be reviewed in this pass too.
  • At release, move PublicAPI.Unshipped.txtShipped.txt, and AnalyzerReleases.Unshipped.mdShipped.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    apiPublic API surface / PublicAPI.*.txtbreaking-change-riskMay break the public API frozen at 1.0

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions