Headless Chromium-based web performance metrics collector and monitoring tool
This release brings two new metrics and a few bug fixes (thanks to @gmetais):
new metric
- Add protocols related metrics (by @gmetais)new metric
- Expose CPU related metrics from page.metrics() as phantomas metrics (by @gmetais)bug
- Fix pragma: no-cache automatically added to all requests (by @gmetais)bug
- Fix error with blob urls (by @gmetais)bug
- Fix object errors (by @gmetais)Integration tests stability has been improved and many dependencies updated.
external dependency
- build(deps): bump puppeteer from 5.3.1 to 5.4.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.12.0 to 7.12.1 (by @dependabot[bot])internals
- Improve integration tests stabilityexternal dependency
- build(deps): bump puppeteer from 5.4.0 to 5.4.1 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint-config-prettier from 6.14.0 to 6.15.0 (by @dependabot[bot])internals
- CI: cache npm dependenciesdocker
- Docker | build using Node.js 15.x and Chromium 86internals
- eslint: add plugin:node/recommendedinternals
- Remove reportersexternal dependency
- build(deps-dev): bump eslint from 7.12.1 to 7.13.0 (by @dependabot[bot])internals
- Browser.init - pass Phantomas options + set ignoreHTTPSErrors when requiredpr
- lazyLoadableImages/scope.js: bind to window.load eventexternal dependency
- build(deps): bump puppeteer from 5.4.1 to 5.5.0 (by @dependabot[bot])external dependency
- build(deps): bump debug from 4.2.0 to 4.3.1 (by @dependabot[bot])external dependency
- build(deps-dev): bump prettier from 2.1.2 to 2.2.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.13.0 to 7.14.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump prettier from 2.2.0 to 2.2.1 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint-config-prettier from 6.15.0 to 7.0.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.14.0 to 7.15.0 (by @dependabot[bot])external dependency
- build(deps): bump js-yaml from 3.14.0 to 3.14.1 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.15.0 to 7.16.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint-config-prettier from 7.0.0 to 7.1.0 (by @dependabot[bot])pr
- Tests | use the latest brotli-nginx build- v1.19.6internals
- Use Docker layers cache to speed up CI buildsChrome-headless
- DNS and Connect timings (by @gnublin)Chrome-headless
- New metric proposal "synchronousXHR" (by @gmetais)bug
- Timeout caused by synchronous XMLHttpRequests (by @gmetais)Chrome-headless
- Switch from PhantomJS to Chrome's headless modeChrome-headless
- Refactor Phantomas to run using headless Chromedocumentation
- Move metrics description to docs/metrics.md and generate it automaticallydocumentation
- Automatically generate events documentationdocumentation
- Add events, extensions and modules to metadata JSON fileChrome-headless
- windowPerformance in headless Chrome (by @sundarv85)pr
- New metric proposal "synchronousXHR"internals
- Update dependenciesChrome-headless
- Prepare a Docker image with Puppeteer installedChrome-headless
- Puppeteer v1.15.0enhancement
- Upgrade js-yaml to resolve security issuesChrome-headless
- Puppeteer in dockerexternal dependency
- build(deps): bump eslint-utils from 1.3.1 to 1.4.3 (by @dependabot[bot])external dependency
- build(deps): bump lodash from 4.17.11 to 4.17.15 (by @dependabot[bot])bug
- Failed to parse JSON with the results (by @jatin85)external dependency
- build(deps): bump acorn from 6.1.0 to 6.4.1 (by @dependabot[bot])external dependency
- build(deps): bump https-proxy-agent from 2.2.1 to 2.2.4 (by @dependabot[bot])external dependency
- build(deps): bump lodash from 4.17.15 to 4.17.19 (by @dependabot[bot])pr
- Phantomas V2 - the final merge into the main branchexternal dependency
- build(deps): bump async from 2.6.3 to 3.2.0 (by @dependabot[bot])external dependency
- build(deps): bump csv-string from 3.2.0 to 4.0.1 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.5.0 to 7.6.0 (by @dependabot[bot])pr
- Run tests using Node.js 12.x toopr
- Use http-server for tests (fixes qs security issue)pr
- Browser.close - check if there is a browser to call close() onexternal dependency
- build(deps): bump analyze-css from 0.12.10 to 0.12.11 (by @dependabot[bot])security
- Use commander modulepr
- Make npm package a bit smallerpr
- Fix bin/phantomas.jsChrome-headless
- [Phantomas v2] Navigation failed because browser has disconnected! (by @gmetais)external dependency
- build(deps-dev): bump js-beautify from 1.11.0 to 1.12.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.6.0 to 7.7.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump js-beautify from 1.12.0 to 1.13.0 (by @dependabot[bot])Chrome-headless
- Node.js 14.x integration tests are failing on response size assertsenhancement
- Add WOFF2 detection (by @gmetais)external dependency
- build(deps-dev): bump eslint from 7.7.0 to 7.8.0 (by @dependabot[bot])docker
- Use nginx to make integration tests more deterministicexternal dependency
- build(deps-dev): bump eslint from 7.8.0 to 7.8.1 (by @dependabot[bot])internals
- Improve tests with shorter expire policy + no gzipexternal dependency
- build(deps): bump analyze-css from 0.12.11 to 0.12.12 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.8.1 to 7.9.0 (by @dependabot[bot])external dependency
- build(deps): bump puppeteer from 5.2.1 to 5.3.0 (by @dependabot[bot])external dependency
- build(deps): bump debug from 4.1.1 to 4.2.0 (by @dependabot[bot])external dependency
- build(deps): bump puppeteer from 5.3.0 to 5.3.1 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint from 7.9.0 to 7.10.0 (by @dependabot[bot])Chrome-headless
- Add support for viewport option (by @gmetais)internals
- Tests: use the latest macbre/nginx-brotli - 1.19.3bug
- Adjustments to lazyloadable images (by @gmetais)pr
- waitFor is now deprecatedinternals
- Dockerfile - use node:14-stretch-slim base imageinternals
- Introduce Prettierbug
- [Phantomas v2] Scope seems to be initialized twice (by @gmetais)internals
- core/scope.js: log window URL and whether it is an iframeexternal dependency
- build(deps-dev): bump eslint from 7.10.0 to 7.11.0 (by @dependabot[bot])external dependency
- build(deps-dev): bump eslint-config-prettier from 6.12.0 to 6.13.0 (by @dependabot[bot])docker
- Try to use Alpine as a base Docker imagepr
- Docker - use alpine3.12 base imageexternal dependency
- build(deps-dev): bump eslint-config-prettier from 6.13.0 to 6.14.0 (by @dependabot[bot])docker
- Fixing "No usable sandbox" when running inside Docker containercli
- bin/phantomas.js should output Browser.visit() promise rejections to stderrinternals
- Update CI build namesinternals
- Makes tests crash on unhandled rejections instead of silently ignoring themDocker - use alpine3.12
base image #798
core/scope.js
: log window URL and whether it is an iframe #793
Use commander
module to solve security issues #795
viewport
option #784 (thanks @gmetais)lazyloadable
images #787 (thanks @gmetais)waitFor
is now deprecated #788node:14-stretch-slim
base image #789macbre/nginx-brotli
- 1.19.3 #786npm version 2.0.0-alpha3
npm publish --tag next
npm version v2.0.0-alpha2 prerelease
npm publish --tag next
See #753 for the progress
This a maintenance release of phantomas
that brings:
analyze-css
package)v1.20.0 is the last release that will be powered by no-longer developed PhantomJS. Work in #707 will begin that will move phantomas towards headless Chromium.
Here's what's new in v1.20.0:
scope.js
(by @mrbig)film-strip-zoom-factor
as an optional parameter (by @rosswilson)It's been six months since the last phantomas release.
Here's what's new in v1.19.0:
text/css
Cache-Control: immutable
for assets with long TTLcssDuplicatedSelectors
New version of Phantomas is out. Support for providing more than just one cookie has been added (see #667) and latency information (i.e. time for first byte metric) is now printed out as a part of offenders for static assets by type counter (see #668).
Please note that support for Node.js 0.12.x has been dropped. According to Node's LTS schedule v0.12 release support will end 2016-12-31.
As always, the full list of changes can be found below.
Enjoy new Phantomas and Merry Christmas :christmas_tree: !
runScript
path invalid (Windows issue)done()
call per push (fix provided by @nathanial, thanks!)