forcedotcom / Einstein-GPT-for-Developers

Einstein GPT For Developers
BSD 3-Clause "New" or "Revised" License
31 stars 8 forks source link

.sfdx Folder Created for NON Salesforce Projects #65

Closed vincekruger closed 4 months ago

vincekruger commented 4 months ago

Summary

A .sfdx folder is created with +3k files on every project when VSCode is opened, even though it's not a Salesforce project. I now have to disable and enable the salesforce extension pack all the time. This isn't a very pleasant experience.

Steps To Reproduce:

Open a non-Salesforce project.

Expected result

This shouldn't happen.

Additional information

Salesforce Extension Version in VS Code: 60.8.0 - April 10, 2024

SFDX CLI Version: @salesforce/cli/2.29.5 darwin-arm64 node-v20.11.0

OS and version: MacOS 14.4.1 (23E224)

VS Code version: Version: 1.88.1 Commit: e170252f762678dec6ca2cc69aba1570769a5d39 Date: 2024-04-10T17:43:08.196Z (6 days ago) Electron: 28.2.8 ElectronBuildId: 27744544 Chromium: 120.0.6099.291 Node.js: 18.18.2 V8: 12.0.267.19-electron.0 OS: Darwin arm64 23.4.0

peternhale commented 4 months ago

@vincekruger would you run the following shell script and return the results? It will list the unique file extensions present in a directory and its subfolders

find . -type f | awk -F. '
  NF>1 {
    extensions[$NF]++
  }
  END {
    for (extension in extensions) {
      print extension
    }
  }
' | sort | uniq
vincekruger commented 4 months ago
/functions/content/node_modules/jwa/LICENSE
/functions/content/node_modules/jwks-rsa/LICENSE
/functions/content/node_modules/jwks-rsa/node_modules/@types/express/LICENSE
/functions/content/node_modules/jws/LICENSE
/functions/content/node_modules/levn/LICENSE
/functions/content/node_modules/locate-path/license
/functions/content/node_modules/lodash/LICENSE
/functions/content/node_modules/long/LICENSE
/functions/content/node_modules/lru-cache/LICENSE
/functions/content/node_modules/lru-memoizer/LICENSE
/functions/content/node_modules/lru-memoizer/node_modules/lru-cache/LICENSE
/functions/content/node_modules/lru-memoizer/node_modules/yallist/LICENSE
/functions/content/node_modules/media-typer/LICENSE
/functions/content/node_modules/merge-descriptors/LICENSE
/functions/content/node_modules/merge2/LICENSE
/functions/content/node_modules/methods/LICENSE
/functions/content/node_modules/micromatch/LICENSE
/functions/content/node_modules/mime-db/LICENSE
/functions/content/node_modules/mime-types/LICENSE
/functions/content/node_modules/mime/LICENSE
/functions/content/node_modules/min-document/LICENCE
/functions/content/node_modules/minimatch/LICENSE
/functions/content/node_modules/minimist/LICENSE
/functions/content/node_modules/moment-timezone/LICENSE
/functions/content/node_modules/moment/LICENSE
/functions/content/node_modules/negotiator/LICENSE
/functions/content/node_modules/nise/LICENSE
/functions/content/node_modules/nise/node_modules/@sinonjs/fake-timers/LICENSE
/functions/content/node_modules/nise/node_modules/path-to-regexp/LICENSE
/functions/content/node_modules/node-forge/LICENSE
/functions/content/node_modules/node/bin/node
/functions/content/node_modules/object-assign/license
/functions/content/node_modules/object-hash/LICENSE
/functions/content/node_modules/object-inspect/LICENSE
/functions/content/node_modules/object-keys/LICENSE
/functions/content/node_modules/omggif/README
/functions/content/node_modules/on-finished/LICENSE
/functions/content/node_modules/once/LICENSE
/functions/content/node_modules/optionator/LICENSE
/functions/content/node_modules/p-defer/license
/functions/content/node_modules/p-limit/license
/functions/content/node_modules/p-locate/license
/functions/content/node_modules/pako/LICENSE
/functions/content/node_modules/pako/lib/zlib/README
/functions/content/node_modules/parent-module/license
/functions/content/node_modules/parse-headers/LICENCE
/functions/content/node_modules/parseurl/LICENSE
/functions/content/node_modules/path-exists/license
/functions/content/node_modules/path-is-absolute/license
/functions/content/node_modules/path-key/license
/functions/content/node_modules/path-parse/LICENSE
/functions/content/node_modules/path-to-regexp/LICENSE
/functions/content/node_modules/path-type/license
/functions/content/node_modules/peek-readable/LICENSE
/functions/content/node_modules/phin/LICENSE
/functions/content/node_modules/picomatch/LICENSE
/functions/content/node_modules/pixelmatch/LICENSE
/functions/content/node_modules/pixelmatch/bin/pixelmatch
/functions/content/node_modules/pixelmatch/node_modules/pngjs/LICENSE
/functions/content/node_modules/pngjs/LICENSE
/functions/content/node_modules/possible-typed-array-names/LICENSE
/functions/content/node_modules/prelude-ls/LICENSE
/functions/content/node_modules/process/LICENSE
/functions/content/node_modules/proto3-json-serializer/LICENSE
/functions/content/node_modules/protobufjs/LICENSE
/functions/content/node_modules/protobufjs/google/LICENSE
/functions/content/node_modules/proxy-addr/LICENSE
/functions/content/node_modules/proxy-from-env/LICENSE
/functions/content/node_modules/pseudomap/LICENSE
/functions/content/node_modules/queue-microtask/LICENSE
/functions/content/node_modules/range-parser/LICENSE
/functions/content/node_modules/raw-body/LICENSE
/functions/content/node_modules/readable-stream/LICENSE
/functions/content/node_modules/regenerator-runtime/LICENSE
/functions/content/node_modules/require-directory/LICENSE
/functions/content/node_modules/resolve-from/license
/functions/content/node_modules/resolve/LICENSE
/functions/content/node_modules/resolve/bin/resolve
/functions/content/node_modules/retry-request/license
/functions/content/node_modules/retry/License
/functions/content/node_modules/reusify/LICENSE
/functions/content/node_modules/rimraf/LICENSE
/functions/content/node_modules/rss-parser/LICENSE
/functions/content/node_modules/rss-parser/node_modules/entities/LICENSE
/functions/content/node_modules/run-parallel/LICENSE
/functions/content/node_modules/safe-array-concat/LICENSE
/functions/content/node_modules/safe-buffer/LICENSE
/functions/content/node_modules/safe-regex-test/LICENSE
/functions/content/node_modules/safer-buffer/LICENSE
/functions/content/node_modules/sax/LICENSE
/functions/content/node_modules/semver/LICENSE
/functions/content/node_modules/send/LICENSE
/functions/content/node_modules/send/node_modules/debug/LICENSE
/functions/content/node_modules/send/node_modules/debug/Makefile
/functions/content/node_modules/serve-static/LICENSE
/functions/content/node_modules/set-function-length/LICENSE
/functions/content/node_modules/set-function-name/LICENSE
/functions/content/node_modules/setprototypeof/LICENSE
/functions/content/node_modules/shebang-command/license
/functions/content/node_modules/shebang-regex/license
/functions/content/node_modules/side-channel/LICENSE
/functions/content/node_modules/sinon/LICENSE
/functions/content/node_modules/slack-block-builder/LICENSE
/functions/content/node_modules/slash/license
/functions/content/node_modules/statuses/LICENSE
/functions/content/node_modules/stream-shift/LICENSE
/functions/content/node_modules/string-width/license
/functions/content/node_modules/string_decoder/LICENSE
/functions/content/node_modules/strip-ansi/license
/functions/content/node_modules/strip-bom/license
/functions/content/node_modules/strip-json-comments/license
/functions/content/node_modules/strnum/LICENSE
/functions/content/node_modules/strtok3/LICENSE
/functions/content/node_modules/supports-color/license
/functions/content/node_modules/supports-preserve-symlinks-flag/LICENSE
/functions/content/node_modules/teeny-request/LICENSE
/functions/content/node_modules/text-decoding/LICENSE
/functions/content/node_modules/text-table/LICENSE
/functions/content/node_modules/timm/LICENSE
/functions/content/node_modules/tinycolor2/LICENSE
/functions/content/node_modules/to-regex-range/LICENSE
/functions/content/node_modules/toidentifier/LICENSE
/functions/content/node_modules/token-types/LICENSE
/functions/content/node_modules/tsconfig-paths/LICENSE
/functions/content/node_modules/type-check/LICENSE
/functions/content/node_modules/type-detect/LICENSE
/functions/content/node_modules/type-fest/license
/functions/content/node_modules/type-is/LICENSE
/functions/content/node_modules/typed-array-buffer/LICENSE
/functions/content/node_modules/typed-array-byte-length/LICENSE
/functions/content/node_modules/typed-array-byte-offset/LICENSE
/functions/content/node_modules/typed-array-length/LICENSE
/functions/content/node_modules/typescript/bin/tsc
/functions/content/node_modules/typescript/bin/tsserver
/functions/content/node_modules/unbox-primitive/LICENSE
/functions/content/node_modules/undici/LICENSE
/functions/content/node_modules/undici/lib/fetch/LICENSE
/functions/content/node_modules/undici/node_modules/@fastify/busboy/LICENSE
/functions/content/node_modules/undici/node_modules/@fastify/busboy/deps/dicer/LICENSE
/functions/content/node_modules/unpipe/LICENSE
/functions/content/node_modules/uri-js/LICENSE
/functions/content/node_modules/utif2/LICENSE
/functions/content/node_modules/util-deprecate/LICENSE
/functions/content/node_modules/utils-merge/LICENSE
/functions/content/node_modules/uuid/dist/bin/uuid
/functions/content/node_modules/vary/LICENSE
/functions/content/node_modules/whatwg-fetch/LICENSE
/functions/content/node_modules/which-boxed-primitive/LICENSE
/functions/content/node_modules/which-typed-array/LICENSE
/functions/content/node_modules/which/LICENSE
/functions/content/node_modules/which/bin/node-which
/functions/content/node_modules/wrap-ansi/license
/functions/content/node_modules/wrappy/LICENSE
/functions/content/node_modules/xhr/LICENCE
/functions/content/node_modules/xml2js/LICENSE
/functions/content/node_modules/xmlbuilder/LICENSE
/functions/content/node_modules/xtend/LICENSE
/functions/content/node_modules/y18n/LICENSE
/functions/content/node_modules/yallist/LICENSE
/functions/content/node_modules/yargs/LICENSE
/functions/content/node_modules/yargs/yargs
/functions/content/node_modules/yocto-queue/license
BSD
DS_Store
assign/LICENSE
babelrc
bak
bmp
bnf
cache
camelcase/LICENSE
cjs
clonedeep/LICENSE
closure-compiler
cls
coffee
cts
db
def
editorconfig
eslintignore
eslintrc
esprima
example
export_metadata
findlastindex/LICENSE
firebaserc
flags/LICENSE
flat/LICENSE
flatmap/LICENSE
flow
flowconfig
fnt
fromentries/LICENSE
get/LICENSE
gha-env
gha-input
gha-secret
gif
gitignore
gitkeep
groupby/LICENSE
hbs
html
idx
ignore
iml
includes/LICENSE
isboolean/LICENSE
isinteger/LICENSE
isnumber/LICENSE
isplainobject/LICENSE
isstring/LICENSE
jpg
js
js/LICENSE
jsdoc
jshintrc
json
jst
local
lock
map
markdown
md
merge/LICENSE
mjs
mli
mts
name/LICENSE
nix
npmignore
nycrc
once/LICENSE
overall_export_metadata
pack
php
png
prettierignore
prettierrc
production
proto
py
pyc
realpath/LICENSE
rules
sample
scandir/LICENSE
sh
slice/LICENSE
snakecase/LICENSE
stat/LICENSE
sublime-project
sublime-workspace
swf
tiff
trim/LICENSE
trimend/LICENSE
trimstart/LICENSE
ts
txt
values/LICENSE
walk/LICENSE
wasm
yaml
yarn-integrity
yml
zip

Here is what is being created:

image

Seems Einstein for Developers (Beta) [0.43.2] is the issue.

peternhale commented 4 months ago

@vincekruger Thanks for the details. One more ask, could you send me the contents of the Output channel for Extension Host?

peternhale commented 4 months ago

@vincekruger You nailed it, in this case E4D is the culprit. I am going to transfer this issue to that project.

peternhale commented 4 months ago

I verified that in a non-sfdx project, having E4D installed/enabled triggers the start of other extensions.

klewis-sfdc commented 4 months ago

We have merged a fix for this issue that will be included in the next release of Einstein for Developers. If this issue is affecting you, one way to workaround would be to install an older version of the E4D extension and use v0.43.1 until the next release is published. Please let us know if this issue is still present for you after the next release is published.