Skip to content

Commit

Permalink
Merge branch 'main' into add-comparison-multi-image-plot
Browse files Browse the repository at this point in the history
  • Loading branch information
julieg18 committed Aug 4, 2023
2 parents 5b13368 + 3cd5400 commit 6f87e56
Show file tree
Hide file tree
Showing 139 changed files with 6,413 additions and 4,193 deletions.
143 changes: 143 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,149 @@

All notable changes to this project will be documented in this file.

## [1.0.32] - 2023-08-03

### 🐛 Bug Fixes

- Fix plots not showing on first experiment run [#4412](https://github.com/iterative/vscode-dvc/pull/4412) by [@julieg18](https://github.com/julieg18)

### 🔨 Maintenance

- Update filter icon in experiment table column header cells [#4406](https://github.com/iterative/vscode-dvc/pull/4406) by [@mattseddon](https://github.com/mattseddon)
- Refactor experiment table header context menu [#4407](https://github.com/iterative/vscode-dvc/pull/4407) by [@mattseddon](https://github.com/mattseddon)
- Collect webview messages async [#4405](https://github.com/iterative/vscode-dvc/pull/4405) by [@mattseddon](https://github.com/mattseddon)
- Update demo project and latest tested CLI version (3.11.0) [#4413](https://github.com/iterative/vscode-dvc/pull/4413) by [@mattseddon](https://github.com/mattseddon)

## [1.0.31] - 2023-08-02

### 🚀 New Features and Enhancements

- Add toggle to show only changed columns in experiments table [#4402](https://github.com/iterative/vscode-dvc/pull/4402) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Update config tests [#4400](https://github.com/iterative/vscode-dvc/pull/4400) by [@mattseddon](https://github.com/mattseddon)

## [1.0.30] - 2023-08-01

### 🐛 Bug Fixes

- Ensure experiment summary info (columns) is always available in the experiment table data [#4396](https://github.com/iterative/vscode-dvc/pull/4396) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Use instance spies to test plots webview messages [#4394](https://github.com/iterative/vscode-dvc/pull/4394) by [@mattseddon](https://github.com/mattseddon)
- Improve collection of summary columns efficiency [#4391](https://github.com/iterative/vscode-dvc/pull/4391) by [@mattseddon](https://github.com/mattseddon)

## [1.0.29] - 2023-08-01

### 🔨 Maintenance

- Update demo project and latest tested CLI version (3.10.1) [#4382](https://github.com/iterative/vscode-dvc/pull/4382) by [@mattseddon](https://github.com/mattseddon)
- Watch a small directory for testing purposes [#4385](https://github.com/iterative/vscode-dvc/pull/4385) by [@mattseddon](https://github.com/mattseddon)

## [1.0.28] - 2023-07-30

### 🐛 Bug Fixes

- Fix show setup/experiments on extension initialization [#4376](https://github.com/iterative/vscode-dvc/pull/4376) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Use instance spies to test experiments webview messages [#4375](https://github.com/iterative/vscode-dvc/pull/4375) by [@mattseddon](https://github.com/mattseddon)

## [1.0.27] - 2023-07-27

### 🚀 New Features and Enhancements

- Apply experiment table filters to commits [#4363](https://github.com/iterative/vscode-dvc/pull/4363) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Refactor experiment table branch data [#4364](https://github.com/iterative/vscode-dvc/pull/4364) by [@mattseddon](https://github.com/mattseddon)
- Rename experiment status to executor status [#4359](https://github.com/iterative/vscode-dvc/pull/4359) by [@mattseddon](https://github.com/mattseddon)
- Increase timeouts of webview tests [#4368](https://github.com/iterative/vscode-dvc/pull/4368) by [@mattseddon](https://github.com/mattseddon)
- Update demo project and latest tested CLI version (3.9.0) [#4369](https://github.com/iterative/vscode-dvc/pull/4369) by [@mattseddon](https://github.com/mattseddon)

## [1.0.26] - 2023-07-26

### 🚀 New Features and Enhancements

- Add reset number of commits to show for a branch button to experiments table [#4355](https://github.com/iterative/vscode-dvc/pull/4355) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Avoid reprocessing duplicate git log commits [#4356](https://github.com/iterative/vscode-dvc/pull/4356) by [@mattseddon](https://github.com/mattseddon)
- Remove column merge logic [#4346](https://github.com/iterative/vscode-dvc/pull/4346) by [@mattseddon](https://github.com/mattseddon)
- Improve performance of experiment column collection [#4353](https://github.com/iterative/vscode-dvc/pull/4353) by [@mattseddon](https://github.com/mattseddon)
- Remove await from inside of loops [#4354](https://github.com/iterative/vscode-dvc/pull/4354) by [@mattseddon](https://github.com/mattseddon)

## [1.0.25] - 2023-07-25

### 🚀 New Features and Enhancements

- Show Experiment Remote Status [#4324](https://github.com/iterative/vscode-dvc/pull/4324) by [@mattseddon](https://github.com/mattseddon)

### 🐛 Bug Fixes

- Fix cloud icon alignment in experiments table [#4340](https://github.com/iterative/vscode-dvc/pull/4340) by [@mattseddon](https://github.com/mattseddon)
- Disable exp push when experiment is running in the workspace [#4343](https://github.com/iterative/vscode-dvc/pull/4343) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Update demo project and latest tested CLI version (3.7.0) [#4328](https://github.com/iterative/vscode-dvc/pull/4328) by [@mattseddon](https://github.com/mattseddon)
- Run remote experiments data update in the background [#4342](https://github.com/iterative/vscode-dvc/pull/4342) by [@mattseddon](https://github.com/mattseddon)
- Use trim and split util [#4339](https://github.com/iterative/vscode-dvc/pull/4339) by [@mattseddon](https://github.com/mattseddon)
- Update demo project and latest tested CLI version (3.8.1) [#4351](https://github.com/iterative/vscode-dvc/pull/4351) by [@mattseddon](https://github.com/mattseddon)

## [1.0.24] - 2023-07-20

### 🚀 New Features and Enhancements

- Update Studio settings section [#4312](https://github.com/iterative/vscode-dvc/pull/4312) by [@mattseddon](https://github.com/mattseddon)
- Add shown/hidden indicator to select first column quick pick [#4314](https://github.com/iterative/vscode-dvc/pull/4314) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Update demo project and latest tested CLI version (3.6.0) [#4311](https://github.com/iterative/vscode-dvc/pull/4311) by [@mattseddon](https://github.com/mattseddon)
- Rename select columns commands and events [#4315](https://github.com/iterative/vscode-dvc/pull/4315) by [@mattseddon](https://github.com/mattseddon)

## [1.0.23] - 2023-07-20

### 🚀 New Features and Enhancements

- Set default number of displayed commits to 1 for non-current branches in the experiments table [#4305](https://github.com/iterative/vscode-dvc/pull/4305) by [@mattseddon](https://github.com/mattseddon)
- Add move to start option to experiment table header cell context menu [#4303](https://github.com/iterative/vscode-dvc/pull/4303) by [@mattseddon](https://github.com/mattseddon)
- Add not missing filter for experiments table [#4308](https://github.com/iterative/vscode-dvc/pull/4308) by [@mattseddon](https://github.com/mattseddon)

### 🐛 Bug Fixes

- Add matchOnDetail and matchOnDescription to all quick picks [#4306](https://github.com/iterative/vscode-dvc/pull/4306) by [@mattseddon](https://github.com/mattseddon)

### 🔨 Maintenance

- Clean up hide column terminology [#4304](https://github.com/iterative/vscode-dvc/pull/4304) by [@mattseddon](https://github.com/mattseddon)
- Standardise column like quick pick [#4307](https://github.com/iterative/vscode-dvc/pull/4307) by [@mattseddon](https://github.com/mattseddon)

## [1.0.22] - 2023-07-18

### 🚀 New Features and Enhancements

- Add columns indicator (select columns) to table indicators [#4293](https://github.com/iterative/vscode-dvc/pull/4293) by [@mattseddon](https://github.com/mattseddon)
- Add select first experiment table columns quick pick [#4294](https://github.com/iterative/vscode-dvc/pull/4294) by [@mattseddon](https://github.com/mattseddon)
- Add select column options to table header cell context menu [#4295](https://github.com/iterative/vscode-dvc/pull/4295) by [@mattseddon](https://github.com/mattseddon)

## [1.0.21] - 2023-07-18

### 🚀 New Features and Enhancements

- Update copy in add stage component [#4292](https://github.com/iterative/vscode-dvc/pull/4292) by [@mattseddon](https://github.com/mattseddon)
- Add "Save as TSV" option to plot modal [#4285](https://github.com/iterative/vscode-dvc/pull/4285) by [@julieg18](https://github.com/julieg18)

### 🔨 Maintenance

- Remove `dvc_data_version_info` from plot values [#4262](https://github.com/iterative/vscode-dvc/pull/4262) by [@julieg18](https://github.com/julieg18)

## [1.0.20] - 2023-07-17

### 🐛 Bug Fixes
Expand Down
2 changes: 1 addition & 1 deletion demo
Submodule demo updated 1 files
+2 −2 requirements.txt
47 changes: 31 additions & 16 deletions extension/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"extensionDependencies": [
"vscode.git"
],
"version": "1.0.20",
"version": "1.0.32",
"license": "Apache-2.0",
"readme": "./README.md",
"repository": {
Expand Down Expand Up @@ -567,10 +567,16 @@
},
{
"title": "Select Columns to Display in the Experiments Table",
"command": "dvc.views.experimentsColumnsTree.selectColumns",
"command": "dvc.views.experiments.selectColumns",
"category": "DVC",
"icon": "$(list-filter)"
},
{
"title": "Select Columns to Display First in the Experiments Table",
"command": "dvc.views.experiments.selectFirstColumns",
"category": "DVC",
"icon": "$(arrow-left)"
},
{
"title": "Select Plots to Display",
"command": "dvc.views.plotsPathsTree.selectPlots",
Expand Down Expand Up @@ -916,7 +922,11 @@
"when": "dvc.commands.available && dvc.project.available && dvc.experiment.running"
},
{
"command": "dvc.views.experimentsColumnsTree.selectColumns",
"command": "dvc.views.experiments.selectColumns",
"when": "dvc.commands.available && dvc.project.available"
},
{
"command": "dvc.views.experiments.selectFirstColumns",
"when": "dvc.commands.available && dvc.project.available"
},
{
Expand Down Expand Up @@ -1280,10 +1290,15 @@
"group": "navigation@2"
},
{
"command": "dvc.views.experimentsColumnsTree.selectColumns",
"command": "dvc.views.experiments.selectColumns",
"when": "view == dvc.views.experimentsColumnsTree",
"group": "navigation@2"
},
{
"command": "dvc.views.experiments.selectFirstColumns",
"when": "view == dvc.views.experimentsColumnsTree",
"group": "navigation@3"
},
{
"command": "dvc.stopAllRunningExperiments",
"when": "view == dvc.views.experimentsTree && dvc.experiments.webview.active && dvc.experiment.running",
Expand Down Expand Up @@ -1670,7 +1685,7 @@
},
"dependencies": {
"@hediet/std": "0.6.0",
"@vscode/extension-telemetry": "0.8.1",
"@vscode/extension-telemetry": "0.8.2",
"appdirs": "1.1.0",
"execa": "5.1.1",
"fs-extra": "11.1.1",
Expand All @@ -1690,8 +1705,8 @@
"vscode-languageclient": "8.1.0"
},
"devDependencies": {
"@swc/core": "1.3.68",
"@swc/jest": "0.2.26",
"@swc/core": "1.3.71",
"@swc/jest": "0.2.27",
"@types/chai": "4.3.5",
"@types/chai-as-promised": "7.1.5",
"@types/copy-webpack-plugin": "10.1.0",
Expand All @@ -1713,18 +1728,18 @@
"@types/vega": "3.2.0",
"@types/vscode": "1.64.0",
"@vscode/test-electron": "2.3.3",
"@vscode/vsce": "2.19.0",
"@wdio/cli": "8.12.2",
"@wdio/local-runner": "8.12.1",
"@wdio/mocha-framework": "8.12.1",
"@vscode/vsce": "2.20.0",
"@wdio/cli": "8.13.13",
"@wdio/local-runner": "8.13.13",
"@wdio/mocha-framework": "8.13.13",
"@wdio/spec-reporter": "8.12.2",
"chai": "4.3.7",
"chai-as-promised": "7.1.1",
"clean-webpack-plugin": "4.0.0",
"copy-webpack-plugin": "11.0.0",
"fork-ts-checker-webpack-plugin": "8.0.0",
"jest": "29.6.1",
"jest-environment-node": "29.6.1",
"jest": "29.6.2",
"jest-environment-node": "29.6.2",
"lint-staged": "13.2.3",
"mocha": "10.2.0",
"mock-require": "3.0.3",
Expand All @@ -1733,9 +1748,9 @@
"sinon-chai": "3.7.0",
"ts-loader": "9.4.4",
"vscode-uri": "3.0.7",
"wdio-vscode-service": "5.2.0",
"webdriverio": "8.12.1",
"webpack": "5.88.1",
"wdio-vscode-service": "5.2.1",
"webdriverio": "8.13.13",
"webpack": "5.88.2",
"webpack-cli": "5.1.4"
},
"peerDependencies": {
Expand Down
3 changes: 2 additions & 1 deletion extension/src/cli/dvc/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ export const DVCLIVE_ONLY_RUNNING_SIGNAL_FILE = join(
)
export const EXP_RWLOCK_FILE = join(TEMP_EXP_DIR, 'rwlock.lock')

export const DEFAULT_NUM_OF_COMMITS_TO_SHOW = 3
export const DEFAULT_CURRENT_BRANCH_COMMITS_TO_SHOW = 3
export const DEFAULT_OTHER_BRANCH_COMMITS_TO_SHOW = 1
export const NUM_OF_COMMITS_TO_INCREASE = 2

export const MULTI_IMAGE_PATH_REG = /[^/]+[/\\]\d+\.[a-z]+$/i
Expand Down
6 changes: 3 additions & 3 deletions extension/src/cli/dvc/contract.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Plot } from '../../plots/webview/contract'

export const MIN_CLI_VERSION = '2.58.1'
export const LATEST_TESTED_CLI_VERSION = '3.5.1'
export const LATEST_TESTED_CLI_VERSION = '3.11.0'

type ErrorContents = { type: string; msg: string }

Expand Down Expand Up @@ -38,7 +38,7 @@ export const isValueTree = (
): value is NonNullable<ValueTree> =>
!!(value && !Array.isArray(value) && typeof value === 'object')

export enum ExperimentStatus {
export enum ExecutorStatus {
FAILED = 'failed',
QUEUED = 'queued',
RUNNING = 'running',
Expand Down Expand Up @@ -81,7 +81,7 @@ export enum Executor {
}

export type ExecutorState = {
state: ExperimentStatus
state: ExecutorStatus
name: Executor | null
local: {
root: string | null
Expand Down
15 changes: 14 additions & 1 deletion extension/src/cli/git/reader.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { resolve } from 'path'
import { GitCli } from '.'
import { Command, Flag } from './constants'
import { Command, DEFAULT_REMOTE, Flag } from './constants'
import { getOptions } from './options'
import { typeCheckCommands } from '..'
import { trimAndSplit } from '../../util/stdout'
Expand All @@ -10,6 +10,7 @@ export const autoRegisteredCommands = {
GIT_GET_BRANCHES: 'getBranches',
GIT_GET_COMMIT_MESSAGES: 'getCommitMessages',
GIT_GET_NUM_COMMITS: 'getNumCommits',
GIT_GET_REMOTE_EXPERIMENT_REFS: 'getRemoteExperimentRefs',
GIT_GET_REMOTE_URL: 'getRemoteUrl',
GIT_GET_REPOSITORY_ROOT: 'getGitRepositoryRoot',
GIT_HAS_CHANGES: 'hasChanges',
Expand Down Expand Up @@ -68,6 +69,18 @@ export class GitReader extends GitCli {
}
}

public async getRemoteExperimentRefs(cwd: string): Promise<string> {
const options = getOptions({
args: [Command.LS_REMOTE, DEFAULT_REMOTE, 'refs/exps/*'],
cwd
})
try {
return await this.executeProcess(options)
} catch {
return ''
}
}

public async getRemoteUrl(cwd: string): Promise<string> {
const options = getOptions({ args: [Command.LS_REMOTE, Flag.GET_URL], cwd })
try {
Expand Down
3 changes: 2 additions & 1 deletion extension/src/commands/external.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,8 @@ export enum RegisteredCliCommands {
}

export enum RegisteredCommands {
EXPERIMENT_COLUMNS_SELECT = 'dvc.views.experimentsColumnsTree.selectColumns',
EXPERIMENT_COLUMNS_SELECT = 'dvc.views.experiments.selectColumns',
EXPERIMENT_COLUMNS_SELECT_FIRST = 'dvc.views.experiments.selectFirstColumns',
EXPERIMENT_FILTER_ADD = 'dvc.addExperimentsTableFilter',
EXPERIMENT_FILTER_ADD_STARRED = 'dvc.addStarredExperimentsTableFilter',
EXPERIMENT_FILTER_REMOVE = 'dvc.views.experimentsFilterByTree.removeFilter',
Expand Down
3 changes: 2 additions & 1 deletion extension/src/commands/util.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ import { Context } from '../vscode/context'

export const showSetupOrExecuteCommand =
<T>(setup: Setup, callback: (context: Context) => Promise<T | undefined>) =>
(context: Context) => {
async (context: Context) => {
await setup.isReady()
const { dvc, experiments } = setup.shouldBeShown()
if (!dvc) {
return commands.executeCommand(RegisteredCommands.SETUP_SHOW_DVC)
Expand Down
Loading

0 comments on commit 6f87e56

Please sign in to comment.