Skip to content

Commit e78babd

Browse files
authored
Remove garbage collect experiments (#4104)
1 parent f09e1cc commit e78babd

File tree

8 files changed

+18
-172
lines changed

8 files changed

+18
-172
lines changed

extension/package.json

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -200,11 +200,6 @@
200200
"category": "DVC",
201201
"icon": "$(discard)"
202202
},
203-
{
204-
"title": "Garbage Collect Experiments",
205-
"command": "dvc.experimentGarbageCollect",
206-
"category": "DVC"
207-
},
208203
{
209204
"title": "Find in Folder...",
210205
"command": "dvc.findInFolder",
@@ -740,10 +735,6 @@
740735
"command": "dvc.deleteTarget",
741736
"when": "false"
742737
},
743-
{
744-
"command": "dvc.experimentGarbageCollect",
745-
"when": "dvc.commands.available && dvc.project.available && !dvc.experiment.running.workspace"
746-
},
747738
{
748739
"command": "dvc.findInFolder",
749740
"when": "false"

extension/src/cli/dvc/constants.ts

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -94,22 +94,14 @@ export enum ExperimentFlag {
9494
REV = '--rev'
9595
}
9696

97-
export enum GcPreserveFlag {
98-
ALL_BRANCHES = '--all-branches',
99-
ALL_TAGS = '--all-tags',
100-
ALL_COMMITS = '--all-commits',
101-
QUEUED = '--queued',
102-
WORKSPACE = '--workspace'
103-
}
104-
10597
export enum ConfigKey {
10698
STUDIO_TOKEN = 'studio.token',
10799
STUDIO_OFFLINE = 'studio.offline'
108100
}
109101

110102
type Target = string
111103

112-
type Flags = Flag | ExperimentFlag | GcPreserveFlag
104+
type Flags = Flag | ExperimentFlag
113105

114106
export type Args = (
115107
| Command

extension/src/cli/dvc/executor.test.ts

Lines changed: 1 addition & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { join } from 'path'
22
import { EventEmitter } from 'vscode'
33
import { Disposable, Disposer } from '@hediet/std/disposable'
4-
import { Flag, GcPreserveFlag, UNEXPECTED_ERROR_CODE } from './constants'
4+
import { Flag, UNEXPECTED_ERROR_CODE } from './constants'
55
import { DvcExecutor } from './executor'
66
import { CliResult, CliStarted } from '..'
77
import { createProcess } from '../../process/execution'
@@ -278,31 +278,6 @@ describe('CliExecutor', () => {
278278
})
279279
})
280280

281-
describe('expGarbageCollect', () => {
282-
it('should call createProcess with the correct parameters to garbage collect experiments', async () => {
283-
const cwd = __dirname
284-
const stdout =
285-
'WARNING: This will remove all experiments except those derived from the workspace of the current repo. ' +
286-
'Run queued experiments will be preserved. Run queued experiments will be removed.\n' +
287-
"Removed 45 experiments. To remove unused cache files use 'dvc gc'. "
288-
mockedCreateProcess.mockReturnValueOnce(getMockedProcess(stdout))
289-
290-
const output = await dvcExecutor.expGarbageCollect(
291-
cwd,
292-
GcPreserveFlag.WORKSPACE,
293-
GcPreserveFlag.QUEUED
294-
)
295-
expect(output).toStrictEqual(stdout)
296-
297-
expect(mockedCreateProcess).toHaveBeenCalledWith({
298-
args: ['exp', 'gc', '-f', '--workspace', '--queued'],
299-
cwd,
300-
env: mockedEnv,
301-
executable: 'dvc'
302-
})
303-
})
304-
})
305-
306281
describe('expPush', () => {
307282
it('should call createProcess with the correct parameters to push an existing experiment to the remote', async () => {
308283
const cwd = __dirname

extension/src/cli/dvc/executor.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import {
55
ExperimentFlag,
66
ExperimentSubCommand,
77
Flag,
8-
GcPreserveFlag,
98
QueueSubCommand
109
} from './constants'
1110
import { typeCheckCommands } from '..'
@@ -18,7 +17,6 @@ export const autoRegisteredCommands = {
1817
COMMIT: 'commit',
1918
EXP_APPLY: 'expApply',
2019
EXP_BRANCH: 'expBranch',
21-
EXP_GARBAGE_COLLECT: 'expGarbageCollect',
2220
EXP_PUSH: 'expPush',
2321
EXP_QUEUE: 'expRunQueue',
2422
EXP_REMOVE: 'expRemove',
@@ -71,15 +69,6 @@ export class DvcExecutor extends DvcCli {
7169
)
7270
}
7371

74-
public expGarbageCollect(cwd: string, ...preserveFlags: GcPreserveFlag[]) {
75-
return this.executeExperimentProcess(
76-
cwd,
77-
ExperimentSubCommand.GARBAGE_COLLECT,
78-
Flag.FORCE,
79-
...preserveFlags
80-
)
81-
}
82-
8372
public expPush(cwd: string, ...ids: string[]) {
8473
return this.executeExperimentProcess(
8574
cwd,

extension/src/experiments/commands/register.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { getBranchExperimentCommand, getPushExperimentCommand } from '.'
2-
import { pickGarbageCollectionFlags } from '../quickPick'
32
import { WorkspaceExperiments } from '../workspace'
43
import { AvailableCommands, InternalCommands } from '../../commands/internal'
54
import {
@@ -147,15 +146,6 @@ const registerExperimentQuickPickCommands = (
147146
internalCommands: InternalCommands,
148147
setup: Setup
149148
): void => {
150-
internalCommands.registerExternalCliCommand(
151-
RegisteredCliCommands.EXPERIMENT_GARBAGE_COLLECT,
152-
() =>
153-
experiments.getCwdAndQuickPickThenRun(
154-
AvailableCommands.EXP_GARBAGE_COLLECT,
155-
pickGarbageCollectionFlags
156-
)
157-
)
158-
159149
internalCommands.registerExternalCommand(
160150
RegisteredCommands.EXPERIMENT_FILTER_ADD,
161151
(context: Context) => experiments.addFilter(getDvcRootFromContext(context))

extension/src/experiments/quickPick.test.ts

Lines changed: 0 additions & 52 deletions
This file was deleted.

extension/src/experiments/quickPick.ts

Lines changed: 0 additions & 39 deletions
This file was deleted.

extension/src/test/e2e/util.ts

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -104,26 +104,26 @@ export const deleteAllExistingExperiments = async () => {
104104
const workbench = await browser.getWorkbench()
105105

106106
const deleteNonWorkspaceExperiments = await workbench.executeCommand(
107-
'DVC: Garbage Collect Experiments'
107+
'DVC: Remove Experiment(s)'
108108
)
109-
await browser.waitUntil(() =>
110-
deleteNonWorkspaceExperiments.elem.isDisplayed()
111-
)
112-
await browser.keys('Enter')
113109

114-
const deleteAllNonTagExperiments = await workbench.executeCommand(
115-
'DVC: Garbage Collect Experiments'
116-
)
110+
try {
111+
await browser.waitUntil(() =>
112+
deleteNonWorkspaceExperiments.elem.isDisplayed()
113+
)
117114

118-
await browser.waitUntil(() => deleteAllNonTagExperiments.elem.isDisplayed())
115+
await browser
116+
.action('key')
117+
.down(Key.Shift)
118+
.down(Key.Tab)
119+
.up(Key.Tab)
120+
.up(Key.Shift)
121+
.perform()
119122

120-
const tagOption = 'tags'
121-
await browser.keys([...tagOption, 'ArrowDown', 'Space', 'ArrowUp'])
122-
for (let i = 0; i < tagOption.length; i++) {
123-
await browser.keys('Backspace')
124-
}
125-
await browser.keys(['w', 'o', 'ArrowDown', 'Space'])
126-
return browser.keys('Enter')
123+
await browser.keys('Space')
124+
125+
return browser.keys('Enter')
126+
} catch {}
127127
}
128128

129129
export const runModifiedExperiment = async () => {

0 commit comments

Comments
 (0)