phantomas v1.19.0

@macbre macbre released this May 21, 2017

It's been six months since the last phantomas release.

Here's what's new in v1.19.0:

Bug fixes

  • #687 - Escape closing round brackets in User Agent String for Windows
  • #694 - Ignore style tags when type attribute is not text/css
  • #698 - Security updates (as reported by snyk.io)

Enhancements

  • #683 - Suggest to use Cache-Control: immutable for assets with long TTL
  • #684 - Allow .yml files to be treated as YAML (by @rbayliss)
  • #685 - Handle environment variables in YAML config files, like Docker does (as suggested by @rbayliss)
  • #690 - Add TeamCity result reporter (by @morfj)
  • #693 - Add file url in offenders for cssDuplicatedSelectors

Internals

  • #695 - Update dependencies

Downloads

phantomas v1.18.0

@macbre macbre released this Dec 23, 2016 · 33 commits to devel since this release

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 🎄 !

Bug fixes

  • #672 - analyze-css runScript path invalid (Windows issue)

Enhancements

  • #667 - Add support for multiple cookies
  • #668 - Latency for all assets

Internals

  • #605 - Update dependencies to get rid of vulnerabilities reported by snyk.io
  • #673 - Run TravisCI tests using Node.js 7.x
  • #676 - Bump slimerjs to 0.10.2 (submitted by @DevSide)
  • #678 - Drop support for Node.js 0.12.x

Architecture

  • #670 - fix simple-queue by enforcing only one done() call per push (fix provided by @nathanial, thanks!)

Downloads

phantomas v1.17.0

@macbre macbre released this Sep 28, 2016 · 52 commits to devel since this release

This release brings phantomas on died - less dependencies mean quicker npm install (see #625 and #661).

From analyze-css side: complexSelectorsByAttribute and universalSelectors metrics were removed (#662).

Enhancements

  • #500 - Transfer proxy config to analyze-css (by @gmetais)
  • #625 - Move elasticsearch to an external npm module
  • #661 - make PhantomJS and SlimerJS optionalDependencies
  • #662 - Consider removing universal selectors rule

Bug fixes

  • #655 - "JSON parse error" when analyze-css result is > 64K (by @gmetais)
  • #664 - Run fails when phantomas is an npm 3 dependency (by @gmetais)

Internals

  • #660 - Update dependencies

Downloads

phantomas v1.16.0

@macbre macbre released this Jul 10, 2016 · 72 commits to devel since this release

Enhancements

  • #623 - Try to import reporter as external dependency (by @EFF)

Bug fixes

  • #622 - XMLHttpRequest not being counted in ajaxRequests
  • #636 - Analyze-css failing without incrementing cssParsingErrors (by @gmetais)
  • #641 - Fix average metrics from analyze-css
  • #643 - Fix cache detection: max-age should overtake expires (by @gmetais)
  • #644 - Update phone and tablet user-agents (by @gmetais)

Internals

  • #624 - Updated reject promise to return a single argument (by @alex-e-leon)
  • #626 - TAP: use a smaller dependency that only renders the TAP output
  • #627 - Make analyze-css dependency a bit smaller
  • #632 - What does EXIT_CONFIG_FAILED do?
  • #646 - Travis: run under the latest Node.js v6.x
  • #653 - Update dependencies

Downloads

phantomas v1.15.1

@macbre macbre released this Mar 26, 2016 · 107 commits to devel since this release

This minor release brings a bug fix for PhantomJS cookies handling regression:

#621 - Quick fix for cookie regression in PhantomJS 2.1 (by @gmetais)

Downloads

phantomas v1.15.0

@macbre macbre released this Mar 25, 2016 · 110 commits to devel since this release

From now on phantomas uses PhantomJS 2.1.x only (the support for the legacy 1.9.x version has been removed - #602). Please use --webkit or --gecko command line options to switch between engines. --webkit2 no longer works.

The full list of changes (mostly bug fixes) can be found below.

Changelog

Improvements

  • #594 - Added aws cloudwatch as reporter (by @EFF)
  • #578 - Add offenders to cssNotMinified, cssLength, cssRules, cssSelectors & cssDeclarations

Bug fixes

  • #613 - Automatically allow main domain when using --allow-domain (by @gmetais)
  • #612 - Replace .once by .on for metrics consistency after a JS redirection (by @gmetais)
  • #607 - Fix init event re-triggered at the end of the page load (by @gmetais)
  • #596 - Json output is invalid and truncated for large reports
  • #587 - Analyze-Css module incorrect processing of query parameters

Internals

  • #616 - Travis: cache node modules
  • #615 - async / elasticsearch: update dependencies
  • #609 - Added additional information to promise reject function (by @alex-e-leon)
  • #608 - Remove the webkit2 solution (by @gmetais)
  • #603 - glob / http-server: update dependencies
  • #602 - Use PhantomJS 2.x only

Downloads

phantomas v1.14.0

@macbre macbre released this Jan 30, 2016 · 151 commits to devel since this release

It's been a while since the last release of phantomas, but I believe it was worth waiting for ;)

Thanks to #488 and #592 phantomas now uses PhantomJS 2.1.x official binaries.
You can use --engine=webkit to switch to the legacy 1.9.x version (it will be removed in phantomas 1.15).

DNS and Connect timings (introduced in #477) were reverted (#575) as they provided zero in 99,9% of cases in both SlimerJS and PhantomJS 2.

The full list of changes can be found below.

Changelog

Bug fixes

  • #558 - Getting 255 (PhantomJS 2.0.0 crashes) for some sites
  • #569 - Resolved promise with error code 1
  • #575 - Revert "DNS and Connect timings"
  • #581 - CSV responses inconsistent
  • #586 - npm install should install without compile error under Node 4+ (by @dimichgh)
  • #583 - add extra err check for analyzeCss result (by @ingoclaro)
  • #589 - Fix --allow-domain option (by @gmetais)

Internals

  • #488 - Upgrade to PhantomJS 2.1.1
  • #571 - Run tests using node v4.2.x on Travis
  • #573 - Use PhantomJS 2.0.1-static
  • #585 - Update SlimerJS min version (by @gmetais)
  • #592 - webkit2: make it a default engine

Downloads

phantomas v1.13.0

@macbre macbre released this Oct 27, 2015 · 183 commits to devel since this release

This release of phantomas brings mostly various bug fixes.

One of the new features is DNS and TCP/IP connect timings (available in SlimerJS and PhantomJS2 engines) - see #477 for more details.

Full list of changes below.

Changelog

New metrics

Bug fixes

  • #548 - Provide a proper Error in Node API
  • #550 - JS redirection generates a 254 error
  • #555 - Small fixes for hidden images (by @gmetais)
  • #559 - HTTP traffic events not fired
  • #560 - appendSpy: TypeError: undefined is not a function
  • #562 - Fix lazy load. Get scr via getAttribute. (by @r-kovalenko)
  • #563 - phantomas shouldn't modify the options parameter

Downloads

phantomas v1.12.0

@macbre macbre released this Sep 12, 2015 · 215 commits to devel since this release

This release of phantomas brings the support for PhantomJS 2.0 - see #488 on how to use it as it's not the default engine yet.

The statically linked PhantomJS 2.0 binaries were verified to work on the following amd64 distros:

  • Debian 8
  • Ubuntu 12.04 LTS (aka Precise)
  • Travis CI environment (Ubuntu 12.04)

Full list of changes below.

Changelog

New metrics

  • #524 - Count hidden images that can be lazy loaded
  • #539 - Metric: Resources Responsible for Timeout

Improvements

  • #531 - Introduce phantomjs2 engine that uses PhantomJS 2.0 binary
  • #532 - Add a DOM path to images that could be lazyloaded
  • #544 - Send basic auth to analyze-css (by @gmetais)

Bug fixes

  • #535 - --no-externals does not seem to work for early loaded assets
  • #542 - Do not fail when importing not existing engine
  • #549 - If metric 'timeToLastByte' hasn't been fired, use last entry (by @william-p)

Internals

  • #540 - Prepare PhantomJS 2.0 binaries with statically-linked libraries
  • #543 - Travis: migrate to container-based infrastructure

Downloads

phantomas v1.11.0

@macbre macbre released this Jun 6, 2015 · 250 commits to devel since this release

This release of phantomas detects below the fold images that can be lazy-loaded (see #494). You can now instruct phantomas to stop immediately after load event (i.e. not wait for all remaining HTTP requests) by passing --stop-at-onload option (#513).

Full list of changes below.

Changelog

New metrics

  • #494 - Count below the fold images that could be lazyloaded
  • #486 - requetsTo* related metrics

Improvements

  • #520 - Introduce sections in usage help (by @wladekb)
  • #515 - Add some Content-Types to assetsNotGzipped
  • #513 - Stop phantomas at onLoad event

Bug fixes

  • #528 - Reporter is not executed when the assert is not met
  • #519 - Don't count duplicated queries on elements not attached to DOM (by @gmetais)
  • #482 - JS errors : calling native console.log() failed

Internals

Downloads