vscode: Can no longer sync extensions by copying extensions folder because of new extensions.json file

Does this issue occur when all extensions are disabled?: N/A

  • VS Code Version: 1.74.0
  • OS Version: 2 Windows machines with different extension paths and/or usernames.
  • This more than likely replicates as an issue on non-windows machines but I haven’t tested it.

Steps to Reproduce:

  1. Copy %userprofile%\.vscode\extensions from one machine to another. Both with active vscode installations.
  2. Launch vscode on secondary machine.
  3. The machine with the copy of the extensions folder doesn’t load any extensions.
  4. Close vscode on secondary machine.
  5. Change all instances of the fsPath property in %userprofile%\.vscode\extensions\extensions.json to match the new machine’s username ex "fsPath":"c:\\Users\\USER1\\.vscode\\extensions\\author.extensionID" into "fsPath":"c:\\Users\\USER2\\.vscode\\extensions\\author.extensionID"
  6. Re-launch vscode on second machine.
  7. Note that extensions now load correctly.

I don’t know when this extensions.json file was added but previously doing this copy paste procedure of the extensions folder simply copied all installed extensions without issue. Now the newly added extensions.json file must be altered for it to work. This makes syncing extensions to a machine by USB or file-sync significantly more annoying.

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Reactions: 2
  • Comments: 16 (7 by maintainers)

Most upvoted comments

I tested the Visual Studio Code Insiders version 1.75.0-insider.

It appears to correctly migrate extensions between different machines with different paths even when vscode is not on during the copy. The copy includes all extension files including the extensions.json file. It also appears that the fspath property is now location and the value is relative as you indicated.

I can confirm the issue appears fixed on the insiders version indicated. I look forward to the new version release. Thank you.