2017-11-22 11:00:31 +03:00
|
|
|
{
|
|
|
|
"name": "speedscope",
|
2019-02-18 05:38:17 +03:00
|
|
|
"version": "1.5.0",
|
2017-11-22 11:00:31 +03:00
|
|
|
"description": "",
|
2018-08-01 11:23:21 +03:00
|
|
|
"repository": "jlfwong/speedscope",
|
2017-11-22 11:00:31 +03:00
|
|
|
"main": "index.js",
|
2018-07-01 01:44:46 +03:00
|
|
|
"bin": {
|
2018-08-01 10:41:45 +03:00
|
|
|
"speedscope": "./bin/cli.js"
|
2018-07-01 01:44:46 +03:00
|
|
|
},
|
2017-11-22 11:00:31 +03:00
|
|
|
"scripts": {
|
2018-08-01 10:41:45 +03:00
|
|
|
"deploy": "./scripts/deploy.sh",
|
|
|
|
"prepack": "./scripts/build-release.sh",
|
|
|
|
"prettier": "prettier --write 'src/**/*.ts' 'src/**/*.tsx'",
|
|
|
|
"lint": "eslint 'src/**/*.ts' 'src/**/*.tsx'",
|
2018-08-16 20:24:12 +03:00
|
|
|
"jest": "./scripts/test-setup.sh && jest --runInBand",
|
2018-05-30 05:59:04 +03:00
|
|
|
"coverage": "npm run jest -- --coverage && coveralls < coverage/lcov.info",
|
|
|
|
"test": "tsc --noEmit && npm run lint && npm run coverage",
|
2018-08-01 10:41:45 +03:00
|
|
|
"serve": "parcel assets/index.html --open --no-autoinstall"
|
2017-11-22 11:00:31 +03:00
|
|
|
},
|
2018-10-08 19:49:15 +03:00
|
|
|
"files": ["bin/cli.js", "dist/release/**", "!*.map"],
|
|
|
|
"browserslist": ["last 2 Chrome versions", "last 2 Firefox versions"],
|
2017-11-22 11:00:31 +03:00
|
|
|
"author": "",
|
|
|
|
"license": "MIT",
|
|
|
|
"devDependencies": {
|
2018-07-08 04:37:28 +03:00
|
|
|
"@types/jest": "22.2.3",
|
|
|
|
"@types/jszip": "3.1.4",
|
|
|
|
"@types/node": "10.1.4",
|
2018-05-30 00:34:09 +03:00
|
|
|
"@types/pako": "1.0.0",
|
2018-04-05 10:15:42 +03:00
|
|
|
"aphrodite": "2.1.0",
|
2018-07-08 04:37:28 +03:00
|
|
|
"coveralls": "3.0.1",
|
|
|
|
"eslint": "4.19.1",
|
|
|
|
"eslint-plugin-prettier": "2.6.0",
|
|
|
|
"jest": "23.0.1",
|
|
|
|
"jsverify": "0.8.3",
|
|
|
|
"jszip": "3.1.5",
|
2018-05-30 00:34:09 +03:00
|
|
|
"pako": "1.0.6",
|
2018-07-01 01:44:46 +03:00
|
|
|
"parcel-bundler": "1.9.2",
|
2018-04-05 10:15:42 +03:00
|
|
|
"preact": "8.2.7",
|
2018-08-01 09:53:56 +03:00
|
|
|
"preact-redux": "jlfwong/preact-redux#a56dcc4",
|
2018-07-08 04:37:28 +03:00
|
|
|
"prettier": "1.12.0",
|
Add go tool pprof import support (#165)
This PR adds support for importing from Google's pprof format, which is a gzipped, protobuf encoded file format (that's incredibly well documented!) The [pprof http library](https://golang.org/pkg/net/http/pprof/) also offers an output of the trace file format, which continues to not be supported in speedscope to date (See #77). This will allow importing of profiles generated by the standard library go profiler for analysis of profiles containing heap allocation information, CPU profile information, and a few other things like coroutine creation information.
In order to add support for that a number of dependent bits of functionality were added, which should each provide an easier path for future binary input sources
- A protobuf decoding library was included ([protobufjs](https://www.npmjs.com/package/protobufjs)) which includes both a protobuf parser generator based on a .proto file & TypeScript definition generation from the resulting generated JavaScript file
- More generic binary file import. Before this PR, all supported sources were plaintext, with the exception of Instruments 10 support, which takes a totally different codepath. Now binary file import should work when files are dropped, opened via file browsing, or opened via invocation of the speedscope CLI.
- Transparent gzip decoding of imported files (this means that if you were to gzip compress another JSON file, then importing it should still work fine)
Fixes #60.
--
This is a [donation motivated](https://github.com/jlfwong/speedscope/issues/60#issuecomment-419660710) PR motivated by donations by @davecheney & @jmoiron to [/dev/color](https://www.devcolor.org/welcome) 🎉
2018-09-26 21:33:34 +03:00
|
|
|
"protobufjs": "6.8.8",
|
2018-07-08 04:37:28 +03:00
|
|
|
"quicktype": "15.0.45",
|
2018-08-01 09:53:56 +03:00
|
|
|
"redux": "^4.0.0",
|
2018-07-08 04:37:28 +03:00
|
|
|
"ts-jest": "22.4.6",
|
2018-08-14 19:37:42 +03:00
|
|
|
"typescript": "2.8.1",
|
2018-08-01 11:23:21 +03:00
|
|
|
"typescript-eslint-parser": "17.0.1",
|
2019-02-09 05:33:30 +03:00
|
|
|
"uglify-es": "3.2.2"
|
2018-05-30 00:34:09 +03:00
|
|
|
},
|
|
|
|
"jest": {
|
|
|
|
"transform": {
|
|
|
|
"^.+\\.tsx?$": "ts-jest"
|
|
|
|
},
|
|
|
|
"testRegex": "\\.test\\.tsx?$",
|
2018-10-08 19:49:15 +03:00
|
|
|
"collectCoverageFrom": ["**/*.{ts,tsx}", "!**/*.d.{ts,tsx}"],
|
|
|
|
"moduleFileExtensions": ["ts", "tsx", "js", "jsx", "json"]
|
2018-07-08 07:33:02 +03:00
|
|
|
},
|
|
|
|
"dependencies": {
|
|
|
|
"opn": "5.3.0"
|
2017-11-22 11:00:31 +03:00
|
|
|
}
|
|
|
|
}
|