Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement per-benchmark over-time plots in comparison view #106

Merged
merged 28 commits into from
Aug 1, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
7142243
Added missing project name for fetching profile data
smarr Jul 28, 2022
0ca2198
Add uPlot dependency and use terser to minify it for use as static re…
smarr Jul 30, 2022
fa35ba8
Add .btn-timeline and avoid redundant definitions in CSS
smarr Jul 30, 2022
dd77d81
Implement timeline plots for use directly on the change report
smarr Jul 30, 2022
190d04c
Probably want the data_en, which is the smallest subset, to identify …
smarr Jul 30, 2022
c312090
Move to on(‘click’, …) to avoid using the deprecated click()
smarr Jul 30, 2022
6e6beb7
Extract filename as constant, for shorter code
smarr Jul 30, 2022
19e0710
Remove debugging stuff
smarr Jul 30, 2022
af6bd24
Use q instead of the named query for consistency, and to avoid confusion
smarr Jul 30, 2022
8b1d5ce
Ignore JS files in resources folder, since we generate them when depl…
smarr Jul 30, 2022
10cf9db
Compute needed space for y axis labels
smarr Jul 30, 2022
67943a7
Make sure the benchmark-details table rules don’t apply to nested table
smarr Jul 30, 2022
83a5013
Highlight the current baseline and change data points the timeline
smarr Jul 30, 2022
312ef42
Remove unneeded and incorrect class from timeline container
smarr Jul 30, 2022
a5c539d
Copy and adapt uPlot CSS for our needs
smarr Jul 30, 2022
b5f26f1
Hide the change data series if it doesn’t contain data
smarr Jul 30, 2022
438c605
Move minimization of uPlot to precompile
smarr Jul 31, 2022
01be234
Explicitly resolve uPlot file for jest
smarr Jul 31, 2022
d7d10f1
Added todos for writing tests
smarr Jul 31, 2022
18f0e96
Rename numReplicates to numBootstrapSamples to make more clear what i…
smarr Jul 31, 2022
d8faec8
Implement test setup, just creating the database and data for tests
smarr Jul 31, 2022
a134bb8
Implement tests for db.getBranchNames
smarr Jul 31, 2022
c91c33d
Fix condition on how many rows we expect
smarr Jul 31, 2022
93363a1
Added basic tests for timeline values
smarr Jul 31, 2022
d1ec386
Start using tslog and add own assert function
smarr Jul 31, 2022
8087d61
Add missing logging.ts
smarr Jul 31, 2022
c4cd65b
Eliminate duplicate results from fetchBranchNamesForChange
smarr Jul 31, 2022
28597a4
Make sure to only get the ‘total’ values for display on the timeline
smarr Jul 31, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ dist
node_modules
.vscode
resources/reports
resources/*.js
tmp/knit
tmp/interm
/tests/large-payload.json
Expand Down
135 changes: 125 additions & 10 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 10 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@
"koa-router": "12.0.0",
"mustache": "4.2.0",
"pg": "8.7.3",
"promisify-child-process": "4.1.1"
"promisify-child-process": "4.1.1",
"tslog": "3.3.3",
"uplot": "1.6.22"
},
"engines": {
"node": ">=18.4.0"
Expand All @@ -42,6 +44,7 @@
"nodemon": "2.0.19",
"prettier": "2.7.1",
"source-map-support": "0.5.21",
"terser": "5.14.2",
"ts-jest": "28.0.7",
"typescript": "4.7.4",
"typescript-json-schema": "0.54.0"
Expand All @@ -64,23 +67,25 @@
}
},
"moduleNameMapper": {
"^(\\.{1,2}/.*)\\.js$": "$1"
"^(\\.{1,2}/.*)\\.js$": "$1",
"/static/uPlot.esm.min.js": "<rootDir>/resources/uPlot.esm.min.js"
},
"roots": ["tests/"]
},
"scripts": {
"postinstall": "npm run compile",
"start": "node --enable-source-maps --experimental-json-modules ./dist/src/index.js",
"nodemon": "DEV=true nodemon --enable-source-maps --experimental-json-modules ./dist/src/index.js --watch ./dist/src --watch ./dist/package.json",
"compile": "tsc && npm run prep-resources && npm run prep-reports && npm run prep-static",
"prep-static": "cp dist/src/views/*.js resources",
"prep-resources": "(cd tests; bzip2 -d -f -k large-payload.json.bz2)",
"precompile": "terser --module --ecma 2018 --compress --mangle -o ./resources/uPlot.esm.min.js -- node_modules/uplot/dist/uPlot.esm.js",
"compile": "tsc && npm run prep-reports && npm run prep-static",
"prep-static": "cp dist/src/views/*.js ./resources/",
"prep-reports": "mkdir -p tmp/interm tmp/knit resources/reports resources/exp-data",
"format": "prettier --config .prettierrc '{src,tests}/**/*.{ts}' --write",
"verify": "npm run lint",
"lint": "eslint . --ext .ts,.tsx",
"update": "git pull && npm install . && pm2 restart 0",
"watch": "tsc -w",
"pretest": "(cd tests; bzip2 -d -f -k large-payload.json.bz2)",
"test": "node --no-warnings --experimental-vm-modules ./node_modules/jest/bin/jest.js"
}
}
Loading