Git Product home page Git Product logo

willmendesneto / perf-marks Goto Github PK

View Code? Open in Web Editor NEW
36.0 3.0 2.0 1.77 MB

The isomorphic, simplest, and lightweight solution for User Timing API in Javascript - πŸš€ only 208B πŸš€. Tree-shaking and entry points built-in. Simple as that!

Home Page: https://github.com/willmendesneto/perf-marks

License: MIT License

JavaScript 8.82% TypeScript 91.18%
perf-marks javascript user-timing frontend webperformance hacktoberfest

perf-marks's Introduction

Perf-marks

Greenkeeper badge npm

npm version npm downloads MIT License

Build Status Coverage Status Dependency Status

NPM NPM

Perf marks

Why perf-marks?

If you want to get more details about that, please read "Cross-platform performance measurements with User Timing API and perf-marks" blog post

That's the simplest and lightweight solution for User Timing API in Javascript. Simple how it should be.

You can find more details about it in the slides "User Timing API: because performance matters"

Contributing

Please check our contributing.md to know more about setup and how to contribute.

Setup and installation

Make sure that you are using the NodeJS version is the same as .nvmrc file version. If you don't have this version please use a version manager such as nvm or n to manage your local nodejs versions.

Please make sure that you are using NodeJS version 6.10.2

Assuming that you are using nvm, please run the commands inside this folder:

$ nvm install $(cat .nvmrc); # install required nodejs version
$ nvm use $(cat .nvmrc); # use nodejs version

In Windows, please install NodeJS using one of these options:

Via NVM Windows package: Dowload via this link. After that, run the commands:

$ nvm install $(cat .nvmrc); # install required nodejs version
$ nvm use $(cat .nvmrc); # use nodejs version

Via Chocolatey:

$ choco install nodejs.install -version 6.10.2

Install yarn

We use yarn as our package manager instead of npm

Install it following these steps

After that, just navigate to your local repository and run

$ yarn install

Demo

Try out our demo on Stackblitz!

Perf marks in action

Run the tests

$ yarn test # run the tests

Run the build

$ yarn build # run the tests

Run the bundlesize check

$ yarn bundlesize # run the tests

Run the code lint

$ yarn lint # run the tests

PerfMarks

This service exposes a few different methods with which you can interact with feature toggle service.

PerfMarks.start(markName)

Adds the user timing api marker instrumentation in your application.

import * as PerfMarks from 'perf-marks';

...
PerfMarks.start('name-of-your-mark');
...

PerfMarks.end(markName, markNameToCompare)

Returns the results for the specified marker.

PerfMarks.end(markName) calls PerfMarks.clear(markName) after return the mark values

If markNameToCompare value is not passed, the package will create a mark using markName + '-end'. Otherwise, it will compare based on the given mark.

If you're passing markNameToCompare value, please make sure you're also started the mark with the same name previously

import * as PerfMarks from 'perf-marks';

...
PerfMarks.start('name-of-your-mark');
...
const markResults: PerfMarks.PerfMarksPerformanceEntry = PerfMarks.end('name-of-your-mark');

PerfMarks.clear(markName)

Removes the specified marker

import * as PerfMarks from 'perf-marks';

...
PerfMarks.start('name-of-your-mark');
...
PerfMarks.clear('name-of-your-mark');
...

PerfMarks.clearAll()

Removes all the markers

import * as PerfMarks from 'perf-marks';

...
PerfMarks.start('name-of-your-mark');
PerfMarks.start('another-name-of-your-mark');
...
PerfMarks.clearAll();
...

PerfMarks.getNavigationMarker()

Gets the marks for navigation loaded

import * as PerfMarks from 'perf-marks';

...
const markResults: PerfMarksPerformanceNavigationTiming = PerfMarks.getNavigationMarker();
...

PerfMarks.getEntriesByType(markName)

Gets the result for all marks that matches with the given mark name

import * as PerfMarks from 'perf-marks';

...
PerfMarks.start('name-of-your-mark');
PerfMarks.start('another-name-of-your-mark');
...
// It will return results for all the marks that matches with `name-of-your-mark`
// In this case, `name-of-your-mark` and `another-name-of-your-mark`
const markResult: PerfMarksPerformanceNavigationTiming[] = PerfMarks.getEntriesByType('name-of-your-mark');
...

PerfMarks.isUserTimingAPISupported

Boolean with the result of the check if User Timing API is supported for the current browser/NodeJS version.

PerfMarks already have a fallback in case user timing is not supported. This boolean is exposed in case the app needs to check the case to use any other mechanism.

import * as PerfMarks from 'perf-marks';

...
if (PerfMarks.isUserTimingAPISupported) {
  // ... Do something
}
...

PerfMarks.isPerformanceObservableSupported

Boolean with the result of the check if PerformanceObservable is supported for the current browser/NodeJS version.

PerfMarks does not provide a fallback if PerformanceObservable is not supported. This boolean is exposed in case the app needs to check the case to use any other mechanism.

import * as PerfMarks from 'perf-marks';

...
// Checking if `PerformanceObservable` is supported for the current browser/NodeJS version
if (PerfMarks.isPerformanceObservableSupported) {
  try {
  // If yes, start the PerformanceObserver
    const observer: PerformanceObserver = new PerformanceObserver(list => {
      // ... Do something
    });

    // register observer based on the entryTypes
    // E.G. for long task notifications
    observer.observe({ entryTypes: ['longtask'] });
  } catch (e) {}
  // ... Finishing the observer
  observer.disconnect();
}
...

PerfMarks.profiler()

Runs profiler using User Timing Api method to get user timing information. It will return a Promise with mark key with a PerfMarksPerformanceEntry type OR mark key + data key with the content for the callback method If the given callback returns something.

const methodToBeMeasured = () => {
  /** method content */
};
// `res` will contain `mark` with the information and `data`
// if `methodToBeMeasured` returns something
const { mark, data } = PerfMarks.profiler(methodToBeMeasured, 'name-of-the-mark-for-this-method');

Entrypoints

These are entrypoints for specific components to be used carefully by the consumers. If you're using one of these entrypoints we are assuming you know what you are doing. So it means that code-splitting and tree-shaking should be done on the consumer/product side.

By definition it will use CJS as the main distribution entrypoint used in the app. However, this can be changed in the consumer's bundle step. This is the built-in scenario if the consumer uses toolings such as Webpack, Rollup, or Parcel.

Exposed entrypoints

  • perf-marks/marks: it has all the methods for marks
    • start: Frontend and Backend support
    • end: Frontend and Backend support
    • clear: Frontend and Backend support
    • clearAll: Frontend and Backend support
    • isUserTimingAPISupported: Deprecated (will be removed in v2). Use the value imported from perf-marks/utils instead. Frontend and Backend support
    • isPerformanceObservableSupported: Deprecated (will be removed in v2). Use the value imported from perf-marks/utils instead. Frontend and Backend support
  • perf-marks/entries: it has all the methods to get entries
    • getNavigationMarker: Frontend support only
    • getEntriesByType: frontend support only
  • perf-marks/utils: it has all the feature, and platform checks and validations
    • isNodeJSEnv: Frontend and Backend support. Boolean with the result of the check if package is running on the browser or in a NodeJS environment
    • isPerformanceObservableSupported: Frontend and Backend support. Boolean with the result of the check if PerformanceObservable is supported for the current browser/NodeJS version
    • isUserTimingAPISupported: Frontend and Backend support. Boolean with the result of the check if User Timing API is supported for the current browser/NodeJS version
  • perf-marks/profiler: it has all the feature, and platform checks and validations
    • profiler: Frontend and Backend support. profiler using User Timing Api method. It will return a Promise with mark key with a PerfMarksPerformanceEntry type or mark key + data key with the content for the callback method If the given callback returns something.

If you need optimize your bundle size even more, this package provides different bundles for CommonJS, UMD, ESM, ES2015 and ES2020. To make the dev experience smoothiest as possible, you can use babel-plugin-transform-imports in your app and configure the bundle that fits the most for your app!

Also, please make sure you configured your module bundler to support these optimized bundles based on your development loop. For Webpack, please check https://webpack.js.org/configuration/resolve/#resolvemainfields for more details or look for the module bundler documentation you're currently using.

yarn add -D babel-plugin-transform-imports
# or
npm install --save-dev babel-plugin-transform-imports

Create a .babelrc.js file in the root directory of your project:

const plugins = [
  [
    'babel-plugin-transform-imports',
    {
      'perf-marks/perf-marks': {
        // Use "transform: 'perf-marks/perf-marks/${member}'," if your bundler does not support ES modules
        transform: 'perf-marks/dist/esm/${member}',
        preventFullImport: true,
      },
      'perf-marks/entries': {
        // Use "transform: 'perf-marks/entries/${member}'," if your bundler does not support ES modules
        transform: 'perf-marks/entries/esm/${member}',
        preventFullImport: true,
      },
    },
  ],
];

module.exports = { plugins };

Or just use it via babel-plugin-import

yarn add -D babel-plugin-import
# or
npm install --save-dev babel-plugin-import

Create a .babelrc.js file in the root directory of your project:

const plugins = [
  [
    'babel-plugin-import',
    {
      libraryName: 'perf-marks/entries',
      // Use "'libraryDirectory': ''," if your bundler does not support ES modules
      libraryDirectory: 'esm',
      camel2DashComponentName: false,
    },
    'entries',
  ],
];

module.exports = { plugins };

And enjoy! Yeah, it's simple like that πŸ˜‰

Publish

this project is using np package to publish, which makes things straightforward. EX: np <patch|minor|major>

For more details, please check np package on npmjs.com

Author

Wilson Mendes (willmendesneto)

perf-marks's People

Contributors

dependabot[bot] avatar greenkeeper[bot] avatar nilanarocha avatar snyk-bot avatar willmendesneto avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

nilanarocha

perf-marks's Issues

An in-range update of @typescript-eslint/parser is breaking the build 🚨

The devDependency @typescript-eslint/parser was updated from 2.5.0 to 2.6.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/parser is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: unit_test: Your tests passed on CircleCI! (Details).
  • βœ… coverage/coveralls: First build on greenkeeper/@typescript-eslint/parser-2.6.0 at 93.243% (Details).
  • ❌ ci/circleci: bundle_size: Your tests failed on CircleCI (Details).

Release Notes for v2.6.0

2.6.0 (2019-10-28)

Bug Fixes

  • parser: adds TTY check before logging the version mismatch warning (#1121) (768ef63)
  • typescript-estree: better handle canonical paths (#1111) (8dcbf4c)
  • typescript-estree: correct parenthesized optional chain AST (#1141) (5ae286e)
  • typescript-estree: ensure parent pointers are set (#1129) (d4703e1)
  • typescript-estree: normalize paths to fix cache miss on windows (#1128) (6d0f2ce)

Features

  • typescript-estree: add support for declare class properties (#1136) (1508670)
Commits

The new version differs by 8 commits.

  • 5338955 chore: publish v2.6.0
  • ab102c0 docs(eslint-plugin): [no-unnecessary-condition] tweak wording (#1147)
  • d4703e1 fix(typescript-estree): ensure parent pointers are set (#1129)
  • 5ae286e fix(typescript-estree): correct parenthesized optional chain AST (#1141)
  • 1508670 feat(typescript-estree): add support for declare class properties (#1136)
  • 6d0f2ce fix(typescript-estree): normalize paths to fix cache miss on windows (#1128)
  • 768ef63 fix(parser): adds TTY check before logging the version mismatch warning (#1121)
  • 8dcbf4c fix(typescript-estree): better handle canonical paths (#1111)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @types/node is breaking the build 🚨

The devDependency @types/node was updated from 13.1.6 to 13.1.7.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@types/node is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of babel7 is breaking the build 🚨

There have been updates to the babel7 monorepo:

    • The devDependency @babel/cli was updated from 7.6.4 to 7.7.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

This monorepo update includes releases of one or more dependencies which all belong to the babel7 group definition.

babel7 is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: unit_test: Your tests passed on CircleCI! (Details).
  • βœ… coverage/coveralls: First build on greenkeeper/monorepo.babel7-20191105151132 at 93.243% (Details).
  • ❌ ci/circleci: bundle_size: Your tests failed on CircleCI (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @typescript-eslint/eslint-plugin is breaking the build 🚨

The devDependency @typescript-eslint/eslint-plugin was updated from 2.18.0 to 2.19.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/eslint-plugin is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v2.19.0

2.19.0 (2020-02-03)

Bug Fixes

  • eslint-plugin: [embt] fix allowTypedFunctionExpressions (#1553) (9e7d161)
  • eslint-plugin: [require-await] improve performance (#1536) (45ae0b9)
  • typescript-estree: fix regression introduced in #1525 (#1543) (bec4572)
  • typescript-estree: persisted parse and module none (#1516) (7c70323)

Features

  • eslint-plugin: [no-extra-non-null-assert] add fixer (#1468) (54201ab)
  • eslint-plugin: [no-float-prom] fixer + msg for ignoreVoid (#1473) (159b16e)
  • eslint-plugin: [unbound-method] support bound builtins (#1526) (0a110eb)
  • eslint-plugin: add extension [no-dupe-class-members] (#1492) (b22424e)
  • eslint-plugin: add no-unnecessary-boolean-literal-compare (#242) (6bebb1d)
  • eslint-plugin: add switch-exhaustiveness-check rule (#972) (9e0f6dd)
  • eslint-plugin: support negative matches for filter (#1517) (b24fbe8)
Commits

The new version differs by 17 commits.

  • bec59ff chore: publish v2.19.0
  • 0a110eb feat(eslint-plugin): [unbound-method] support bound builtins (#1526)
  • 9e0f6dd feat(eslint-plugin): add switch-exhaustiveness-check rule (#972)
  • 7c70323 fix(typescript-estree): persisted parse and module none (#1516)
  • 159b16e feat(eslint-plugin): [no-float-prom] fixer + msg for ignoreVoid (#1473)
  • b22424e feat(eslint-plugin): add extension [no-dupe-class-members] (#1492)
  • 9e7d161 fix(eslint-plugin): [embt] fix allowTypedFunctionExpressions (#1553)
  • 45ae0b9 fix(eslint-plugin): [require-await] improve performance (#1536)
  • 39929b2 test(typescript-estree): fix issue in jest config (#1559)
  • 95174d5 docs(eslint-plugin): corrected typo unbounded-method (#1558)
  • 8643d56 chore(eslint-plugin): remove redundant code and update tests (#1557)
  • 569259e test: enable isolatedModules for tests (#1546)
  • b24fbe8 feat(eslint-plugin): support negative matches for filter (#1517)
  • 6613fad test: update jest and babel dependencies (#1530)
  • 54201ab feat(eslint-plugin): [no-extra-non-null-assert] add fixer (#1468)

There are 17 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of lint-staged is breaking the build 🚨

The devDependency lint-staged was updated from 10.0.4 to 10.0.5.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

lint-staged is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v10.0.5

10.0.5 (2020-01-30)

Bug Fixes

  • always resolve real git config dir location if .git is a file (#784) (b98a5ed)
Commits

The new version differs by 1 commits.

  • b98a5ed fix: always resolve real git config dir location if .git is a file (#784)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @types/node is breaking the build 🚨

The devDependency @types/node was updated from 12.11.0 to 12.11.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@types/node is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ continuous-integration/travis-ci/push: The Travis CI build could not complete due to an error (Details).
  • βœ… coverage/coveralls: First build on greenkeeper/@types/node-12.11.1 at 90.476% (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of husky is breaking the build 🚨

The devDependency husky was updated from 4.0.10 to 4.1.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

husky is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v4.1.0
  • Improve speed and refactor hooks
Commits

The new version differs by 9 commits.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of rollup is breaking the build 🚨

The devDependency rollup was updated from 1.29.0 to 1.29.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

rollup is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v1.29.1

2020-01-21

Bug Fixes

  • Avoid crashes for circular reexports when named exports cannot be found (#3350)

Pull Requests

Commits

The new version differs by 5 commits.

  • 21a1775 1.29.1
  • a49d951 Update changelog
  • e82410d Properly handle circular reexports (#3350)
  • 56cbbdc fix tpyo (#3335)
  • 63644db Remove : from test file names for Windows, update dependencies (#3342)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @typescript-eslint/eslint-plugin is breaking the build 🚨

The devDependency @typescript-eslint/eslint-plugin was updated from 2.20.0 to 2.21.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/eslint-plugin is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v2.21.0

2.21.0 (2020-02-24)

Bug Fixes

  • eslint-plugin: [embt] ignore JSX callbacks (#1630) (4d45b33)
  • eslint-plugin: [no-floating-promises] handle finally callback (#1620) (1aa7135)
  • eslint-plugin: [typedef] allow array/object destructuring in for/of (#1570) (660bace)
  • typescript-estree: process.stdout can be undefined (#1619) (0d8e87e)

Features

  • eslint-plugin: [require-await] add --fix support (#1561) (9edd863)
Commits

The new version differs by 9 commits.

  • 4eedd7f chore: publish v2.21.0
  • 4d45b33 fix(eslint-plugin): [embt] ignore JSX callbacks (#1630)
  • e23e4b9 docs(eslint-plugin): [no-parameter-properties] fix a typo (#1633)
  • be3e23f docs(eslint-plugin): added missing TSLint 5.20 rules to ROADMAP.md (#1609)
  • 9edd863 feat(eslint-plugin): [require-await] add --fix support (#1561)
  • 1aa7135 fix(eslint-plugin): [no-floating-promises] handle finally callback (#1620)
  • 660bace fix(eslint-plugin): [typedef] allow array/object destructuring in for/of (#1570)
  • 0d8e87e fix(typescript-estree): process.stdout can be undefined (#1619)
  • 7452e7d docs(eslint-plugin): update link to deprecation rule in roadmap (#1611)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of babel7 is breaking the build 🚨

There have been updates to the babel7 monorepo:

    • The devDependency @babel/cli was updated from 7.6.4 to 7.7.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

This monorepo update includes releases of one or more dependencies which all belong to the babel7 group definition.

babel7 is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • ❌ ci/circleci: bundle_size: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: unit_test: Your tests passed on CircleCI! (Details).
  • βœ… coverage/coveralls: First build on greenkeeper/monorepo.babel7-20191105110141 at 93.243% (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @types/node is breaking the build 🚨

The devDependency @types/node was updated from 13.7.2 to 13.7.3.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@types/node is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @typescript-eslint/parser is breaking the build 🚨

The devDependency @typescript-eslint/parser was updated from 2.19.0 to 2.19.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/parser is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v2.19.1

2.19.1 (2020-02-10)

Bug Fixes

  • eslint-plugin: [unbound-method] blacklist a few unbound natives (#1562) (4670aab)
  • typescript-estree: ts returning wrong file with project references (#1575) (4c12dac)
Commits

The new version differs by 5 commits.

  • 1c8f0df chore: publish v2.19.1
  • 4c12dac fix(typescript-estree): ts returning wrong file with project references (#1575)
  • e9cf734 docs(eslint-plugin): fix typo in readme
  • 10d86b1 docs(eslint-plugin): [no-dupe-class-members] fix typo (#1566)
  • 4670aab fix(eslint-plugin): [unbound-method] blacklist a few unbound natives (#1562)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @typescript-eslint/parser is breaking the build 🚨


☝️ Important announcement: Greenkeeper will be saying goodbye πŸ‘‹ and passing the torch to Snyk on June 3rd, 2020! Find out how to migrate to Snyk and more at greenkeeper.io


The devDependency @typescript-eslint/parser was updated from 2.23.0 to 2.24.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/parser is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • ❌ ci/circleci: bundle_size: CircleCI is running your tests (Details).
  • ❌ ci/circleci: unit_test: Your tests failed on CircleCI (Details).

Release Notes for v2.24.0

2.24.0 (2020-03-16)

Bug Fixes

  • typescript-estree: unnecessary program updates by removing timeout methods (#1693) (2ccd66b)

Features

  • typescript-estree: support 3.8 export * as ns (#1698) (133f622)
Commits

The new version differs by 9 commits.

  • 56e1e16 chore: publish v2.24.0
  • 71ef267 docs: code of conduct spelling
  • 970cfbd docs: prettier the code of conduct
  • 4a0e886 docs: add netlify to the readme
  • cb33eba chore: add code of conduct
  • 0b65f5e chore: bump acorn from 6.4.0 to 6.4.1 (#1730)
  • 2ccd66b fix(typescript-estree): unnecessary program updates by removing timeout methods (#1693)
  • 4ab3bf0 docs(eslint-plugin): typo in no-unsafe-member-access (#1720)
  • 133f622 feat(typescript-estree): support 3.8 export * as ns (#1698)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @typescript-eslint/eslint-plugin is breaking the build 🚨

The devDependency @typescript-eslint/eslint-plugin was updated from 2.5.0 to 2.6.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/eslint-plugin is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: unit_test: Your tests passed on CircleCI! (Details).
  • βœ… coverage/coveralls: First build on greenkeeper/@typescript-eslint/eslint-plugin-2.6.0 at 93.243% (Details).
  • ❌ ci/circleci: bundle_size: Your tests failed on CircleCI (Details).

Release Notes for v2.6.0

2.6.0 (2019-10-28)

Bug Fixes

  • parser: adds TTY check before logging the version mismatch warning (#1121) (768ef63)
  • typescript-estree: better handle canonical paths (#1111) (8dcbf4c)
  • typescript-estree: correct parenthesized optional chain AST (#1141) (5ae286e)
  • typescript-estree: ensure parent pointers are set (#1129) (d4703e1)
  • typescript-estree: normalize paths to fix cache miss on windows (#1128) (6d0f2ce)

Features

  • typescript-estree: add support for declare class properties (#1136) (1508670)
Commits

The new version differs by 8 commits.

  • 5338955 chore: publish v2.6.0
  • ab102c0 docs(eslint-plugin): [no-unnecessary-condition] tweak wording (#1147)
  • d4703e1 fix(typescript-estree): ensure parent pointers are set (#1129)
  • 5ae286e fix(typescript-estree): correct parenthesized optional chain AST (#1141)
  • 1508670 feat(typescript-estree): add support for declare class properties (#1136)
  • 6d0f2ce fix(typescript-estree): normalize paths to fix cache miss on windows (#1128)
  • 768ef63 fix(parser): adds TTY check before logging the version mismatch warning (#1121)
  • 8dcbf4c fix(typescript-estree): better handle canonical paths (#1111)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @types/jest is breaking the build 🚨

The devDependency @types/jest was updated from 24.0.20 to 24.0.21.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@types/jest is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: unit_test: Your tests passed on CircleCI! (Details).
  • βœ… coverage/coveralls: First build on greenkeeper/@types/jest-24.0.21 at 93.243% (Details).
  • ❌ ci/circleci: bundle_size: Your tests failed on CircleCI (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @typescript-eslint/parser is breaking the build 🚨

The devDependency @typescript-eslint/parser was updated from 2.12.0 to 2.13.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/parser is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v2.13.0

2.13.0 (2019-12-23)

Bug Fixes

  • eslint-plugin: [quotes] ignore backticks for Enum members (#1355) (e51048c)
  • eslint-plugin: [type-annotation-spacing] typo in messages (#1354) (82e0dbc)
  • eslint-plugin: add isTypeAssertion utility function (#1369) (bb1671e)
  • eslint-plugin: use AST_NODE_TYPES enum instead of strings (#1366) (bd0276b)
  • typescript-estree: correct type of key for base nodes (#1367) (099225a)

Features

  • eslint-plugin: [ban-types] handle empty type literal {} (#1348) (1c0ce9b)
  • eslint-plugin: [no-use-before-define] opt to ignore enum (#1242) (6edd911)
  • eslint-plugin: [pref-str-starts/ends-with] optional chain… (#1357) (fd37bc3)
  • eslint-plugin: add no-extra-semi [extension] (#1237) (425f65c)
  • eslint-plugin: add no-throw-literal [extension] (#1331) (2aa696c)
  • eslint-plugin: more optional chain support in rules (#1363) (3dd1b02)
  • eslint-plugin-tslint: add fixer for config rule (#1342) (c52c5c9)
  • typescript-estree: computed members discriminated unions (#1349) (013df9a)
  • typescript-estree: tighten prop name and destructure types (#1346) (f335c50)
Commits

The new version differs by 28 commits.

  • a78b194 chore: publish v2.13.0
  • 8c8ad4c refactor(typescript-estree): add type checking for deeplyCopy (#1371)
  • b0cff1f test(typescript-estree): add test cases for uncovered syntax (#1370)
  • 8f22ffe docs: grammar nits in the root README (#1364)
  • bb1671e fix(eslint-plugin): add isTypeAssertion utility function (#1369)
  • bac780c test(typescript-estree): reenable alignment tests (#1368)
  • 3dd1b02 feat(eslint-plugin): more optional chain support in rules (#1363)
  • fd37bc3 feat(eslint-plugin): [pref-str-starts/ends-with] optional chain… (#1357)
  • 099225a fix(typescript-estree): correct type of key for base nodes (#1367)
  • bd0276b fix(eslint-plugin): use AST_NODE_TYPES enum instead of strings (#1366)
  • 93390e6 docs(eslint-plugin): [no-unnec-type-arg] correct doc title (#1360)
  • 1c0ce9b feat(eslint-plugin): [ban-types] handle empty type literal {} (#1348)
  • e51048c fix(eslint-plugin): [quotes] ignore backticks for Enum members (#1355)
  • 2aa696c feat(eslint-plugin): add no-throw-literal [extension] (#1331)
  • 425f65c feat(eslint-plugin): add no-extra-semi [extension] (#1237)

There are 28 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of rollup is breaking the build 🚨

The devDependency rollup was updated from 1.27.6 to 1.27.7.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

rollup is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v1.27.7

2019-12-01

Bug Fixes

  • Fix a scenario where a reassignments to computed properties were not tracked (#3267)

Pull Requests

Commits

The new version differs by 4 commits.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @typescript-eslint/eslint-plugin is breaking the build 🚨


🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! πŸ’œ πŸššπŸ’¨ πŸ’š

Find out how to migrate to Snyk at greenkeeper.io


The devDependency @typescript-eslint/eslint-plugin was updated from 3.0.2 to 3.1.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@typescript-eslint/eslint-plugin is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v3.1.0

3.1.0 (2020-06-01)

Bug Fixes

  • eslint-plugin: [explicit-module-boundary-types] don't check returned functions if parent function has return type (#2084) (d7d4eeb)
  • eslint-plugin: [no-unnecessary-condition] handle comparison of any, unknown and loose comparisons with nullish values (#2123) (1ae1d01)
  • eslint-plugin: [no-unnecessary-condition] improve optional chain handling (#2111) (9ee399b)
  • eslint-plugin: [no-unnecessary-condition] improve optional chain handling 2 - electric boogaloo (#2138) (c87cfaf)
  • eslint-plugin: [no-unused-expressions] ignore import expressions (#2130) (e383691)
  • eslint-plugin: [no-var-requires] false negative for TSAsExpression and MemberExpression (#2139) (df95338)
  • experimental-utils: downlevel type declarations for versions older than 3.8 (#2133) (7925823)

Features

  • eslint-plugin: [ban-ts-comments] add "allow-with-description" option (#2099) (8a0fd18)
  • eslint-plugin: [ban-types] allow selective disable of default options with false value (#2137) (1cb8ca4)
  • eslint-plugin: [explicit-module-boundary-types] improve accuracy and coverage (#2135) (caaa859)
Commits

The new version differs by 15 commits.

  • 2c8402a chore: publish v3.1.0
  • c87cfaf fix(eslint-plugin): [no-unnecessary-condition] improve optional chain handling 2 - electric boogaloo (#2138)
  • 1cb8ca4 feat(eslint-plugin): [ban-types] allow selective disable of default options with false value (#2137)
  • df95338 fix(eslint-plugin): [no-var-requires] false negative for TSAsExpression and MemberExpression (#2139)
  • 0e83d15 docs: fix typo in npm install command (#2136)
  • caaa859 feat(eslint-plugin): [explicit-module-boundary-types] improve accuracy and coverage (#2135)
  • 7925823 fix(experimental-utils): downlevel type declarations for versions older than 3.8 (#2133)
  • 8a0fd18 feat(eslint-plugin): [ban-ts-comments] add "allow-with-description" option (#2099)
  • 1ae1d01 fix(eslint-plugin): [no-unnecessary-condition] handle comparison of any, unknown and loose comparisons with nullish values (#2123)
  • 9ee399b fix(eslint-plugin): [no-unnecessary-condition] improve optional chain handling (#2111)
  • d7d4eeb fix(eslint-plugin): [explicit-module-boundary-types] don't check returned functions if parent function has return type (#2084)
  • e383691 fix(eslint-plugin): [no-unused-expressions] ignore import expressions (#2130)
  • dc061ed docs: include npm install instructions in getting started (#2120)
  • 407bfa1 docs(eslint-plugin): remove no-void from roadmap (#2124)
  • d70fba2 docs: update FAQ and add issue template config (#2117)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @types/node is breaking the build 🚨

The devDependency @types/node was updated from 12.11.7 to 12.12.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@types/node is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: unit_test: Your tests passed on CircleCI! (Details).
  • βœ… coverage/coveralls: First build on greenkeeper/@types/node-12.12.0 at 93.243% (Details).
  • ❌ ci/circleci: bundle_size: Your tests failed on CircleCI (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.