Skip to content

Commit 5a9c6fd

Browse files
authored
Merge pull request #233 from labmlai/archive
update folders on the local cache
2 parents 8429769 + 0e02005 commit 5a9c6fd

File tree

3 files changed

+24
-5
lines changed

3 files changed

+24
-5
lines changed

app/server/labml_app/db/project.py

+5-3
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ def is_project_session(self, session_uuid: str) -> bool:
3636
def get_runs(self, folder_name: str = "Default") -> List['run.Run']:
3737
res = []
3838
likely_deleted = []
39-
run_uuids = self.runs.keys()
39+
run_uuids = []
40+
if folder_name == 'all':
41+
run_uuids = self.runs.keys()
4042
if folder_name in self.folders:
4143
f = self.folders[folder_name].load()
4244
if f:
@@ -52,7 +54,8 @@ def get_runs(self, folder_name: str = "Default") -> List['run.Run']:
5254
logger.error('error in creating run list, ' + run_uuid + ':' + str(e))
5355

5456
for run_uuid in likely_deleted:
55-
self.runs.pop(run_uuid)
57+
if run_uuid in self.runs:
58+
self.runs.pop(run_uuid)
5659

5760
if self.is_run_added:
5861
self.is_run_added = False
@@ -74,7 +77,6 @@ def get_sessions(self) -> List['session.Session']:
7477
def delete_runs(self, run_uuids: List[str], project_owner: str) -> None:
7578
for run_uuid in run_uuids:
7679
if run_uuid in self.runs:
77-
self.runs.pop(run_uuid)
7880
r = run.get(run_uuid)
7981
if r and r.owner == project_owner:
8082
try:

app/ui/src/cache/cache.ts

+16
Original file line numberDiff line numberDiff line change
@@ -299,6 +299,12 @@ export class RunCache extends CacheObject<Run> {
299299
async updateRunData(data: Record<string, any>): Promise<void> {
300300
await NETWORK.updateRunData(this.uuid, data)
301301
}
302+
303+
localUpdateFolder(folder: string) {
304+
if (this.data != null) {
305+
this.data.folder = folder
306+
}
307+
}
302308
}
303309

304310
export class SessionCache extends CacheObject<Session> {
@@ -734,6 +740,11 @@ class Cache {
734740
archiveFolder.insertRuns(runs)
735741
defaultFolder.removeRuns(runUUIDS)
736742

743+
for (let uuid of runUUIDS) {
744+
let run = this.getRun(uuid)
745+
run.localUpdateFolder(RunsFolder.ARCHIVE)
746+
}
747+
737748
return response
738749
}
739750

@@ -749,6 +760,11 @@ class Cache {
749760
defaultFolder.insertRuns(runs)
750761
archiveFolder.removeRuns(runUUIDS)
751762

763+
for (let uuid of runUUIDS) {
764+
let run = this.getRun(uuid)
765+
run.localUpdateFolder(RunsFolder.DEFAULT)
766+
}
767+
752768
return response
753769
}
754770

app/ui/src/views/runs_list_view.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ class RunsListView extends ScreenView {
8686
$('div', $ => {
8787
this.userMessages.render($)
8888
new HamburgerMenuView({
89-
title: 'Runs',
89+
title: (this.folder == RunsFolder.ARCHIVE ? 'Archived ' : '') + 'Runs',
9090
setButtonContainer: container => this.buttonContainer = container
9191
}).render($)
9292

@@ -136,7 +136,8 @@ class RunsListView extends ScreenView {
136136
updateButtons() {
137137
let noRuns = this.currentRunsList.length == 0
138138

139-
this.deleteButton.hide(noRuns || !this.isEditMode)
139+
this.deleteButton.hide((noRuns || !this.isEditMode) ||
140+
(this.folder != RunsFolder.DEFAULT && this.folder != RunsFolder.ARCHIVE))
140141
this.cancelButton.hide(noRuns || !this.isEditMode)
141142
this.editButton.hide(noRuns || this.isEditMode)
142143
this.archiveButton.hide((noRuns || !this.isEditMode) ||

0 commit comments

Comments
 (0)