The tests failed because on mac the 633;C and 633;D events both appear in the
same event. The change ensures we match globally on the regex and cleans up
handling of multiple events. This went from failing consistently to passing
consistently on my mac.
Fixes#241592
* start working on fish, save progress, still lots TODO
* modify proposed.terminalShellEnv.d.ts
* remember we dont have acccess to nonce in .fish script
* save progress, adding isTrusted
* two arrays approach in fish
* provide EnvClear for fish, other shell as well.
* fix tests
* REMOVE TWO ARRAYS METHOD, always send all env
* remove deprecated comments
* remove junk get ready for review
* dont import vscode in terminal/common/capabilities.ts
* take feedback => pass in Clear as part of EnvSingleStart
* add env clear argument to SI.zsh
* update one more place to prevent vscode import
* mandatory flag description?? discuss this
* make things right
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
* comment out test code
* use mapsStrictEqualIgnoreOrder instead of equals
* ready to go
* bring back expose shell's environment bash
* I want to see why the test is failing the build
* Pass test, disable it until we enable for stable
---------
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* start terminal shell env proposed
* fix typo
* progress on shellEnvDetectionCapability, mainThreadTerminalSI
* update IShellEnvDetectionCapability interface
* touch up on $shellEnvChange
* adjust IShellEnvDetectionCapability
* properly listen to envChangeEvent
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
* Serialize env map, expose on exthost
* start adding to zsh script
* receive environment variable in extension host, properly escape "
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
* clean up
* Add TODO: properly escape double quotes, figure out why JSON parse fails for bash
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
* Fix nonce check, ignore PS1 for now in bash
* Add some simple PS1 string tests to deserializeMessage
* New approach of sending env entries separately
* be able to get EnvSingleVar
* few comments
* add function signature for start, set, end environment var
* implement EnvStart, EnvEntry, EnvEnd for single env entry
* deserialize env value for EnvEntry
* Remove unncessary comments
* only leave pwsh in this PR and exclude other shells
* keep exlcuding other shell env - only pwsh should remain
* Update src/vs/workbench/api/common/extHostTerminalShellIntegration.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vscode-dts/vscode.proposed.terminalShellEnv.d.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/workbench/contrib/terminal/common/scripts/shellIntegration.ps1
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/workbench/contrib/terminal/common/scripts/shellIntegration-rc.zsh
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/workbench/contrib/terminal/common/scripts/shellIntegration-rc.zsh
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/workbench/api/common/extHostTerminalShellIntegration.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/workbench/api/common/extHost.protocol.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/capabilities/capabilities.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/xterm/shellIntegrationAddon.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/xterm/shellIntegrationAddon.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/xterm/shellIntegrationAddon.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* add comment for ShellEnvDetection
* change envs in shellEnvDetectionCapability to env
* Mention escaping character for EnvJSON similar to commandLine
* Do not fire env event if env has not changed
* add link to CommandLine
* follow main branch format so I avoid merge conflict
* remove resolved TODO
* Update src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/xterm/shellIntegrationAddon.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* use vscode object equals
* add zsh update_env for shellIntegration-zsh.sh
* add EnvStart, EnvEntry, EnvEnd
* why doesnt if [ "$__vsc_stable" = "0" ]; work
* add test to check shellPath
* stop messing with formatting
* try to be more detail in testing
* clean up
* dont change the format
* properly use stable/insider flag so update_env on insiders
* modify test after feedback
* rename to *EnvironmentSingleVar and make it transactional via _pending env
* add docs for *EnvSingle and update bash script to conform to *EnvSingle
* Update src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* Update src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.ts
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
* remove _env.clear from start and make _env non-readonly
* Update src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.ts
---------
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>