Skip to content

investigate Selective imports for static functions to reduce build time #106

@maisarissi

Description

@maisarissi

The navigation properties as currently declared on the request builder/api client directly. While this is convenient for discovery, it also means the whole graph structure gets pulled as soon as the client is used, which for such a large API means a long compilation time, negative impacts to auto completion etc...

Since those functions are "declared statically" (go idioms) we could move their declaration to the sub module they point to.
I.E. the declaration for users() on the service client would live under the users submodule and not on the root module.

What that means is that people would need an additional import (msgraphsdkgo/users) before they can use the navigation property, but it should greatly reduce build times since the compiler would only be pulling things the application needs to begin with.

We might run into circular dependencies while experimenting with that.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions