move dashboard JavaScript to its own file so that we can format it with rome check
reduce default historyLines from 1000 to 500 to compensate for many more jobs than before
optimize: remove animations for all browsers, add CSS contain and content-visibility on log windows
optimize: avoid reflows by not scrolling hidden log windows (was ~40% of our time in Firefox, ~30% in Chrome)
limit the size of the BatchingQueue to fix the issue that caused Chromium-based browsers to hang when returning to the tab
context menu: limit to 8 ignore suggestions until you click to show more
context menu: create ignores based on the original URL characters
(#340)
start with all jobs collapsed by default and add &initialFilter= URL parameter
document more URL parameters in the help text, including &loadRecent=0 to skip loading recent data
show progress when loading the recent data
show WebSocket messages/sec and KB/s
if uBlock Origin cosmetic filtering is detected, tell user to read help and turn off ad blocker
CSS improvements: make font sizes, families, and weights more consistent
I had to move some dashboard3 things to avoid confusing the two dashboard JavaScript files.
I didn't test whether the Ruby still serves things correctly.
obsolete tests results for 9cf8f4144576891e4c26a58f97963ff867657134
Test results with all job windows collapsed, **Chrome** 116.0.5817.5 (Official Build) dev (64-bit) on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions:
9cf8f4144576891e4c26a58f97963ff867657134 uses 55% of the CPU time of the current dashboard and ~25% as much memory.
![archivebot dashboard in chrome 2023-06-09_23-34-41 668182](https://github.com/ArchiveTeam/ArchiveBot/assets/4458/ffe7700f-d849-4a9c-b73d-8c7984969ff9)
---
Test results with all job windows collapsed, **Firefox** 114.0 on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions:
9cf8f4144576891e4c26a58f97963ff867657134 uses ~95% of the CPU time of the current dashboard and about the same amount of memory (it fluctuates as Firefox takes a while to do a full GC).
![archivebot dashboard in firefox 2023-06-09_23-43-23 246469](https://github.com/ArchiveTeam/ArchiveBot/assets/4458/7e9da02c-112f-4a00-ab6d-ec9d8f0a2683)
Unlike Chrome's Task Manager, Firefox's `about:processes` doesn't have a `CPU time` column, so the difference is less measurable.
Test results with all job windows collapsed, Chrome 116.0.5817.5 (Official Build) dev (64-bit) on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions:
f7d5b1a60c689af35519b56f483f4e0c459f7e41 uses 40% of the CPU time of the current dashboard and ~25% as much memory.
Test results with all job windows collapsed, Firefox 114.0 on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions:
f7d5b1a60c689af35519b56f483f4e0c459f7e41 uses ~57% of the CPU time of the current dashboard and about the same amount of memory (it fluctuates as Firefox takes a while to do a full GC).
Unlike Chrome's Task Manager, Firefox's about:processes doesn't have a CPU time column, so the difference is less measurable.
Notable changes:
rome check
historyLines
from 1000 to 500 to compensate for many more jobs than beforecontain
andcontent-visibility
on log windowsBatchingQueue
to fix the issue that caused Chromium-based browsers to hang when returning to the tab&initialFilter=
URL parameter&loadRecent=0
to skip loading recent dataI had to move some
dashboard3
things to avoid confusing the two dashboard JavaScript files.I didn't test whether the Ruby still serves things correctly.
obsolete tests results for 9cf8f4144576891e4c26a58f97963ff867657134
Test results with all job windows collapsed, **Chrome** 116.0.5817.5 (Official Build) dev (64-bit) on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions: 9cf8f4144576891e4c26a58f97963ff867657134 uses 55% of the CPU time of the current dashboard and ~25% as much memory. ![archivebot dashboard in chrome 2023-06-09_23-34-41 668182](https://github.com/ArchiveTeam/ArchiveBot/assets/4458/ffe7700f-d849-4a9c-b73d-8c7984969ff9) --- Test results with all job windows collapsed, **Firefox** 114.0 on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions: 9cf8f4144576891e4c26a58f97963ff867657134 uses ~95% of the CPU time of the current dashboard and about the same amount of memory (it fluctuates as Firefox takes a while to do a full GC). ![archivebot dashboard in firefox 2023-06-09_23-43-23 246469](https://github.com/ArchiveTeam/ArchiveBot/assets/4458/7e9da02c-112f-4a00-ab6d-ec9d8f0a2683) Unlike Chrome's Task Manager, Firefox's `about:processes` doesn't have a `CPU time` column, so the difference is less measurable.Test results with all job windows collapsed, Chrome 116.0.5817.5 (Official Build) dev (64-bit) on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions:
f7d5b1a60c689af35519b56f483f4e0c459f7e41 uses 40% of the CPU time of the current dashboard and ~25% as much memory.
Test results with all job windows collapsed, Firefox 114.0 on Windows 10 22H2 on an ancient laptop (Intel Core i7-2620M), no browser extensions:
f7d5b1a60c689af35519b56f483f4e0c459f7e41 uses ~57% of the CPU time of the current dashboard and about the same amount of memory (it fluctuates as Firefox takes a while to do a full GC).
Unlike Chrome's Task Manager, Firefox's
about:processes
doesn't have aCPU time
column, so the difference is less measurable.