UNPKG

react-kiwi-dropdown

Version:

A minimal, easy-to-use and highly adjustable dropdown component made with ReactJS.

803 lines (714 loc) 129 kB
# Change Log All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). This change log adheres to standards from [Keep a CHANGELOG](http://keepachangelog.com). ## [7.12.4] - 2019-01-16 ### Fixed * [`no-unused-prop-types`][]: avoid a crash ([#2131][], @ljharb) * [`prop-types`][]: avoid further crashes from nonexistent nodes in unusedPropTypes ([#2127][], @ljharb) * [`prop-types`][]: Read name of callee object ([#2125][], @CrOrc) * [`prop-types`][]: Ignore reassignments when matching props declarations with components ([#2051][], [#1957][], @yannickcr) * [`prop-types`][], [`no-unused-prop-types`][], [`require-default-props`][]: Detect components with return statement in switch/case ([#2118][], @yannickcr) ### Changed * [`prop-types`][], [`no-typos`][]: add passing test cases ([#2123][], [#2128][], [#2136][], [#2134][], @ljharb) [#2136]: https://github.com/yannickcr/eslint-plugin-react/issues/2136 [#2134]: https://github.com/yannickcr/eslint-plugin-react/issues/2134 [#2131]: https://github.com/yannickcr/eslint-plugin-react/issues/2131 [#2128]: https://github.com/yannickcr/eslint-plugin-react/issues/2128 [#2127]: https://github.com/yannickcr/eslint-plugin-react/issues/2127 [#2125]: https://github.com/yannickcr/eslint-plugin-react/pull/2125 [#2123]: https://github.com/yannickcr/eslint-plugin-react/issues/2123 [#2118]: https://github.com/yannickcr/eslint-plugin-react/issues/2118 [#2051]: https://github.com/yannickcr/eslint-plugin-react/issues/2051 [#1957]: https://github.com/yannickcr/eslint-plugin-react/issues/1957 ## [7.12.3] - 2019-01-04 ### Fixed * [`jsx-indent`][]: Prevent crash on valueless props ([#2120][], @jomasti) * [`jsx-fragments`][]: avoid crashing on self-closing fragments ([#2113][], @alexzherdev) * [`no-unused-prop-types`][]: Fix propType detection inside class bodies ([#2115][], @drx) * [`no-unused-prop-types`][]: fix issue with propTypes misclassifying props ([#2111][], @drx) * [`display-name`][]: fix false positive for `React.memo` ([#2109][], @jomasti) ### Changed * [Docs] add a missing comma in the JSON settings ([#2117][], @haideralsh) * [Docs] update README to document React version detection ([#2114][], @mohsinulhaq) [#2120]: https://github.com/yannickcr/eslint-plugin-react/issues/2120 [#2117]: https://github.com/yannickcr/eslint-plugin-react/issues/2117 [#2115]: https://github.com/yannickcr/eslint-plugin-react/issues/2115 [#2114]: https://github.com/yannickcr/eslint-plugin-react/issues/2114 [#2113]: https://github.com/yannickcr/eslint-plugin-react/issues/2113 [#2111]: https://github.com/yannickcr/eslint-plugin-react/issues/2111 [#2109]: https://github.com/yannickcr/eslint-plugin-react/issues/2109 ## [7.12.2] - 2019-01-02 ### Fixed * [`prop-types`][]: avoid crash on used prevProps ([#2095][], @ljharb) * Version warning: Link does not end with '.' ([#2103][], @yoyo837)) * [`forbid-prop-types`][]: fix crash with propWrapper check on MemberExpressions ([#2104][], @ljharb) [#2104]: https://github.com/yannickcr/eslint-plugin-react/issues/2104 [#2103]: https://github.com/yannickcr/eslint-plugin-react/pull/2103 [#2095]: https://github.com/yannickcr/eslint-plugin-react/issues/2095 ## [7.12.1] - 2019-01-01 ### Fixed * [`no-unused-state`][]: Fix crash with class fields ([#2098][], @jomasti) * [`prop-types`][]: Fix false positives inside lifecycle methods ([#2099][], @jomasti) * [`jsx-max-depth`][]: avoid a crash ([#2102][], @ljharb) * [`jsx-wrap-multilines`][]: avoid crash when no trailing newline ([#2100][], @ljharb) ### Changed * Fix CHANGELOG.md ([#2097][], @alexzherdev) [#2102]: https://github.com/yannickcr/eslint-plugin-react/issues/2102 [#2100]: https://github.com/yannickcr/eslint-plugin-react/issues/2100 [#2099]: https://github.com/yannickcr/eslint-plugin-react/pull/2099 [#2098]: https://github.com/yannickcr/eslint-plugin-react/pull/2098 [#2097]: https://github.com/yannickcr/eslint-plugin-react/pull/2097 ## [7.12.0] - 2018-12-27 ### Added * [`no-typos`]: Support createClass ([#1828][], @alexzherdev) * Support detecting React.forwardRef/React.memo ([#2089][], @jomasti) * [`jsx-indent`][]: add `checkAttributes` option for JSX attribute indentation ([#2086][], @jomasti) * Change allowed `propWrapperFunctions` setting values ([#2065][], @jomasti) * add [`jsx-fragments`][] rule to enforce fragment syntax ([#1994][], @alexzherdev) * Support "detect" option for React version setting ([#1978][], @alexzherdev) * Support shorthand fragment syntax in many rules ([#1956][], @alexzherdev) * [`jsx-no-literals`][]: print node value in warning message ([#2008][], @jlgonzalezdev) ### Fixed * [`jsx-max-depth`][]: Fix depth of JSX siblings in a JSXEpressionContainer ([#1824][], @alexzherdev) * [`no-array-index-key`][]: fix in React.Children methods ([#2085][], @himynameisdave) * [`no-unused-state`][]: handle functional setState ([#2084][], @jomasti) * version errors should log to stderr, not stdout ([#2082][], @ljharb) * [`no-deprecated`][]: Disable legacy lifecycle methods linting for now ([#2069][], @sergei-startsev) * ensure that react and flow versions can be numbers ([#2056][], @ljharb) * [`forbid-foreign-prop-types`][]: ensure `allowInPropTypes` option applies to class fields ([#2040][], @Sheile) * [`jsx-wrap-multilines`][]: catch single missing newlines ([#1984][], @MrHen) * [`jsx-first-prop-new-line`][]: Fix for parsers (like TypeScript) ([#2026][], @HauptmannEck) * [`sort-comp`][]: Fix fixer in case of more than 10 props ([#2012][], @tihonove) * [`no-unused-state`][] Don't depend on state parameter name ([#1829][], @alexzherdev) * [`no-this-in-sfc`][] fix for class properties ([#1995][], @sergei-startsev) * [`no-this-in-sfc`][] fix rule behavior for arrow functions inside a class field ([#1989][], @sergei-startsev) * [`destructuring-assignment`][]: handle nested props usage ([#1983][], @alexzherdev) * [`sort-prop-types`][]: fix string property order ([#1977][], @metreniuk) * [`jsx-no-target-blank`][]: don’t crash when there’s no value ([#1949][], @ljharb) * [`prop-types`][], [`no-unused-prop-types`][]: better handle object spread ([#1939][], @alexzherdev) ### Changed * [`jsx-fragments`][]: improve message text ([#2032][], @alexzherdev) * [`no-unsafe`][]: handle all unsafe life-cycle methods ([#2075][], @sergei-startsev) * [`require-default-props`][]: Change error message naming from singular defaultProp to plural defaultProps ([#2064][], @jseminck) * [Refactor] Extract used `propTypes` detection ([#1946][], @alexzherdev) * [Refactor] Extract `defaultProps` detection ([#1942][], @alexzherdev) * [Refactor] Extract required `propTypes` detection ([#2001][], @alexzherdev) * [Docs] [`no-did-mount-set-state`][], [`no-did-update-set-state`][], [`no-will-update-set-state`][]: fix docs URLs ([#2090][], @JBallin) * [Docs] Remove statement on GC in jsx-no-bind ([#2067][], @rickhanlonii) * [Docs] [`jsx-sort-props`][]: Fix small mistake ([#2044][], @dimitarnestorov) * [Docs] [`no-unescaped-entities`][]: add more escape examples ([#2015][], @stevemao) * [Docs] [`display-name`][]: mention default `ignoreTranspilerName` value ([#2002][], @OliverJAsh) * [Docs] [`jsx-no-target-blank`][]: Add full example ([#1988][], @atomcorp) * [Docs] Update [`jsx-no-target-blank`][].md ([#1953][], @brunocoelho) * [Changelog] fix "Ignore class properties" contributor ([#1941][], @alexzherdev) * [Tests] Remove redundant `require('babel-eslint')` from tests ([#2004][], @sergei-startsev) * [Tests] [`prop-types`][]: Add tests for prop-types destructuring ([#2029][], @sstern6) * [Tests] [`display-name`][]: add false positive component detection for destructured createElement ([#1098][], @arian) [#2090]: https://github.com/yannickcr/eslint-plugin-react/pull/2090 [#2089]: https://github.com/yannickcr/eslint-plugin-react/pull/2089 [#2086]: https://github.com/yannickcr/eslint-plugin-react/pull/2086 [#2085]: https://github.com/yannickcr/eslint-plugin-react/pull/2085 [#2084]: https://github.com/yannickcr/eslint-plugin-react/pull/2084 [#2082]: https://github.com/yannickcr/eslint-plugin-react/issues/2082 [#2075]: https://github.com/yannickcr/eslint-plugin-react/pull/2075 [#2069]: https://github.com/yannickcr/eslint-plugin-react/pull/2069 [#2067]: https://github.com/yannickcr/eslint-plugin-react/pull/2067 [#2065]: https://github.com/yannickcr/eslint-plugin-react/pull/2065 [#2064]: https://github.com/yannickcr/eslint-plugin-react/pull/2064 [#2056]: https://github.com/yannickcr/eslint-plugin-react/issues/2056 [#2044]: https://github.com/yannickcr/eslint-plugin-react/pull/2044 [#2040]: https://github.com/yannickcr/eslint-plugin-react/pull/2040 [#2032]: https://github.com/yannickcr/eslint-plugin-react/pull/2032 [#2029]: https://github.com/yannickcr/eslint-plugin-react/pull/2029 [#2026]: https://github.com/yannickcr/eslint-plugin-react/pull/2026 [#2015]: https://github.com/yannickcr/eslint-plugin-react/pull/2015 [#2012]: https://github.com/yannickcr/eslint-plugin-react/pull/2012 [#2008]: https://github.com/yannickcr/eslint-plugin-react/pull/2008 [#2004]: https://github.com/yannickcr/eslint-plugin-react/pull/2004 [#2002]: https://github.com/yannickcr/eslint-plugin-react/pull/2002 [#2001]: https://github.com/yannickcr/eslint-plugin-react/pull/2001 [#1995]: https://github.com/yannickcr/eslint-plugin-react/pull/1995 [#1994]: https://github.com/yannickcr/eslint-plugin-react/pull/1994 [#1989]: https://github.com/yannickcr/eslint-plugin-react/pull/1989 [#1988]: https://github.com/yannickcr/eslint-plugin-react/pull/1988 [#1984]: https://github.com/yannickcr/eslint-plugin-react/pull/1984 [#1983]: https://github.com/yannickcr/eslint-plugin-react/pull/1983 [#1978]: https://github.com/yannickcr/eslint-plugin-react/pull/1978 [#1977]: https://github.com/yannickcr/eslint-plugin-react/pull/1977 [#1956]: https://github.com/yannickcr/eslint-plugin-react/pull/1956 [#1953]: https://github.com/yannickcr/eslint-plugin-react/pull/1953 [#1949]: https://github.com/yannickcr/eslint-plugin-react/issues/1949 [#1946]: https://github.com/yannickcr/eslint-plugin-react/pull/1946 [#1942]: https://github.com/yannickcr/eslint-plugin-react/pull/1942 [#1941]: https://github.com/yannickcr/eslint-plugin-react/pull/1941 [#1939]: https://github.com/yannickcr/eslint-plugin-react/pull/1939 [#1829]: https://github.com/yannickcr/eslint-plugin-react/pull/1829 [#1828]: https://github.com/yannickcr/eslint-plugin-react/pull/1828 [#1824]: https://github.com/yannickcr/eslint-plugin-react/pull/1824 [#1098]: https://github.com/yannickcr/eslint-plugin-react/pull/1098 ## [7.11.1] - 2018-08-14 ### Fixed * stop crashing when assigning to propTypes ([#1932][], @alexzherdev) ### Changed * Fix changelog links ([#1926][], @ferhatelmas) * Fix changelog links ([#1929][], @alexzherdev) [#1932]: https://github.com/yannickcr/eslint-plugin-react/pull/1932 [#1929]: https://github.com/yannickcr/eslint-plugin-react/pull/1929 [#1926]: https://github.com/yannickcr/eslint-plugin-react/pull/1926 ## [7.11.0] - 2018-08-13 ### Added * [`jsx-one-expression-per-line`][]: add "allow" option ([#1924][], @alexzherdev) * [`sort-prop-types`][]: add autofix ([#1891][], @finnp) * [`jsx-no-bind`][]: Add ignoreDOMComponents option ([#1868][], @alexzherdev) * Output a warning if React version is missing in settings ([#1857][], @alexzherdev) ### Fixed * [`destructuring-assignment`][]: Ignore class properties ([#1909][], @alexandernanberg) * [`destructuring-assignment`][], component detection: ignore components with confidence = 0 ([#1907][], @alexzherdev) * [`boolean-prop-naming`][]: Handle inline Flow type ([#1905][], @alexzherdev) * [`jsx-props-no-multi-spaces`][]: Handle member expressions ([#1890][], @alexzherdev) * [`sort-comp`][]: Allow methods to belong to any matching group ([#1858][], @nosilleg) * [`jsx-sort-props`][]: Fix `reservedFirst` ([#1883][], @fleischie) * [`prop-types`][]: (flow) Stop crashing on undefined or null properties ([#1860][], @nicholas-l) * [`no-unknown-property`][]: Make attribute "charset" valid ([#1863][], @silvenon) * [`no-deprecated`][]: report identifier AST node instead of the class node ([#1854][], @jsnajdr) * [`button-has-type`][]: Account for pragma ([#1851][], @alexzherdev) * [`button-has-type`][]: improve error message when an identifier is used as the value ([#1874][], @ljharb) * support JSXText nodes alongside Literal nodes (@ljharb) ### Changed * Extract propTypes detection code ([#1911][], @alexzherdev) * Fix broken links in changelog ([#1849][], @alexzherdev) * [`no-unused-state`][]: combine spread visitors (@ljharb) * [`jsx-one-expression-per-line`][]: Fix JSX Syntax in docs ([#1867][], @peter-mouland) * [`jsx-max-depth`][], [`jsx-sort-default-props`][]: add missing docs urls ([#1880][], @flyerhzm) * [`jsx-indent`][]: add test cases ([#1892][], @alexzherdev) * [`prop-types`][]: add test cases ([#1898][], @alexzherdev) * Add a helper function for determining function-like expressions ([#1914][], @alexzherdev) * [`jsx-props-no-multi-spaces`][]: update docs ([#1918][], @BenRichter) [#1924]: https://github.com/yannickcr/eslint-plugin-react/pull/1924 [#1918]: https://github.com/yannickcr/eslint-plugin-react/pull/1918 [#1914]: https://github.com/yannickcr/eslint-plugin-react/pull/1914 [#1911]: https://github.com/yannickcr/eslint-plugin-react/pull/1911 [#1909]: https://github.com/yannickcr/eslint-plugin-react/pull/1909 [#1907]: https://github.com/yannickcr/eslint-plugin-react/pull/1907 [#1905]: https://github.com/yannickcr/eslint-plugin-react/pull/1905 [#1898]: https://github.com/yannickcr/eslint-plugin-react/pull/1898 [#1892]: https://github.com/yannickcr/eslint-plugin-react/pull/1892 [#1891]: https://github.com/yannickcr/eslint-plugin-react/pull/1891 [#1890]: https://github.com/yannickcr/eslint-plugin-react/pull/1890 [#1883]: https://github.com/yannickcr/eslint-plugin-react/pull/1883 [#1880]: https://github.com/yannickcr/eslint-plugin-react/pull/1880 [#1874]: https://github.com/yannickcr/eslint-plugin-react/issues/1874 [#1868]: https://github.com/yannickcr/eslint-plugin-react/pull/1868 [#1867]: https://github.com/yannickcr/eslint-plugin-react/pull/1867 [#1863]: https://github.com/yannickcr/eslint-plugin-react/pull/1863 [#1860]: https://github.com/yannickcr/eslint-plugin-react/pull/1860 [#1858]: https://github.com/yannickcr/eslint-plugin-react/pull/1858 [#1857]: https://github.com/yannickcr/eslint-plugin-react/pull/1857 [#1854]: https://github.com/yannickcr/eslint-plugin-react/pull/1854 [#1851]: https://github.com/yannickcr/eslint-plugin-react/pull/1851 [#1849]: https://github.com/yannickcr/eslint-plugin-react/pull/1849 ## [7.10.0] - 2018-06-24 ### Added * Allow eslint ^5 ([#1843][] @papandreou, @ljharb) * [`no-unsafe`][] rule ([#1831][], [#1830][] @sergei-startsev) * [`no-will-update-set-state`][]: Account for `UNSAFE_` methods ([#1845][], [#1844][] @alexzherdev) ### Fixed * [`no-typos`][]: Fix static propTypes handling ([#1827][], [#1677][] @alexzherdev) * [`destructuring-assignment`][]: Allow LHS ([#1825][], [#1728][] @alexzherdev) * [`no-unused-prop-types`][]: Fix crash when encountering mixed union and intersection flow types ([#1806][] @yannickcr) ### Changed * Typo fixes in [`jsx-no-target-blank`][] ([#1805][] @ferhatelmas)) [#1845]: https://github.com/yannickcr/eslint-plugin-react/pull/1845 [#1844]: https://github.com/yannickcr/eslint-plugin-react/issues/1844 [#1843]: https://github.com/yannickcr/eslint-plugin-react/pull/1843 [#1831]: https://github.com/yannickcr/eslint-plugin-react/pull/1831 [#1830]: https://github.com/yannickcr/eslint-plugin-react/issues/1830 [#1827]: https://github.com/yannickcr/eslint-plugin-react/pull/1827 [#1825]: https://github.com/yannickcr/eslint-plugin-react/pull/1825 [#1806]: https://github.com/yannickcr/eslint-plugin-react/issues/1806 [#1805]: https://github.com/yannickcr/eslint-plugin-react/pull/1805 [#1728]: https://github.com/yannickcr/eslint-plugin-react/issues/1728 [#1677]: https://github.com/yannickcr/eslint-plugin-react/issues/1677 ## [7.9.1] - 2018-06-03 * Nothing was fixed; this is a republish with some updated deps. ([#1804][] @ljharb) [#1804]: https://github.com/yannickcr/eslint-plugin-react/issues/1804 ## [7.9.0] - 2018-06-03 ### Added * Add [`jsx-props-no-multi-spaces`][] rule ([#1755][] @ThiefMaster) * Add `first` option to [`jsx-indent-props`][] ([#398][] @ThiefMaster) * Add `enforceDynamicLinks` option to [`jsx-no-target-blank`][] ([#1737][] @kenearley) ### Fixed * Fix static lifecycle methods validation in [`sort-comp`][] ([#1793][] @lynxtaa) * Fix crash in [`no-typos`][] when encountering anonymous react imports ([#1796][] @jsg2021) * Fix ESLint 3 support ([#1779][]) ### Changed * Documentation improvements ([#1794][] @lencioni) * Update Travis CI configuration to test on multiple ESLint verions [7.9.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.8.2...v7.9.0 [#1755]: https://github.com/yannickcr/eslint-plugin-react/pull/1755 [#398]: https://github.com/yannickcr/eslint-plugin-react/issues/398 [#1737]: https://github.com/yannickcr/eslint-plugin-react/issues/1737 [#1793]: https://github.com/yannickcr/eslint-plugin-react/issues/1793 [#1796]: https://github.com/yannickcr/eslint-plugin-react/pull/1796 [#1779]: https://github.com/yannickcr/eslint-plugin-react/issues/1779 [#1794]: https://github.com/yannickcr/eslint-plugin-react/pull/1794 ## [7.8.2] - 2018-05-13 ### Fixed * Fix crash in [`boolean-prop-naming`][] when encountering a required shape prop type ([#1791][] @pcorpet) [7.8.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.8.1...v7.8.2 [#1791]: https://github.com/yannickcr/eslint-plugin-react/issues/1791 ## [7.8.1] - 2018-05-12 ### Fixed * Fix crash in [`no-deprecated`][] when encountering a class constructor ([#1785][] @taddei) [7.8.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.8.0...v7.8.1 [#1785]: https://github.com/yannickcr/eslint-plugin-react/issues/1785 ## [7.8.0] - 2018-05-11 ### Added * Add support for fragments to [`react-in-jsx-scope`][] ([#1758][]) * Add support for Flow generic PropType to [`require-default-props`][] ([#1724][] @Miziak) * Add component whitelist option to [`forbid-component-props`][] ([#1732][] @ThiefMaster) * Add support for React 16.3 lifecycle methods to [`no-unused-prop-types`][] ([#1681][] @bvaughn) * Add support for React 16.3 lifecycle methods to [`sort-comp`][] ([#1767][] @joe-denea) * Add support for React 16.3 lifecycle methods to [`no-typos`][] * Add support for `prevState` and `nextState` to [`no-unused-state`][] ([#1759][]) * Add warnings for `componentWillMount`, `componentWillReceiveProps` and `componentWillUpdate` lifecycle methods in [`no-deprecated`][] ([#1750][] @sergei-startsev) ### Fixed * Fix [`no-typos`][] false positive on custom `PropType` classes ([#1389][] @brettdh) * Fix [`boolean-prop-naming`][] to handle required props ([#1389][] @louisscruz) * Fix [`jsx-curly-brace-presence`][] to allow whitespace JSX container ([#1717][] @sharmilajesupaul) * Fix [`jsx-no-bind`][] to handle ternary conditions ([#1722][] @gwenaellarmet) ### Changed * Documentation improvements ([#1699][] @ronanmathew, [#1743][] @ybiquitous, [#1753][] @awthwathje, [#1783][] @chentsulin, [#1703][] @ferhatelmas) [7.8.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.7.0...v7.8.0 [#1758]: https://github.com/yannickcr/eslint-plugin-react/issues/1758 [#1724]: https://github.com/yannickcr/eslint-plugin-react/issues/1724 [#1732]: https://github.com/yannickcr/eslint-plugin-react/issues/1732 [#1681]: https://github.com/yannickcr/eslint-plugin-react/pull/1681 [#1767]: https://github.com/yannickcr/eslint-plugin-react/issues/1767 [#1759]: https://github.com/yannickcr/eslint-plugin-react/issues/1759 [#1750]: https://github.com/yannickcr/eslint-plugin-react/pull/1750 [#1389]: https://github.com/yannickcr/eslint-plugin-react/issues/1389 [#1717]: https://github.com/yannickcr/eslint-plugin-react/issues/1717 [#1722]: https://github.com/yannickcr/eslint-plugin-react/issues/1722 [#1699]: https://github.com/yannickcr/eslint-plugin-react/pull/1699 [#1743]: https://github.com/yannickcr/eslint-plugin-react/pull/1743 [#1753]: https://github.com/yannickcr/eslint-plugin-react/issues/1753 [#1783]: https://github.com/yannickcr/eslint-plugin-react/pull/1783 [#1703]: https://github.com/yannickcr/eslint-plugin-react/pull/1703 ## [7.7.0] - 2018-02-19 ### Added * [`forbid-foreign-prop-types`][]: add `allowInPropTypes` option ([#1655][] @iansu) * Add [`jsx-max-depth`][] rule ([#1260][] @chriswong) ### Fixed * [`no-access-state-in-setstate`][]: Exclude references to this.state in setState callback ([#1610][] @pfhayes) * [`no-danger-with-children`][]: prevent infinite loop ([#1571][] @ljharb) * [`sort-prop-types`][]: Fix sortShapeProp when shape is not an object literal ([#1669][] @justinanastos) * [`jsx-child-element-spacing`][]: fix error location ([#1666][] @pfhayes) * [`no-unused-prop-types`][]: fix for createClass ([#1675][] @yuri-sakharov) * [`prop-types`][]: include nextProps checking in shouldComponentUpdate ([#1690][] @amerryma) * [`jsx-curly-spacing`][]: refactor to fix start and end-braces in a single pass ([#1414][] @s-h-a-d-o-w) ### Changed * [`jsx-child-element-spacing`][]: add missing docs ([#1665][] @pfhayes); fix docs ([#1670][] @SammyM) [7.7.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.6.1...v7.7.0 [#1690]: https://github.com/yannickcr/eslint-plugin-react/pull/1690 [#1675]: https://github.com/yannickcr/eslint-plugin-react/pull/1675 [#1670]: https://github.com/yannickcr/eslint-plugin-react/pull/1670 [#1669]: https://github.com/yannickcr/eslint-plugin-react/pull/1669 [#1666]: https://github.com/yannickcr/eslint-plugin-react/pull/1666 [#1665]: https://github.com/yannickcr/eslint-plugin-react/pull/1665 [#1655]: https://github.com/yannickcr/eslint-plugin-react/pull/1655 [#1610]: https://github.com/yannickcr/eslint-plugin-react/pull/1610 [#1414]: https://github.com/yannickcr/eslint-plugin-react/pull/1414 [#1260]: https://github.com/yannickcr/eslint-plugin-react/pull/1260 [#1571]: https://github.com/yannickcr/eslint-plugin-react/issues/1571 ## [7.6.1] - 2018-01-28 ### Fixed * Flow: fix crash in [`prop-types`][] with recursive type annotations ([#1653][] @jetpacmonkey) * Fix [`no-unknown-property`][] to properly recognize `crossOrigin` instead of `crossorigin`, and allow it on `link` tags. ([#1659][] @jzDev) * Fix [`no-access-state-in-setstate`][] to handle object spread ([#1657][] @ljharb) [7.6.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.6.0...v7.6.1 [#1659]: https://github.com/yannickcr/eslint-plugin-react/pull/1659 [#1657]: https://github.com/yannickcr/eslint-plugin-react/issues/1657 [#1653]: https://github.com/yannickcr/eslint-plugin-react/pull/1653 ## [7.6.0] - 2018-01-25 ### Added * Add [`forbid-dom-props`][] rule ([#1562][] @davazp) * Add [`jsx-child-element-spacing`][] rule ([#1515][] @pfhayes) * Add [`no-this-in-sfc`][] rule ([#1435][] @jomasti) * Add [`jsx-sort-default-props`][] rule ([#281][] @b0gok) * Add `message` option to [`boolean-prop-naming`][] ([#1588][] @louisscruz) * Add `beforeClosing` option to [`jsx-tag-spacing`][] ([#1396][] @cjskillingstad) * Add `instance-methods` and `instance-variables` to [`sort-comp`][] ([#599][] @RDGthree) * Add `propWrapperFunctions` support for [`boolean-prop-naming`][] ([#1478][] @jomasti) * Add warning for `React.addons.TestUtils` in [`no-deprecated`][] ([#1644][] @nirnaor) * Add URL to rule documentation to the rules metadata ([#1635][] @Arcanemagus) ### Fixed * Fix crashes in [`no-access-state-in-setstate`][] ([#1559][] @jomasti, [#1611][] @pfhayes) * Fix crash in [`require-optimization`][] when encountering arrays with empty items as values in object ([#1621][] @kamataryo) * Fix crash in [`no-unused-prop-types`][] when passing an empty function as a PropType ([#1542][] [#1581][] @kevinzwhuang) * Fix crash in [`no-typos`][] when using `PropType.shape` without arguments ([#1471][] @mrichmond) * Fix crash when using Unions in flow propTypes ([#1468][] @justinanastos) * Fix missing meta in [`jsx-tag-spacing`][] ([#1650][] @flyerhzm) * Fix [`no-unused-state`][] to detect usage of `this.state` as an object ([#1572][]) * Fix [`no-access-state-in-setstate`][] to detect when the `state` variable is destructured from `this.state` ([#1597][] @jaaberg) * Fix [`jsx-no-literals`][] to correctly find string literals part of BinaryExpressions ([#1511][] @jaaberg) * Fix [`no-typos`][] false positive on custom propTypes with isRequired ([#1607][] @lfades) * Fix [`prop-types`][] to check for `nextProps` in `componentWillReceiveProps` ([#1636][] @xjmdoo) * Fix [`no-unknown-property`][] to not pascal-casing `crossorigin` attribute and only allow it on script/img/video ([#1642][] @ljharb) ### Changed * Improve [`jsx-wrap-multilines`][] auto fix ([#1576][] @sharmilajesupaul) * Export `defaultConfig` from [`sort-comp`][] rule for programmatic use ([#1578][] @Andarist) * Documentation improvements ([#1552][] @TSMMark, [#1566][] @lukeapage, [#1624][] @alexilyaev, @ljharb) * Update dependencies (@ljharb) [7.6.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.5.1...v7.6.0 [#1562]: https://github.com/yannickcr/eslint-plugin-react/pull/1562 [#1515]: https://github.com/yannickcr/eslint-plugin-react/issues/1515 [#1435]: https://github.com/yannickcr/eslint-plugin-react/issues/1435 [#281]: https://github.com/yannickcr/eslint-plugin-react/issues/281 [#1588]: https://github.com/yannickcr/eslint-plugin-react/pull/1588 [#1396]: https://github.com/yannickcr/eslint-plugin-react/issues/1396 [#599]: https://github.com/yannickcr/eslint-plugin-react/issues/599 [#1478]: https://github.com/yannickcr/eslint-plugin-react/pull/1478 [#1644]: https://github.com/yannickcr/eslint-plugin-react/issues/1644 [#1635]: https://github.com/yannickcr/eslint-plugin-react/pull/1635 [#1559]: https://github.com/yannickcr/eslint-plugin-react/issues/1559 [#1611]: https://github.com/yannickcr/eslint-plugin-react/pull/1611 [#1621]: https://github.com/yannickcr/eslint-plugin-react/pull/1621 [#1542]: https://github.com/yannickcr/eslint-plugin-react/issues/1542 [#1581]: https://github.com/yannickcr/eslint-plugin-react/issues/1581 [#1471]: https://github.com/yannickcr/eslint-plugin-react/issues/1471 [#1468]: https://github.com/yannickcr/eslint-plugin-react/issues/1468 [#1650]: https://github.com/yannickcr/eslint-plugin-react/pull/1650 [#1572]: https://github.com/yannickcr/eslint-plugin-react/issues/1572 [#1597]: https://github.com/yannickcr/eslint-plugin-react/issues/1597 [#1511]: https://github.com/yannickcr/eslint-plugin-react/issues/1511 [#1607]: https://github.com/yannickcr/eslint-plugin-react/issues/1607 [#1636]: https://github.com/yannickcr/eslint-plugin-react/issues/1636 [#1642]: https://github.com/yannickcr/eslint-plugin-react/issues/1642 [#1576]: https://github.com/yannickcr/eslint-plugin-react/pull/1576 [#1578]: https://github.com/yannickcr/eslint-plugin-react/pull/1578 [#1552]: https://github.com/yannickcr/eslint-plugin-react/pull/1552 [#1566]: https://github.com/yannickcr/eslint-plugin-react/pull/1566 [#1624]: https://github.com/yannickcr/eslint-plugin-react/pull/1624 ## [7.5.1] - 2017-11-19 ### Fixed * Fix [`jsx-no-bind`][] crash ([#1543][] @jomasti) * Fix [`no-unused-prop-types`][] crash ([#1542][] @jomasti) ### Changed * Documentation improvements ([#1546][] @jseminck) [7.5.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.5.0...v7.5.1 [#1543]: https://github.com/yannickcr/eslint-plugin-react/issues/1543 [#1542]: https://github.com/yannickcr/eslint-plugin-react/issues/1542 [#1546]: https://github.com/yannickcr/eslint-plugin-react/issues/1546 ## [7.5.0] - 2017-11-18 ### Added * Add [`jsx-one-expression-per-line`][] rule ([#1497][] @TSMMark) * Add [`destructuring-assignment`][] rule ([#1462][] @DianaSuvorova) * Add [`no-access-state-in-setstate`][] rule ([#1374][] @jaaberg) * Add [`button-has-type`][] rule ([#1525][] @Hypnosphi) * Add warnings for `React.DOM` factories in [`no-deprecated`][] ([#1530][] @backjo) * Add `sortShapeProp` option to [`sort-prop-types`][] ([#1476][] @jomasti) * Add `parens-new-line` option to [`jsx-wrap-multilines`][] ([#1475][] @jomasti) * Add `checkContextTypes` and `checkChildContextTypes` options to [`forbid-prop-types`][] ([#1533][] @jomasti) * Add `forbidDefaultForRequired ` option to [`require-default-props`][] ([#1524][] @jomasti) * Add new nodes support to [`jsx-wrap-multilines`][] ([#1384][] @evgeny-petukhov) ### Fixed * Fix [`jsx-curly-brace-presence`][] auto fix by bailing out when some chars exist ([#1479][] [#1449][] @jackyho112) * Fix [`boolean-prop-naming`][] crash with Object spread ([#1485][] @track0x1) * Fix [`no-unused-state`][] to correctly handle arrow function class method ([#1363][] @jackyho112) * Fix incompatibility with [`typescript-eslint-parser`](https://github.com/eslint/typescript-eslint-parser) ([#1496][] @timothykang) * Fix [`jsx-no-bind`][] to only warn for props and account for variable declaration ([#1444][] [#1395][] [#1417][] @jackyho112) * Fix [`no-unused-prop-types`][] to handle props usage in custom prop validators ([#1518][] @petersendidit) * Fix [`prefer-stateless-function`][] to account for `contextTypes` and `defaultProps` ([#1521][] @jomasti) * Fix [`jsx-no-comment-textnodes`][] to not warn when using two slashes via html entities at the beginning of a literal ([#1517][] @jomasti) * Fix [`default-props-match-prop-types`][] crash ([#1499][] @jomasti) * Fix [`no-unused-prop-types`][] to handle props used in the `setState` update callback ([#1507][] @petersendidit) * Fix alignment bug in [`jsx-indent`][] ([#1246][] @jseminck) ### Changed * Documentation improvements ([#1438][] @jseminck, [#1464][] @AlaaAttya, [#1494][] @piperchester, [#1467][] @felicio, [#1512][] @adam-golab) * Code refactoring ([#1423][] [#1398][] @jseminck, [#1500][] [#1514][] @Aladdin-ADD, [#1502][] @SimenB, [#1508][] [#1526][] @jomasti, @ljharb) * Update dependencies ([#1450][] @leebyron, @ljharb) [7.5.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.4.0...v7.5.0 [#1497]: https://github.com/yannickcr/eslint-plugin-react/pull/1497 [#1462]: https://github.com/yannickcr/eslint-plugin-react/pull/1462 [#1374]: https://github.com/yannickcr/eslint-plugin-react/pull/1374 [#1525]: https://github.com/yannickcr/eslint-plugin-react/pull/1525 [#1530]: https://github.com/yannickcr/eslint-plugin-react/pull/1530 [#1476]: https://github.com/yannickcr/eslint-plugin-react/issues/1476 [#1475]: https://github.com/yannickcr/eslint-plugin-react/pull/1475 [#1533]: https://github.com/yannickcr/eslint-plugin-react/pull/1533 [#1524]: https://github.com/yannickcr/eslint-plugin-react/issues/1524 [#1384]: https://github.com/yannickcr/eslint-plugin-react/pull/1384 [#1479]: https://github.com/yannickcr/eslint-plugin-react/issues/1479 [#1449]: https://github.com/yannickcr/eslint-plugin-react/issues/1449 [#1485]: https://github.com/yannickcr/eslint-plugin-react/pull/1485 [#1363]: https://github.com/yannickcr/eslint-plugin-react/issues/1363 [#1496]: https://github.com/yannickcr/eslint-plugin-react/pull/1496 [#1444]: https://github.com/yannickcr/eslint-plugin-react/issues/1444 [#1395]: https://github.com/yannickcr/eslint-plugin-react/issues/1395 [#1417]: https://github.com/yannickcr/eslint-plugin-react/issues/1417 [#1518]: https://github.com/yannickcr/eslint-plugin-react/pull/1518 [#1521]: https://github.com/yannickcr/eslint-plugin-react/issues/1521 [#1517]: https://github.com/yannickcr/eslint-plugin-react/issues/1517 [#1499]: https://github.com/yannickcr/eslint-plugin-react/issues/1499 [#1507]: https://github.com/yannickcr/eslint-plugin-react/pull/1507 [#1246]: https://github.com/yannickcr/eslint-plugin-react/issues/1246 [#1438]: https://github.com/yannickcr/eslint-plugin-react/pull/1438 [#1464]: https://github.com/yannickcr/eslint-plugin-react/pull/1464 [#1494]: https://github.com/yannickcr/eslint-plugin-react/pull/1494 [#1467]: https://github.com/yannickcr/eslint-plugin-react/pull/1467 [#1512]: https://github.com/yannickcr/eslint-plugin-react/pull/1512 [#1423]: https://github.com/yannickcr/eslint-plugin-react/pull/1423 [#1500]: https://github.com/yannickcr/eslint-plugin-react/pull/1500 [#1514]: https://github.com/yannickcr/eslint-plugin-react/pull/1514 [#1502]: https://github.com/yannickcr/eslint-plugin-react/pull/1502 [#1508]: https://github.com/yannickcr/eslint-plugin-react/pull/1508 [#1526]: https://github.com/yannickcr/eslint-plugin-react/pull/1526 [#1398]: https://github.com/yannickcr/eslint-plugin-react/pull/1398 [#1450]: https://github.com/yannickcr/eslint-plugin-react/pull/1450 ## [7.4.0] - 2017-09-24 ### Added * Add Flow 0.53 support ([#1376][] @jseminck) * Add [`jsx-curly-brace-presence`][] rule ([#1310][] @jackyho112) * Add support for Flow IntersectionTypeAnnotation to [`prop-types`][] and [`no-unused-prop-types`][] ([#1364][] [#1323][] @jseminck) * Add support for Flow TypedArgument to [`no-unused-prop-types`][] ([#1412][] @jseminck) * Add support for Flow ClassExpressions to [`prop-types`][] ([#1400][] @jseminck) * Add support for Flow read-only props to [`no-unused-prop-types`][] ([#1388][] @jseminck) * Add more tests for [`prop-types`][] and [`no-unused-prop-types`][] ([#1381][] @DianaSuvorova) * Add support for increment and decrement operations to [`no-direct-mutation-state`][] ([#1386][] @zpao) ### Fixed * Fix [`no-unused-state`][] to ignore computed property keys ([#1361][] @jackyho112) * Fix [`no-typos`][] crash ([#1406][] @jseminck) * Fix [`boolean-prop-naming`][] crash ([#1409][] @EvHaus) * Fix [`prop-types`][] and [`no-unused-prop-types`][] crash with IntersectionTypeAnnotation ([#1413][] @jseminck) ### Changed * Documentation improvements ([#1392][] @xcatliu, [#1403][] @piperchester, [#1432][] @jneuendorf) [7.4.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.3.0...v7.4.0 [#1376]: https://github.com/yannickcr/eslint-plugin-react/issues/1376 [#1310]: https://github.com/yannickcr/eslint-plugin-react/issues/1310 [#1364]: https://github.com/yannickcr/eslint-plugin-react/issues/1364 [#1323]: https://github.com/yannickcr/eslint-plugin-react/issues/1323 [#1412]: https://github.com/yannickcr/eslint-plugin-react/pull/1412 [#1400]: https://github.com/yannickcr/eslint-plugin-react/pull/1400 [#1388]: https://github.com/yannickcr/eslint-plugin-react/issues/1388 [#1381]: https://github.com/yannickcr/eslint-plugin-react/pull/1381 [#1361]: https://github.com/yannickcr/eslint-plugin-react/issues/1361 [#1406]: https://github.com/yannickcr/eslint-plugin-react/pull/1406 [#1409]: https://github.com/yannickcr/eslint-plugin-react/pull/1409 [#1392]: https://github.com/yannickcr/eslint-plugin-react/pull/1392 [#1403]: https://github.com/yannickcr/eslint-plugin-react/pull/1403 [#1386]: https://github.com/yannickcr/eslint-plugin-react/issues/1386 [#1413]: https://github.com/yannickcr/eslint-plugin-react/issues/1413 [#1432]: https://github.com/yannickcr/eslint-plugin-react/pull/1432 ## [7.3.0] - 2017-08-21 ### Added * Add checks for `propTypes`, `contextTypes` and `childContextTypes` to [`no-typos`][] ([#213][] @DianaSuvorova) ### Fixed * Fix [`boolean-prop-naming`][] crash ([#1369][] @EvHaus) * Fix [`no-typos`][] crash ([#1353][] @jseminck) * Fix [`require-default-props`][] stopping when it finds a component without props ([#1380][] @brgibson) * Fix [`no-direct-mutation-state`][] detection with nested components ([#1382][]) ### Changed * Documentation improvements ([#1383][] @mjomble) [7.3.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.2.1...v7.3.0 [#213]: https://github.com/yannickcr/eslint-plugin-react/issues/213 [#1369]: https://github.com/yannickcr/eslint-plugin-react/issues/1369 [#1353]: https://github.com/yannickcr/eslint-plugin-react/issues/1353 [#1380]: https://github.com/yannickcr/eslint-plugin-react/pull/1380 [#1382]: https://github.com/yannickcr/eslint-plugin-react/issues/1382 [#1383]: https://github.com/yannickcr/eslint-plugin-react/pull/1383 ## [7.2.1] - 2017-08-14 ### Fixed * Fix [`forbid-prop-types`][] crash on identifiers ([#1352][] @ljharb) * Fix [`boolean-prop-naming`][] crash with propTypes wrapper ([#1354][] @dustinsoftware) * Fix [`prop-types`][] false positive with local variable `props` ([#1288][] @DianaSuvorova) * Fix wrapped propTypes detection ([#1366][]) ### Changed * Documentation improvements ([#1123][] @penx) [7.2.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.2.0...v7.2.1 [#1352]: https://github.com/yannickcr/eslint-plugin-react/issues/1352 [#1354]: https://github.com/yannickcr/eslint-plugin-react/issues/1354 [#1288]: https://github.com/yannickcr/eslint-plugin-react/issues/1288 [#1366]: https://github.com/yannickcr/eslint-plugin-react/issues/1366 [#1123]: https://github.com/yannickcr/eslint-plugin-react/issues/1123 ## [7.2.0] - 2017-08-09 ### Added * Add [`no-unused-state`][] rule ([#1103][] @wbinnssmith) * Add [`boolean-prop-naming`][] rule ([#1264][] @EvHaus) * Add [`no-typos`][] rule ([#1189][] @jseminck, [#1294][] @haridusenadeera) * Add auto fix for [`jsx-sort-props`][] ([#1273][] @Overload119) * Add `getters` and `setters` groups to [`sort-comp`][] ([#100][] @RDGthree) * Add `noStrings` option to [`jsx-no-literals`][] ([#1202][] @deecewan) * Add inverse option for `always`/`never` to [`jsx-boolean-value`][] ([#1249][] @ljharb) ### Fixed * Fix [`no-direct-mutation-state`][] to disallow `this.state` mutation in constructor ([#832][] @burabure) * Fix [`jsx-no-target-blank`][] crash on empty `rel` attribute ([#1269][] @dustinsoftware) * Fix [`sort-comp`][] component detection with `ClassExpression` ([#1076][] @webOS101) * Fix [`no-unused-prop-types`][] detection with async class properties and methods ([#1053][] @benstepp) * Fix [`void-dom-elements-no-children`][] crash ([#1226][] @kokobeware) * Fix [`no-danger-with-children`][] to ignore line breaks ([#1262][]) * Fix [`no-danger-with-children`][] crash with undefined ([#1287][]) * Fix [`jsx-no-target-blank`][] crash ([#1296][] @jseminck) * Fix [`no-unused-prop-types`][] to no longer ignore components with no used props ([#1303][] @DianaSuvorova) * Fix [`jsx-no-duplicate-props`][] crash ([#969][] @marcelmokos) * Fix [`jsx-no-literals`][] false positives ([#1301][] @davidyorr) * Fix [`no-find-dom-node`][] detection with named imports ([#785][] @Hypnosphi) * Fix proTypes-related rules detection with wrapped propTypes ([#1266][] @dustinsoftware) * Fix [`no-unused-prop-types`][] detection with propTypes wrapped in a function ([#1253][] @dustinsoftware) * Fix [`no-unused-prop-types`][] detection with destructured use of properties ([#816][] @DianaSuvorova) * Fix [`no-unused-prop-types`][] detection with inline functions ([#1309][] @DianaSuvorova) * Fix [`no-unused-prop-types`][] `skipShapeProps` option with Flow annotations ([#1335][] @DianaSuvorova) * Fix [`jsx-curly-spacing`][] schema incompatibility with ESLint 4.2.0 ([#1290][] @jseminck) ### Changed * Documentation improvements ([#1261][] @mminer, [#1005][] @yooungt13, [#1289][] @konekoya, [#1308][] @xcatliu, [#1306][] @egberts, [#1329][] [#1344][] @DianaSuvorova) * ES6-ify codebase ([#1274][] [#1277][] [#1281][] @dfilipidisz) * Code refactoring (@ljharb) * Update Travis CI and AppVeyor CI configurations (@lencioni) [7.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.1.0...v7.2.0 [#1103]: https://github.com/yannickcr/eslint-plugin-react/pull/1103 [#1273]: https://github.com/yannickcr/eslint-plugin-react/pull/1273 [#1264]: https://github.com/yannickcr/eslint-plugin-react/pull/1264 [#1189]: https://github.com/yannickcr/eslint-plugin-react/issues/1189 [#1294]: https://github.com/yannickcr/eslint-plugin-react/pull/1294 [#100]: https://github.com/yannickcr/eslint-plugin-react/issues/100 [#1202]: https://github.com/yannickcr/eslint-plugin-react/pull/1202 [#1249]: https://github.com/yannickcr/eslint-plugin-react/issues/1249 [#832]: https://github.com/yannickcr/eslint-plugin-react/issues/832 [#1269]: https://github.com/yannickcr/eslint-plugin-react/issues/1269 [#1076]: https://github.com/yannickcr/eslint-plugin-react/issues/1076 [#1053]: https://github.com/yannickcr/eslint-plugin-react/issues/1053 [#1226]: https://github.com/yannickcr/eslint-plugin-react/pull/1226 [#1262]: https://github.com/yannickcr/eslint-plugin-react/issues/1262 [#1287]: https://github.com/yannickcr/eslint-plugin-react/issues/1287 [#1296]: https://github.com/yannickcr/eslint-plugin-react/issues/1296 [#1303]: https://github.com/yannickcr/eslint-plugin-react/pull/1303 [#969]: https://github.com/yannickcr/eslint-plugin-react/issues/969 [#1301]: https://github.com/yannickcr/eslint-plugin-react/issues/1301 [#785]: https://github.com/yannickcr/eslint-plugin-react/issues/785 [#1266]: https://github.com/yannickcr/eslint-plugin-react/issues/1266 [#1253]: https://github.com/yannickcr/eslint-plugin-react/pull/1253 [#816]: https://github.com/yannickcr/eslint-plugin-react/issues/816 [#1309]: https://github.com/yannickcr/eslint-plugin-react/issues/1309 [#1261]: https://github.com/yannickcr/eslint-plugin-react/pull/1261 [#1005]: https://github.com/yannickcr/eslint-plugin-react/pull/1005 [#1289]: https://github.com/yannickcr/eslint-plugin-react/pull/1289 [#1308]: https://github.com/yannickcr/eslint-plugin-react/pull/1308 [#1306]: https://github.com/yannickcr/eslint-plugin-react/issues/1306 [#1329]: https://github.com/yannickcr/eslint-plugin-react/pull/1329 [#1274]: https://github.com/yannickcr/eslint-plugin-react/pull/1274 [#1277]: https://github.com/yannickcr/eslint-plugin-react/pull/1277 [#1281]: https://github.com/yannickcr/eslint-plugin-react/pull/1281 [#1335]: https://github.com/yannickcr/eslint-plugin-react/issues/1335 [#1344]: https://github.com/yannickcr/eslint-plugin-react/pull/1344 [#1290]: https://github.com/yannickcr/eslint-plugin-react/pull/1290 ## [7.1.0] - 2017-06-13 ### Added * Add [`default-props-match-prop-types`][] rule ([#1022][] @webOS101) * Add [`no-redundant-should-component-update`][] rule ([#985][] @jomasti) * Add [`jsx-closing-tag-location`][] rule ([#1206][] @rsolomon) * Add auto fix for [`jsx-max-props-per-line`][] ([#949][] @snowypowers) * Add support for lifecycle methods with `nextProps`/`prevProps` in [`no-unused-prop-types`][] ([#1213][] @jseminck) * Add Flow SuperTypeParameters support to [`prop-types`][] ([#1236][] @gpeal) * Add `children` option to [`jsx-curly-spacing`][] ([#857][] @fatfisz) ### Fixed * Fix [`prefer-stateless-function`][] `ignorePureComponents` option when using class expressions ([#1122][] @dreid) * Fix [`void-dom-elements-no-children`][] crash ([#1195][] @oliviertassinari) * Fix [`require-default-props`][] quoted `defaultProps` detection ([#1201][]) * Fix [`jsx-sort-props`][] bug with `ignoreCase` and `callbacksLast` options set to `true` ([#1175][] @jseminck) * Fix [`no-unused-prop-types`][] false positive ([#1183][] [#1135][] @jseminck) * Fix [`jsx-no-target-blank`][] to not issue errors for non-external URLs ([#1216][] @gfx) * Fix [`prop-types`][] quoted Flow types detection ([#1132][] @ethanjgoldberg) * Fix [`no-array-index-key`][] crash with `key` without value ([#1242][] @jseminck) ### Changed * Set ESLint 4.0.0 as valid peerDependency * Dead code removal ([#1227][] @jseminck) * Update dependencies (@ljharb) * Documentation improvements ([#1071][] @adnasa, [#1199][] @preco21, [#1222][] @alexilyaev, [#1231][] @vonovak, [#1239][] @webOS101, [#1241][] @102) [7.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.0.1...v7.1.0 [#1022]: https://github.com/yannickcr/eslint-plugin-react/issues/1022 [#949]: https://github.com/yannickcr/eslint-plugin-react/pull/949 [#985]: https://github.com/yannickcr/eslint-plugin-react/issues/985 [#1213]: https://github.com/yannickcr/eslint-plugin-react/issues/1213 [#1236]: https://github.com/yannickcr/eslint-plugin-react/pull/1236 [#1206]: https://github.com/yannickcr/eslint-plugin-react/issues/1206 [#857]: https://github.com/yannickcr/eslint-plugin-react/issues/857 [#1122]: https://github.com/yannickcr/eslint-plugin-react/pull/1122 [#1195]: https://github.com/yannickcr/eslint-plugin-react/pull/1195 [#1201]: https://github.com/yannickcr/eslint-plugin-react/issues/1201 [#1175]: https://github.com/yannickcr/eslint-plugin-react/issues/1175 [#1183]: https://github.com/yannickcr/eslint-plugin-react/issues/1183 [#1135]: https://github.com/yannickcr/eslint-plugin-react/issues/1135 [#1216]: https://github.com/yannickcr/eslint-plugin-react/pull/1216 [#1132]: https://github.com/yannickcr/eslint-plugin-react/pull/1132 [#1242]: https://github.com/yannickcr/eslint-plugin-react/issues/1242 [#1227]: https://github.com/yannickcr/eslint-plugin-react/pull/1227 [#1071]: https://github.com/yannickcr/eslint-plugin-react/pull/1071 [#1199]: https://github.com/yannickcr/eslint-plugin-react/pull/1199 [#1222]: https://github.com/yannickcr/eslint-plugin-react/pull/1222 [#1231]: https://github.com/yannickcr/eslint-plugin-react/pull/1231 [#1239]: https://github.com/yannickcr/eslint-plugin-react/pull/1239 [#1241]: https://github.com/yannickcr/eslint-plugin-react/pull/1241 ## [7.0.1] - 2017-05-13 ### Fixed * Fix [`jsx-curly-spacing`][] `allowMultiline` option being undefined in some cases ([#1179][] @fatfisz) * Fix [`jsx-curly-spacing`][] newline with object literals bug ([#1180][] @fatfisz) * Fix [`prop-types`][] to not mark class static function as valid propTypes definition ([#1174][]) * Fix [`prop-types`][] crash with Flow spread operator ([#1178][]) * Fix [`void-dom-elements-no-children`][] crash on faulty `createElement` detection ([#1101][]) * Fix [`require-default-props`][] error message for quoted props ([#1161][]) ### Changed * Update dependencies * Documentation improvements ([#1173][] @luftywiranda13, [#1192][] @markus-willems) [7.0.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.0.0...v7.0.1 [#1179]: https://github.com/yannickcr/eslint-plugin-react/pull/1179 [#1180]: https://github.com/yannickcr/eslint-plugin-react/pull/1180 [#1174]: https://github.com/yannickcr/eslint-plugin-react/issues/1174 [#1178]: https://github.com/yannickcr/eslint-plugin-react/issues/1178 [#1101]: https://github.com/yannickcr/eslint-plugin-react/issues/1101 [#1161]: https://github.com/yannickcr/eslint-plugin-react/issues/1161 [#1173]: https://github.com/yannickcr/eslint-plugin-react/pull/1173 [#1192]: https://github.com/yannickcr/eslint-plugin-react/pull/1192 ## [7.0.0] - 2017-05-06 ### Added * Add [`no-will-update-set-state`][] rule ([#1139][] @ManThursday) * Add import and destructuring support to [`no-deprecated`][] * Add `reservedFirst` option to [`jsx-sort-props`][] ([#1134][] @MatthewHerbst) ### Breaking * Update rules for React 15.5.0: * Add warnings for `React.PropTypes` and `React.createClass` in [`no-deprecated`][] ([#1148][] @Calyhre) * Update `createClass` component factory to `createReactClass`. This is used for React component detection, if you still using `React.createClass` use the [shared settings](README.md#configuration) to specify `createClass` as component factory * Drop Node.js < 4 support ([#1038][] @ljharb) * Add [`no-danger-with-children`][] rule to recommended rules ([#748][] @ljharb) * Add [`no-string-refs`][] rule to recommended rules ([#749][] @ljharb) * Add [`jsx-key`][] rule to recommended rules ([#750][] @ljharb) * Add [`jsx-no-comment-textnodes`][] rule to recommended rules ([#751][] @ljharb) * Add [`jsx-no-target-blank`][] rule to recommended rules ([#752][] @ljharb) * Add [`no-unescaped-entities`][] rule to recommended rules ([#841][] @ljharb) * Add [`no-children-prop`][] rule to recommended rules ([#842][] @ljharb) * Remove deprecated [`wrap-multilines`][] rule, use [`jsx-wrap-multilines`][] instead * Remove deprecated [`no-comment-textnodes`][] rule, use [`jsx-no-comment-textnodes`][] instead * Remove deprecated [`require-extension`][] rule, use the [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) [`extensions`](https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/extensions.md) rule instead * Deprecate [`jsx-space-before-closing`][] rule, use the [`jsx-tag-spacing`][] rule instead. [`jsx-space-before-closing`][] still works but will trigger a warning ([#1070][] @afairb) * [`jsx-first-prop-new-line`][] default is now `multiline-multiprop` ([#802][] @kokarn) * [`jsx-wrap-multilines`][] now checks arrow functions without block body. It can be deactivated in [rule options](docs/rules/jsx-wrap-multilines.md#rule-details) ([#790][] @ColCh) * [`jsx-no-undef`][] will not check the global scope by default. You can force it with the [`allowGlobals`](docs/rules/jsx-no-undef.md#allowglobals) option ([#1013][] @jomasti) ### Fixed * Fix [`no-unused-prop-types`][] false positive with `nextProps` ([#1079][] @Kerumen) * Fix [`prefer-stateless-function`][] to not warn on classes with decorators ([#1034][] @benstepp) ### Changed * Update dependencies ([#1119][] @danez) * Documentation improvements ([#1121][] @omerzach, [#1130][] @dreid, [#1131][] @shoesandsocks, [#1149][] @Adzz, [#1151][] @MatthewHerbst, [#1167][] @Slumber86) [7.0.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.10.3...v7.0.0 [#1134]: https://github.com/yannickcr/eslint-plugin-react/pull/1134 [#1038]: https://github.com/yannickcr/eslint-plugin-react/pull/1038 [#802]: https://github.com/yannickcr/eslint-plugin-react/pull/802 [#790]: https://github.com/yannickcr/eslint-plugin-react/issues/790 [#1013]: https://github.com/yannickcr/eslint-plugin-react/pull/1013 [#1070]: https://github.com/yannickcr/eslint-plugin-react/pull/1070 [#748]: https://github.com/yannickcr/eslint-plugin-react/issues/748 [#749]: https://github.com/yannickcr/eslint-plugin-react/issues/749 [#750]: https://github.com/yannickcr/eslint-plugin-react/issues/750 [#751]: https://github.com/yannickcr/eslint-plugin-react/issues/751 [#752]: https://github.com/yannickcr/eslint-plugin-react/issues/752 [#841]: https://github.com/yannickcr/eslint-p