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

Trim characters off match instead to get key, fixes #141614 #141818

Merged
merged 1 commit into from
Jan 31, 2022

Conversation

rzhao271
Copy link
Contributor

@rzhao271 rzhao271 commented Jan 30, 2022

This PR fixes #141614.

The problem was that I changed a regex a while back to fix #135677. The point is that we wanted to match '#setting-name#' as well as <backtick>#setting-name<backtick>, because some localized strings, such as ones in the French language pack, didn't use backticks for setting links.

But, the capturing group behaviour changed afterwards, making it so that when the match was from the second group instead of the first group, settingKey was undefined. It also did not help that the type of that parameter was any, because it meant we were passing undefined to a function that took in a string parameter, which broke the Settings editor rendering.

It is safer in this case to just trim the excess characters off the match to get the settings key.

@rzhao271 rzhao271 self-assigned this Jan 30, 2022
@rzhao271 rzhao271 added bug Issue identified by VS Code Team member as probable bug candidate Issue identified as probable candidate for fixing in the next release regression Something that used to work is now broken settings-editor VS Code settings editor issues labels Jan 30, 2022
@rzhao271 rzhao271 added this to the January 2022 milestone Jan 30, 2022
@rzhao271 rzhao271 marked this pull request as ready for review January 30, 2022 06:00
@@ -2130,7 +2130,8 @@ function cleanRenderedMarkdown(element: Node): void {
}

function fixSettingLinks(text: string, linkify = true): string {
return text.replace(/`#([^#]*)#`|'#([^#]*)#'/g, (match, settingKey) => {
return text.replace(/`#([^#]*)#`|'#([^#]*)#'/g, (match) => {
const settingKey = match.substring(2, match.length - 2);
Copy link
Member

@roblourens roblourens Jan 31, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's fine for a candidate but it might be more clear to do this differently - you could write the regex using a backreference like (`|')#...#\1, or even just have parameters like (match, settingKey1, settingKey2) => ... settingKey = settingKey1 ?? settingKey2...

@rzhao271 rzhao271 merged commit 61b42a3 into release/1.64 Jan 31, 2022
@rzhao271 rzhao271 deleted the rzhao271/lastindex branch January 31, 2022 17:46
jsjoeio added a commit to coder/vscode that referenced this pull request Mar 4, 2022
* debug: bump js-debug

* Resources lost their authority part (fix microsoft#141328)

* Run OSS tool

* Enable resourceurls (microsoft#140709)

* Enable resourceurls

* Add selection to resourceurls from trees

* Rename identifier

* Respond to PR feedback

* Do not loop opver openEditors

* cleanup @vscode/windows-registry

* Bump node-fetch from 2.6.2 to 2.6.7 (microsoft#141307)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.2 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.2...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump node-fetch from 2.6.1 to 2.6.7 in /build (microsoft#141306)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fixes microsoft#141392

* Add check that the editor's ESM JS files can be loaded in a browser

* Create from template options for configure tasks
Fixes microsoft#140867

* web - only simplify `vscode-remote` workspaces (microsoft#141411)

* web - use correct untitled workspace object (fix microsoft#141411)

* Install playwright using `npx playwright install`

* Fix microsoft#141326

* Most recent -> last link

Fixes microsoft#141419

* Add ellipsis to open detected link

Fixes microsoft#141416

* $ref '' in 'http://json-schema.org/draft-07/schema' can not be resolved. Fixes microsoft#141445

* Use `@playwright/test` instead of `playwright`

* Document how to unset auto reply, support null explicitly

Fixes microsoft#141456

* remove unnecessary async

* fix microsoft#141435

* add shell integration message to zsh part of microsoft#141448

* add shell integration message to pwsh, fix microsoft#141448

* Fix spelling error

* Install playwright deps

* Remove redundant 0 from bold sequence

* fix microsoft#141420

* Run headless on CI

* bold pwsh shell integration text

* Fix cwdFolder on Windows

Fixes microsoft#141443

* Move common imports to `.eslintrc.json`

* Avoid `*` and spell out all allowed node modules to have squiggles when importing `vscode` by accident

* Don't change target because `webpack` can't handle `es2020`.

* Prevent link highlight in markdown code blocks and spans (microsoft#140816)

* Prevent link highlight in markdown codeblocks (microsoft#139770)

* Handle inline codespan variants for markdown link provider (microsoft#139770)

* Refactor codespan detection in markdown link provider (microsoft#139770)

* Add back  ESM-uncomment

* Remove export

* fully qualify kind

* Remove no longer necessary rule (microsoft#140989)

* Get rid of `null!`

* Fixes microsoft#140884: removal rules only target rules that appear before

* handle bash login args (microsoft#141467)

* support case insensitive shell executables, add tests

* update with runtime key changes
fixes  microsoft#141389

* fixes microsoft#141387

* remove unused import

* Update Codicons: Add layout icons (Refs microsoft#137633)
microsoft/vscode-codicons@a2e80bf

* fixes microsoft#141384

* fixes microsoft#141421

* Tweak CES survey assignment

* Ambiguity in comments for createFileSystemWatcher (fix microsoft#141494)

* 🆙 distro

* Fix extension tree dnd supported types
Fixes microsoft#141418

* Avoid `[createInstance]` warnings in unit tests

* handle extension resource

* Adopt `TestInstantiationService.get`

* Improve comments

* Improve explanations

* Only log server greeting to log file, not again to the console

* Avoid a lot of newlines when running from source

* Fixes use of model after it got disposed.

* Bump node-fetch from 2.6.1 to 2.6.7 in /extensions/github (microsoft#141538)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* support login args on linux too

* formatting and clean up

* Refactors unicode highlight options

* Fixes microsoft#141152 by not showing unicode highlights in the ruler or minimap.

* Fix cwd setting in workspace file

Fixes microsoft#136099

Co-Authored-By: Megan Rogge <merogge@microsoft.com>

* update doc

* fix microsoft#141366. Safari does not respect input::placeholder rules, set line height explicitly.

* better warning when an extension depends on an API proposal that doesn't exist, microsoft/vscode-python#18363

* remove inlay hints config again, fixes microsoft#140225

* debug: bump js-debug

* Fix microsoft#141393

* testing: add autosave before each test run

* testing: add autosave before each test run

Save the current project file before each test run so that the code logic is up to date when the test is run

* debug: Add debug.saveBeforeTest - Fix microsoft#139125

* testing: add autosave before each test run

* testing: adjust the "saveBeforeTest" to a suitable position

* fix microsoft#141367.

* Fix microsoft#141461

* Bump node-fetch from 2.6.1 to 2.6.7 in /extensions/github-authentication (microsoft#141537)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump node-fetch in /extensions/microsoft-authentication (microsoft#141536)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix microsoft#141368. Overflow.

* re microsoft#141368. disable replace all if the curr match is not model.

* fix microsoft#141371.

* 💄

* fix microsoft#141370. Update buttons on find match state change.

* update find unit test.

* Move `tokenizationSupport` inside `TokenizationStateStore` (microsoft#140476)

* Rearrange methods

* Extract `ContiguousGrowingArray`

* Improve names and documentation for `TokenizationStateStore`

* Add setting to control repository scan

* fix microsoft#141515.

* Fix microsoft#141469

* update terminalLinkManager's processCwd when cwd changes with shell integration on (microsoft#141595)

* Emit event with valid range

* make terminal output readonly (microsoft#141601)

* Only show link commands if a terminal has been created

Fixes microsoft#141593

* Fixes microsoft#139877: Allow `DomScrollableElement` to use float scroll values

* update doc

* Change notebook markdown fold hint to a CellPart

* Cell fold hint fixes
Hide when in edit mode, simplify top calculation, fix height calc when in edit mode

* compositePart should use createActionViewItem helper
fixes microsoft#141399

* feedback

* fix microsoft#141294

* fix Terminal: Cannot refresh property when process is undefined microsoft#141288

* Bumping eslint versions (microsoft#141121)

* hBumping eslint versions

- Bump eslint and typescript/eslint versions to latest
- Fixing `code-no-unused-expression` for `x?.(b);` type statements
- Fixed a few new semicolon errors from upgrade

* Bump eslint parser in build

* Fix eslint errors in d.ts

* update layout state prefix
fixes microsoft#141372 microsoft#141376 microsoft#141374

* Fix import path

* Close microsoft#141465

* fixes microsoft#141398

* fixes microsoft#141404

* unused import

* Add link to sort description

* Close microsoft#141555

* refs microsoft#141426

* fixes microsoft#141432

* fixes microsoft#141552

* Instrument watermark opening

* Adding video tutorials to get started

* add customize layout icons
refs microsoft#137633

* Remove stale comment
microsoft#140878 is fixed

* Startup dialog goes through the request service (microsoft#141592)

* show error when inlay hints command fails, annotate error with source (e.g extension name), fixes microsoft#141588

* Fixes microsoft#138746.

* - Check if URL is pointing to the right service
- Set selective request and response headers
- Update the scheme on the client

* cache resourceUrlTemplate Uri

* Fixes microsoft#69391: Reserve extra bottom padding when the hover has a horizontal scrollbar

* fix microsoft#141643

* Revert "always set aria-selected, even for listbox"

This reverts commit 1356392.

* Fixes microsoft#141638: `-command` rules should only remove default rules

* fix microsoft#141299

* Remove terminalLocation from api proposal list

Fixes microsoft#141645

* Match z-index on parameter hints to the hover

Fixes microsoft#140761

* Reveal panel/editor when running a recent command/dir

Fixes microsoft#141619

* Ensure quick pick is closed on view output

Fixes microsoft#141615

* Inconsistent single quotes use in --help (same for code --help)

* Reduce duplication

* Fixes microsoft#25221: Render line highlights for all cursors

* server: port range is end inclusive, improve validation

* fix typo

* Use `display:none` when overview ruler is turned off

* Better align simple options with `<input>`s

* Fixes microsoft#140367: Take into account horizontal padding when layouting the editor

* Update scripts to point to `tsc` one folder up

* Fix microsoft#141331

* Update description (microsoft/vscode-remote-release#6184)

* fix typos

* fix microsoft#141633

* await open editor

* Allow richer commands in get started entries

* Update src/vs/workbench/contrib/terminal/browser/terminalInstance.ts

Co-authored-by: Megan Rogge <megan.rogge@microsoft.com>

* create process in an empty workspace when cwd is userHome (microsoft#141660)

* Fixes microsoft#140490 by always using `cursor:text` on macOS instead of our custom cursor. Since macOS Catalina the native cursor has a white border which makes it work well on dark themes, making our custom cursor not necessary. Also, macOS High Sierra is no longer officially supported by Apple (ref microsoft#96946)

* Update shell integration config description

Fixes microsoft#141308

* --help should read better

* tty for ./scipts/code-server

* Support null in auto replies setting

Fixes microsoft#141666

* Improve auto replies config more

Part of microsoft#141666

* debug: bump js-debug

* Update typescript-eslint/experimental-utils

Fixes microsoft#141653

* Update Codicons: Add modes and menu bar
microsoft/vscode-codicons@ee85be1

* tweak setting language

* refs microsoft#137633

* testing: fix inline decoration overlap

Fixes microsoft#138915

* Use fully qualified names in @link

* Fix `undefined`s in text search results (microsoft#141522)

* Revert "create process in an empty workspace when cwd is userHome (microsoft#141660)"

This reverts commit a58b538.

* copy & continue. Fixes microsoft/vscode-internalbacklog#2613

* fixes microsoft#141471

* Fix microsoft#141477

* readonly

* type -> interface

* Avoid lookbehind in regexp

Fixes microsoft#141689

* Clean up unused method, re microsoft#139541

* 💄
re microsoft#141582

* fix microsoft#141686

* Disable windows adjustment for active indicator (Refs microsoft#140647)

* Temporary window shift

* Revert

* Dont require steps to be defined
Fixes microsoft#141603

* Fix microsoft#141434

* Fix microsoft#141439

* microsoft#141054 enable the tests and keep debugging

* Revert "fix microsoft#141686"

This reverts commit 4af3e14

Didn't seem to fix the issue

* Bump distro

* Revert "support file llink"

This reverts commit 09108ba.

* Trim characters off match instead to get key, fixes microsoft#141614 (microsoft#141818)

* Fix microsoft#141910

* Revert "fix microsoft#140907"

This reverts commit a81c3b0.

* Ensure parameter hints z-index is lower than suggest

Terminal screen element's z-index is 31

Fixes microsoft#141947

* Fix comments can't be updated (microsoft#142013)

Fixes of microsoft#142012

* debug: fix action bar input being hidden (microsoft#142230)

For microsoft#142010

* Revert "debug: fix action bar input being hidden (microsoft#142230)" (microsoft#142240)

This reverts commit 4a4c17c.

* Bump distro and version (microsoft#142419)

* Disable auto replies by default

Fixes microsoft#142341

* Latest update breaks due to proxy requirement. Fixes microsoft#142201

* debug: bump js-debug (microsoft#142531)

* debug: fix action bar input being hidden (microsoft#142530)

For microsoft#142010

* GVFS: can't open file (fix microsoft#142481) (microsoft#142499)

* safeguard init exthost message (microsoft#142486)

* Execution object should be able to be returned by getCellExecution at the time the change event is fired microsoft#142466

* Make sure we pass along windows style paths to pluginProbeLocations (microsoft#142420)

* Fix bare math blocks with nested beging/end (microsoft#142136)

Fixes microsoft#141905

This picks up microsoft/vscode-markdown-it-katex@b1ed14d

* Fix quoting for tasks (microsoft#142400)

Fixes microsoft#142196

* Bump version to 1.64.2

* refs microsoft#142176 (microsoft#142423)

* Candidate/142146 (microsoft#142424)

* refs microsoft#142146

* refs microsoft#142146

* Fix microsoft#142421 (microsoft#142433)

POINTER_DOWN was stealing too many events.
The old event handlers handled events such as MOUSE_UP,
and it turns out we can just use POINTER_UP instead.

* fixes microsoft#141349 (microsoft#142644)

* fixes microsoft#141349

* additional handling of the panel position with panel alignment

* chore: update package.json and yarn.lock

From what I can tell, it looks like there aren't many changes here. cookie was
added as a devDependency. We had that as a regular dependency already. I moved
it to match theirs. They were also using 0.4.0 while we had 0.4.1. Hope that
doesn't matter.

The other big update was eslint to 8.7.0 from 6.8.0. That could cause breaking
changes potentially. Something to look out for.

* feat: update product.json

I don't see anything changed here for us to worry about.

This is mostly making sure we keep the right names on win32.

* fix: dont use remote node in code-server.sh

I am unsure if this was the right move but it appears that we commented this
out previously and did not load remote node. I think this is because it leads
to Node version discrepencies which we don't want.

* feat: add getPreferredWebSchema network.ts

It appears they added a new method to the RemoteAuthoritiesImpl called
`getPreferredWebSchema` which returns either 'http' or 'https'.

* chore: resolve conflicts in src/vs/code/browser/workbench/workbench-dev.html

Not much to report here. Seems like nothing new.

* chore: update src/vs/code/browser/workbench/workbench.html

Based on what I can tell, they changed workbench.web.api to workbench.web.main
for most of these static assets. I hope that is accurate.

* fix: conflict in src/vs/platform/remote/browser/browserSocketFactory.ts

I am not 100% if the new code is similar to ours. We had to patch this to work
against the current path.

Their new implementation may do the same thing but I couldn't tell from looking
at it.

We may want to revisit this later when we switch to patches. Hopefully we can
remove this.

* fix:  src/vs/platform/remote/common/remoteAgentConnection.ts

It appears they've added a new parameter to `createSocket` which takes a string
for a debugLabel.

Not sure how it's used or made available but it's interesting because it takes
the `connectionTypeToString` which we're adding to the query.

Makes me think we might be able to remove this patch if our backend can get
access to the debugLabel somehow.

* fix:  src/vs/server/node/serverEnvironmentService.ts

Seems like a bunch of new serverOptions were added, some deprecated.

I am not sure how this will affect code-server. They added 'host' so I wonder if we could deprecate 'bind-address' on the code-server side
and instead use host:port with VS Code. Something to consider.

* fix:  src/vs/workbench/browser/web.main.ts

Nothing major here. Had to add a random property called `ctor`
to the CodeServerAdditions class. Also used connectionTokenCookie instead
of hard-coded string which is a nice addition.

* fix:  src/vs/workbench/browser/web.api.ts

Clean up IWorkbenchConstructionOptions. That's mostly it here.

* fix:  src/vs/workbench/contrib/extensions/browser/extensionsViewlet.ts

Added flexible:Height: true to the SyncDescriptor since we were missing it.

Removed a block that showed the prevented the web view extensions from
automatically hiding.

I did this because upstream removed two properties it was using:
this.hasInstalledWebExtensionsContextKey and
this.updateInstalledWebExtensionsContext. I hope that was right.

* fix: src/vs/server/node/server.main.ts

I removed `args['server-data-dir']` from `REMOTE_DATA_FOLDER` since we don't
have access to `args` here.

The other change was the `{ mode: 0o700 }` added to the `fs.mkdirSync` call.
Not sure if that's related to chmod 0700 or something else.

* wip

* fix: conflicts in src/vs/server/node/webClientServer.ts

We resolved a few things here with the conflicts.

* fix:  src/vs/code/browser/workbench/workbench.ts

We were able to remove a couple of our patches, which is awesome!

Still have some things to test though.

* fix: src/vs/server/node/remoteExtensionHostAgentServer.ts

Moved our custom serverThemeService into the src/vs/server/node folder and added the missing _serviceBrand to the interface and the class to fix a ctor error.

* fix: remove clientTheme from webClientServer

* fix: also remove from html files

* fix: add missing __metadata change

* chore: clean up code comments

* chore: clean up comments

* chore: fix typo

* wip: add notes for debugging folder query param

* refactor: remove workspace & folder from code-server args

* fixup!: clean up TODOS

* revert(code-server.sh): match upstream

Co-authored-by: Connor Peet <connor@peet.io>
Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
Co-authored-by: Henning Dieterichs <hdieterichs@microsoft.com>
Co-authored-by: Alex Ross <alros@microsoft.com>
Co-authored-by: Joao Moreno <joao.moreno@microsoft.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alex Dima <alexdima@microsoft.com>
Co-authored-by: Logan Ramos <lramos15@gmail.com>
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
Co-authored-by: Martin Aeschlimann <martinae@microsoft.com>
Co-authored-by: meganrogge <merogge@microsoft.com>
Co-authored-by: Waqas Ali <waqas.abbasi@outlook.com>
Co-authored-by: Matt Bierner <matb@microsoft.com>
Co-authored-by: Tyler Leonhardt <me@tylerleonhardt.com>
Co-authored-by: Megan Rogge <megan.rogge@microsoft.com>
Co-authored-by: SteVen Batten <sbatten@microsoft.com>
Co-authored-by: Miguel Solorio <miguel.solorio@microsoft.com>
Co-authored-by: Harald Kirschner <hkirschner@microsoft.com>
Co-authored-by: Sandeep Somavarapu <sasomava@microsoft.com>
Co-authored-by: rebornix <penn.lv@gmail.com>
Co-authored-by: Johannes Rieken <johannes.rieken@gmail.com>
Co-authored-by: Hans <416870376@qq.com>
Co-authored-by: Ladislau Szomoru <3372902+lszomoru@users.noreply.github.com>
Co-authored-by: Jackson Kearl <jakearl@microsoft.com>
Co-authored-by: Rob Lourens <roblourens@gmail.com>
Co-authored-by: isidor <inikolic@microsoft.com>
Co-authored-by: Christof Marti <chrmarti@microsoft.com>
Co-authored-by: gregvanl <gregvanl@microsoft.com>
Co-authored-by: Benjamin Tidor <benjamin@tidor.net>
Co-authored-by: Raymond Zhao <raymondzhao@microsoft.com>
Co-authored-by: Henning Dieterichs <notify.henning.dieterichs@live.de>
Co-authored-by: SteVen Batten <6561887+sbatten@users.noreply.github.com>
@github-actions github-actions bot locked and limited conversation to collaborators Mar 17, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug candidate Issue identified as probable candidate for fixing in the next release regression Something that used to work is now broken settings-editor VS Code settings editor issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants