Megatest

Check-in [f21ad6e7f5]
Login
Overview
Comment:Merged real-new-runs-view
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.65-real-new-runs-view-wip
Files: files | file ages | folders
SHA1: f21ad6e7f5320682636b8219f2a6da1053032bbc
User & Date: matt on 2021-02-23 20:06:17
Other Links: branch diff | manifest | tags
Context
2021-02-23
21:15
Reduced some interdependecies Closed-Leaf check-in: d479fcb012 user: matt tags: v1.65-real-new-runs-view-wip (unpublished)
20:06
Merged real-new-runs-view check-in: f21ad6e7f5 user: matt tags: v1.65-real-new-runs-view-wip (unpublished)
10:57
basic new view updates check-in: 5a82492081 user: mrwellan tags: v1.65-real-new-runs-view
2021-02-22
19:02
odd dredges of code - bad merge? check-in: bd42d6502d user: mrwellan tags: v1.65-real-new-runs-view-wip (unpublished)
Changes

Modified build.inc from [69febbae9f] to [6f0f10b323].

1
2
3
4
5








6


7
8

9
10
11
12
13
14
15
16







17
18
19
20
21
22
23


24
25
26


27
28
29
30
31
32

33
34
35
36
37
38

39
40
41


42
43
44
45
46



47
48
49
50
51
52

53
54
55
56
57
58



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80




















81
82
83

84
85
86
87
88
89

90
91
92


93
94
95


96
97
98
99
100
101
102


103
104
105


106
107
108
109
110

111
112
113
114
115
116
117
118
119
120
121




122

123
124
125
126
127




128
129
130
131
132
133
134
135
136
137
138

139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154















155
156

157
158

159
160
161
162



163
164

165
166

167
168

169
170
171














172
173


174
175
176
177
178

179
180
181
182

183
184
185
186





187
188


189
190
191
192


193
194
195
196

197
198
199
200
201




202
203
204
205
206
207
208
209
210
211
212



213
214

215
216
217
218
219
220
221

222
223
224
225
226
227


228
229
230
231
232




233
234
235
236
237
238
239


240
241
242
243
244
245
246
247
248
249
250

251
252
253

254
255
256
257
258
259





260
261
262
263
264
265
266



267
268

269
270

271
272
273
274
275
276



277
278
279
280
281
282
283
284
285
286
287
288











289
290
291


292
293
294

295
1
2
3
4
5
6
7
8
9
10
11
12
13

14
15
16

17
18







19
20
21
22
23
24
25
26
27
28
29
30


31
32
33


34
35
36

37
38
39

40
41
42


43

44
45
46
47
48
49
50
51



52
53
54
55
56


57

58
59
60
61



62
63
64

65




















66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85

86

87
88
89
90
91


92



93
94
95


96
97
98
99


100


101
102
103


104
105
106

107
108
109
110
111
112
113




114
115
116
117
118
119
120
121

122
123




124
125
126
127
128
129
130

131
132
133
134
135
136
137
138
139















140
141
142
143
144
145
146
147
148
149
150
151
152
153
154


155


156




157
158
159


160


161


162


163
164
165
166
167
168
169
170
171
172
173
174
175
176
177


178
179
180
181

182

183




184

185
186
187
188
189
190
191
192


193
194
195
196


197
198
199
200
201

202
203




204
205
206
207
208
209
210
211
212
213
214
215



216
217
218
219

220
221



222
223

224
225





226
227

228
229
230
231
232
233
234
235
236
237
238
239
240


241
242
243



244
245
246
247

248

249
250
251
252
253
254





255
256
257
258
259

260
261
262



263
264
265
266

267
268

269
270
271
272



273
274
275
276











277
278
279
280
281
282
283
284
285
286
287
288


289
290

291
292
293
294





+
+
+
+
+
+
+
+
-
+
+

-
+

-
-
-
-
-
-
-
+
+
+
+
+
+
+





-
-
+
+

-
-
+
+

-



-
+


-
-

-
+



+
+


-
-
-
+
+
+


-
-

-
+



-
-
-
+
+
+
-

-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-

-
+




-
-
+
-
-
-
+
+

-
-
+
+


-
-

-
-
+
+

-
-
+
+

-



+



-
-
-
-




+
+
+
+
-
+

-
-
-
-
+
+
+
+



-







+

-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
-
-
+
-
-
-
-
+
+
+
-
-
+
-
-
+
-
-
+
-
-

+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+


-

-
+
-
-
-
-
+
-



+
+
+
+
+
-
-
+
+


-
-
+
+



-
+

-
-
-
-
+
+
+
+








-
-
-
+
+
+

-
+

-
-
-


-
+

-
-
-
-
-
+
+
-




+
+
+
+





-
-
+
+

-
-
-




-

-
+



+

-
-
-
-
-
+
+
+
+
+
-



-
-
-
+
+
+

-
+

-
+



-
-
-
+
+
+

-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+

-
-
+
+
-


+

# To regenerate this file do:
#   (cd utils/;ck52 csc gendeps.scm) && ./utils/gendeps allunits *scm
#   cp allunits.inc build.inc
#

# dashboard.o : commonmod.import.o
# dashboard.o : configfmod.import.o
# dashboard.o : dcommonmod.import.o
# megatest.o : apimod.import.o
# megatest.o : commonmod.import.o
# megatest.o : configfmod.import.o
# megatest.o : dbmod.import.o
# megatest.o : ods.import.o
api.o : rmt.o
# megatest.o : rmtmod.import.o
# megatest.o : servermod.import.o
api.o : db.o
api.o : tasks.o
api.o : mofiles/apimod.o
api.o : mofiles/commonmod.o
api.o : mofiles/apimod.o
api.o : mofiles/dbmod.o
mofiles/apimod.o : mofiles/commonmod.o
archive.o : db.o
archive.o : common.o
archive.o : mofiles/configfmod.o
archive.o : mofiles/commonmod.o
api.o : mofiles/dbmod.o
api.o : rmt.o
api.o : tasks.o
archive.o : common.o
archive.o : db.o
archive.o : mofiles/commonmod.o
archive.o : mofiles/configfmod.o
archive.o : mofiles/dbmod.o
client.o : common.o
client.o : db.o
client.o : mofiles/commonmod.o
client.o : mofiles/dbmod.o
client.o : rmt.o
client.o : mofiles/servermod.o
client.o : mofiles/servermod.o
client.o : rmt.o
common.o : mofiles/commonmod.o
common.o : mofiles/dbmod.o
common.o : mofiles/configfmod.o
common.o : mofiles/configfmod.o
common.o : mofiles/dbmod.o
common.o : mofiles/servermod.o
configf.o : process.o
configf.o : env.o
configf.o : mofiles/commonmod.o
configf.o : mofiles/configfmod.o
mofiles/configfmod.o : mofiles/commonmod.o
configf.o : process.o
dashboard-context-menu.o : common.o
dashboard-context-menu.o : db.o
dashboard-context-menu.o : gutils.o
dashboard-context-menu.o : rmt.o
dashboard-context-menu.o : ezsteps.o
dashboard-context-menu.o : subrun.o
dashboard-context-menu.o : gutils.o
dashboard-context-menu.o : mofiles/commonmod.o
dashboard-context-menu.o : mofiles/configfmod.o
dashboard-context-menu.o : mofiles/dbmod.o
dashboard-context-menu.o : rmt.o
dashboard-context-menu.o : subrun.o
dashboard-guimonitor.o : common.o
dashboard-guimonitor.o : db.o
dashboard-guimonitor.o : tasks.o
dashboard-guimonitor.o : mofiles/commonmod.o
dashboard-guimonitor.o : mofiles/dbmod.o
dashboard-guimonitor.o : mofiles/commonmod.o
dashboard-guimonitor.o : mofiles/dbmod.o
dashboard-guimonitor.o : tasks.o
dashboard-tests.o : common.o
dashboard-tests.o : db.o
dashboard-tests.o : gutils.o
dashboard-tests.o : rmt.o
dashboard-tests.o : ezsteps.o
dashboard-tests.o : subrun.o
dashboard-tests.o : gutils.o
dashboard-tests.o : mofiles/commonmod.o
dashboard-tests.o : mofiles/configfmod.o
dashboard-tests.o : mofiles/dbmod.o
dashboard.o : common.o
dashboard.o : margs.o
dashboard.o : items.o
dashboard-tests.o : rmt.o
dashboard-tests.o : subrun.o
dashboard.o : common.o
dashboard.o : db.o
dashboard.o : configf.o
dashboard.o : process.o
dashboard.o : launch.o
dashboard.o : runs.o
dashboard.o : dashboard-tests.o
dashboard.o : dashboard-guimonitor.o
dashboard.o : tree.o
dashboard.o : dcommon.o
dashboard.o : dashboard-context-menu.o
dashboard.o : vg.o
dashboard.o : subrun.o
dashboard.o : mt.o
dashboard.o : mofiles/commonmod.o
# dashboard.o : commonmod.import.o
dashboard.o : mofiles/configfmod.o
# dashboard.o : configfmod.import.o
dashboard.o : mofiles/dcommonmod.o
# dashboard.o : dcommonmod.import.o
dashboard.o : mofiles/apimod.o
dashboard.o : mofiles/dbmod.o
dashboard.o : mofiles/servermod.o
dashboard.o : dashboard-context-menu.o
dashboard.o : dashboard-guimonitor.o
dashboard.o : dashboard-tests.o
dashboard.o : db.o
dashboard.o : dcommon.o
dashboard.o : items.o
dashboard.o : launch.o
dashboard.o : margs.o
dashboard.o : mofiles/apimod.o
dashboard.o : mofiles/commonmod.o
dashboard.o : mofiles/configfmod.o
dashboard.o : mofiles/dbmod.o
dashboard.o : mofiles/dcommonmod.o
dashboard.o : mofiles/servermod.o
dashboard.o : mt.o
dashboard.o : process.o
dashboard.o : runs.o
dashboard.o : subrun.o
dashboard.o : tree.o
dashboard.o : vg.o
db.o : common.o
db.o : client.o
db.o : mt.o
db.o : common.o
db.o : mofiles/commonmod.o
db.o : mofiles/configfmod.o
db.o : mofiles/dbmod.o
db.o : mofiles/servermod.o
mofiles/dbmod.o : mofiles/commonmod.o
mofiles/dbmod.o : ods.o
db.o : mt.o
mofiles/dbmod.o : mofiles/configfmod.o
dcommon.o : gutils.o
dcommon.o : db.o
dcommon.o : db.o
dcommon.o : gutils.o
dcommon.o : mofiles/commonmod.o
dcommon.o : mofiles/dbmod.o
dcommon.o : mofiles/configfmod.o
dcommon.o : mofiles/configfmod.o
dcommon.o : mofiles/dbmod.o
dcommon.o : mofiles/dcommonmod.o
dcommon.o : mofiles/servermod.o
mofiles/dcommonmod.o : mofiles/commonmod.o
mofiles/dcommonmod.o : mofiles/configfmod.o
diff-report.o : common.o
diff-report.o : rmt.o
diff-report.o : mofiles/commonmod.o
diff-report.o : mofiles/commonmod.o
diff-report.o : rmt.o
env.o : mofiles/commonmod.o
ezsteps.o : db.o
ezsteps.o : common.o
ezsteps.o : common.o
ezsteps.o : db.o
ezsteps.o : items.o
ezsteps.o : runconfig.o
ezsteps.o : mofiles/commonmod.o
ezsteps.o : mofiles/configfmod.o
ezsteps.o : mofiles/dbmod.o
ezsteps.o : runconfig.o
genexample.o : mofiles/commonmod.o
http-transport.o : common.o
http-transport.o : db.o
http-transport.o : tests.o
http-transport.o : server.o
http-transport.o : portlogger.o
http-transport.o : rmt.o
http-transport.o : mofiles/commonmod.o
http-transport.o : mofiles/configfmod.o
http-transport.o : mofiles/dbmod.o
http-transport.o : mofiles/servermod.o
http-transport.o : portlogger.o
http-transport.o : rmt.o
http-transport.o : server.o
http-transport.o : tests.o
index-tree.o : lock-queue.o
index-tree.o : common.o
index-tree.o : db.o
index-tree.o : common.o
index-tree.o : items.o
index-tree.o : runconfig.o
index-tree.o : mofiles/commonmod.o
index-tree.o : items.o
index-tree.o : lock-queue.o
index-tree.o : mofiles/commonmod.o
index-tree.o : runconfig.o
items.o : common.o
items.o : mofiles/commonmod.o
items.o : mofiles/configfmod.o
launch.o : subrun.o
launch.o : common.o
launch.o : configf.o
launch.o : db.o
launch.o : ezsteps.o
launch.o : mofiles/commonmod.o
launch.o : mofiles/configfmod.o
launch.o : mofiles/dbmod.o
launch.o : subrun.o
lock-queue.o : common.o
lock-queue.o : tasks.o
lock-queue.o : mofiles/commonmod.o
megatest.o : common.o
megatest.o : margs.o
megatest.o : runs.o
megatest.o : launch.o
megatest.o : server.o
megatest.o : client.o
megatest.o : tests.o
megatest.o : genexample.o
megatest.o : db.o
megatest.o : tdb.o
megatest.o : mt.o
megatest.o : api.o
megatest.o : env.o
lock-queue.o : mofiles/commonmod.o
lock-queue.o : tasks.o
megatest.o : api.o
megatest.o : client.o
megatest.o : common.o
megatest.o : db.o
megatest.o : diff-report.o
megatest.o : env.o
megatest.o : genexample.o
megatest.o : launch.o
megatest.o : margs.o
megatest.o : mofiles/apimod.o
megatest.o : mofiles/commonmod.o
megatest.o : mofiles/configfmod.o
megatest.o : mofiles/dbmod.o
megatest.o : diff-report.o
megatest.o : mofiles/commonmod.o
megatest.o : mofiles/rmtmod.o
# megatest.o : commonmod.import.o
megatest.o : mofiles/configfmod.o
megatest.o : mofiles/servermod.o
# megatest.o : configfmod.import.o
megatest.o : ods.o
# megatest.o : ods.import.o
megatest.o : mofiles/dbmod.o
megatest.o : mt.o
megatest.o : ods.o
megatest.o : runs.o
# megatest.o : dbmod.import.o
megatest.o : mofiles/servermod.o
megatest.o : server.o
# megatest.o : servermod.import.o
megatest.o : mofiles/apimod.o
megatest.o : tdb.o
# megatest.o : apimod.import.o
megatest.o : mofiles/rmtmod.o
megatest.o : tests.o
# megatest.o : rmtmod.import.o
mlaunch.o : db.o
mlaunch.o : common.o
mlaunch.o : db.o
mofiles/apimod.o : mofiles/commonmod.o
mofiles/configfmod.o : mofiles/commonmod.o
mofiles/dbmod.o : mofiles/commonmod.o
mofiles/dbmod.o : mofiles/configfmod.o
mofiles/dbmod.o : ods.o
mofiles/dcommonmod.o : mofiles/commonmod.o
mofiles/dcommonmod.o : mofiles/configfmod.o
mofiles/rmtmod.o : mofiles/apimod.o
mofiles/rmtmod.o : mofiles/commonmod.o
mofiles/rmtmod.o : mofiles/dbmod.o
mofiles/servermod.o : mofiles/commonmod.o
mofiles/servermod.o : mofiles/configfmod.o
mofiles/servermod.o : mofiles/dbmod.o
monitor.o : db.o
monitor.o : common.o
monitor.o : common.o
monitor.o : db.o
monitor.o : items.o
monitor.o : runconfig.o
mt.o : db.o
mt.o : common.o
mt.o : items.o
mt.o : db.o
mt.o : runconfig.o
mt.o : tests.o
mt.o : server.o
mt.o : runs.o
mt.o : items.o
mt.o : rmt.o
mt.o : mofiles/commonmod.o
mt.o : mofiles/configfmod.o
mt.o : mofiles/dbmod.o
mt.o : rmt.o
mt.o : runconfig.o
mt.o : runs.o
mt.o : server.o
mt.o : tests.o
mtexec.o : margs.o
mtexec.o : configf.o
mtexec.o : configf.o
mtexec.o : margs.o
mtexec.o : mofiles/configfmod.o
mtut.o : common.o
mtut.o : margs.o
mtut.o : configf.o
mtut.o : configf.o
mtut.o : margs.o
mtut.o : mofiles/commonmod.o
mtut.o : mofiles/configfmod.o
newdashboard.o : common.o
newdashboard.o : megatest-version.o
newdashboard.o : dcommon.o
newdashboard.o : margs.o
newdashboard.o : mofiles/commonmod.o
newdashboard.o : mofiles/dbmod.o
newdashboard.o : dcommon.o
newdashboard.o : mofiles/configfmod.o
newdashboard.o : megatest-version.o
newdashboard.o : mofiles/commonmod.o
newdashboard.o : mofiles/configfmod.o
newdashboard.o : mofiles/dbmod.o
ods.o : mofiles/commonmod.o
portlogger.o : db.o
portlogger.o : mofiles/commonmod.o
portlogger.o : mofiles/configfmod.o
portlogger.o : mofiles/dbmod.o
process.o : mofiles/commonmod.o
rmt.o : api.o
rmt.o : http-transport.o
rmt.o : mofiles/commonmod.o
rmt.o : mofiles/apimod.o
rmt.o : mofiles/rmtmod.o
rmt.o : mofiles/apimod.o
rmt.o : mofiles/commonmod.o
rmt.o : mofiles/configfmod.o
rmt.o : mofiles/dbmod.o
rmt.o : mofiles/configfmod.o
rmt.o : mofiles/rmtmod.o
rmt.o : mofiles/servermod.o
mofiles/rmtmod.o : mofiles/commonmod.o
mofiles/rmtmod.o : mofiles/apimod.o
mofiles/rmtmod.o : mofiles/dbmod.o
runconfig.o : common.o
runconfig.o : mofiles/commonmod.o
runs.o : db.o
runs.o : archive.o
runs.o : common.o
runs.o : items.o
runs.o : runconfig.o
runs.o : tests.o
runs.o : server.o
runs.o : mt.o
runs.o : db.o
runs.o : items.o
runs.o : archive.o
runs.o : mofiles/commonmod.o
runs.o : mofiles/configfmod.o
runs.o : mofiles/dbmod.o
runs.o : mofiles/servermod.o
runs.o : mt.o
runs.o : runconfig.o
runs.o : server.o
runs.o : tests.o
server.o : common.o
server.o : db.o
server.o : http-transport.o
server.o : launch.o
server.o : mofiles/commonmod.o
server.o : mofiles/dbmod.o
server.o : mofiles/configfmod.o
server.o : mofiles/configfmod.o
server.o : mofiles/dbmod.o
server.o : mofiles/servermod.o
mofiles/servermod.o : mofiles/commonmod.o
mofiles/servermod.o : mofiles/configfmod.o
mofiles/servermod.o : mofiles/dbmod.o
sharedat.o : configf.o
sharedat.o : margs.o
sharedat.o : megatest-version.o
spublish.o : margs.o
subrun.o : db.o
subrun.o : common.o
subrun.o : mt.o
subrun.o : db.o
subrun.o : mofiles/commonmod.o
subrun.o : mofiles/configfmod.o
subrun.o : mofiles/dbmod.o
subrun.o : mt.o
synchash.o : db.o
synchash.o : server.o
synchash.o : mofiles/dbmod.o
tasks.o : db.o
tasks.o : rmt.o
tasks.o : common.o
synchash.o : mofiles/dbmod.o
synchash.o : server.o
tasks.o : cgisetup/models/pgdb.o
tasks.o : common.o
tasks.o : db.o
tasks.o : cgisetup/models/pgdb.o
tasks.o : mofiles/commonmod.o
tasks.o : mofiles/configfmod.o
tasks.o : mofiles/dbmod.o
tcmt.o : margs.o
tcmt.o : rmt.o
tcmt.o : common.o
tasks.o : rmt.o
tcmt.o : common.o
tcmt.o : margs.o
tcmt.o : mofiles/commonmod.o
tdb.o : common.o
tcmt.o : rmt.o
tdb.o : client.o
tdb.o : mt.o
tdb.o : common.o
tdb.o : db.o
tdb.o : mofiles/commonmod.o
tdb.o : mofiles/dbmod.o
tdb.o : ods.o
test.o : mtcommon.o
tests.o : lock-queue.o
tdb.o : mt.o
tdb.o : ods.o
tests.o : common.o
tests.o : db.o
tests.o : tdb.o
tests.o : common.o
tests.o : items.o
tests.o : runconfig.o
tests.o : server.o
tests.o : mofiles/commonmod.o
tests.o : mofiles/dbmod.o
tests.o : mofiles/configfmod.o
tests.o : mofiles/servermod.o
tree.o : margs.o
tree.o : launch.o
tests.o : items.o
tests.o : lock-queue.o
tests.o : mofiles/commonmod.o
tests.o : mofiles/configfmod.o
tests.o : mofiles/dbmod.o
tests.o : mofiles/servermod.o
tests.o : runconfig.o
tests.o : server.o
tests.o : tdb.o
tree.o : db.o
tree.o : dcommon.o
tree.o : gutils.o
tree.o : db.o
tree.o : server.o
tree.o : launch.o
tree.o : margs.o
tree.o : dcommon.o
tree.o : mofiles/commonmod.o
tree.o : mofiles/dbmod.o
tree.o : server.o
ulex.o : pkts.o

Modified dashboard-new-runs-view.scm from [3d8dfdd127] to [24de2d2df6].

44
45
46
47
48
49
50
51

52
53
54
55
56
57
58
59
60
61
62
63
64





65
66
67
68
69
70
71
72


73
74
75
76
77
78


79
80

81
82
83

84

85
86
87
88
89
90
91
44
45
46
47
48
49
50

51
52
53
54
55
56
57
58
59
60
61
62
63

64
65
66
67
68
69
70
71
72
73
74
75

76
77
78
79
80
81


82
83


84
85
86

87

88
89
90
91
92
93
94
95







-
+












-
+
+
+
+
+







-
+
+




-
-
+
+
-
-
+


-
+
-
+







    ;; update runs       id              => runrec
    ;; update targ-runid target/runname  => run-id
    (for-each
     (lambda (runrec)
       (let* ((run-id (simple-run-id runrec))
	      (full-targ-runname (conc (simple-run-target runrec) "/"
				       (simple-run-runname runrec))))
	 (debug:print 0 *default-log-port* "Update run  " run-id)
	 ;; (debug:print 0 *default-log-port* "Update run  " run-id)
	 (sparse-vector-set! (dboard:rdat-runs rdat) run-id runrec)
	 (hash-table-set! (dboard:rdat-targ-runid rdat) full-targ-runname run-id)
	 (tree:add-node tb "Runs" (string-split full-targ-runname "/"))
	 ))
     data)
    numruns))

;;======================================================================
;; The "new" runs browser, this one sets up the view and registers the
;; updater
;;
(define (dashboard:runs-browse commondat tabdat #!key (tab-num 5))
  (let* ((rdat (make-dboard:rdat)))
  (let* ((rdat     (make-dboard:rdat))
	 (runsmtx  (dboard:runs-new-matrix commondat rdat))
	 (itemsmtx (dboard:runs-new-matrix commondat rdat)))
    (dboard:rdat-runs-mtx-set! rdat runsmtx)
    (dboard:rdat-items-mtx-set! rdat itemsmtx)
    (dboard:commondat-add-updater
     commondat
     (lambda ()
       (dashboard:new-runs-updater commondat tabdat rdat))
     tab-num: tab-num)
    (iup:split
     #:orientation "VERTICAL"
     #:value 10
     #:value 100
     #:shrink "YES"
     (iup:vbox
      (dboard:runs-tree-new-view-browser commondat rdat))
     (iup:split
      #:orientation "VERTICAL"
      #:value 10
      (iup:vbox
      #:value 100
      (iup:vbox runsmtx)
       (dboard:runs-new-matrix commondat rdat))
      (iup:hbox
      (iup:vbox
       (iup:split
	#:orientation "VERTICAL"
	#:value 10
	#:value 500
	(dboard:runs-new-matrix commondat rdat)
	itemsmtx
	(dboard:test-info-matrix commondat rdat)
	))))))

(define (dashboard:new-runs-updater commondat tabdat rdat)
  (let* ((runnum           (dboard:rdat-runnum          rdat))
	 (start-time       (current-milliseconds))
	 (tot-runs         #f))
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124


125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141

142





143
144



145
146





































































147
148
149
150

151
152
153
154
155

156
157
158
159
160
161
162
105
106
107
108
109
110
111

















112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137


138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214

215
216
217
218
219

220
221
222
223
224
225
226
227







-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+

















+

+
+
+
+
+
-
-
+
+
+


+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+



-
+




-
+







	    (dboard:rdat-runnum-set! rdat newrn)
	    (if (> newrn 0)
		(loop newrn)))))
    (if (>=  (dboard:rdat-runnum rdat) tot-runs)
	(dboard:rdat-runnum-set! rdat 0))
    ;; (dboard:rdat-runnum-set! rdat rn))) ;; not needed as it is set above
    ;; (dboard:rdat-last-update-set! rdat (- (current-seconds) 10))
    '()))

#;(define (make-runs-view commondat rdat tab-num)
  ;; register an updater
  (dboard:commondat-add-updater
   commondat
   (lambda ()
     (new-runs-updater commondat rdat))
   tab-num: tab-num)

  (iup:vbox
   (iup:split
    #:orientation "VERTICAL" ;; "HORIZONTAL"
    #:value 100
    (dboard:runs-tree-new-browser commondat rdat)
    (dboard:runs-new-matrix commondat rdat)
    )))
    (dashboard:update-new-runs-view-runs-matrix commondat rdat)
    '()))

;; NOTE: runnum is NOT the run-id, it is a pointer into the runsbynum vector
;;
(define (dashboard:update-run-data runnum rdat)
  (let* ((curr-time            (current-seconds))
	 (runrec               (vector-ref (dboard:rdat-runsbynum rdat) runnum))
	 (run-id               (simple-run-id runrec))
	 (last-update          (sparse-vector-ref (dboard:rdat-last-updates rdat) run-id))
	 ;; filters
	 (testname-sql-filt    (dboard:rdat-testname-sql-filt    rdat))
	 ;; (itempath-sql-filt    (dboard:rdat-itempath-sql-filt    rdat))
	 (test-state-sql-filt  (dboard:rdat-test-state-sql-filt  rdat))  ;; not used yet
	 (test-status-sql-filt (dboard:rdat-test-status-sql-filt rdat))  ;; not used yet
	 (tests                (rmt:get-tests-for-run-state-status run-id
						      testname-sql-filt
						      last-update                ;; last-update
						      )))
    ;; (debug:print 0 *default-log-port* "tests: " tests)
    (sparse-vector-set! (dboard:rdat-last-updates rdat) run-id (- curr-time 1))
    (sparse-vector-set! (dboard:rdat-run-tests rdat) run-id
			(delete-duplicates
			 (append tests (sparse-vector-ref (dboard:rdat-run-tests rdat) run-id))
			 (lambda (a b)
			   (eq? (vector-ref a 0)(vector-ref b 0))))) ;; de-duplicate based on test id
    (debug:print 0 *default-log-port* "Got " (length tests) " tests for run-id "
		 run-id " testname-sql-filt " testname-sql-filt " and last-update " last-update) 
    #;(debug:print 0 *default-log-port* "Got " (length tests) " tests for run-id "
		 run-id " testname-sql-filt " testname-sql-filt " and last-update " last-update
		 " first test info: " tests) ;; (if (not (null? tests))(car tests) '()))
    (length tests)))

;; NB// start at 1.
;;
(define (dashboard:get-row-num mtrx rownames tname)
  (or (hash-table-ref/default rownames tname #f)
      (let* ((numentries (hash-table-size rownames))
	     (nextnum    (+ numentries 1)))
	(hash-table-set! rownames tname nextnum)
	(iup:attribute-set! mtrx (conc nextnum ":0") tname)
	nextnum)))

(define (dashboard:update-new-runs-view-runs-matrix commondat rdat)
  (let* ((run-tests-data (dboard:rdat-run-tests rdat)) ;; from dbmod.scm (define-record simple-run target id runname state status owner event_time)
	 (run-tests-mtx  (dboard:rdat-runs-mtx  rdat))
	 (runs-by-num    (dboard:rdat-runsbynum rdat)) ;; this is the sequence num
	 (num-runs       (vector-length runs-by-num))
	 )
    (debug:print 0 *default-log-port* "num-runs: " num-runs)
    (let loop ((col-num 1))
      (let* ((runrec    (vector-ref runs-by-num (- col-num 1)))
	     (run-id    (simple-run-id runrec))
	     (target    (simple-run-target runrec))
	     (runname   (simple-run-runname runrec))
	     (vert-targ (string-translate (conc target "/" runname) "/" "\n"))
	     (run-tests (sparse-vector-ref run-tests-data run-id))
	     (changed   #f))  ;; manage redraws on a column by column basis
	(debug:print 0 *default-log-port* "run-tests: " run-tests)
	(if (null? run-tests) ;; empty run
	    (if (< col-num num-runs) ;; NOT CORRECT
		(loop (+ col-num)))
	    (begin
	      (set! changed (dcommon:modifiy-if-different ;; set the col header
			     run-tests-mtx
			     (conc "0:" col-num)
			     vert-targ
			     changed))
	      (let testloop ((inum    0)
			     (tail    run-tests))
		(let* ((test-dat   (car tail))
		       (tname      (db:test-get-testname test-dat))
		       (state      (db:test-get-state    test-dat))
		       (status     (db:test-get-status   test-dat))
		       (item-path  (db:test-get-item-path test-dat))
		       (color      (gutils:get-color-for-state-status state status))
		       (is-deleted (equal? state "DELETED"))
		       (row-num    (if is-deleted
				       #f
				       (dashboard:get-row-num run-tests-mtx
							      (dboard:rdat-rownames rdat) tname)))
		       (cell-name (conc row-num ":" col-num)))
		  (if (or (not is-deleted)
			  (equal? item-path ""))
		      (begin
 			(set! changed (dcommon:modifiy-if-different 
 				       run-tests-mtx
 				       (conc "BGCOLOR" row-num ":" col-num)
 				       (car color)
 				       changed))
			(set! changed (dcommon:modifiy-if-different 
 				       run-tests-mtx
 				       cell-name
 				       (cadr color)
 				       changed))))
		  (if (not (null? (cdr tail)))
		      (testloop (+ inum 1)(cdr tail))
		      (begin
			(iup:attribute-set! run-tests-mtx (conc "C" col-num) "REDRAW")
			(if (< col-num num-runs)
			    (loop (+ col-num 1)))))))))))))

(define (dboard:runs-new-matrix commondat rdat)
  (iup:matrix
   #:alignment1 "ALEFT"
   ;; #:expand "YES" ;; "HORIZONTAL"
   #:expand "YES" ;; "HORIZONTAL"
   #:scrollbar "YES"
   #:numcol 100
   #:numlin 200
   #:numcol-visible 3 ;; (min 8)
   #:numlin-visible 1
   #:numlin-visible 10
   #:widthdef 20
   #:click-cb
   (lambda (obj row col status)
     (let* ((cell (conc row ":" col)))
       #f))
   ))

182
183
184
185
186
187
188
189

190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205

206

207
208
209
210
211
212
213
214
215
216
217
218
219
220
221



222

223
224


225
226


227
228
229
230
231
232
233
247
248
249
250
251
252
253

254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269

270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292


293
294


295
296
297
298
299
300
301
302
303







-
+















-
+

+















+
+
+

+
-
-
+
+
-
-
+
+







	  '(("Test Meta Data" . 1)
	    ("Author"    . 2)
	    ("Owner"     . 3)
	    ("Reviewed"  . 4)
	    ("Tags"      . 5)
	    ("Description" . 6)))
	 (remhost-run-info-fields
	  '(("Remote host/Run info" . 1)
	  '(("Host/run info" . 1)
	    ("Hostname"  . 2)
	    ("Disk free" . 3)
	    ("CPU Load"  . 4)
	    ("Run duration" . 5)
	    ("Logfile"   . 6)
	    ("Process ID" . 7)
	    ("Machine info" . 8)))
	 (mk-matrix (lambda (cfgdat)
		      (let ((mtx (iup:matrix
				  #:alignment1 "ALEFT"
				  ;; #:expand "YES" ;; "HORIZONTAL"
				  #:scrollbar "YES"
				  #:numcol 1
				  #:numlin (length cfgdat)
				  #:numcol-visible 1 ;; (min 8)
				  #:numlin-visible 1
				  #:numlin-visible (length cfgdat)
				  #:widthdef 50
				  #:width0 50
				  #:click-cb
				  (lambda (obj row col status)
				    (let* ((cell (conc row ":" col)))
				      #f)))))
			(for-each (lambda (finfo)
				    (match finfo
				      ((fieldname . rownum)
				       (iup:attribute-set! mtx (conc rownum":0") fieldname))
				      (else (debug:print 0 *default-log-port* "ERROR: bad finfo "finfo))))
				  cfgdat)
			mtx)))
	 (runmtx  (mk-matrix run-fields))
	 (testmtx (mk-matrix test-fields))
	 (metamtx (mk-matrix test-meta-fields))
	 (remhostmtx (mk-matrix remhost-run-info-fields)))
    ;; (dboard:rdat-runs-mtx-set! rdat runmtx)
    ;; (dboard:rdat-items-mtx-set! rdat testmtx)
    ;; (
    (iup:vbox
     #:expandchildren #t
     (iup:hbox
      runmtx testmtx)
     #:expand #f
     runmtx testmtx
     (iup:hbox
      metamtx remhostmtx))))
     metamtx remhostmtx
     )))

;; browse runs as a tree. Used in both "Runs" tab and
;; in the runs control panel.
;;
;;  THIS IS THE NEW ONE
;;
(define (dboard:runs-tree-new-view-browser commondat rdat)
242
243
244
245
246
247
248
249

250
251
252
253
254
255
256
257
258
259
260
261
262

263
264
265
266
267
268
269
312
313
314
315
316
317
318

319
320
321
322
323
324
325
326
327
328
329
330
331

332
333
334
335
336
337
338
339







-
+












-
+







				(if b (dboard:rdat-targ-sql-filt-set! rdat
								 (string-split b "/")))
				#;(dashboard:update-run-command tabdat))
			      "command-testname-selector tb action"))
		  ;; #:value (dboard:test-patt->lines  ;; This seems like it was wrong, BUG in code where it was copied from?
	          ;;		   (dboard:tabdat-test-patts-use tabdat))
		  #:expand "HORIZONTAL"
		  ;; #:size "10x30"
		  ;; #:size "10x"
		  ))
	 (tb
          (iup:treebox
           #:value 0
           #:title "Runs"     ;;  was #:name -- iup 3.19 changed
			      ;;  this... "Changed: [DEPRECATED
			      ;;  REMOVED] removed the old attribute
			      ;;  NAMEid from IupTree to avoid
			      ;;  conflict with the common attribute
			      ;;  NAME. Use the TITLEid attribute."
           #:expand "YES"
           #:addexpanded "YES"
           #:size "10x"
           #:size "120x"
           #:selection-cb
           (lambda (obj id state)
             (debug:catch-and-dump
              (lambda ()
                (let* ((run-path (tree:node->path obj id))
                       (run-id    (new-tree-path->run-id rdat (cdr run-path))))
                  ;; (dboard:tabdat-view-changed-set! tabdat #t) ;; ??

Modified dashboard.scm from [a8b0fa0188] to [a8edce5622].

70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87



88
89
90
91
92
93
94
70
71
72
73
74
75
76



77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94







-
-
-








+
+
+







(declare (uses dbmod))
(import dbmod)
;; (declare (uses dbmod.import))

(declare (uses servermod))
(import servermod)

;; This is the new runs view
(include "dashboard-new-runs-view.scm")

(include "common_records.scm")
(include "db_records.scm")
(include "run_records.scm")
(include "task_records.scm")
(include "megatest-version.scm")
;; (include "megatest-fossil-hash.scm")
(include "vg_records.scm")

;; This is the new runs view
(include "dashboard-new-runs-view.scm")

(define help (conc 
	      "Megatest Dashboard, documentation at http://www.kiatoa.com/fossils/megatest
  version " megatest-version "
  license GPL, Copyright (C) Matt Welland 2012-2017

Usage: dashboard [options]
  -h                    : this help
2538
2539
2540
2541
2542
2543
2544

2545
2546
2547
2548
2549
2550
2551
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552







+







	  (vector-set! testvec testnum butn)
	  (loop runnum (+ testnum 1) testvec (cons butn res))))))
    ;; now assemble the hdrlst and bdylst and kick off the dialog
    (iup:show
     (iup:dialog 
      #:title (conc "Megatest dashboard " (current-user-name) ":" *toppath*)
      #:menu (dcommon:main-menu)
      #:shrink "YES"
      (let* ((runs-view (iup:vbox
			 (iup:split
			  #:orientation "VERTICAL" ;; "HORIZONTAL"
			  #:value 100
			  (dboard:runs-tree-browser commondat runs-dat)
			  (iup:split
			   #:value 100
2587
2588
2589
2590
2591
2592
2593

2594
2595
2596
2597
2598
2599
2600
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602







+







		 (sort (hash-table-keys views-cfgdat)
		       (lambda (a b)
			 (let ((order-a (or (any->number (configf:lookup views-cfgdat a "order")) 999))
			       (order-b (or (any->number (configf:lookup views-cfgdat b "order")) 999)))
			   (> order-a order-b)))))
		result))
	     (tabs (apply iup:tabs
			  #:shrink "YES"
			  #:tabchangepos-cb (lambda (obj curr prev)
					      (debug:catch-and-dump
					       (lambda ()
						 (let* ((tab-num (dboard:commondat-curr-tab-num commondat))
							(tabdat  (dboard:common-get-tabdat commondat tab-num: tab-num)))
						   (dboard:tabdat-layout-update-ok-set! tabdat #f))
						 (dboard:commondat-curr-tab-num-set! commondat curr)

Modified dcommonmod.scm from [77dffd46cc] to [7441aa8866].

187
188
189
190
191
192
193
194
195
196
197
198







199
200
201
202
203
204
205
187
188
189
190
191
192
193





194
195
196
197
198
199
200
201
202
203
204
205
206
207







-
-
-
-
-
+
+
+
+
+
+
+







  ;; view related items
  (runnum    0) ;; which column we are processing, index into runsbynum, we sweep across all these runs then start over
  (leftcol   0) ;; number of the leftmost visible column
  (toprow    0) ;; topmost visible row
  (numcols  24) ;; number of columns visible
  (numrows  20) ;; number of rows visible
  
efactored
  (runs       (make-sparse-vector))   ;; id => runrec
  (runsbynum  (make-vector 100 #f))   ;; vector num => runrec 
  (targ-runid (make-hash-table))      ;; area/target/runname => run-id  ;; not sure this will be needed
  (tests      (make-hash-table))      ;; test[/itempath] => list of test rec
  ;; efactored  <=== merge detritus
  (runs       (make-sparse-vector #f))  ;; id => runrec
  (run-tests  (make-sparse-vector '())) ;; id => list of tests
  (runsbynum  (make-vector 100 #f))     ;; vector num => runrec
  (rownames   (make-hash-table))        ;; testname => rownum
  (targ-runid (make-hash-table))        ;; area/target/runname => run-id  ;; not sure this will be needed
  (tests      (make-hash-table))        ;; test[/itempath] => list of test rec

  ;; run sql filters 
  (targ-sql-filt        "%")
  (runname-sql-filt     "%")
  (run-state-sql-filt   "%")
  (run-status-sql-filt  "%")

217
218
219
220
221
222
223
224




225
226
227
228
229
230
231
219
220
221
222
223
224
225

226
227
228
229
230
231
232
233
234
235
236







-
+
+
+
+







  (tests (make-hash-table))      ;; test[/itempath] => (vector columnnum => test rec)

  ;; various
  (prev-run-ids  '())            ;; push previously looked at runs on this
  (view-changed #f)

  ;; widgets
  (runs-tree #f)                 ;; 
  (runs-tree #f)                 ;;
  (runs-mtx  #f)                 ;; runs displayed here
  (items-mtx #f)                 ;; items displayed here
  ;; info widgets here
  )

(define (dboard:rdat-push-run-id rdat run-id)
  (dboard:rdat-prev-run-ids-set! rdat (cons run-id (dboard:rdat-prev-run-ids rdat))))

(defstruct dboard:runrec
  id

Modified tests.scm from [7cdd6fc78c] to [d6c043ddb8].

23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
23
24
25
26
27
28
29

30
31

32

33
34
35
36
37
38
39







-


-

-







;;======================================================================

(declare (unit tests))
(declare (uses lock-queue))
(declare (uses db))
(declare (uses tdb))
(declare (uses common))
;; (declare (uses dcommon)) ;; needed for the steps processing
(declare (uses items))
(declare (uses runconfig))
;; (declare (uses sdb))
(declare (uses server))
;;(declare (uses stml2))

(use sqlite3 srfi-1 posix regex regex-case srfi-69 dot-locking tcp directory-utils)
(import (prefix sqlite3 sqlite3:))
(require-library stml)

(declare (uses commonmod))
(import commonmod)