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

Change location of symbolCache.db #912

Closed
baronfel opened this issue Apr 6, 2022 · 5 comments
Closed

Change location of symbolCache.db #912

baronfel opened this issue Apr 6, 2022 · 5 comments

Comments

@baronfel
Copy link
Contributor

baronfel commented Apr 6, 2022

VSCode gives each extension a global and workspace-specific path to store state in the form of the following ExtensionContext properties:

  • globalStorageUri
  • storageUri

We should update Ionide to flow those through as FSAC startup parameters, and FSAC should learn to take those as the location to store persistent state.

@Nsidorenco
Copy link
Member

This change in #913 seem to have broken running the server on non-windows systems.

In particular, it creates a folder inside the current directory with a windows-style file path, which breaks the dotnet compiler.

Since the vscode plugin is supposed to inject the appropriate path at startup wouldn't it make sense to keep the default state directory as something working across systems (like .ionide as previously)?

@baronfel
Copy link
Contributor Author

It does default to the current directory as the root, the problem is entirely in how we construct the path here: https://github.com/fsharp/FsAutoComplete/blob/main/src/FsAutoComplete.Core/SymbolCache.fs#L104

@baronfel
Copy link
Contributor Author

This was released in 6.0.0 of ionide and 0.52.0 of FSAC.

@baronfel
Copy link
Contributor Author

@Nsidorenco I'll put a PR up for this soon, and I've got a macos machine to test on now!

@Nsidorenco
Copy link
Member

@baronfel That great to hear! I managed to work around it by setting the state-directory manually but it would be great to get the default fixed!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants