package golibrary¶
Functions¶
func FindModuleRoot¶
func SourceSnapshot¶
Types¶
type CompatibilityContext¶
CompatibilityContext checks eligibility before registration or schema reads.
func NewCompatibilityContext¶
NewCompatibilityContext validates the descriptor and effective core replacement.
func (*CompatibilityContext) CheckDirectory¶
func (*CompatibilityContext) CheckPackage¶
CheckPackage validates eligibility and configuration dependencies without executing Go.
func (*CompatibilityContext) CheckPackages¶
CheckPackages inspects every selected package before deriving schemas or executing Go.
func (*CompatibilityContext) DiagnosticDetails¶
func (c *CompatibilityContext) DiagnosticDetails(
metadata PackageMetadata,
) *diagnostic.LibraryCompatibilityDetails
func (*CompatibilityContext) EndAnalysis¶
EndAnalysis restores current-source checks for subsequent reads.
func (*CompatibilityContext) ForAnalysis¶
ForAnalysis returns an independent context for one import analysis. Call ValidateSources before using the result and EndAnalysis before later reads.
func (*CompatibilityContext) Manifest¶
Manifest returns independent metadata records in deterministic package order.
func (*CompatibilityContext) ModuleSources¶
func (*CompatibilityContext) SourceSnapshot¶
func (*CompatibilityContext) ValidateSources¶
ValidateSources checks the source revisions used by this analysis.
func (*CompatibilityContext) WithModuleResolver¶
func (c *CompatibilityContext) WithModuleResolver(
resolver func(string) (ModuleSource, error),
) (*CompatibilityContext, error)
func (*CompatibilityContext) WithModules¶
type CompatibilityDeclaration¶
type CompatibilityDeclaration struct {
RequiredAPI string
SuggestedUnobinVersion string
Path string
Span *diagnostic.Span
RequiredAPISpan *diagnostic.Span
SuggestedUnobinVersionSpan *diagnostic.Span
}
func ReadCompatibility¶
type CompatibilityError¶
type CompatibilityError struct {
Kind CompatibilityErrorKind
// contains filtered or unexported fields
}
func (*CompatibilityError) Diagnostics¶
func (*CompatibilityError) Error¶
type CompatibilityErrorKind¶
type CompatibilityOptions¶
type CompatibilityOptions struct {
Descriptor *libraryapi.Descriptor
UnobinVersion string
CoreReplacement string
ToolchainPin string
ProjectFile string
Modules []ModuleSource
ResolveModule func(string) (ModuleSource, error)
}
CompatibilityOptions supplies one operation's toolchain and selected sources.
type ConfigurationSourceError¶
ConfigurationSourceError identifies unavailable or unreadable configuration source.
func (*ConfigurationSourceError) Error¶
func (*ConfigurationSourceError) Unwrap¶
type CoreDescriptorError¶
CoreDescriptorError identifies an unusable effective toolchain descriptor.
func (*CoreDescriptorError) Error¶
func (*CoreDescriptorError) Unwrap¶
type CoreFloorError¶
CoreFloorError identifies a linked module requiring a newer core release.
func (*CoreFloorError) Error¶
type ModuleSource¶
type ModuleSource struct {
Path string
Dir string
Dependency string
Version string
Commit string
Replacement string
}
ModuleSource identifies a selected Go module and its effective source.
func ModuleSourceAt¶
type PackageMetadata¶
type PackageMetadata struct {
Source PackageSource
Package string
Declaration CompatibilityDeclaration
RequiredCoreVersion string
MinimumGoVersion string
HasConfigurationEntryPoint bool
}
PackageMetadata records the declaration and module requirements used by a check.
type PackageSource¶
PackageSource identifies an inspected package and whether the build links it.
type ToolchainPinError¶
func (*ToolchainPinError) Error¶
type Validation¶
type Validation struct {
ModulePath string
PackageName string
HasResources bool
HasData bool
HasActions bool
HasFunctions bool
HasConfiguration bool
}