diff --git a/CHANGELOG.md b/CHANGELOG.md index 3eb84103c3..e9bc1f2060 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,52 @@ # Changelog +## 0.122.1 + +### Fixes + +- Only one reviewer can be seen on the PR page. https://github.com/microsoft/vscode-pull-request-github/issues/8131 +- Drop down not doing anything. https://github.com/microsoft/vscode-pull-request-github/issues/8149 +- Pull in icon fixes. https://github.com/microsoft/vscode-pull-request-github/issues/8159 + +## 0.122.0 + +### Changes + +- Auto-generated PR descriptions (via `githubPullRequests.pullRequestDescription`) will respect the repository PR template if there is one. +- Icons in the Pull Requests view now render with codicons instead of Unicode characters. +- Drafts in the Pull Requests view now render in italics instead of having a `[DRAFT]` prefix. + +![Pull Requests view showing codicon labels and italic draft PR titles](./documentation/changelog/0.122.0/pr-labels.png) + +- Emoji completions for `:smile:` style emojis are now available in review comments. + +![Emoji completions in review comments](./documentation/changelog/0.122.0/emoji-completions.gif) + +- [Markdown alert syntax](https://github.com/orgs/community/discussions/16925) is now rendered in review comments. + +![Markdown alerts in review comments](./documentation/changelog/0.122.0/markdown-alerts.png) + +- Opening an empty commit from a pull request webview shows an editor with a message instead of showing a notification. +- Pull requests can be opened from from a url, for example: `vscode-insiders://github.vscode-pull-request-github/checkout-pull-request?uri=https://github.com/microsoft/vscode-css-languageservice/pull/460` +- Icons are up-to-date with VS Code's latest icons. +- If you start a review and want to cancel it, there's now a "Cancel Review" button in the pull request webview. + +![Cancel review button](./documentation/changelog/0.122.0/cancel-review.png) + +### Fixes + +- Reactions to code comments are not showing up (Web). https://github.com/microsoft/vscode-pull-request-github/issues/2195 +- Editing a comment freezes VS Code. https://github.com/microsoft/vscode/issues/274455 +- Github Pull Request tab won't open if branch names are reused. https://github.com/microsoft/vscode-pull-request-github/issues/8007 +- Icons are misaligned. https://github.com/microsoft/vscode-pull-request-github/issues/7998 +- "Git is not installed or otherwise not available" even though it is. https://github.com/microsoft/vscode-pull-request-github/issues/5454 + +**_Thank You_** + +* [@bendrucker (Ben Drucker)](https://github.com/bendrucker): Enable all LLM tools in prompts (agent mode) [PR #6956](https://github.com/microsoft/vscode-pull-request-github/pull/6956) +* [@gerardbalaoro (Gerard Balaoro)](https://github.com/gerardbalaoro): Make branch list timeout configurable (#2840) [PR #7927](https://github.com/microsoft/vscode-pull-request-github/pull/7927) +* [@wankun-tcj](https://github.com/wankun-tcj): Fix avatar display issue in Pull Request tree view [PR #7851](https://github.com/microsoft/vscode-pull-request-github/pull/7851) + ## 0.120.2 ### Fixes diff --git a/build/update-codicons.ts b/build/update-codicons.ts index 1419385c93..9e504fb6fa 100644 --- a/build/update-codicons.ts +++ b/build/update-codicons.ts @@ -8,7 +8,7 @@ import * as path from 'path'; import * as https from 'https'; const CODICONS_DIR = path.join(__dirname, '..', 'resources', 'icons', 'codicons'); -const BASE_URL = 'https://raw.githubusercontent.com/microsoft/vscode-codicons/refs/heads/mrleemurray/new-icons/src/icons'; +const BASE_URL = 'https://raw.githubusercontent.com/microsoft/vscode-codicons/refs/heads/main/src/icons'; interface UpdateResult { filename: string; diff --git a/documentation/changelog/0.122.0/cancel-review.png b/documentation/changelog/0.122.0/cancel-review.png new file mode 100644 index 0000000000..ac3473fe06 Binary files /dev/null and b/documentation/changelog/0.122.0/cancel-review.png differ diff --git a/documentation/changelog/0.122.0/emoji-completions.gif b/documentation/changelog/0.122.0/emoji-completions.gif new file mode 100644 index 0000000000..e38f3323e6 Binary files /dev/null and b/documentation/changelog/0.122.0/emoji-completions.gif differ diff --git a/documentation/changelog/0.122.0/markdown-alerts.png b/documentation/changelog/0.122.0/markdown-alerts.png new file mode 100644 index 0000000000..c222af3ad2 Binary files /dev/null and b/documentation/changelog/0.122.0/markdown-alerts.png differ diff --git a/documentation/changelog/0.122.0/pr-labels.png b/documentation/changelog/0.122.0/pr-labels.png new file mode 100644 index 0000000000..dbb3355397 Binary files /dev/null and b/documentation/changelog/0.122.0/pr-labels.png differ diff --git a/package.json b/package.json index b4b768559d..d588ea7e6a 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "treeItemMarkdownLabel", "treeViewMarkdownMessage" ], - "version": "0.120.0", + "version": "0.122.1", "publisher": "GitHub", "engines": { "vscode": "^1.106.0" @@ -3529,6 +3529,10 @@ "command": "pr.checkoutOnVscodeDevFromDescription", "group": "checkout@1", "when": "webviewId == PullRequestOverview && github:checkoutMenu" + }, + { + "command": "pr.openSessionLogFromDescription", + "when": "webviewId == PullRequestOverview && github:codingAgentMenu" } ], "chat/chatSessions": [ @@ -4237,7 +4241,6 @@ ] }, "scripts": { - "postinstall": "yarn update-dts", "bundle": "webpack --mode production --env esbuild", "bundle:node": "webpack --mode production --config-name extension:node --config-name webviews", "bundle:web": "webpack --mode production --config-name extension:webworker --config-name webviews", diff --git a/resources/icons/codicons/add.svg b/resources/icons/codicons/add.svg index 3d5d0221c4..c564bb8b4c 100644 --- a/resources/icons/codicons/add.svg +++ b/resources/icons/codicons/add.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/resources/icons/codicons/error.svg b/resources/icons/codicons/error.svg index 1e2337f80d..9ceb299a04 100644 --- a/resources/icons/codicons/error.svg +++ b/resources/icons/codicons/error.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/resources/icons/codicons/pass.svg b/resources/icons/codicons/pass.svg index 0abbfb2a92..9380137dc8 100644 --- a/resources/icons/codicons/pass.svg +++ b/resources/icons/codicons/pass.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/resources/icons/codicons/quote.svg b/resources/icons/codicons/quote.svg index 6903c03730..4dc1dd30a5 100644 --- a/resources/icons/codicons/quote.svg +++ b/resources/icons/codicons/quote.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/resources/icons/codicons/warning.svg b/resources/icons/codicons/warning.svg index 9400358a2d..104147bec2 100644 --- a/resources/icons/codicons/warning.svg +++ b/resources/icons/codicons/warning.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/commands.ts b/src/commands.ts index 4844af4cfa..c0dd0d7590 100644 --- a/src/commands.ts +++ b/src/commands.ts @@ -14,12 +14,13 @@ import Logger from './common/logger'; import { FILE_LIST_LAYOUT, HIDE_VIEWED_FILES, PR_SETTINGS_NAMESPACE } from './common/settingKeys'; import { editQuery } from './common/settingsUtils'; import { ITelemetry } from './common/telemetry'; +import { SessionLinkInfo } from './common/timelineEvent'; import { asTempStorageURI, fromPRUri, fromReviewUri, Schemes, toPRUri } from './common/uri'; import { formatError } from './common/utils'; import { EXTENSION_ID } from './constants'; import { ICopilotRemoteAgentCommandArgs } from './github/common'; import { ChatSessionWithPR, CrossChatSessionWithPR } from './github/copilotApi'; -import { CopilotRemoteAgentManager } from './github/copilotRemoteAgent'; +import { CopilotRemoteAgentManager, SessionIdForPr } from './github/copilotRemoteAgent'; import { FolderRepositoryManager } from './github/folderRepositoryManager'; import { GitHubRepository } from './github/githubRepository'; import { Issue } from './github/interface'; @@ -724,6 +725,14 @@ export function registerCommands( return vscode.env.openExternal(vscode.Uri.parse(vscodeDevPrLink(resolved.pr))); })); + context.subscriptions.push(vscode.commands.registerCommand('pr.openSessionLogFromDescription', async (context: SessionLinkInfo | undefined) => { + if (!context) { + return vscode.window.showErrorMessage(vscode.l10n.t('No pull request context provided for checkout.')); + } + const resource = SessionIdForPr.getResource(context.pullNumber, context.sessionIndex); + return vscode.commands.executeCommand('vscode.open', resource); + })); + context.subscriptions.push( vscode.commands.registerCommand('pr.exit', async (pr: PRNode | RepositoryChangesNode | PullRequestModel | undefined) => { let pullRequestModel: PullRequestModel | undefined; diff --git a/src/github/graphql.ts b/src/github/graphql.ts index ad48671e85..b2fd1af60f 100644 --- a/src/github/graphql.ts +++ b/src/github/graphql.ts @@ -122,12 +122,12 @@ export interface Account extends Actor { export function isAccount(x: Actor | Team | Node | undefined | null): x is Account { const asAccount = x as Partial; - return !!asAccount && !!asAccount?.name && (asAccount?.email !== undefined); + return !!asAccount && (asAccount?.name !== undefined) && (asAccount?.email !== undefined); } export function isTeam(x: Actor | Team | Node | undefined | null): x is Team { const asTeam = x as Partial; - return !!asTeam && !!asTeam?.slug; + return !!asTeam && (asTeam?.slug !== undefined); } export interface Team {