Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve initialization speed of extension #47

Open
pluyckx opened this issue Mar 27, 2019 · 0 comments
Open

Improve initialization speed of extension #47

pluyckx opened this issue Mar 27, 2019 · 0 comments

Comments

@pluyckx
Copy link
Collaborator

pluyckx commented Mar 27, 2019

Describe the solution you'd like
Speed up the initialization time needed for this extension. Using some kind of cache that stores which IAR workbenches are installed with their default defines/includes will help. This will not change as long as no updates are installed for that workbench.

The minimum data that should be stored in the cache:

  • IAR workbench/compiler location
  • default defines
  • default includes
  • last time the compiler/workbench was changed (to detect updates and thus to detect when to update default defines/includes)

The cache can be stored in the extension folder (and not in the workspace folder). This data is useful for all workspaces.

Additional context
When a lot of workbenches are installed (and especially old versions), it can take some time to initialize the extension.

pluyckx added a commit that referenced this issue May 22, 2019
This commit delays fetching the defines and includepaths of the compiler
to a point when they are necessary. The module will cache the data so it
is only fetched once.
pluyckx added a commit that referenced this issue May 29, 2019
This commit delays fetching the defines and includepaths of the compiler
to a point when they are necessary. The module will cache the data so it
is only fetched once.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant