jiebi/CodeConvo huggingface dataset:
Change:
throw new vscode.CancellationError(); } } else if (repository.state.HEAD?.ahead) { <del> const pushCommits = vscode.l10n.t('Push Commits'); </del> <ins> const pushCommits = vscode.l10n.t('Push Commits & Copy Link'); </ins> const selection = await vscode.window.showInformationMessage( vscode.l10n.t('The current branch has unpublished commits. Would you like to push your commits before copying a link?'), { modal: true },

Discussion:
Testing I am currently one commit behind the remote branch and I am able to successfully create a link without seeing any dialog. The way the test plan item is written it implies that in this scenario, I should see a dialog. Is that the case or did I misunderstood the test plan item?
Testing with while being a few commits behind, I get the following dialog: <img width="264" alt="image" src=""When I Cancel, I don't get a link. When I Pull & Copy I get a link that is seemingly unaffected by the pull. Why then require the pull? (I tested with incoming commits affecting the file I copy a link from.)
The link that is copied might point to a range that is invalidated by incoming commits, so we notify in order to avoid you copying a link that points to a different area in the file. But perhaps we should also offer a Copy Anyway option here.

Testing When one tries to copy a link on a branch that has not been published we display a dialog asking the user whether they want to publish the branch. Based on my tests, the branch is getting published and the linked is being copied to the clipboard. I think that it makes sense to be explicit about what happens and change the label of the button to "Publish Branch & Copy Link". I also noticed that when trying to create a link for uncommited changes, the dialog contains an action to "Copy Anyways". I think actions should be consistent so we should add that action to this dialog as well.
Change:
<ins> <?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="ESRP" value="https://microsoft.pkgs.visualstudio.com/_packaging/ESRP/nuget/v3/index.json" /> </packageSources> </configuration> </ins>  No newline at end of file

Discussion:
is from an unknown publisher
!
Oh it really seems like you can't uninstall it... Not good.
Related to

Unlike the VS Code installer for Windows, the VS Code uninstaller for Windows is not signed. You can fix this by using the directive in your Inno Setup script. See For dual signing it's easiest to use Inno Setup 5.5.8 instead of 5.5.6 as you currently use: 5.5.8 allows you to have two SignTool directives, one for the sha-1 signing and another for the sha-256 signing.
To keep the number of issues in our inbox on a manageable level, we're closing issues that have been on the backlog for a long time but haven't gained traction: We look at the number of votes the issue has received and the number of duplicates issues filed. Thanks for your understanding. Happy coding!
Change:
}); this._navigationDecoration = decoration; if (decoration) { <del> const isRendered = false; </del> <ins> let renderedElement: HTMLElement | undefined; </ins> decoration.onRender(element => { <del> if (!isRendered) { // TODO: Remove when https://github.com/xtermjs/xterm.js/issues/3686 is fixed if (!element.classList.contains('xterm-decoration-overview-ruler')) { element.classList.add('terminal-scroll-highlight'); </del> <ins> if (!renderedElement) { renderedElement = element; element.classList.add('terminal-scroll-highlight', 'terminal-scroll-highlight-outline'); if (this._terminal?.element) { element.style.marginLeft = `-${getComputedStyle(this._terminal.element).paddingLeft}`; </ins> } } });

Discussion:
Testing When I use cmd+up/down to navigate between POIs in task output, the blue box renders for a second on the item I have selected, but then disappears. I didn't understand what was happening to the focus border.
that is by design.
This has come up before, I think you had an idea to improve this?
I had the same experience in where I was on a slow machine. I think I had suggested just using a line on the side (like our activity bar) that remains until your focus changes: <img src="https://user-"
To the left of the command decorations? ! I like how visible the outline is when jumping between commands, so we could keep that as is and just also show the persistent line? !
yea I'd be open to trying that out, I think using both might be a bit overkill but just having the single line can also be hard to notice.
Change:
return TPromise.wrapError(new Error(`${notFound(id)}n${useId}`)); } <del> console.log(localize('foundExtension', "Found '{0}' in the marketplace.", id)); console.log(localize('installing', "Installing...")); </del> <ins> const isInstalled = installed.some(e => getId(e.manifest) === id); if (isInstalled) { const installedExtension = installed.filter(e => getId(e.manifest) === id)[0]; const installedVersion = installedExtension.manifest.version; const newestVersion = extension.version; const shouldUpdate = semver.gt(newestVersion, installedVersion); if (shouldUpdate) { console.log(localize('foundNewerVersion', "Installed version is '{0}', found newer version '{1}' in the marketplace.", installedVersion, newestVersion)); console.log(localize('updating', "Updating...")); } else { console.log(localize('alreadyUpdated', "Installed version is the latest version.")); return TPromise.as(null); } } else { console.log(localize('foundExtension', "Found '{0}' in the marketplace.", id)); console.log(localize('installing', "Installing...")); } </ins> return this.extensionManagementService.installFromGallery(extension) .then(

Discussion:
Similar to the in Atom, there should be a way to update Marketplace extensions from the command line. Currently there are and commands, but no command for upgrading extensions.
Hello! I've been checking this issue to make a first contribution, but it seems that already has that functionality! To test it, I installed an out of extension from the vsix file and then did this: So... Maybe we should just alias the command, or is this missing any functionality I'm not noticing? Thanks!
That's what I thought! Good to know. Yeah let's just have an alias for it.
Hmm... Looking at the code, it seems we check if an extension is installed and return if it is.
as I understand the code (very, very limited understanding!), and after the quick test I did, I would think that check for the extension being installed only returns true if the extension is up to date.
I don't think so. There is no checks on version in the above code.
Anyone working on this feature? I am a beginner but would like to work on this issue and contribute.
There's already a PR for it:
This works in a weird way for me - Install old version of extension from vsix Run - If I respond , it cancels the install. I have to respond with which is unusual Is this how it's intended to be used?
Yeah unfortunately that's the current status of the dialog service in the CLI environment. Needs polish, feel free to file an issue for that.
I'm unsure why this issue was closed What is the command to update ALL extensions from CLI (without code opening)? Something like
This issue was about updating a single extension. Feel free to file an issue to support updating all extensions.
Done. See
Change:
if (!hasKey) { const files = await this.readdir(resource); if (files.length) { <del> return Promise.reject(new FileSystemError(resource, FileSystemProviderErrorCode.FileIsADirectory)); </del> <ins> return Promise.reject(FileSystemError.FileIsADirectory(resource)); </ins> } } await this.setValue(resource.path, VSBuffer.wrap(content).toString());

Discussion:
<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --Add an method to the interface. The current options are: trying to stat the and seeing if it fails — we have no way to tell why it failed; reading a parent directory — we may not have read access to the parent directory; using node's — only works for the local filesystem.
I see s are spec'd to thow on when the file doesn't exist, but does not spec such errors.
We have no plans for adding and instead should be used (this goes along the deprecated to NodeJS's -deprecation). Still, I do agree that we should spec the error
Would be a passable solution?
Re-open for API proposal/finalization. Proposal is to add a field to the -class
should I rename the issue to better reflect the proposal?
Reactions during the API meeting were positive, so I am confident that we can finalize this during the current milestone. One feedback item was to always have a value for , e.g. let its default value be something like or
I did a quick search of the codebase, and it looks like is usually used for such cases in the various error code enums.
This is now in and will be stable API with the next relase. thanks for the help
Change:
import { Registry } from 'vs/platform/registry/common/platform'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; import { IWorkspaceContextService, IWorkspace } from 'vs/platform/workspace/common/workspace'; <del> import { isEqual, basenameOrAuthority, basename, joinPath, dirname } from 'vs/base/common/resources'; </del> <ins> import { basenameOrAuthority, basename, joinPath, dirname } from 'vs/base/common/resources'; </ins> import { tildify, getPathLabel } from 'vs/base/common/labels'; import { IWorkspaceIdentifier, ISingleFolderWorkspaceIdentifier, isSingleFolderWorkspaceIdentifier, WORKSPACE_EXTENSION, toWorkspaceIdentifier, isWorkspaceIdentifier, isUntitledWorkspace } from 'vs/platform/workspaces/common/workspaces'; import { ILabelService, ResourceLabelFormatter, ResourceLabelFormatting, IFormatterChangeEvent } from 'vs/platform/label/common/label';

Discussion:
Issue Type: <bBug</bI have a multi-root workspace with this config: When I open search results in an editor, the part is incorrectly shown as part of the path: And while this looks like just a cosmetic issue , it also breaks opening the file via F12/doubleclick, since the now gets duplicated in the actual path is tries to open. VS Code version: Code - Insiders 1.47.0-insider (, 2020-06-23T09:03:35.861Z) OS version: WindowsNT x64 10.0. Remote OS version: Linux x64 4.14.83-gentoo Remote OS version: Linux x64 4.14.83-gentoo Remote OS version: Linux x64 5.4.28-gentoo Remote OS version: Linux x64 4.14.83-gentoo <details<summarySystem Info</summary </details<details<summaryExtensions (32)</summaryExtensionVersion ------ systemd-unit-file1.0.6 udev-rules1.0.0 viml0.1.7 tmux0.1.0 remote-containers0.123.0 remote-ssh0.51.0 remote-ssh-edit0.51.0 remote-wsl0.44.4 vscode-remote-extensionpack0.20.0 jinjahtml0.13.0 gitconfig2.0.1 mako0.2.0 vscode-icons10.1.1 overtype0.2.0 vscode-module-templates1.3.0 vscode-postgres1.1.11 quick-open-prefill-selection0.0.1 vscode-eslint2.1.5 gitlens10.2.2 EditorConfig0.15.1 prettier-vscode5.1.0 Go0.14.4 search-editor-apply-changes0.1.1 vsc-python-indent1.10.1 restructuredtext128.0.0 MagicPython1.1.0 vscode-github-actions3.0.0 vscode-docker1.3.1 python2020.7.-dev puppet-vscode0.27.3 vscode-yaml0.8.0 vscode-stylelint0.84.0 (1 theme extensions excluded) </details<!-- generated by issue reporter --
Thanks for submitting this! Should be fixed in the next insiders.
Change:
: this.options.installPreReleaseVersion || this.source.properties.isPreReleaseVersion || existingExtension?.preRelease; if (existingExtension && existingExtension.type !== ExtensionType.System && existingExtension.manifest.version === this.source.version) { <del> return this.extensionsScanner.updateMetadata(existingExtension, metadata); </del> <ins> return this.extensionsScanner.updateMetadata(existingExtension, metadata, this.options.profileLocation); </ins> } // Unset if the extension is uninstalled and return the unset extension. <del> const local = await this.unsetIfUninstalled(this.extensionKey); if (local) { return local; } </del> <ins> local = await this.unsetIfUninstalled(this.extensionKey); </ins> } if (token.isCancellationRequested) { throw toExtensionManagementError(new CancellationError()); } <del> const { local, verificationStatus } = await this.extractExtensionFn(this.operation, token); this._verificationStatus = verificationStatus; </del> <ins> if (!local) { const result = await this.extractExtensionFn(this.operation, token); local = result.local; this._verificationStatus = result.verificationStatus; } </ins> if (this.uriIdentityService.extUri.isEqual(this.userDataProfilesService.defaultProfile.extensionsResource, this.options.profileLocation)) { try {

Discussion:
Steps to Reproduce: an pre-release version of an extension to release version and restart extension host back to pre-release version and refresh extensions view Extension is still release version
Change:
TerminalCommandId.Clear, TerminalCommandId.CopySelection, TerminalCommandId.CopySelectionAsHtml, <ins> TerminalCommandId.CopyLastCommand, </ins> TerminalCommandId.DeleteToLineStart, TerminalCommandId.DeleteWordLeft, TerminalCommandId.DeleteWordRight,

Discussion:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --The awesome shell integration makes it really easy to rerun commands and copy the output from those commands. However, it seems one can only copy the output if the line the command was executed from is still within the scroll limit of the terminal. For some very long runs this is inconvenient. It would be really nice to be able to: output of last command from a terminal output of any command in the history of that terminal, if it is available to be copied Both without having to scroll to the point the command was executed.
Once there is too much data we no longer have access to it. Sounds like you probably want to increase the size of your scrollback. This is what I use: All the memory for the buffer gets reserved ahead of time for performance reasons so this will increase RAM usage by a fixed amount per terminal you have open. I like the idea of having a command for copying the output of the last command that you could hook up to a keybinding
You can also get the output from a command via and then click the output/document icon <img width="644" alt="Screen Shot 2022-06-14 at 12 31 30 PM" src="https://user-"These are only stored for the session, but might help you. I don't believe we get rid of commands that are outside of the scrollback, do we?
I don't think so but we do lose access to their output
I wonder if the command name should change makes you think the command would be copied but instead this is to copy the output
Change:
const activeEditor = editorService.activeEditor; // If the walkthrough is already open just reveal the step if (selectedStep && activeEditor instanceof GettingStartedInput && activeEditor.selectedCategory === selectedCategory) { <ins> activeEditor.showWelcome = false; </ins> commandService.executeCommand('walkthroughs.selectStep', selectedStep); return; }

Discussion:
For: Passing in an empty markdown file fixes this issue currently. [x] Add the ability to go back to the last focused view instead of the welcome page.
Removing the button on walkthroughs if opened from the cmd. This should prevent the walkthrough from going to the welcome page. The button is now only shown when a walkthrough is invoked from the page or another walkthrough.
Change:
const tokenizationCss = colorMap ? generateTokensCSSForColorMap(colorMap) : ''; return tokenizationCss; } <ins> function tryDecodeURIComponent(uri: string) { try { return decodeURIComponent(uri); } catch { return uri; } } </ins>

Discussion:
[X] Notebooks (.ipynb files) [ ] Interactive Window and/or Cell Scripts (.py files with #%% markers) Markdown urls including filenames with url escaped space could not be opened. In normal notebooks markdown urls including filenames with space could be transformed by url escaping (space is transformed to %20) - this mechanism didn't works in vscode-jupyter, because vscode-jupyter doesn't retransform the escaped url back to the unescaped url when trying to open the url. Version: 1.80.0 Commit: Date: 2023-07-04T13:39:48.236Z Electron: 22.3.14 ElectronBuildId: Chromium: 108.0.5359.215 16.17.1 V8: 10.8.168.25-electron.0 OS: Linux x64 5.15.0-76-generic snap v2023.6. No response No response No response No response Local
Can you give an example to make sure I understand?
If filename is "this filename includes " then a markdown url in jupyter notebook has to be urlencoded: If klicking this link in jupyter notebooks opens the urldecoded file correctly. On the other hand vscode-jupyter trys to open the file "", which - of course - could not be find! So the filename has to be urldecoded in vscode-jupyter before trying to open it!
Change:
z-index: 1000; border-width: 8px; position: absolute; <ins> left: 2px; </ins> } .monaco-editor .monaco-editor-overlaymessage .anchor.top {

Discussion:
Testing Tiniest of nits, and perhaps this is inherited from all hovers, but I felt like the hover disappeared too quickly. If I was reading particularly slowly or looked away and then back at the message, I might've missed it.
felt the same, I think using the workbench hover infra would help.
Also, it disappears when you still hover on it: !
I think given the new complexity of this hover and the actions we should do a tactical fix here. I suggest to remove the timer that removes the message automatically after 3 seconds: There are still other listeners in place to hide the message, so I think we are good.
makes sense.
trying to verify: "readonly hover" means "hover in readonly files" ?
best to verify would be in repo open a file from folder and try to edit in such a file. You should see a hover with a link.

Testing This would benefit from an underline instead of the bold treatment to match the rendering we use in the workspace banner links (e.g. restricted mode) <img width="490" alt="CleanShot 2023-06-26 at 21 53 54 src=""
I also think its hard to discover, but I think we are not using underline for links in hovers so far?
We also do not show underlines in other places we show markdown in hovers: <img width="485" alt="image" src=""I used bold because the blue background of the hover made the contrast poor with our usual blue link color. We could use another color instead though.
I think the intent of the blue color in the message widget is to draw more attention, i.e. giving the signal of an information message vs. just being a normal tooltip. But maybe we can make the background color of the widget the same as hovers and then user blue color for links. I think that way we can still keep the blue border but it will not collide with the links.
Sample with a mix of hover colors and info colors for border: <img width="764" alt="image" src=""
And in dark theme: ! Changes I did: use hover colors use the same border radius of as in editor hovers allow to tab into the message with keyboard to invoke the link within
Change:
import { ICodeEditor } from 'vs/editor/browser/editorBrowser'; export const ctxCommentEditorFocused = new RawContextKey<boolean>('commentEditorFocused', false); <del> export const STARTING_EDITOR_HEIGHT = 5 * 18; </del> <ins> export const MIN_EDITOR_HEIGHT = 5 * 18; </ins> export const MAX_EDITOR_HEIGHT = 25 * 18; export interface LayoutableEditor {

Discussion:
window a comment :bug: as you can see from the scrollbar, the comment text doesn't fill the full editor !
<!-- UNABLETOLOCATECOMMITMESSAGE issue --Issue marked as unreleased but unable to locate closing commit in issue timeline. You can manually reference a commit by commenting , or directly add the label if you know this has already been releaased
closedWith
Change:
return true; } <ins> function toRegExp(pattern: string): RegExp { try { // The u flag allows support for better Unicode matching, // but deprecates some patterns such as [s-9] // Ref https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Regular_expressions/Character_class#description return new RegExp(pattern, 'u'); } catch (e) { try { return new RegExp(pattern); } catch (e) { // If the pattern can't be parsed even without the 'u' flag, // just log the error to avoid rendering the entire Settings editor blank. // Ref https://github.com/microsoft/vscode/issues/195054 console.error(nls.localize('regexParsingError', "Error parsing the following regex both with and without the u flag:"), pattern); return /.*/; } } } </ins> function getStringValidators(prop: IConfigurationPropertySchema) { const uriRegex = /^(([^:/?#]+?):)?(//([^/?#]*))?([^?#]*)(?([^#]*))?(#(.*))?/; let patternRegex: RegExp | undefined; if (typeof prop.pattern === 'string') { <del> patternRegex = new RegExp(prop.pattern, 'u'); </del> <ins> patternRegex = toRegExp(prop.pattern); </ins> } return [

Discussion:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.83.0 OS Version: Kubuntu 23.04 Steps to Reproduce: a new extension the following code to this test extension and go to settings page could not be displayed I found this problem when using mxp131011.element-plus-doc v2.0.8. Installing this extension should also reproduce. ! (This extension has been enabled globally. () is not visible) ! (This extension has been disabled globally) Previous versions of vscode don't seem to report errors for this kind of regular expression, which appeared in version 1.83.0. I have created an issue to that extension (mxp131011/element-plus-doc). But I think this error should be caught early, or at least should not interrupt the configurations of other extensions
It looks like now installs fine and the Settings Editor works.