Skip to content

Caliper v1.6.0

Choose a tag to compare

@trendvidia trendvidia released this 06 Oct 04:17
· 11 commits to main since this release

Analysis-engine release: a caller can now see which packages the load dropped and which loaded packages the call graph leaves out, and why.

Added

  • Engine.Failed() returns the packages the load dropped (#38).
    Packages() leaves out every package with errors, and until now
    nothing recorded that they existed, so a caller describing the whole
    module could not tell a package that failed from one that does not
    exist. Failed() returns them with their Errors and whatever
    go/packages kept: the syntax that parsed, and for a partly
    type-checked package, the Types scope and TypesInfo of the
    declarations that resolved. A directory whose files a build
    constraint all excludes is still absent, because ./... does not
    match it.

  • InterProceduralContext.Skipped lists the loaded packages left out of
    the SSA program
    , each with the Cause: the package whose error outside
    a function body put it out of reach. Such a package is in Packages()
    and type-checked cleanly, but imports, possibly transitively, a package
    with a declaration or syntax error, so it has no functions and no
    call-graph edges. Before, that was silent.