Functions inherited from embedded members not displayed
Example: https://godoc.org/firebase.google.com/go/auth
Both auth.Client and auth.TenantClient has many exported members that are inherited from various embedded members. None of these are displayed on the generated output.
I see that this has happened before (#25) and was fixed, but it seems to be happening again.
Output from running go doc -all locally:
type Client struct {
TenantManager *TenantManager
// Has unexported fields.
}
Client is the interface for the Firebase auth service.
Client facilitates generating custom JWT tokens for Firebase clients, and
verifying ID tokens issued by Firebase backend services.
func NewClient(ctx context.Context, conf *internal.AuthConfig) (*Client, error)
NewClient creates a new instance of the Firebase Auth Client.
This function can only be invoked from within the SDK. Client applications
should access the Auth service through firebase.App.
func (c Client) CreateOIDCProviderConfig(ctx context.Context, config *OIDCProviderConfigToCreate) (*OIDCProviderConfig, error)
CreateOIDCProviderConfig creates a new OIDC provider config from the given
parameters.
func (c Client) CreateSAMLProviderConfig(ctx context.Context, config *SAMLProviderConfigToCreate) (*SAMLProviderConfig, error)
CreateSAMLProviderConfig creates a new SAML provider config from the given
parameters.
func (c Client) CreateUser(ctx context.Context, user *UserToCreate) (*UserRecord, error)
CreateUser creates a new user with the specified properties.
func (c *Client) CustomToken(ctx context.Context, uid string) (string, error)
...
type TenantClient struct {
// Has unexported fields.
}
TenantClient is used for managing users, configuring SAML/OIDC providers,
and generating email links for specific tenants.
Before multi-tenancy can be used in a Google Cloud Identity Platform
project, tenants must be enabled in that project via the Cloud Console UI.
Each tenant contains its own identity providers, settings and users.
TenantClient enables managing users and SAML/OIDC configurations of specific
tenants. It also supports verifying ID tokens issued to users who are signed
into specific tenants.
TenantClient instances for a specific tenantID can be instantiated by
calling [TenantManager.AuthForTenant(tenantID)].
func (c TenantClient) CreateOIDCProviderConfig(ctx context.Context, config *OIDCProviderConfigToCreate) (*OIDCProviderConfig, error)
CreateOIDCProviderConfig creates a new OIDC provider config from the given
parameters.
func (c TenantClient) CreateSAMLProviderConfig(ctx context.Context, config *SAMLProviderConfigToCreate) (*SAMLProviderConfig, error)
CreateSAMLProviderConfig creates a new SAML provider config from the given
parameters.
func (c TenantClient) CreateUser(ctx context.Context, user *UserToCreate) (*UserRecord, error)
CreateUser creates a new user with the specified properties.
func (c TenantClient) DeleteOIDCProviderConfig(ctx context.Context, id string) error
DeleteOIDCProviderConfig deletes the OIDCProviderConfig with the given ID.
func (c TenantClient) DeleteSAMLProviderConfig(ctx context.Context, id string) error
DeleteSAMLProviderConfig deletes the SAMLProviderConfig with the given ID.
func (c TenantClient) DeleteUser(ctx context.Context, uid string) error
DeleteUser deletes the user by the given UID.
func (c TenantClient) EmailSignInLink(
ctx context.Context, email string, settings *ActionCodeSettings) (string, error)
EmailSignInLink generates the out-of-band email action link for email link
sign-in flows, using the action code settings provided.
Problem seems to be occurring with members that are multiple levels nested.
package foo
type Foo struct {
*bar
}
func (f *Foo) DoFoo() {
}
type bar struct {
*baz
}
func (b *bar) DoBar() {
}
type baz struct {
}
func (b *baz) DoBaz() {
}
go doc -all on this produces the expected result:
TYPES
type Foo struct {
// Has unexported fields.
}
func (b Foo) DoBar()
func (b Foo) DoBaz()
func (f *Foo) DoFoo()
But godoc html output will not list DoBaz().
Possibly a known issue as per https://github.com/golang/go/issues/9762 and https://github.com/golang/go/issues/6127