You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

пре 3 година
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333
  1. # Change Log
  2. All notable changes to this project will be documented in this file.
  3. This project adheres to [Semantic Versioning](http://semver.org/).
  4. This change log adheres to standards from [Keep a CHANGELOG](http://keepachangelog.com).
  5. ## [7.11.1] - 2018-08-14
  6. ### Fixed
  7. * stop crashing when assigning to propTypes ([#1932][], @alexzherdev)
  8. ### Changed
  9. * Fix changelog links ([#1926][], @ferhatelmas)
  10. * Fix changelog links ([#1929][], @alexzherdev)
  11. [#1932]: https://github.com/yannickcr/eslint-plugin-react/pull/1932
  12. [#1929]: https://github.com/yannickcr/eslint-plugin-react/pull/1929
  13. [#1926]: https://github.com/yannickcr/eslint-plugin-react/pull/1926
  14. ## [7.11.0] - 2018-08-13
  15. ### Added
  16. * [`jsx-one-expression-per-line`][]: add "allow" option ([#1924][], @alexzherdev)
  17. * [`sort-prop-types`][]: add autofix ([#1891][], @finnp)
  18. * [`jsx-no-bind`][]: Add ignoreDOMComponents option ([#1868][], @alexzherdev)
  19. * Output a warning if React version is missing in settings ([#1857][], @alexzherdev)
  20. ### Fixed
  21. * [`destructuring-assignment`][]: Ignore class properties ([#1909][], @alexzherdev)
  22. * [`destructuring-assignment`][], component detection: ignore components with confidence = 0 ([#1907][], @alexzherdev)
  23. * [`boolean-prop-naming`][]: Handle inline Flow type ([#1905][], @alexzherdev)
  24. * [`jsx-props-no-multi-spaces`][]: Handle member expressions ([#1890][], @alexzherdev)
  25. * [`sort-comp`][]: Allow methods to belong to any matching group ([#1858][], @nosilleg)
  26. * [`jsx-sort-props`][]: Fix `reservedFirst` ([#1883][], @fleischie)
  27. * [`prop-types`][]: (flow) Stop crashing on undefined or null properties ([#1860][], @nicholas-l)
  28. * [`no-unknown-property`][]: Make attribute "charset" valid ([#1863][], @silvenon)
  29. * [`no-deprecated`][]: report identifier AST node instead of the class node ([#1854][], @jsnajdr)
  30. * [`button-has-type`][]: Account for pragma ([#1851][], @alexzherdev)
  31. * [`button-has-type`][]: improve error message when an identifier is used as the value ([#1874][], @ljharb)
  32. * support JSXText nodes alongside Literal nodes (@ljharb)
  33. ### Changed
  34. * Extract propTypes detection code ([#1911][], @alexzherdev)
  35. * Fix broken links in changelog ([#1849][], @alexzherdev)
  36. * [`no-unused-state`][]: combine spread visitors (@ljharb)
  37. * [`jsx-one-expression-per-line`][]: Fix JSX Syntax in docs ([#1867][], @peter-mouland)
  38. * [`jsx-max-depth`][], [`jsx-sort-default-props`][]: add missing docs urls ([#1880][], @flyerhzm)
  39. * [`jsx-indent`][]: add test cases ([#1892][], @alexzherdev)
  40. * [`prop-types`][]: add test cases ([#1898][], @alexzherdev)
  41. * Add a helper function for determining function-like expressions ([#1914][], @alexzherdev)
  42. * [`jsx-props-no-multi-spaces`][]: update docs ([#1918][], @BenRichter)
  43. [#1924]: https://github.com/yannickcr/eslint-plugin-react/pull/1924
  44. [#1918]: https://github.com/yannickcr/eslint-plugin-react/pull/1918
  45. [#1914]: https://github.com/yannickcr/eslint-plugin-react/pull/1914
  46. [#1911]: https://github.com/yannickcr/eslint-plugin-react/pull/1911
  47. [#1909]: https://github.com/yannickcr/eslint-plugin-react/pull/1909
  48. [#1907]: https://github.com/yannickcr/eslint-plugin-react/pull/1907
  49. [#1905]: https://github.com/yannickcr/eslint-plugin-react/pull/1905
  50. [#1898]: https://github.com/yannickcr/eslint-plugin-react/pull/1898
  51. [#1892]: https://github.com/yannickcr/eslint-plugin-react/pull/1892
  52. [#1891]: https://github.com/yannickcr/eslint-plugin-react/pull/1891
  53. [#1890]: https://github.com/yannickcr/eslint-plugin-react/pull/1890
  54. [#1883]: https://github.com/yannickcr/eslint-plugin-react/pull/1883
  55. [#1880]: https://github.com/yannickcr/eslint-plugin-react/pull/1880
  56. [#1874]: https://github.com/yannickcr/eslint-plugin-react/issues/1874
  57. [#1868]: https://github.com/yannickcr/eslint-plugin-react/pull/1868
  58. [#1867]: https://github.com/yannickcr/eslint-plugin-react/pull/1867
  59. [#1863]: https://github.com/yannickcr/eslint-plugin-react/pull/1863
  60. [#1860]: https://github.com/yannickcr/eslint-plugin-react/pull/1860
  61. [#1858]: https://github.com/yannickcr/eslint-plugin-react/pull/1858
  62. [#1857]: https://github.com/yannickcr/eslint-plugin-react/pull/1857
  63. [#1854]: https://github.com/yannickcr/eslint-plugin-react/pull/1854
  64. [#1851]: https://github.com/yannickcr/eslint-plugin-react/pull/1851
  65. [#1849]: https://github.com/yannickcr/eslint-plugin-react/pull/1849
  66. ## [7.10.0] - 2018-06-24
  67. ### Added
  68. * Allow eslint ^5 ([#1843][] @papandreou, @ljharb)
  69. * [`no-unsafe`][] rule ([#1831][], [#1830][] @sergei-startsev)
  70. * [`no-will-update-set-state`][]: Account for `UNSAFE_` methods ([#1845][], [#1844][] @alexzherdev)
  71. ### Fixed
  72. * [`no-typos`][]: Fix static propTypes handling ([#1827][], [#1677][] @alexzherdev)
  73. * [`destructuring-assignment`][]: Allow LHS ([#1825][], [#1728][] @alexzherdev)
  74. * [`no-unused-prop-types`][]: Fix crash when encountering mixed union and intersection flow types ([#1806][] @yannickcr)
  75. ### Changed
  76. * Typo fixes in [`jsx-no-target-blank`][] ([#1805][] @ferhatelmas))
  77. [#1845]: https://github.com/yannickcr/eslint-plugin-react/pull/1845
  78. [#1844]: https://github.com/yannickcr/eslint-plugin-react/issues/1844
  79. [#1843]: https://github.com/yannickcr/eslint-plugin-react/pull/1843
  80. [#1831]: https://github.com/yannickcr/eslint-plugin-react/pull/1831
  81. [#1830]: https://github.com/yannickcr/eslint-plugin-react/issues/1830
  82. [#1827]: https://github.com/yannickcr/eslint-plugin-react/pull/1827
  83. [#1825]: https://github.com/yannickcr/eslint-plugin-react/pull/1825
  84. [#1806]: https://github.com/yannickcr/eslint-plugin-react/issues/1806
  85. [#1805]: https://github.com/yannickcr/eslint-plugin-react/pull/1805
  86. [#1728]: https://github.com/yannickcr/eslint-plugin-react/issues/1728
  87. [#1677]: https://github.com/yannickcr/eslint-plugin-react/issues/1677
  88. ## [7.9.1] - 2018-06-03
  89. * Nothing was fixed; this is a republish with some updated deps. ([#1804][] @ljharb)
  90. [#1804]: https://github.com/yannickcr/eslint-plugin-react/issues/1804
  91. ## [7.9.0] - 2018-06-03
  92. ### Added
  93. * Add [`jsx-props-no-multi-spaces`][] rule ([#1755][] @ThiefMaster)
  94. * Add `first` option to [`jsx-indent-props`][] ([#398][] @ThiefMaster)
  95. * Add `enforceDynamicLinks` option to [`jsx-no-target-blank`][] ([#1737][] @kenearley)
  96. ### Fixed
  97. * Fix static lifecycle methods validation in [`sort-comp`][] ([#1793][] @lynxtaa)
  98. * Fix crash in [`no-typos`][] when encountering anonymous react imports ([#1796][] @jsg2021)
  99. * Fix ESLint 3 support ([#1779][])
  100. ### Changed
  101. * Documentation improvements ([#1794][] @lencioni)
  102. * Update Travis CI configuration to test on multiple ESLint verions
  103. [7.9.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.8.2...v7.9.0
  104. [#1755]: https://github.com/yannickcr/eslint-plugin-react/pull/1755
  105. [#398]: https://github.com/yannickcr/eslint-plugin-react/issues/398
  106. [#1737]: https://github.com/yannickcr/eslint-plugin-react/issues/1737
  107. [#1793]: https://github.com/yannickcr/eslint-plugin-react/issues/1793
  108. [#1796]: https://github.com/yannickcr/eslint-plugin-react/pull/1796
  109. [#1779]: https://github.com/yannickcr/eslint-plugin-react/issues/1779
  110. [#1794]: https://github.com/yannickcr/eslint-plugin-react/pull/1794
  111. ## [7.8.2] - 2018-05-13
  112. ### Fixed
  113. * Fix crash in [`boolean-prop-naming`][] when encountering a required shape prop type ([#1791][] @pcorpet)
  114. [7.8.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.8.1...v7.8.2
  115. [#1791]: https://github.com/yannickcr/eslint-plugin-react/issues/1791
  116. ## [7.8.1] - 2018-05-12
  117. ### Fixed
  118. * Fix crash in [`no-deprecated`][] when encountering a class constructor ([#1785][] @taddei)
  119. [7.8.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.8.0...v7.8.1
  120. [#1785]: https://github.com/yannickcr/eslint-plugin-react/issues/1785
  121. ## [7.8.0] - 2018-05-11
  122. ### Added
  123. * Add support for fragments to [`react-in-jsx-scope`][] ([#1758][])
  124. * Add support for Flow generic PropType to [`require-default-props`][] ([#1724][] @Miziak)
  125. * Add component whitelist option to [`forbid-component-props`][] ([#1732][] @ThiefMaster)
  126. * Add support for React 16.3 lifecycle methods to [`no-unused-prop-types`][] ([#1681][] @bvaughn)
  127. * Add support for React 16.3 lifecycle methods to [`sort-comp`][] ([#1767][] @joe-denea)
  128. * Add support for React 16.3 lifecycle methods to [`no-typos`][]
  129. * Add support for `prevState` and `nextState` to [`no-unused-state`][] ([#1759][])
  130. * Add warnings for `componentWillMount`, `componentWillReceiveProps` and `componentWillUpdate` lifecycle methods in [`no-deprecated`][] ([#1750][] @sergei-startsev)
  131. ### Fixed
  132. * Fix [`no-typos`][] false positive on custom `PropType` classes ([#1389][] @brettdh)
  133. * Fix [`boolean-prop-naming`][] to handle required props ([#1389][] @louisscruz)
  134. * Fix [`jsx-curly-brace-presence`][] to allow whitespace JSX container ([#1717][] @sharmilajesupaul)
  135. * Fix [`jsx-no-bind`][] to handle ternary conditions ([#1722][] @gwenaellarmet)
  136. ### Changed
  137. * Documentation improvements ([#1699][] @ronanmathew, [#1743][] @ybiquitous, [#1753][] @awthwathje, [#1783][] @chentsulin, [#1703][] @ferhatelmas)
  138. [7.8.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.7.0...v7.8.0
  139. [#1758]: https://github.com/yannickcr/eslint-plugin-react/issues/1758
  140. [#1724]: https://github.com/yannickcr/eslint-plugin-react/issues/1724
  141. [#1732]: https://github.com/yannickcr/eslint-plugin-react/issues/1732
  142. [#1681]: https://github.com/yannickcr/eslint-plugin-react/pull/1681
  143. [#1767]: https://github.com/yannickcr/eslint-plugin-react/issues/1767
  144. [#1759]: https://github.com/yannickcr/eslint-plugin-react/issues/1759
  145. [#1750]: https://github.com/yannickcr/eslint-plugin-react/pull/1750
  146. [#1389]: https://github.com/yannickcr/eslint-plugin-react/issues/1389
  147. [#1717]: https://github.com/yannickcr/eslint-plugin-react/issues/1717
  148. [#1722]: https://github.com/yannickcr/eslint-plugin-react/issues/1722
  149. [#1699]: https://github.com/yannickcr/eslint-plugin-react/pull/1699
  150. [#1743]: https://github.com/yannickcr/eslint-plugin-react/pull/1743
  151. [#1753]: https://github.com/yannickcr/eslint-plugin-react/issues/1753
  152. [#1783]: https://github.com/yannickcr/eslint-plugin-react/pull/1783
  153. [#1703]: https://github.com/yannickcr/eslint-plugin-react/pull/1703
  154. ## [7.7.0] - 2018-02-19
  155. ### Added
  156. * [`forbid-foreign-prop-types`][]: add `allowInPropTypes` option ([#1655][] @iansu)
  157. * Add [`jsx-max-depth`][] rule ([#1260][] @chriswong)
  158. ### Fixed
  159. * [`no-access-state-in-setstate`][]: Exclude references to this.state in setState callback ([#1610][] @pfhayes)
  160. * [`no-danger-with-children`][]: prevent infinite loop ([#1571][] @ljharb)
  161. * [`sort-prop-types`][]: Fix sortShapeProp when shape is not an object literal ([#1669][] @justinanastos)
  162. * [`jsx-child-element-spacing`][]: fix error location ([#1666][] @pfhayes)
  163. * [`no-unused-prop-types`][]: fix for createClass ([#1675][] @yuri-sakharov)
  164. * [`prop-types`][]: include nextProps checking in shouldComponentUpdate ([#1690][] @amerryma)
  165. * [`jsx-curly-spacing`][]: refactor to fix start and end-braces in a single pass ([#1414][] @s-h-a-d-o-w)
  166. ### Changed
  167. * [`jsx-child-element-spacing`][]: add missing docs ([#1665][] @pfhayes); fix docs ([#1670][] @SammyM)
  168. [7.7.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.6.1...v7.7.0
  169. [#1690]: https://github.com/yannickcr/eslint-plugin-react/pull/1690
  170. [#1675]: https://github.com/yannickcr/eslint-plugin-react/pull/1675
  171. [#1670]: https://github.com/yannickcr/eslint-plugin-react/pull/1670
  172. [#1669]: https://github.com/yannickcr/eslint-plugin-react/pull/1669
  173. [#1666]: https://github.com/yannickcr/eslint-plugin-react/pull/1666
  174. [#1665]: https://github.com/yannickcr/eslint-plugin-react/pull/1665
  175. [#1655]: https://github.com/yannickcr/eslint-plugin-react/pull/1655
  176. [#1610]: https://github.com/yannickcr/eslint-plugin-react/pull/1610
  177. [#1414]: https://github.com/yannickcr/eslint-plugin-react/pull/1414
  178. [#1260]: https://github.com/yannickcr/eslint-plugin-react/pull/1260
  179. [#1571]: https://github.com/yannickcr/eslint-plugin-react/issues/1571
  180. ## [7.6.1] - 2018-01-28
  181. ### Fixed
  182. * Flow: fix crash in [`prop-types`][] with recursive type annotations ([#1653][] @jetpacmonkey)
  183. * Fix [`no-unknown-property`][] to properly recognize `crossOrigin` instead of `crossorigin`, and allow it on `link` tags. ([#1659][] @jzDev)
  184. * Fix [`no-access-state-in-setstate`][] to handle object spread ([#1657][] @ljharb)
  185. [7.6.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.6.0...v7.6.1
  186. [#1659]: https://github.com/yannickcr/eslint-plugin-react/pull/1659
  187. [#1657]: https://github.com/yannickcr/eslint-plugin-react/issues/1657
  188. [#1653]: https://github.com/yannickcr/eslint-plugin-react/pull/1653
  189. ## [7.6.0] - 2018-01-25
  190. ### Added
  191. * Add [`forbid-dom-props`][] rule ([#1562][] @davazp)
  192. * Add [`jsx-child-element-spacing`][] rule ([#1515][] @pfhayes)
  193. * Add [`no-this-in-sfc`][] rule ([#1435][] @jomasti)
  194. * Add [`jsx-sort-default-props`][] rule ([#281][] @b0gok)
  195. * Add `message` option to [`boolean-prop-naming`][] ([#1588][] @louisscruz)
  196. * Add `beforeClosing` option to [`jsx-tag-spacing`][] ([#1396][] @cjskillingstad)
  197. * Add `instance-methods` and `instance-variables` to [`sort-comp`][] ([#599][] @RDGthree)
  198. * Add `propWrapperFunctions` support for [`boolean-prop-naming`][] ([#1478][] @jomasti)
  199. * Add warning for `React.addons.TestUtils` in [`no-deprecated`][] ([#1644][] @nirnaor)
  200. * Add URL to rule documentation to the rules metadata ([#1635][] @Arcanemagus)
  201. ### Fixed
  202. * Fix crashes in [`no-access-state-in-setstate`][] ([#1559][] @jomasti, [#1611][] @pfhayes)
  203. * Fix crash in [`require-optimization`][] when encountering arrays with empty items as values in object ([#1621][] @kamataryo)
  204. * Fix crash in [`no-unused-prop-types`][] when passing an empty function as a PropType ([#1542][] [#1581][] @kevinzwhuang)
  205. * Fix crash in [`no-typos`][] when using `PropType.shape` without arguments ([#1471][] @mrichmond)
  206. * Fix crash when using Unions in flow propTypes ([#1468][] @justinanastos)
  207. * Fix missing meta in [`jsx-tag-spacing`][] ([#1650][] @flyerhzm)
  208. * Fix [`no-unused-state`][] to detect usage of `this.state` as an object ([#1572][])
  209. * Fix [`no-access-state-in-setstate`][] to detect when the `state` variable is destructured from `this.state` ([#1597][] @jaaberg)
  210. * Fix [`jsx-no-literals`][] to correctly find string literals part of BinaryExpressions ([#1511][] @jaaberg)
  211. * Fix [`no-typos`][] false positive on custom propTypes with isRequired ([#1607][] @lfades)
  212. * Fix [`prop-types`][] to check for `nextProps` in `componentWillReceiveProps` ([#1636][] @xjmdoo)
  213. * Fix [`no-unknown-property`][] to not pascal-casing `crossorigin` attribute and only allow it on script/img/video ([#1642][] @ljharb)
  214. ### Changed
  215. * Improve [`jsx-wrap-multilines`][] auto fix ([#1576][] @sharmilajesupaul)
  216. * Export `defaultConfig` from [`sort-comp`][] rule for programmatic use ([#1578][] @Andarist)
  217. * Documentation improvements ([#1552][] @TSMMark, [#1566][] @lukeapage, [#1624][] @alexilyaev, @ljharb)
  218. * Update dependencies (@ljharb)
  219. [7.6.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.5.1...v7.6.0
  220. [#1562]: https://github.com/yannickcr/eslint-plugin-react/pull/1562
  221. [#1515]: https://github.com/yannickcr/eslint-plugin-react/issues/1515
  222. [#1435]: https://github.com/yannickcr/eslint-plugin-react/issues/1435
  223. [#281]: https://github.com/yannickcr/eslint-plugin-react/issues/281
  224. [#1588]: https://github.com/yannickcr/eslint-plugin-react/pull/1588
  225. [#1396]: https://github.com/yannickcr/eslint-plugin-react/issues/1396
  226. [#599]: https://github.com/yannickcr/eslint-plugin-react/issues/599
  227. [#1478]: https://github.com/yannickcr/eslint-plugin-react/pull/1478
  228. [#1644]: https://github.com/yannickcr/eslint-plugin-react/issues/1644
  229. [#1635]: https://github.com/yannickcr/eslint-plugin-react/pull/1635
  230. [#1559]: https://github.com/yannickcr/eslint-plugin-react/issues/1559
  231. [#1611]: https://github.com/yannickcr/eslint-plugin-react/pull/1611
  232. [#1621]: https://github.com/yannickcr/eslint-plugin-react/pull/1621
  233. [#1542]: https://github.com/yannickcr/eslint-plugin-react/issues/1542
  234. [#1581]: https://github.com/yannickcr/eslint-plugin-react/issues/1581
  235. [#1471]: https://github.com/yannickcr/eslint-plugin-react/issues/1471
  236. [#1468]: https://github.com/yannickcr/eslint-plugin-react/issues/1468
  237. [#1650]: https://github.com/yannickcr/eslint-plugin-react/pull/1650
  238. [#1572]: https://github.com/yannickcr/eslint-plugin-react/issues/1572
  239. [#1597]: https://github.com/yannickcr/eslint-plugin-react/issues/1597
  240. [#1511]: https://github.com/yannickcr/eslint-plugin-react/issues/1511
  241. [#1607]: https://github.com/yannickcr/eslint-plugin-react/issues/1607
  242. [#1636]: https://github.com/yannickcr/eslint-plugin-react/issues/1636
  243. [#1642]: https://github.com/yannickcr/eslint-plugin-react/issues/1642
  244. [#1576]: https://github.com/yannickcr/eslint-plugin-react/pull/1576
  245. [#1578]: https://github.com/yannickcr/eslint-plugin-react/pull/1578
  246. [#1552]: https://github.com/yannickcr/eslint-plugin-react/pull/1552
  247. [#1566]: https://github.com/yannickcr/eslint-plugin-react/pull/1566
  248. [#1624]: https://github.com/yannickcr/eslint-plugin-react/pull/1624
  249. ## [7.5.1] - 2017-11-19
  250. ### Fixed
  251. * Fix [`jsx-no-bind`][] crash ([#1543][] @jomasti)
  252. * Fix [`no-unused-prop-types`][] crash ([#1542][] @jomasti)
  253. ### Changed
  254. * Documentation improvements ([#1546][] @jseminck)
  255. [7.5.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.5.0...v7.5.1
  256. [#1543]: https://github.com/yannickcr/eslint-plugin-react/issues/1543
  257. [#1542]: https://github.com/yannickcr/eslint-plugin-react/issues/1542
  258. [#1546]: https://github.com/yannickcr/eslint-plugin-react/issues/1546
  259. ## [7.5.0] - 2017-11-18
  260. ### Added
  261. * Add [`jsx-one-expression-per-line`][] rule ([#1497][] @TSMMark)
  262. * Add [`destructuring-assignment`][] rule ([#1462][] @DianaSuvorova)
  263. * Add [`no-access-state-in-setstate`][] rule ([#1374][] @jaaberg)
  264. * Add [`button-has-type`][] rule ([#1525][] @Hypnosphi)
  265. * Add warnings for `React.DOM` factories in [`no-deprecated`][] ([#1530][] @backjo)
  266. * Add `sortShapeProp` option to [`sort-prop-types`][] ([#1476][] @jomasti)
  267. * Add `parens-new-line` option to [`jsx-wrap-multilines`][] ([#1475][] @jomasti)
  268. * Add `checkContextTypes` and `checkChildContextTypes` options to [`forbid-prop-types`][] ([#1533][] @jomasti)
  269. * Add `forbidDefaultForRequired ` option to [`require-default-props`][] ([#1524][] @jomasti)
  270. * Add new nodes support to [`jsx-wrap-multilines`][] ([#1384][] @evgeny-petukhov)
  271. ### Fixed
  272. * Fix [`jsx-curly-brace-presence`][] auto fix by bailing out when some chars exist ([#1479][] [#1449][] @jackyho112)
  273. * Fix [`boolean-prop-naming`][] crash with Object spread ([#1485][] @track0x1)
  274. * Fix [`no-unused-state`][] to correctly handle arrow function class method ([#1363][] @jackyho112)
  275. * Fix incompatibility with [`typescript-eslint-parser`](https://github.com/eslint/typescript-eslint-parser) ([#1496][] @timothykang)
  276. * Fix [`jsx-no-bind`][] to only warn for props and account for variable declaration ([#1444][] [#1395][] [#1417][] @jackyho112)
  277. * Fix [`no-unused-prop-types`][] to handle props usage in custom prop validators ([#1518][] @petersendidit)
  278. * Fix [`prefer-stateless-function`][] to account for `contextTypes` and `defaultProps` ([#1521][] @jomasti)
  279. * Fix [`jsx-no-comment-textnodes`][] to not warn when using two slashes via html entities at the beginning of a literal ([#1517][] @jomasti)
  280. * Fix [`default-props-match-prop-types`][] crash ([#1499][] @jomasti)
  281. * Fix [`no-unused-prop-types`][] to handle props used in the `setState` update callback ([#1507][] @petersendidit)
  282. * Fix alignment bug in [`jsx-indent`][] ([#1246][] @jseminck)
  283. ### Changed
  284. * Documentation improvements ([#1438][] @jseminck, [#1464][] @AlaaAttya, [#1494][] @piperchester, [#1467][] @felicio, [#1512][] @adam-golab)
  285. * Code refactoring ([#1423][] [#1398][] @jseminck, [#1500][] [#1514][] @Aladdin-ADD, [#1502][] @SimenB, [#1508][] [#1526][] @jomasti, @ljharb)
  286. * Update dependencies ([#1450][] @leebyron, @ljharb)
  287. [7.5.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.4.0...v7.5.0
  288. [#1497]: https://github.com/yannickcr/eslint-plugin-react/pull/1497
  289. [#1462]: https://github.com/yannickcr/eslint-plugin-react/pull/1462
  290. [#1374]: https://github.com/yannickcr/eslint-plugin-react/pull/1374
  291. [#1525]: https://github.com/yannickcr/eslint-plugin-react/pull/1525
  292. [#1530]: https://github.com/yannickcr/eslint-plugin-react/pull/1530
  293. [#1476]: https://github.com/yannickcr/eslint-plugin-react/issues/1476
  294. [#1475]: https://github.com/yannickcr/eslint-plugin-react/pull/1475
  295. [#1533]: https://github.com/yannickcr/eslint-plugin-react/pull/1533
  296. [#1524]: https://github.com/yannickcr/eslint-plugin-react/issues/1524
  297. [#1384]: https://github.com/yannickcr/eslint-plugin-react/pull/1384
  298. [#1479]: https://github.com/yannickcr/eslint-plugin-react/issues/1479
  299. [#1449]: https://github.com/yannickcr/eslint-plugin-react/issues/1449
  300. [#1485]: https://github.com/yannickcr/eslint-plugin-react/pull/1485
  301. [#1363]: https://github.com/yannickcr/eslint-plugin-react/issues/1363
  302. [#1496]: https://github.com/yannickcr/eslint-plugin-react/pull/1496
  303. [#1444]: https://github.com/yannickcr/eslint-plugin-react/issues/1444
  304. [#1395]: https://github.com/yannickcr/eslint-plugin-react/issues/1395
  305. [#1417]: https://github.com/yannickcr/eslint-plugin-react/issues/1417
  306. [#1518]: https://github.com/yannickcr/eslint-plugin-react/pull/1518
  307. [#1521]: https://github.com/yannickcr/eslint-plugin-react/issues/1521
  308. [#1517]: https://github.com/yannickcr/eslint-plugin-react/issues/1517
  309. [#1499]: https://github.com/yannickcr/eslint-plugin-react/issues/1499
  310. [#1507]: https://github.com/yannickcr/eslint-plugin-react/pull/1507
  311. [#1246]: https://github.com/yannickcr/eslint-plugin-react/issues/1246
  312. [#1438]: https://github.com/yannickcr/eslint-plugin-react/pull/1438
  313. [#1464]: https://github.com/yannickcr/eslint-plugin-react/pull/1464
  314. [#1494]: https://github.com/yannickcr/eslint-plugin-react/pull/1494
  315. [#1467]: https://github.com/yannickcr/eslint-plugin-react/pull/1467
  316. [#1512]: https://github.com/yannickcr/eslint-plugin-react/pull/1512
  317. [#1423]: https://github.com/yannickcr/eslint-plugin-react/pull/1423
  318. [#1500]: https://github.com/yannickcr/eslint-plugin-react/pull/1500
  319. [#1514]: https://github.com/yannickcr/eslint-plugin-react/pull/1514
  320. [#1502]: https://github.com/yannickcr/eslint-plugin-react/pull/1502
  321. [#1508]: https://github.com/yannickcr/eslint-plugin-react/pull/1508
  322. [#1526]: https://github.com/yannickcr/eslint-plugin-react/pull/1526
  323. [#1398]: https://github.com/yannickcr/eslint-plugin-react/pull/1398
  324. [#1450]: https://github.com/yannickcr/eslint-plugin-react/pull/1450
  325. ## [7.4.0] - 2017-09-24
  326. ### Added
  327. * Add Flow 0.53 support ([#1376][] @jseminck)
  328. * Add [`jsx-curly-brace-presence`][] rule ([#1310][] @jackyho112)
  329. * Add support for Flow IntersectionTypeAnnotation to [`prop-types`][] and [`no-unused-prop-types`][] ([#1364][] [#1323][] @jseminck)
  330. * Add support for Flow TypedArgument to [`no-unused-prop-types`][] ([#1412][] @jseminck)
  331. * Add support for Flow ClassExpressions to [`prop-types`][] ([#1400][] @jseminck)
  332. * Add support for Flow read-only props to [`no-unused-prop-types`][] ([#1388][] @jseminck)
  333. * Add more tests for [`prop-types`][] and [`no-unused-prop-types`][] ([#1381][] @DianaSuvorova)
  334. * Add support for increment and decrement operations to [`no-direct-mutation-state`][] ([#1386][] @zpao)
  335. ### Fixed
  336. * Fix [`no-unused-state`][] to ignore computed property keys ([#1361][] @jackyho112)
  337. * Fix [`no-typos`][] crash ([#1406][] @jseminck)
  338. * Fix [`boolean-prop-naming`][] crash ([#1409][] @EvHaus)
  339. * Fix [`prop-types`][] and [`no-unused-prop-types`][] crash with IntersectionTypeAnnotation ([#1413][] @jseminck)
  340. ### Changed
  341. * Documentation improvements ([#1392][] @xcatliu, [#1403][] @piperchester, [#1432][] @jneuendorf)
  342. [7.4.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.3.0...v7.4.0
  343. [#1376]: https://github.com/yannickcr/eslint-plugin-react/issues/1376
  344. [#1310]: https://github.com/yannickcr/eslint-plugin-react/issues/1310
  345. [#1364]: https://github.com/yannickcr/eslint-plugin-react/issues/1364
  346. [#1323]: https://github.com/yannickcr/eslint-plugin-react/issues/1323
  347. [#1412]: https://github.com/yannickcr/eslint-plugin-react/pull/1412
  348. [#1400]: https://github.com/yannickcr/eslint-plugin-react/pull/1400
  349. [#1388]: https://github.com/yannickcr/eslint-plugin-react/issues/1388
  350. [#1381]: https://github.com/yannickcr/eslint-plugin-react/pull/1381
  351. [#1361]: https://github.com/yannickcr/eslint-plugin-react/issues/1361
  352. [#1406]: https://github.com/yannickcr/eslint-plugin-react/pull/1406
  353. [#1409]: https://github.com/yannickcr/eslint-plugin-react/pull/1409
  354. [#1392]: https://github.com/yannickcr/eslint-plugin-react/pull/1392
  355. [#1403]: https://github.com/yannickcr/eslint-plugin-react/pull/1403
  356. [#1386]: https://github.com/yannickcr/eslint-plugin-react/issues/1386
  357. [#1413]: https://github.com/yannickcr/eslint-plugin-react/issues/1413
  358. [#1432]: https://github.com/yannickcr/eslint-plugin-react/pull/1432
  359. ## [7.3.0] - 2017-08-21
  360. ### Added
  361. * Add checks for `propTypes`, `contextTypes` and `childContextTypes` to [`no-typos`][] ([#213][] @DianaSuvorova)
  362. ### Fixed
  363. * Fix [`boolean-prop-naming`][] crash ([#1369][] @EvHaus)
  364. * Fix [`no-typos`][] crash ([#1353][] @jseminck)
  365. * Fix [`require-default-props`][] stopping when it finds a component without props ([#1380][] @brgibson)
  366. * Fix [`no-direct-mutation-state`][] detection with nested components ([#1382][])
  367. ### Changed
  368. * Documentation improvements ([#1383][] @mjomble)
  369. [7.3.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.2.1...v7.3.0
  370. [#213]: https://github.com/yannickcr/eslint-plugin-react/issues/213
  371. [#1369]: https://github.com/yannickcr/eslint-plugin-react/issues/1369
  372. [#1353]: https://github.com/yannickcr/eslint-plugin-react/issues/1353
  373. [#1380]: https://github.com/yannickcr/eslint-plugin-react/pull/1380
  374. [#1382]: https://github.com/yannickcr/eslint-plugin-react/issues/1382
  375. [#1383]: https://github.com/yannickcr/eslint-plugin-react/pull/1383
  376. ## [7.2.1] - 2017-08-14
  377. ### Fixed
  378. * Fix [`forbid-prop-types`][] crash on identifiers ([#1352][] @ljharb)
  379. * Fix [`boolean-prop-naming`][] crash with propTypes wrapper ([#1354][] @dustinsoftware)
  380. * Fix [`prop-types`][] false positive with local variable `props` ([#1288][] @DianaSuvorova)
  381. * Fix wrapped propTypes detection ([#1366][])
  382. ### Changed
  383. * Documentation improvements ([#1123][] @penx)
  384. [7.2.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.2.0...v7.2.1
  385. [#1352]: https://github.com/yannickcr/eslint-plugin-react/issues/1352
  386. [#1354]: https://github.com/yannickcr/eslint-plugin-react/issues/1354
  387. [#1288]: https://github.com/yannickcr/eslint-plugin-react/issues/1288
  388. [#1366]: https://github.com/yannickcr/eslint-plugin-react/issues/1366
  389. [#1123]: https://github.com/yannickcr/eslint-plugin-react/issues/1123
  390. ## [7.2.0] - 2017-08-09
  391. ### Added
  392. * Add [`no-unused-state`][] rule ([#1103][] @wbinnssmith)
  393. * Add [`boolean-prop-naming`][] rule ([#1264][] @EvHaus)
  394. * Add [`no-typos`][] rule ([#1189][] @jseminck, [#1294][] @haridusenadeera)
  395. * Add auto fix for [`jsx-sort-props`][] ([#1273][] @Overload119)
  396. * Add `getters` and `setters` groups to [`sort-comp`][] ([#100][] @RDGthree)
  397. * Add `noStrings` option to [`jsx-no-literals`][] ([#1202][] @deecewan)
  398. * Add inverse option for `always`/`never` to [`jsx-boolean-value`][] ([#1249][] @ljharb)
  399. ### Fixed
  400. * Fix [`no-direct-mutation-state`][] to disallow `this.state` mutation in constructor ([#832][] @burabure)
  401. * Fix [`jsx-no-target-blank`][] crash on empty `rel` attribute ([#1269][] @dustinsoftware)
  402. * Fix [`sort-comp`][] component detection with `ClassExpression` ([#1076][] @webOS101)
  403. * Fix [`no-unused-prop-types`][] detection with async class properties and methods ([#1053][] @benstepp)
  404. * Fix [`void-dom-elements-no-children`][] crash ([#1226][] @kokobeware)
  405. * Fix [`no-danger-with-children`][] to ignore line breaks ([#1262][])
  406. * Fix [`no-danger-with-children`][] crash with undefined ([#1287][])
  407. * Fix [`jsx-no-target-blank`][] crash ([#1296][] @jseminck)
  408. * Fix [`no-unused-prop-types`][] to no longer ignore components with no used props ([#1303][] @DianaSuvorova)
  409. * Fix [`jsx-no-duplicate-props`][] crash ([#969][] @marcelmokos)
  410. * Fix [`jsx-no-literals`][] false positives ([#1301][] @davidyorr)
  411. * Fix [`no-find-dom-node`][] detection with named imports ([#785][] @Hypnosphi)
  412. * Fix proTypes-related rules detection with wrapped propTypes ([#1266][] @dustinsoftware)
  413. * Fix [`no-unused-prop-types`][] detection with propTypes wrapped in a function ([#1253][] @dustinsoftware)
  414. * Fix [`no-unused-prop-types`][] detection with destructured use of properties ([#816][] @DianaSuvorova)
  415. * Fix [`no-unused-prop-types`][] detection with inline functions ([#1309][] @DianaSuvorova)
  416. * Fix [`no-unused-prop-types`][] `skipShapeProps` option with Flow annotations ([#1335][] @DianaSuvorova)
  417. * Fix [`jsx-curly-spacing`][] schema incompatibility with ESLint 4.2.0 ([#1290][] @jseminck)
  418. ### Changed
  419. * Documentation improvements ([#1261][] @mminer, [#1005][] @yooungt13, [#1289][] @konekoya, [#1308][] @xcatliu, [#1306][] @egberts, [#1329][] [#1344][] @DianaSuvorova)
  420. * ES6-ify codebase ([#1274][] [#1277][] [#1281][] @dfilipidisz)
  421. * Code refactoring (@ljharb)
  422. * Update Travis CI and AppVeyor CI configurations (@lencioni)
  423. [7.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.1.0...v7.2.0
  424. [#1103]: https://github.com/yannickcr/eslint-plugin-react/pull/1103
  425. [#1273]: https://github.com/yannickcr/eslint-plugin-react/pull/1273
  426. [#1264]: https://github.com/yannickcr/eslint-plugin-react/pull/1264
  427. [#1189]: https://github.com/yannickcr/eslint-plugin-react/issues/1189
  428. [#1294]: https://github.com/yannickcr/eslint-plugin-react/pull/1294
  429. [#100]: https://github.com/yannickcr/eslint-plugin-react/issues/100
  430. [#1202]: https://github.com/yannickcr/eslint-plugin-react/pull/1202
  431. [#1249]: https://github.com/yannickcr/eslint-plugin-react/issues/1249
  432. [#832]: https://github.com/yannickcr/eslint-plugin-react/issues/832
  433. [#1269]: https://github.com/yannickcr/eslint-plugin-react/issues/1269
  434. [#1076]: https://github.com/yannickcr/eslint-plugin-react/issues/1076
  435. [#1053]: https://github.com/yannickcr/eslint-plugin-react/issues/1053
  436. [#1226]: https://github.com/yannickcr/eslint-plugin-react/pull/1226
  437. [#1262]: https://github.com/yannickcr/eslint-plugin-react/issues/1262
  438. [#1287]: https://github.com/yannickcr/eslint-plugin-react/issues/1287
  439. [#1296]: https://github.com/yannickcr/eslint-plugin-react/issues/1296
  440. [#1303]: https://github.com/yannickcr/eslint-plugin-react/pull/1303
  441. [#969]: https://github.com/yannickcr/eslint-plugin-react/issues/969
  442. [#1301]: https://github.com/yannickcr/eslint-plugin-react/issues/1301
  443. [#785]: https://github.com/yannickcr/eslint-plugin-react/issues/785
  444. [#1266]: https://github.com/yannickcr/eslint-plugin-react/issues/1266
  445. [#1253]: https://github.com/yannickcr/eslint-plugin-react/pull/1253
  446. [#816]: https://github.com/yannickcr/eslint-plugin-react/issues/816
  447. [#1309]: https://github.com/yannickcr/eslint-plugin-react/issues/1309
  448. [#1261]: https://github.com/yannickcr/eslint-plugin-react/pull/1261
  449. [#1005]: https://github.com/yannickcr/eslint-plugin-react/pull/1005
  450. [#1289]: https://github.com/yannickcr/eslint-plugin-react/pull/1289
  451. [#1308]: https://github.com/yannickcr/eslint-plugin-react/pull/1308
  452. [#1306]: https://github.com/yannickcr/eslint-plugin-react/issues/1306
  453. [#1329]: https://github.com/yannickcr/eslint-plugin-react/pull/1329
  454. [#1274]: https://github.com/yannickcr/eslint-plugin-react/pull/1274
  455. [#1277]: https://github.com/yannickcr/eslint-plugin-react/pull/1277
  456. [#1281]: https://github.com/yannickcr/eslint-plugin-react/pull/1281
  457. [#1335]: https://github.com/yannickcr/eslint-plugin-react/issues/1335
  458. [#1344]: https://github.com/yannickcr/eslint-plugin-react/pull/1344
  459. [#1290]: https://github.com/yannickcr/eslint-plugin-react/pull/1290
  460. ## [7.1.0] - 2017-06-13
  461. ### Added
  462. * Add [`default-props-match-prop-types`][] rule ([#1022][] @webOS101)
  463. * Add [`no-redundant-should-component-update`][] rule ([#985][] @jomasti)
  464. * Add [`jsx-closing-tag-location`][] rule ([#1206][] @rsolomon)
  465. * Add auto fix for [`jsx-max-props-per-line`][] ([#949][] @snowypowers)
  466. * Add support for lifecycle methods with `nextProps`/`prevProps` in [`no-unused-prop-types`][] ([#1213][] @jseminck)
  467. * Add Flow SuperTypeParameters support to [`prop-types`][] ([#1236][] @gpeal)
  468. * Add `children` option to [`jsx-curly-spacing`][] ([#857][] @fatfisz)
  469. ### Fixed
  470. * Fix [`prefer-stateless-function`][] `ignorePureComponents` option when using class expressions ([#1122][] @dreid)
  471. * Fix [`void-dom-elements-no-children`][] crash ([#1195][] @oliviertassinari)
  472. * Fix [`require-default-props`][] quoted `defaultProps` detection ([#1201][])
  473. * Fix [`jsx-sort-props`][] bug with `ignoreCase` and `callbacksLast` options set to `true` ([#1175][] @jseminck)
  474. * Fix [`no-unused-prop-types`][] false positive ([#1183][] [#1135][] @jseminck)
  475. * Fix [`jsx-no-target-blank`][] to not issue errors for non-external URLs ([#1216][] @gfx)
  476. * Fix [`prop-types`][] quoted Flow types detection ([#1132][] @ethanjgoldberg)
  477. * Fix [`no-array-index-key`][] crash with `key` without value ([#1242][] @jseminck)
  478. ### Changed
  479. * Set ESLint 4.0.0 as valid peerDependency
  480. * Dead code removal ([#1227][] @jseminck)
  481. * Update dependencies (@ljharb)
  482. * Documentation improvements ([#1071][] @adnasa, [#1199][] @preco21, [#1222][] @alexilyaev, [#1231][] @vonovak, [#1239][] @webOS101, [#1241][] @102)
  483. [7.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.0.1...v7.1.0
  484. [#1022]: https://github.com/yannickcr/eslint-plugin-react/issues/1022
  485. [#949]: https://github.com/yannickcr/eslint-plugin-react/pull/949
  486. [#985]: https://github.com/yannickcr/eslint-plugin-react/issues/985
  487. [#1213]: https://github.com/yannickcr/eslint-plugin-react/issues/1213
  488. [#1236]: https://github.com/yannickcr/eslint-plugin-react/pull/1236
  489. [#1206]: https://github.com/yannickcr/eslint-plugin-react/issues/1206
  490. [#857]: https://github.com/yannickcr/eslint-plugin-react/issues/857
  491. [#1122]: https://github.com/yannickcr/eslint-plugin-react/pull/1122
  492. [#1195]: https://github.com/yannickcr/eslint-plugin-react/pull/1195
  493. [#1201]: https://github.com/yannickcr/eslint-plugin-react/issues/1201
  494. [#1175]: https://github.com/yannickcr/eslint-plugin-react/issues/1175
  495. [#1183]: https://github.com/yannickcr/eslint-plugin-react/issues/1183
  496. [#1135]: https://github.com/yannickcr/eslint-plugin-react/issues/1135
  497. [#1216]: https://github.com/yannickcr/eslint-plugin-react/pull/1216
  498. [#1132]: https://github.com/yannickcr/eslint-plugin-react/pull/1132
  499. [#1242]: https://github.com/yannickcr/eslint-plugin-react/issues/1242
  500. [#1227]: https://github.com/yannickcr/eslint-plugin-react/pull/1227
  501. [#1071]: https://github.com/yannickcr/eslint-plugin-react/pull/1071
  502. [#1199]: https://github.com/yannickcr/eslint-plugin-react/pull/1199
  503. [#1222]: https://github.com/yannickcr/eslint-plugin-react/pull/1222
  504. [#1231]: https://github.com/yannickcr/eslint-plugin-react/pull/1231
  505. [#1239]: https://github.com/yannickcr/eslint-plugin-react/pull/1239
  506. [#1241]: https://github.com/yannickcr/eslint-plugin-react/pull/1241
  507. ## [7.0.1] - 2017-05-13
  508. ### Fixed
  509. * Fix [`jsx-curly-spacing`][] `allowMultiline` option being undefined in some cases ([#1179][] @fatfisz)
  510. * Fix [`jsx-curly-spacing`][] newline with object literals bug ([#1180][] @fatfisz)
  511. * Fix [`prop-types`][] to not mark class static function as valid propTypes definition ([#1174][])
  512. * Fix [`prop-types`][] crash with Flow spread operator ([#1178][])
  513. * Fix [`void-dom-elements-no-children`][] crash on faulty `createElement` detection ([#1101][])
  514. * Fix [`require-default-props`][] error message for quoted props ([#1161][])
  515. ### Changed
  516. * Update dependencies
  517. * Documentation improvements ([#1173][] @luftywiranda13, [#1192][] @markus-willems)
  518. [7.0.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v7.0.0...v7.0.1
  519. [#1179]: https://github.com/yannickcr/eslint-plugin-react/pull/1179
  520. [#1180]: https://github.com/yannickcr/eslint-plugin-react/pull/1180
  521. [#1174]: https://github.com/yannickcr/eslint-plugin-react/issues/1174
  522. [#1178]: https://github.com/yannickcr/eslint-plugin-react/issues/1178
  523. [#1101]: https://github.com/yannickcr/eslint-plugin-react/issues/1101
  524. [#1161]: https://github.com/yannickcr/eslint-plugin-react/issues/1161
  525. [#1173]: https://github.com/yannickcr/eslint-plugin-react/pull/1173
  526. [#1192]: https://github.com/yannickcr/eslint-plugin-react/pull/1192
  527. ## [7.0.0] - 2017-05-06
  528. ### Added
  529. * Add [`no-will-update-set-state`][] rule ([#1139][] @ManThursday)
  530. * Add import and destructuring support to [`no-deprecated`][]
  531. * Add `reservedFirst` option to [`jsx-sort-props`][] ([#1134][] @MatthewHerbst)
  532. ### Breaking
  533. * Update rules for React 15.5.0:
  534. * Add warnings for `React.PropTypes` and `React.createClass` in [`no-deprecated`][] ([#1148][] @Calyhre)
  535. * 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
  536. * Drop Node.js < 4 support ([#1038][] @ljharb)
  537. * Add [`no-danger-with-children`][] rule to recommended rules ([#748][] @ljharb)
  538. * Add [`no-string-refs`][] rule to recommended rules ([#749][] @ljharb)
  539. * Add [`jsx-key`][] rule to recommended rules ([#750][] @ljharb)
  540. * Add [`jsx-no-comment-textnodes`][] rule to recommended rules ([#751][] @ljharb)
  541. * Add [`jsx-no-target-blank`][] rule to recommended rules ([#752][] @ljharb)
  542. * Add [`no-unescaped-entities`][] rule to recommended rules ([#841][] @ljharb)
  543. * Add [`no-children-prop`][] rule to recommended rules ([#842][] @ljharb)
  544. * Remove deprecated [`wrap-multilines`][] rule, use [`jsx-wrap-multilines`][] instead
  545. * Remove deprecated [`no-comment-textnodes`][] rule, use [`jsx-no-comment-textnodes`][] instead
  546. * 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
  547. * 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)
  548. * [`jsx-first-prop-new-line`][] default is now `multiline-multiprop` ([#802][] @kokarn)
  549. * [`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)
  550. * [`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)
  551. ### Fixed
  552. * Fix [`no-unused-prop-types`][] false positive with `nextProps` ([#1079][] @Kerumen)
  553. * Fix [`prefer-stateless-function`][] to not warn on classes with decorators ([#1034][] @benstepp)
  554. ### Changed
  555. * Update dependencies ([#1119][] @danez)
  556. * Documentation improvements ([#1121][] @omerzach, [#1130][] @dreid, [#1131][] @shoesandsocks, [#1149][] @Adzz, [#1151][] @MatthewHerbst, [#1167][] @Slumber86)
  557. [7.0.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.10.3...v7.0.0
  558. [#1134]: https://github.com/yannickcr/eslint-plugin-react/pull/1134
  559. [#1038]: https://github.com/yannickcr/eslint-plugin-react/pull/1038
  560. [#802]: https://github.com/yannickcr/eslint-plugin-react/pull/802
  561. [#790]: https://github.com/yannickcr/eslint-plugin-react/issues/790
  562. [#1013]: https://github.com/yannickcr/eslint-plugin-react/pull/1013
  563. [#1070]: https://github.com/yannickcr/eslint-plugin-react/pull/1070
  564. [#748]: https://github.com/yannickcr/eslint-plugin-react/issues/748
  565. [#749]: https://github.com/yannickcr/eslint-plugin-react/issues/749
  566. [#750]: https://github.com/yannickcr/eslint-plugin-react/issues/750
  567. [#751]: https://github.com/yannickcr/eslint-plugin-react/issues/751
  568. [#752]: https://github.com/yannickcr/eslint-plugin-react/issues/752
  569. [#841]: https://github.com/yannickcr/eslint-plugin-react/issues/841
  570. [#842]: https://github.com/yannickcr/eslint-plugin-react/issues/842
  571. [#1139]: https://github.com/yannickcr/eslint-plugin-react/pull/1139
  572. [#1148]: https://github.com/yannickcr/eslint-plugin-react/pull/1148
  573. [#1079]: https://github.com/yannickcr/eslint-plugin-react/issues/1079
  574. [#1034]: https://github.com/yannickcr/eslint-plugin-react/issues/1034
  575. [#1119]: https://github.com/yannickcr/eslint-plugin-react/pull/1119
  576. [#1121]: https://github.com/yannickcr/eslint-plugin-react/pull/1121
  577. [#1130]: https://github.com/yannickcr/eslint-plugin-react/pull/1130
  578. [#1131]: https://github.com/yannickcr/eslint-plugin-react/pull/1131
  579. [#1149]: https://github.com/yannickcr/eslint-plugin-react/pull/1149
  580. [#1151]: https://github.com/yannickcr/eslint-plugin-react/pull/1151
  581. [#1167]: https://github.com/yannickcr/eslint-plugin-react/pull/1167
  582. ## [6.10.3] - 2017-03-20
  583. ### Fixed
  584. * Revert [#1057][] due to issues with [`jsx-indent`][] ([#1117][])
  585. [6.10.3]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.10.2...v6.10.3
  586. ## [6.10.2] - 2017-03-19
  587. ### Fixed
  588. * Fix [`jsx-indent`][] indentation calculation with nested JSX ([#1117][])
  589. [6.10.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.10.1...v6.10.2
  590. [#1117]: https://github.com/yannickcr/eslint-plugin-react/issues/1117
  591. ## [6.10.1] - 2017-03-19
  592. ### Fixed
  593. * Fix [`jsx-indent`][] auto fix with tabs ([#1057][] @kentcdodds @webOS101)
  594. * Fix [`jsx-indent`][] crash ([#1061][] @iancmyers)
  595. * Fix [`void-dom-elements-no-children`][] crash and fix it to only checks for a createElement call from
  596. React ([#1073][] @jomasti)
  597. * Fix component detection that caused a false positive in [`no-multi-comp`][] ([#1088][] @benstepp)
  598. [6.10.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.10.0...v6.10.1
  599. [#1057]: https://github.com/yannickcr/eslint-plugin-react/issues/1057
  600. [#1061]: https://github.com/yannickcr/eslint-plugin-react/issues/1061
  601. [#1073]: https://github.com/yannickcr/eslint-plugin-react/issues/1073
  602. [#1088]: https://github.com/yannickcr/eslint-plugin-react/issues/1088
  603. ## [6.10.0] - 2017-02-16
  604. ### Added
  605. * Add [`forbid-foreign-prop-types`][] rule ([#696][] @iancmyers)
  606. * Add [`void-dom-elements-no-children`][] rule ([#709][] @lencioni)
  607. * Add [`forbid-elements`][] rule ([#887][] @kentor)
  608. * Add `noSortAlphabetically` option to [`jsx-sort-props`][] ([#541][] [#786][] @markus101)
  609. * Add `when` option to [`jsx-max-props-per-line`][] ([#878][] @kentor)
  610. * Add support for `nextProps` to [`prop-types`][] ([#814][])
  611. ### Fixed
  612. * Fix [`require-default-props`][] crash ([#1029][])
  613. * Fix [`require-default-props`][] rule when using Flow type from assignment ([#1043][] @wyze @CarlRosell)
  614. * Fix [`style-prop-object`][] to not warn with explicit `null` or `undefined` ([#812][] @ljharb)
  615. * Fix [`no-unused-prop-types`][] props detection in stateless components ([#885][] @BarryThePenguin)
  616. * Fix [`display-name`] false positive with `document.createElement` ([#996][] @jomasti)
  617. * Fix ESLint 2 compatibility (@ljharb)
  618. ### Changed
  619. * Tests improvements (@ljharb)
  620. * Documentation improvements ([#958][] @Jorundur, [#1010][] @amilajack, [#1041][] @EvNaverniouk, [#1050][] @lencioni, [#1062][] @dguo)
  621. [6.10.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.9.0...v6.10.0
  622. [#696]: https://github.com/yannickcr/eslint-plugin-react/issues/696
  623. [#709]: https://github.com/yannickcr/eslint-plugin-react/issues/709
  624. [#887]: https://github.com/yannickcr/eslint-plugin-react/issues/887
  625. [#541]: https://github.com/yannickcr/eslint-plugin-react/issues/541
  626. [#786]: https://github.com/yannickcr/eslint-plugin-react/issues/786
  627. [#878]: https://github.com/yannickcr/eslint-plugin-react/issues/878
  628. [#814]: https://github.com/yannickcr/eslint-plugin-react/issues/814
  629. [#1029]: https://github.com/yannickcr/eslint-plugin-react/issues/1029
  630. [#1043]: https://github.com/yannickcr/eslint-plugin-react/issues/1043
  631. [#812]: https://github.com/yannickcr/eslint-plugin-react/issues/812
  632. [#885]: https://github.com/yannickcr/eslint-plugin-react/issues/885
  633. [#996]: https://github.com/yannickcr/eslint-plugin-react/issues/996
  634. [#958]: https://github.com/yannickcr/eslint-plugin-react/pull/958
  635. [#1010]: https://github.com/yannickcr/eslint-plugin-react/pull/1010
  636. [#1041]: https://github.com/yannickcr/eslint-plugin-react/pull/1041
  637. [#1050]: https://github.com/yannickcr/eslint-plugin-react/pull/1050
  638. [#1062]: https://github.com/yannickcr/eslint-plugin-react/pull/1062
  639. ## [6.9.0] - 2017-01-08
  640. ### Added
  641. * Add support for variable reference to [`sort-prop-types`][] ([#622][])
  642. ### Fixed
  643. * Fix Node.js 0.10 support ([#1000][] @ljharb)
  644. * Fix [`prop-types`][] to correctly assign props to components ([#991][])
  645. ### Changed
  646. * Documentation improvements ([#995][] @rutsky)
  647. [6.9.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.8.0...v6.9.0
  648. [#622]: https://github.com/yannickcr/eslint-plugin-react/issues/622
  649. [#1000]: https://github.com/yannickcr/eslint-plugin-react/pull/1000
  650. [#991]: https://github.com/yannickcr/eslint-plugin-react/issues/991
  651. [#995]: https://github.com/yannickcr/eslint-plugin-react/pull/995
  652. ## [6.8.0] - 2016-12-05
  653. ### Added
  654. * Add [`no-array-index-key`][] rule ([#978][] @lencioni)
  655. * Add [`require-default-props`][] rule ([#528][] @vitorbal)
  656. * Add support for flow variance syntax to [`prop-types`][] ([#961][] @ajhyndman)
  657. ### Fixed
  658. * Fix [`jsx-indent`][] with multiline jsx in ternaries ([#966][])
  659. * Fix component detection to ignore async functions ([#989][] @taion)
  660. * Fix [`jsx-curly-spacing`][] autofix to not delete comments ([#648][])
  661. * Fix auto-enabling of `eslint-plugin-react` in exported configurations ([#984][] @jamischarles)
  662. ### Changed
  663. * Update dependencies
  664. * Documentation improvements ([#960][] @evilebottnawi, [#973][] @JamesWatling, [#982][] @captbaritone)
  665. [6.8.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.7.1...v6.8.0
  666. [#978]: https://github.com/yannickcr/eslint-plugin-react/pull/978
  667. [#528]: https://github.com/yannickcr/eslint-plugin-react/issues/528
  668. [#961]: https://github.com/yannickcr/eslint-plugin-react/issues/961
  669. [#966]: https://github.com/yannickcr/eslint-plugin-react/issues/966
  670. [#989]: https://github.com/yannickcr/eslint-plugin-react/pull/989
  671. [#648]: https://github.com/yannickcr/eslint-plugin-react/issues/648
  672. [#984]: https://github.com/yannickcr/eslint-plugin-react/pull/984
  673. [#960]: https://github.com/yannickcr/eslint-plugin-react/pull/960
  674. [#973]: https://github.com/yannickcr/eslint-plugin-react/pull/973
  675. [#982]: https://github.com/yannickcr/eslint-plugin-react/pull/982
  676. ## [6.7.1] - 2016-11-15
  677. ### Fixed
  678. * Fix [`jsx-tag-spacing`][] crash when options object isn't passed ([#955][] @daltones)
  679. [6.7.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.7.0...v6.7.1
  680. [#955]: https://github.com/yannickcr/eslint-plugin-react/issues/955
  681. ## [6.7.0] - 2016-11-14
  682. ### Added
  683. * Add [`jsx-tag-spacing`][] rule ([#693][] @Kovensky)
  684. ### Fixed
  685. * Fix [`jsx-indent`][] for parenthesized ternaries ([#945][] @voxpelli)
  686. * Fix [`jsx-indent`][] for multiline ternaries
  687. * Fix [`jsx-indent`][] for arrays in jsx ([#947][])
  688. * Fix [`no-danger-with-children`][] crash with spread on global variables ([#921][])
  689. * Fix [`jsx-wrap-multilines`][] ternaries handling ([#916][])
  690. ### Changed
  691. * Enable [`no-unused-prop-types`][] `skipShapeProps` option by default to limit false positive ([#953][] @everdimension)
  692. [6.7.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.6.0...v6.7.0
  693. [#693]: https://github.com/yannickcr/eslint-plugin-react/issues/693
  694. [#945]: https://github.com/yannickcr/eslint-plugin-react/issues/945
  695. [#947]: https://github.com/yannickcr/eslint-plugin-react/issues/947
  696. [#921]: https://github.com/yannickcr/eslint-plugin-react/issues/921
  697. [#916]: https://github.com/yannickcr/eslint-plugin-react/issues/916
  698. [#953]: https://github.com/yannickcr/eslint-plugin-react/pull/953
  699. ## [6.6.0] - 2016-11-06
  700. ### Added
  701. * Add [`jsx-first-prop-new-line`][] auto fix ([#886][] @snowypowers)
  702. ### Fixed
  703. * Fix [`no-unused-prop-types`][] crash with destructured prop-types ([#938][])
  704. * Fix [`jsx-indent`][] in multi-line conditional expressions ([#901][], [#907][])
  705. * Fix [`sort-comp`][] bad error message if 2 methods in the same group must be moved ([#507][])
  706. ### Changed
  707. * Documentation improvements ([#941][] @pwmckenna)
  708. [6.6.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.5.0...v6.6.0
  709. [#886]: https://github.com/yannickcr/eslint-plugin-react/pull/886
  710. [#938]: https://github.com/yannickcr/eslint-plugin-react/issues/938
  711. [#901]: https://github.com/yannickcr/eslint-plugin-react/issues/901
  712. [#907]: https://github.com/yannickcr/eslint-plugin-react/issues/907
  713. [#507]: https://github.com/yannickcr/eslint-plugin-react/issues/507
  714. [#941]: https://github.com/yannickcr/eslint-plugin-react/pull/941
  715. ## [6.5.0] - 2016-11-01
  716. ### Added
  717. * Add tab support to [`jsx-closing-bracket-location`][] auto fixer ([#909][] @arperry)
  718. * Add tab and space support to [`jsx-indent`][] auto fixer ([#608][] @jayphelps)
  719. * Add `multiline-multiprop` option to [`jsx-first-prop-new-line`][] ([#883][] @kentor)
  720. ### Fixed
  721. * Fix [`forbid-component-props`][] crash with self reference JSX element ([#839][] @xeodou)
  722. * Fix [`jsx-indent`][] to ignore lines starting by literals ([#900][])
  723. * Fix [`no-set-state`][] to correctly detect `setState` in arrow functions ([#931][])
  724. ### Changed
  725. * Update dependencies
  726. * Add `deprecated` metadata to deprecated rules ([#911][] @randycoulman)
  727. * Auto-enable `eslint-plugin-react` in exported configurations ([#925][] @MoOx)
  728. * Documentation improvements ([#910][] @Wilfred, [#932][] @gnarf)
  729. [6.5.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.4.1...v6.5.0
  730. [#909]: https://github.com/yannickcr/eslint-plugin-react/pull/909
  731. [#608]: https://github.com/yannickcr/eslint-plugin-react/pull/608
  732. [#883]: https://github.com/yannickcr/eslint-plugin-react/pull/883
  733. [#839]: https://github.com/yannickcr/eslint-plugin-react/pull/839
  734. [#900]: https://github.com/yannickcr/eslint-plugin-react/issues/900
  735. [#931]: https://github.com/yannickcr/eslint-plugin-react/issues/931
  736. [#911]: https://github.com/yannickcr/eslint-plugin-react/pull/911
  737. [#925]: https://github.com/yannickcr/eslint-plugin-react/pull/925
  738. [#910]: https://github.com/yannickcr/eslint-plugin-react/pull/910
  739. [#932]: https://github.com/yannickcr/eslint-plugin-react/pull/932
  740. ## [6.4.1] - 2016-10-10
  741. ### Fixed
  742. * Fix [`jsx-indent`][] for arrays ([#897][], [#898][])
  743. * Fix [`jsx-indent`][] to allow multi-line logical expressions with one level of indent ([#896][])
  744. [6.4.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.4.0...v6.4.1
  745. [#897]: https://github.com/yannickcr/eslint-plugin-react/issues/897
  746. [#898]: https://github.com/yannickcr/eslint-plugin-react/issues/898
  747. [#896]: https://github.com/yannickcr/eslint-plugin-react/pull/896
  748. ## [6.4.0] - 2016-10-09
  749. ### Added
  750. * Add `skipUndeclared` option to [`prop-types`][] ([#846][] @pfhayes)
  751. ### Fixed
  752. * Fix [`jsx-no-bind`][] crash on arrow functions ([#854][])
  753. * Fix [`display-name`][] false negative on es6-style method in `React.createClass` ([#852][])
  754. * Fix [`prefer-stateless-function`][] to allow components with `childContextTypes` ([#853][])
  755. * Fix [`no-children-prop`][] spread support ([#862][] @randycoulman)
  756. * Fix [`no-unused-prop-types`][] to ignore validation when spread is used ([#840][])
  757. * Fix [`jsx-closing-bracket-location`][] for multi-line prop ([#889][])
  758. * Fix [`jsx-indent`][] in multi-line function calls ([#895][])
  759. * Fix [`jsx-indent`][] in multi-line logical expressions ([#540][])
  760. ### Changed
  761. * Update dependencies
  762. * Documentation improvements ([#860][] @fson, [#863][] @corydolphin, [#830][] @eelyafi, [#876][] @manovotny, [#877][] @gaearon)
  763. [6.4.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.3.0...v6.4.0
  764. [#846]: https://github.com/yannickcr/eslint-plugin-react/pull/846
  765. [#854]: https://github.com/yannickcr/eslint-plugin-react/issues/854
  766. [#852]: https://github.com/yannickcr/eslint-plugin-react/issues/852
  767. [#853]: https://github.com/yannickcr/eslint-plugin-react/issues/853
  768. [#862]: https://github.com/yannickcr/eslint-plugin-react/pull/862
  769. [#840]: https://github.com/yannickcr/eslint-plugin-react/issues/840
  770. [#889]: https://github.com/yannickcr/eslint-plugin-react/issues/889
  771. [#895]: https://github.com/yannickcr/eslint-plugin-react/issues/895
  772. [#540]: https://github.com/yannickcr/eslint-plugin-react/issues/540
  773. [#860]: https://github.com/yannickcr/eslint-plugin-react/pull/860
  774. [#863]: https://github.com/yannickcr/eslint-plugin-react/pull/863
  775. [#830]: https://github.com/yannickcr/eslint-plugin-react/pull/830
  776. [#876]: https://github.com/yannickcr/eslint-plugin-react/pull/876
  777. [#877]: https://github.com/yannickcr/eslint-plugin-react/pull/877
  778. ## [6.3.0] - 2016-09-20
  779. ### Added
  780. * Add [`no-children-prop`][] rule ([#720][] @benstepp)
  781. * Add [`no-unescaped-entities`][] rule ([#681][] @pfhayes)
  782. * Add JSXExpressionContainer support to [`jsx-indent`][] rule ([#838][] @eelyafi)
  783. ### Fixed
  784. * Fix [`style-prop-object`][] crash ([#834][])
  785. * Fix [`style-prop-object`][] false positive on computed properties ([#820][])
  786. * Fix [`style-prop-object`][] to deal with null and spread props that can't be resolved ([#809][] [#812][] @petersendidit)
  787. [6.3.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.2.2...v6.3.0
  788. [#720]: https://github.com/yannickcr/eslint-plugin-react/issues/720
  789. [#681]: https://github.com/yannickcr/eslint-plugin-react/pull/681
  790. [#838]: https://github.com/yannickcr/eslint-plugin-react/pull/838
  791. [#834]: https://github.com/yannickcr/eslint-plugin-react/issues/834
  792. [#820]: https://github.com/yannickcr/eslint-plugin-react/issues/820
  793. [#809]: https://github.com/yannickcr/eslint-plugin-react/issues/809
  794. [#812]: https://github.com/yannickcr/eslint-plugin-react/issues/812
  795. ## [6.2.2] - 2016-09-15
  796. ### Fixed
  797. * Fix [`no-unused-prop-types`][] crash ([#825][] @EvNaverniouk)
  798. * Fix [`jsx-no-target-blank`][] crash ([#821][])
  799. [6.2.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.2.1...v6.2.2
  800. [#821]: https://github.com/yannickcr/eslint-plugin-react/issues/821
  801. [#825]: https://github.com/yannickcr/eslint-plugin-react/pull/825
  802. ## [6.2.1] - 2016-09-13
  803. ### Fixed
  804. * Fix false positive in [`no-unused-prop-types`][] ([#792][] @EvNaverniouk)
  805. * Fix [`jsx-no-target-blank`][] to target only anchor elements ([#793][] @aduth)
  806. * Fix [`jsx-no-target-blank`][] to be case insensitive [#796][] @dmnd)
  807. * Fix [`jsx-uses-vars`][] shadowed variables handling ([#799][])
  808. ### Changed
  809. * Update dependencies
  810. * Documentation improvements (@ljharb, [#794][] @dougshamoo, [#813][] @AndiDog, [#815][] @chris-vaszauskas)
  811. [6.2.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.2.0...v6.2.1
  812. [#792]: https://github.com/yannickcr/eslint-plugin-react/pull/792
  813. [#793]: https://github.com/yannickcr/eslint-plugin-react/pull/793
  814. [#794]: https://github.com/yannickcr/eslint-plugin-react/pull/794
  815. [#796]: https://github.com/yannickcr/eslint-plugin-react/pull/796
  816. [#799]: https://github.com/yannickcr/eslint-plugin-react/issues/799
  817. [#813]: https://github.com/yannickcr/eslint-plugin-react/pull/813
  818. [#815]: https://github.com/yannickcr/eslint-plugin-react/pull/815
  819. ## [6.2.0] - 2016-08-28
  820. ### Added
  821. * Add [`no-unused-prop-types`][] rule ([#226][] @EvNaverniouk)
  822. * Add [`style-prop-object`][] rule ([#715][] @petersendidit)
  823. * Add auto fix for [`self-closing-comp`][] ([#770][] @pl12133)
  824. * Add support for `typeAnnotations` in [`sort-comp`][] ([#235][] @dozoisch)
  825. * Add support for `PureComponent` in [`prefer-stateless-function`][] ([#781][] @tiemevanveen)
  826. ### Fixed
  827. * Fix [`jsx-uses-vars`][] to work better with [`prefer-const`](http://eslint.org/docs/rules/prefer-const). You'll need to upgrade to ESLint 3.4.0 to completely fix the compatibility issue ([#716][])
  828. * Fix [`require-render-return`][] crash ([#784][])
  829. * Fix related components detection in [`prop-types`][] ([#735][])
  830. * Fix component detection to ignore functions expression without a parent component
  831. ### Changed
  832. * Update dependencies
  833. * Documentation improvements (@lencioni)
  834. [6.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.1.2...v6.2.0
  835. [#226]: https://github.com/yannickcr/eslint-plugin-react/issues/226
  836. [#715]: https://github.com/yannickcr/eslint-plugin-react/issues/715
  837. [#770]: https://github.com/yannickcr/eslint-plugin-react/pull/770
  838. [#235]: https://github.com/yannickcr/eslint-plugin-react/issues/235
  839. [#781]: https://github.com/yannickcr/eslint-plugin-react/pull/781
  840. [#716]: https://github.com/yannickcr/eslint-plugin-react/issues/716
  841. [#784]: https://github.com/yannickcr/eslint-plugin-react/issues/784
  842. [#735]: https://github.com/yannickcr/eslint-plugin-react/issues/735
  843. ## [6.1.2] - 2016-08-17
  844. ### Fixed
  845. * Fix nested spread handling in [`no-danger-with-children`][] ([#771][] @petersendidit)
  846. ### Changed
  847. * Documentation improvements
  848. [6.1.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.1.1...v6.1.2
  849. [#771]: https://github.com/yannickcr/eslint-plugin-react/issues/771
  850. ## [6.1.1] - 2016-08-16
  851. ### Fixed
  852. * Fix [`prop-types`][] on annotated components ([#766][])
  853. * Fix [`no-danger-with-children`][] spread support ([#767][] @petersendidit)
  854. ### Changed
  855. * Documentation improvements ([#769][] @daltones)
  856. [6.1.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.1.0...v6.1.1
  857. [#766]: https://github.com/yannickcr/eslint-plugin-react/issues/766
  858. [#767]: https://github.com/yannickcr/eslint-plugin-react/issues/767
  859. [#769]: https://github.com/yannickcr/eslint-plugin-react/pull/769
  860. ## [6.1.0] - 2016-08-14
  861. ### Added
  862. * Add `React.PureComponent` support ([#737][])
  863. * Add [`forbid-component-props`][] rule ([#314][] @lencioni)
  864. * Add [`no-danger-with-children`][] rule ([#710][] @petersendidit)
  865. * Add pragma for `createClass` factory method ([#725][] @zurawiki)
  866. ### Fixed
  867. * Fix Node.js 0.10 support ([#746][])
  868. * Fix [`prop-types`][] on annotated components ([#729][])
  869. * Fix [`require-optimization`][] test for function declaration ([#744][] @Tom910)
  870. * Fix [`jsx-uses-vars`][] to handle nested object properties ([#761][] @yayalice)
  871. * Fix rules metadata
  872. ### Changed
  873. * Update dependencies
  874. * Documentation improvements ([#759][] @embrown, [#703][] [#753][] @lencioni, [#739][] @ljharb, [#731][] @wKich, [#745][] @petersendidit, [#659][] @dguo)
  875. [6.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v6.0.0...v6.1.0
  876. [#737]: https://github.com/yannickcr/eslint-plugin-react/issues/737
  877. [#710]: https://github.com/yannickcr/eslint-plugin-react/issues/710
  878. [#725]: https://github.com/yannickcr/eslint-plugin-react/pull/725
  879. [#746]: https://github.com/yannickcr/eslint-plugin-react/issues/746
  880. [#729]: https://github.com/yannickcr/eslint-plugin-react/issues/729
  881. [#744]: https://github.com/yannickcr/eslint-plugin-react/pull/744
  882. [#761]: https://github.com/yannickcr/eslint-plugin-react/pull/761
  883. [#759]: https://github.com/yannickcr/eslint-plugin-react/pull/759
  884. [#703]: https://github.com/yannickcr/eslint-plugin-react/pull/703
  885. [#753]: https://github.com/yannickcr/eslint-plugin-react/pull/753
  886. [#739]: https://github.com/yannickcr/eslint-plugin-react/issues/739
  887. [#731]: https://github.com/yannickcr/eslint-plugin-react/pull/731
  888. [#745]: https://github.com/yannickcr/eslint-plugin-react/pull/745
  889. [#659]: https://github.com/yannickcr/eslint-plugin-react/pull/659
  890. [#314]: https://github.com/yannickcr/eslint-plugin-react/pull/314
  891. ## [6.0.0] - 2016-08-01
  892. ### Added
  893. * Add an `all` shareable configuration with all rules enabled ([#674][] @pfhayes)
  894. * Add [`no-find-dom-node`][] rule ([#678][])
  895. * Add `shorthandLast` option to [`jsx-sort-props`][] ([#391][] @mathieumg)
  896. * Add `allowDecorators` option to [`require-optimization`][] ([#669][] @Tom910)
  897. ### Breaking
  898. * Deprecate [`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. [`require-extension`][] still works but will trigger a warning
  899. * Enable `allow-in-func` mode by default in [`no-did-mount-set-state`][] and [`no-did-update-set-state`][] rules ([#702][] @lencioni)
  900. * Enable html tags check by default in `self-closing-comp`
  901. * Remove `pragma` option from `jsx-uses-react`, use the [shared settings](README.md#configuration) to specify a custom pragma ([#700][] @lencioni)
  902. * Remove `react` option from [`no-deprecated`][] rule, use the [shared settings](README.md#configuration) to specify the React version ([#700][] @lencioni)
  903. * Add [`require-render-return`][] rule to recommended rules
  904. * Remove [`no-danger`][] from recommended rules ([#636][] @mjackson)
  905. * Remove [`no-did-mount-set-state`][] and [`no-did-update-set-state`][] from recommended rules ([#596][])
  906. * Remove deprecated [`jsx-sort-prop-types`][] rule, use [`sort-prop-types`][] instead ([#549][] @lencioni)
  907. * Rename [`no-comment-textnodes`][] to [`jsx-no-comment-textnodes`][]. [`no-comment-textnodes`][] still works but will trigger a warning ([#668][] @lencioni)
  908. * Rename [`wrap-multilines`][] to [`jsx-wrap-multilines`][]. [`wrap-multilines`][] still works but will trigger a warning ([#668][] @lencioni)
  909. * Add ESLint as peerDependency ([#657][] @jokeyrhyme)
  910. * Add Node.js 0.10 as minimum required version ([#657][] @jokeyrhyme)
  911. ### Fixed
  912. * Fix [`jsx-handler-names`][] incorrectly flagging `only` ([#571][] @lencioni)
  913. * Fix spread props cash in [`jsx-no-target-blank`][] ([#679][] @randycoulman)
  914. * Fix [`require-optimization`][] warning on stateless components ([#687][])
  915. * Fix [`jsx-uses-vars`][] that incorrectly marked some variables as used ([#694][] @lencioni)
  916. * Fix [`no-unknown-property`][] check on SVG attributes ([#718][])
  917. * Fix [`jsx-no-bind`][] reporting errors on render functions that don't return JSX ([#663][] @petersendidit)
  918. * Fix [`jsx-closing-bracket-location`][] autofix when `location` is set to `props-aligned` ([#684][] @pfhayes)
  919. * Fix [`prop-types`][] for destructured arguments being assigned to the parent stateless component in some cases ([#698][])
  920. * Fix [`prop-types`][] for JSX return being assigned to the parent function in some cases ([#504][])
  921. * Fix [`jsx-curly-spacing`][] for reporting on JSX content by mistake ([#671][])
  922. * Fix [`prop-types`][] crash when accessing constructor on props ([#654][])
  923. * Fix [`jsx-filename-extension`][] to not check filenames on text input ([#662][] @ljharb)
  924. * Fix [`jsx-no-comment-textnodes`][] incorrectly catching urls ([#664][] @petersendidit)
  925. ### Changed
  926. * Only report [`jsx-filename-extension`][] warning once per file ([#660][] @mathieumg)
  927. * Update SVG and DOM attribute list for `no-unknown-property`
  928. * Update rules to use the new ESLint rule format ([#661][] @petersendidit)
  929. * Update dependencies
  930. * Documentation improvements ([#724][] @lencioni)
  931. * Update Travis CI and AppVeyor CI configurations (@ljharb)
  932. [6.0.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v5.2.2...v6.0.0
  933. [#571]: https://github.com/yannickcr/eslint-plugin-react/issues/571
  934. [#728]: https://github.com/yannickcr/eslint-plugin-react/pull/728
  935. [#679]: https://github.com/yannickcr/eslint-plugin-react/pull/679
  936. [#687]: https://github.com/yannickcr/eslint-plugin-react/issues/687
  937. [#694]: https://github.com/yannickcr/eslint-plugin-react/issues/694
  938. [#718]: https://github.com/yannickcr/eslint-plugin-react/issues/718
  939. [#723]: https://github.com/yannickcr/eslint-plugin-react/pull/723
  940. [#702]: https://github.com/yannickcr/eslint-plugin-react/pull/702
  941. [#700]: https://github.com/yannickcr/eslint-plugin-react/pull/700
  942. [#636]: https://github.com/yannickcr/eslint-plugin-react/pull/636
  943. [#596]: https://github.com/yannickcr/eslint-plugin-react/issues/596
  944. [#661]: https://github.com/yannickcr/eslint-plugin-react/issues/661
  945. [#724]: https://github.com/yannickcr/eslint-plugin-react/pull/724
  946. [#674]: https://github.com/yannickcr/eslint-plugin-react/issues/674
  947. [#678]: https://github.com/yannickcr/eslint-plugin-react/issues/678
  948. [#391]: https://github.com/yannickcr/eslint-plugin-react/issues/391
  949. [#669]: https://github.com/yannickcr/eslint-plugin-react/pull/669
  950. [#663]: https://github.com/yannickcr/eslint-plugin-react/issues/663
  951. [#684]: https://github.com/yannickcr/eslint-plugin-react/pull/684
  952. [#698]: https://github.com/yannickcr/eslint-plugin-react/issues/698
  953. [#504]: https://github.com/yannickcr/eslint-plugin-react/issues/504
  954. [#671]: https://github.com/yannickcr/eslint-plugin-react/issues/671
  955. [#549]: https://github.com/yannickcr/eslint-plugin-react/issues/549
  956. [#668]: https://github.com/yannickcr/eslint-plugin-react/issues/668
  957. [#660]: https://github.com/yannickcr/eslint-plugin-react/pull/660
  958. [#654]: https://github.com/yannickcr/eslint-plugin-react/issues/654
  959. [#662]: https://github.com/yannickcr/eslint-plugin-react/issues/662
  960. [#664]: https://github.com/yannickcr/eslint-plugin-react/issues/664
  961. [#657]: https://github.com/yannickcr/eslint-plugin-react/pull/657
  962. ## [5.2.2] - 2016-06-17
  963. ### Fixed
  964. * Fix [`jsx-no-bind`][] crash ([#641][])
  965. [5.2.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v5.2.1...v5.2.2
  966. [#641]: https://github.com/yannickcr/eslint-plugin-react/issues/641
  967. ## [5.2.1] - 2016-06-17
  968. ### Fixed
  969. * Fix [`jsx-pascal-case`][] for namespaced components ([#637][] @evcohen)
  970. [5.2.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v5.2.0...v5.2.1
  971. [#637]: https://github.com/yannickcr/eslint-plugin-react/issues/637
  972. ## [5.2.0] - 2016-06-17
  973. ### Added
  974. * Add [`require-optimization`][] rule ([#240][] @EvNaverniouk)
  975. * Add [`jsx-filename-extension`][] rule ([#495][] @lencioni)
  976. * Add [`no-render-return-value`][] rule ([#531][] @iamdustan)
  977. * Add [`no-comment-textnodes`][] rule ([#616][] @benvinegar)
  978. * Add `objectLiterals` option to [`jsx-curly-spacing`][] ([#388][], [#211][] @casesandberg @ljharb)
  979. * Add option to [`self-closing-comp`][] to check html tags ([#572][] @gitim)
  980. * Add `ignore` option to [`no-unknown-property`][] rule ([#631][] @insin)
  981. * Add support for ES7 bind operator to [`jsx-handler-names`][] ([#630][])
  982. * Add support for explicit declaration that class extends React.Component ([#68][] @gausie)
  983. ### Fixed
  984. * Fix [`jsx-closing-bracket-location`][] multiline prop support ([#493][] @tuures)
  985. * Fix [`prop-types`][] for props that where not assigned to the right component ([#591][])
  986. * Fix [`display-name`][] when JSON style is used for defining components ([#590][] @gitim)
  987. * Fix [`jsx-no-bind`][] for bind detection in render when assigned to a variable ([#474][] @petersendidit)
  988. * Fix [`jsx-curly-spacing`][] for spread operator ([#606][] @gitim)
  989. * Fix [`sort-comp`][] crash on spread operator ([#624][])
  990. * Fix [`prop-types`][] crash when destructuring props with spread only
  991. ### Changed
  992. * Update dependencies
  993. * Add [doctrine](https://github.com/eslint/doctrine) as a dependency ([#68][] @gausie)
  994. * Add [jsx-ast-utils](https://github.com/evcohen/jsx-ast-utils) as a dependency ([#634][] @evcohen)
  995. * Documentation improvements ([#594][] @lencioni, [#598][] @mLuby, [#633][] @appsforartists)
  996. [5.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v5.1.1...v5.2.0
  997. [#68]: https://github.com/yannickcr/eslint-plugin-react/issues/68
  998. [#211]: https://github.com/yannickcr/eslint-plugin-react/issues/211
  999. [#240]: https://github.com/yannickcr/eslint-plugin-react/issues/240
  1000. [#388]: https://github.com/yannickcr/eslint-plugin-react/issues/388
  1001. [#474]: https://github.com/yannickcr/eslint-plugin-react/issues/474
  1002. [#493]: https://github.com/yannickcr/eslint-plugin-react/pull/493
  1003. [#495]: https://github.com/yannickcr/eslint-plugin-react/issues/495
  1004. [#531]: https://github.com/yannickcr/eslint-plugin-react/issues/531
  1005. [#572]: https://github.com/yannickcr/eslint-plugin-react/issues/572
  1006. [#590]: https://github.com/yannickcr/eslint-plugin-react/issues/590
  1007. [#591]: https://github.com/yannickcr/eslint-plugin-react/issues/591
  1008. [#594]: https://github.com/yannickcr/eslint-plugin-react/pull/594
  1009. [#598]: https://github.com/yannickcr/eslint-plugin-react/pull/598
  1010. [#606]: https://github.com/yannickcr/eslint-plugin-react/issues/606
  1011. [#616]: https://github.com/yannickcr/eslint-plugin-react/pull/616
  1012. [#624]: https://github.com/yannickcr/eslint-plugin-react/issues/624
  1013. [#630]: https://github.com/yannickcr/eslint-plugin-react/issues/630
  1014. [#631]: https://github.com/yannickcr/eslint-plugin-react/pull/631
  1015. [#633]: https://github.com/yannickcr/eslint-plugin-react/pull/633
  1016. [#634]: https://github.com/yannickcr/eslint-plugin-react/pull/634
  1017. ## [5.1.1] - 2016-05-10
  1018. ### Fixed
  1019. * Fix [`require-render-return`][] crash ([#589][])
  1020. [5.1.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v5.1.0...v5.1.1
  1021. [#589]: https://github.com/yannickcr/eslint-plugin-react/issues/589
  1022. ## [5.1.0] - 2016-05-10
  1023. ### Added
  1024. * Add [`jsx-no-target-blank`][] rule ([#582][] @Gasparila)
  1025. * Add `allowAllCaps` and `ignore` options to [`jsx-pascal-case`][] ([#575][])
  1026. * Add class properties support to [`require-render-return`][] ([#564][])
  1027. ### Fixed
  1028. * Fix [`jsx-closing-bracket-location`][] fixer ([#533][] @dtinth)
  1029. * Fix [`require-render-return`][] to only check valid render methods ([#563][])
  1030. * Fix detection to allow simple `this` usage in fonctional components ([#576][])
  1031. * Fix [`forbid-prop-types`][] crash ([#579][])
  1032. * Fix comment handling in [`jsx-curly-spacing`][] ([#584][])
  1033. ### Changed
  1034. * Update dependencies
  1035. * Documentation improvements (@coryhouse, [#581][] @scurker, [#588][])
  1036. [5.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v5.0.1...v5.1.0
  1037. [#582]: https://github.com/yannickcr/eslint-plugin-react/pull/582
  1038. [#575]: https://github.com/yannickcr/eslint-plugin-react/issues/575
  1039. [#564]: https://github.com/yannickcr/eslint-plugin-react/issues/564
  1040. [#533]: https://github.com/yannickcr/eslint-plugin-react/issues/533
  1041. [#563]: https://github.com/yannickcr/eslint-plugin-react/issues/563
  1042. [#576]: https://github.com/yannickcr/eslint-plugin-react/issues/576
  1043. [#579]: https://github.com/yannickcr/eslint-plugin-react/issues/579
  1044. [#584]: https://github.com/yannickcr/eslint-plugin-react/pull/584
  1045. [#559]: https://github.com/yannickcr/eslint-plugin-react/pull/559
  1046. [#581]: https://github.com/yannickcr/eslint-plugin-react/pull/581
  1047. [#588]: https://github.com/yannickcr/eslint-plugin-react/issues/588
  1048. ## [5.0.1] - 2016-04-18
  1049. ### Fixed
  1050. * Fix [`require-render-return`][] to not check stateless functions ([#550][])
  1051. [5.0.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v5.0.0...v5.0.1
  1052. [#550]: https://github.com/yannickcr/eslint-plugin-react/issues/550
  1053. ## [5.0.0] - 2016-04-17
  1054. ### Added
  1055. * Add [`jsx-first-prop-new-line`][] rule ([#410][] @jseminck)
  1056. ### Breaking
  1057. * Update rules for React 15:
  1058. * Add warnings for `LinkedStateMixin`, `ReactPerf.printDOM` and `ReactPerf.getMeasurementsSummaryMap` in `no-deprecated`
  1059. * Allow stateless components to return `null` in [`prefer-stateless-function`][]
  1060. * Remove SVG attributes warnings ([#490][])
  1061. If you're still not using React 15 you can keep the old behavior by setting the React version to `0.14` in the [shared settings](README.md#configuration).
  1062. ### Fixed
  1063. * Rewrite [`require-render-return`][] rule ([#542][], [#543][])
  1064. * Fix [`prefer-stateless-function`][] crash ([#544][])
  1065. * Fix external propTypes handling ([#545][])
  1066. * Do not mark inline functions in JSX as components ([#546][])
  1067. ### Changed
  1068. * Update dependencies
  1069. * Documentation improvements
  1070. [5.0.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v4.3.0...v5.0.0
  1071. [#410]: https://github.com/yannickcr/eslint-plugin-react/issues/410
  1072. [#490]: https://github.com/yannickcr/eslint-plugin-react/issues/490
  1073. [#542]: https://github.com/yannickcr/eslint-plugin-react/issues/542
  1074. [#543]: https://github.com/yannickcr/eslint-plugin-react/issues/543
  1075. [#544]: https://github.com/yannickcr/eslint-plugin-react/issues/544
  1076. [#545]: https://github.com/yannickcr/eslint-plugin-react/issues/545
  1077. [#546]: https://github.com/yannickcr/eslint-plugin-react/issues/546
  1078. ## [4.3.0] - 2016-04-07
  1079. ### Added
  1080. * Add [`require-render-return`][] rule ([#482][] @shmuga)
  1081. * Add auto fix for [`jsx-equals-spacing`][] ([#506][] @peet)
  1082. * Add auto fix for [`jsx-closing-bracket-location`][] ([#511][] @KevinGrandon)
  1083. ### Fixed
  1084. * Fix [`prefer-stateless-function`][] for conditional JSX ([#516][])
  1085. * Fix [`jsx-pascal-case`][] to support single letter component names ([#505][] @dthielman)
  1086. ### Changed
  1087. * Update dependencies
  1088. * Documentation improvements ([#509][] @coryhouse, [#526][] @ahoym)
  1089. [4.3.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v4.2.3...v4.3.0
  1090. [#482]: https://github.com/yannickcr/eslint-plugin-react/issues/482
  1091. [#506]: https://github.com/yannickcr/eslint-plugin-react/pull/506
  1092. [#511]: https://github.com/yannickcr/eslint-plugin-react/pull/511
  1093. [#516]: https://github.com/yannickcr/eslint-plugin-react/issues/516
  1094. [#505]: https://github.com/yannickcr/eslint-plugin-react/issues/505
  1095. [#509]: https://github.com/yannickcr/eslint-plugin-react/pull/509
  1096. [#526]: https://github.com/yannickcr/eslint-plugin-react/pull/526
  1097. ## [4.2.3] - 2016-03-15
  1098. ### Fixed
  1099. * Fix class properties retrieval in [`prefer-stateless-function`][] ([#499][])
  1100. [4.2.3]: https://github.com/yannickcr/eslint-plugin-react/compare/v4.2.2...v4.2.3
  1101. [#499]: https://github.com/yannickcr/eslint-plugin-react/issues/499
  1102. ## [4.2.2] - 2016-03-14
  1103. ### Fixed
  1104. * Rewrite [`prefer-stateless-function`][] rule ([#491][])
  1105. * Fix [`self-closing-comp`][] to treat non-breaking spaces as content ([#496][])
  1106. * Fix detection for direct props in [`prop-types`][] ([#497][])
  1107. * Fix annotated function detection in [`prop-types`][] ([#498][])
  1108. * Fix `this` usage in [`jsx-no-undef`][] ([#489][])
  1109. ### Changed
  1110. * Update dependencies
  1111. * Add shared setting for React version
  1112. [4.2.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v4.2.1...v4.2.2
  1113. [#491]: https://github.com/yannickcr/eslint-plugin-react/issues/491
  1114. [#496]: https://github.com/yannickcr/eslint-plugin-react/issues/496
  1115. [#497]: https://github.com/yannickcr/eslint-plugin-react/issues/497
  1116. [#498]: https://github.com/yannickcr/eslint-plugin-react/issues/498
  1117. [#489]: https://github.com/yannickcr/eslint-plugin-react/issues/489
  1118. ## [4.2.1] - 2016-03-08
  1119. ### Fixed
  1120. * Fix [`sort-prop-types`][] crash with spread operator ([#478][])
  1121. * Fix stateless components detection when conditionally returning JSX ([#486][])
  1122. * Fix case where props were not assigned to the right component ([#485][])
  1123. * Fix missing `getChildContext` lifecycle method in [`prefer-stateless-function`][] ([#492][])
  1124. [4.2.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v4.2.0...v4.2.1
  1125. [#478]: https://github.com/yannickcr/eslint-plugin-react/issues/478
  1126. [#486]: https://github.com/yannickcr/eslint-plugin-react/issues/486
  1127. [#485]: https://github.com/yannickcr/eslint-plugin-react/issues/485
  1128. [#492]: https://github.com/yannickcr/eslint-plugin-react/issues/492
  1129. ## [4.2.0] - 2016-03-05
  1130. ### Added
  1131. * Add support for Flow annotations on stateless components ([#467][])
  1132. * Add [`prefer-stateless-function`][] rule ([#214][])
  1133. * Add auto fix for [`jsx-indent-props`][] ([#483][] @shioju)
  1134. ### Fixed
  1135. * Fix [`jsx-no-undef`][] crash on objects ([#469][])
  1136. * Fix propTypes detection when declared before the component ([#472][])
  1137. ### Changed
  1138. * Update dependencies
  1139. * Documentation improvements ([#464][] @alex-tan, [#466][] @awong-dev, [#470][] @Gpx; [#462][] @thaggie)
  1140. [4.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v4.1.0...v4.2.0
  1141. [#467]: https://github.com/yannickcr/eslint-plugin-react/issues/467
  1142. [#214]: https://github.com/yannickcr/eslint-plugin-react/issues/214
  1143. [#483]: https://github.com/yannickcr/eslint-plugin-react/pull/483
  1144. [#469]: https://github.com/yannickcr/eslint-plugin-react/issues/469
  1145. [#472]: https://github.com/yannickcr/eslint-plugin-react/issues/472
  1146. [#464]: https://github.com/yannickcr/eslint-plugin-react/pull/464
  1147. [#466]: https://github.com/yannickcr/eslint-plugin-react/pull/466
  1148. [#470]: https://github.com/yannickcr/eslint-plugin-react/pull/470
  1149. [#462]: https://github.com/yannickcr/eslint-plugin-react/pull/462
  1150. ## [4.1.0] - 2016-02-23
  1151. ### Added
  1152. * Add component detection for class expressions
  1153. * Add displayName detection for class expressions in [`display-name`][] ([#419][])
  1154. ### Fixed
  1155. * Fix used props detection in components for which we are not confident in [`prop-types`][] ([#420][])
  1156. * Fix false positive in [`jsx-key`][] ([#456][] @jkimbo)
  1157. ### Changed
  1158. * Documentation improvements ([#457][] @wyze)
  1159. [4.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v4.0.0...v4.1.0
  1160. [#419]: https://github.com/yannickcr/eslint-plugin-react/issues/419
  1161. [#420]: https://github.com/yannickcr/eslint-plugin-react/issues/420
  1162. [#456]: https://github.com/yannickcr/eslint-plugin-react/pull/456
  1163. [#457]: https://github.com/yannickcr/eslint-plugin-react/pull/457
  1164. ## [4.0.0] - 2016-02-19
  1165. ### Added
  1166. * Add [`jsx-space-before-closing`][] rule ([#244][] @ryym)
  1167. * Add support for destructing in function signatures to [`prop-types`][] ([#354][] @lencioni)
  1168. ### Breaking
  1169. * Add support for static methods to `sort-comp`. Static methods must now be declared first, see [rule documentation](docs/rules/sort-comp.md) ([#128][] @lencioni)
  1170. * Add shareable config in place of default configuration. [`jsx-uses-vars`][] is not enabled by default anymore, see [documentation](README.md#recommended-configuration) ([#192][])
  1171. * Rename `jsx-sort-prop-types` to [`sort-prop-types`][]. `jsx-sort-prop-types` still works but will trigger a warning ([#87][] @lencioni)
  1172. * Remove deprecated `jsx-quotes` rule ([#433][] @lencioni)
  1173. * [`display-name`][] now accept the transpiler name by default. You can use the `ignoreTranspilerName` option to get the old behavior, see [rule documentation](docs/rules/display-name.md#ignoretranspilername) ([#440][] @lencioni)
  1174. ### Fixed
  1175. * Only ignore lowercase JSXIdentifier in [`jsx-no-undef`][] ([#435][])
  1176. * Fix [`jsx-handler-names`][] regex ([#425][])
  1177. * Fix destructured props detection in [`prop-types`][] ([#443][])
  1178. ### Changed
  1179. * Update dependencies ([#426][] @quentin-)
  1180. * Documentation improvements ([#414][] @vkrol, [#370][] @tmcw, [#441][] [#429][] @lencioni, [#432][] @note89, [#438][] @jmann6)
  1181. [4.0.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.16.1...v4.0.0
  1182. [#244]: https://github.com/yannickcr/eslint-plugin-react/issues/244
  1183. [#354]: https://github.com/yannickcr/eslint-plugin-react/issues/354
  1184. [#128]: https://github.com/yannickcr/eslint-plugin-react/issues/128
  1185. [#192]: https://github.com/yannickcr/eslint-plugin-react/issues/192
  1186. [#87]: https://github.com/yannickcr/eslint-plugin-react/issues/87
  1187. [#440]: https://github.com/yannickcr/eslint-plugin-react/pull/440
  1188. [#435]: https://github.com/yannickcr/eslint-plugin-react/issues/435
  1189. [#425]: https://github.com/yannickcr/eslint-plugin-react/issues/425
  1190. [#443]: https://github.com/yannickcr/eslint-plugin-react/issues/443
  1191. [#426]: https://github.com/yannickcr/eslint-plugin-react/pull/426
  1192. [#414]: https://github.com/yannickcr/eslint-plugin-react/pull/414
  1193. [#370]: https://github.com/yannickcr/eslint-plugin-react/pull/370
  1194. [#441]: https://github.com/yannickcr/eslint-plugin-react/pull/441
  1195. [#429]: https://github.com/yannickcr/eslint-plugin-react/pull/429
  1196. [#432]: https://github.com/yannickcr/eslint-plugin-react/pull/432
  1197. [#438]: https://github.com/yannickcr/eslint-plugin-react/pull/438
  1198. [#433]: https://github.com/yannickcr/eslint-plugin-react/pull/433
  1199. ## [3.16.1] - 2016-01-24
  1200. ### Fixed
  1201. * Fix [`jsx-sort-prop-types`][] issue with custom propTypes ([#408][] @alitaheri)
  1202. [3.16.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.16.0...v3.16.1
  1203. [#408]: https://github.com/yannickcr/eslint-plugin-react/issues/408
  1204. ## [3.16.0] - 2016-01-24
  1205. ### Added
  1206. * Add [`jsx-equals-spacing`][] rule ([#394][] @ryym)
  1207. * Add auto fix for `wrap-multiline`
  1208. * Add auto fix for `jsx-boolean-value`
  1209. * Add auto fix for `no-unknown-property`
  1210. * Add auto fix for [`jsx-curly-spacing`][] ([#407][] @ewendel)
  1211. * Add `requiredFirst` option to [`jsx-sort-prop-types`][] ([#392][] @chrislaskey)
  1212. * Add `ignoreRefs` option to [`jsx-no-bind`][] ([#330][] @silvenon)
  1213. ### Fixed
  1214. * Ignore `ref` in [`jsx-handler-names`][] (again) ([#396][])
  1215. ### Changed
  1216. * Update dependencies
  1217. [3.16.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.15.0...v3.16.0
  1218. [#394]: https://github.com/yannickcr/eslint-plugin-react/issues/394
  1219. [#407]: https://github.com/yannickcr/eslint-plugin-react/pull/407
  1220. [#392]: https://github.com/yannickcr/eslint-plugin-react/pull/392
  1221. [#330]: https://github.com/yannickcr/eslint-plugin-react/issues/330
  1222. [#396]: https://github.com/yannickcr/eslint-plugin-react/issues/396
  1223. ## [3.15.0] - 2016-01-12
  1224. ### Added
  1225. * Add support for flow annotations to [`prop-types`][] ([#382][] @phpnode)
  1226. ### Fixed
  1227. * Fix [`prop-types`][] crash when initializing class variable with an empty object ([#383][])
  1228. * Fix [`prop-types`][] crash when propTypes are using the spread operator ([#389][])
  1229. ### Changed
  1230. * Improve [`sort-comp`][] error messages ([#372][] @SystemParadox)
  1231. * Update dependencies
  1232. [3.15.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.14.0...v3.15.0
  1233. [#382]: https://github.com/yannickcr/eslint-plugin-react/pull/382
  1234. [#383]: https://github.com/yannickcr/eslint-plugin-react/issues/383
  1235. [#389]: https://github.com/yannickcr/eslint-plugin-react/issues/389
  1236. [#372]: https://github.com/yannickcr/eslint-plugin-react/pull/372
  1237. ## [3.14.0] - 2016-01-05
  1238. ### Added
  1239. * Add [`jsx-indent`][] rule ([#342][])
  1240. * Add shared setting for pragma configuration ([#228][] @NickStefan)
  1241. ### Fixed
  1242. * Fix crash in [`jsx-key`][] ([#380][] @nfcampos)
  1243. * Fix crash in [`forbid-prop-types`][] ([#377][] @nfcampos)
  1244. * Ignore `ref` in [`jsx-handler-names`][] ([#375][])
  1245. ### Changed
  1246. * Add AppVeyor CI to run tests on a Windows platform
  1247. * Add [`sort-comp`][] codemod to [`sort-comp`][] documentation ([#381][] @turadg)
  1248. [3.14.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.13.1...v3.14.0
  1249. [#342]: https://github.com/yannickcr/eslint-plugin-react/issues/342
  1250. [#228]: https://github.com/yannickcr/eslint-plugin-react/issues/228
  1251. [#380]: https://github.com/yannickcr/eslint-plugin-react/pull/380
  1252. [#377]: https://github.com/yannickcr/eslint-plugin-react/pull/377
  1253. [#375]: https://github.com/yannickcr/eslint-plugin-react/issues/375
  1254. [#381]: https://github.com/yannickcr/eslint-plugin-react/pull/381
  1255. ## [3.13.1] - 2015-12-26
  1256. ### Fixed
  1257. * Fix crash in [`jsx-key`][] ([#373][] @lukekarrys)
  1258. [3.13.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.13.0...v3.13.1
  1259. [#373]: https://github.com/yannickcr/eslint-plugin-react/issues/373
  1260. ## [3.13.0] - 2015-12-24
  1261. ### Added
  1262. * Add [`no-string-refs`][] rule ([#341][] @Intellicode)
  1263. * Add support for propTypes assigned via a variable in [`prop-types`][] ([#355][])
  1264. ### Fixed
  1265. * Fix `never` option in [`prefer-es6-class`][]
  1266. * Fix [`jsx-key`][] false-positives ([#320][] @silvenon)
  1267. ### Changed
  1268. * Documentation improvements ([#368][] @lencioni, [#370][] @tmcw, [#371][])
  1269. * Update dependencies
  1270. [3.13.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.12.0...v3.13.0
  1271. [#341]: https://github.com/yannickcr/eslint-plugin-react/issues/341
  1272. [#355]: https://github.com/yannickcr/eslint-plugin-react/issues/355
  1273. [#320]: https://github.com/yannickcr/eslint-plugin-react/issues/320
  1274. [#368]: https://github.com/yannickcr/eslint-plugin-react/pull/368
  1275. [#370]: https://github.com/yannickcr/eslint-plugin-react/pull/370
  1276. [#371]: https://github.com/yannickcr/eslint-plugin-react/issues/371
  1277. ## [3.12.0] - 2015-12-20
  1278. ### Added
  1279. * Add [`no-deprecated`][] rule ([#356][] @graue)
  1280. * Add [`no-is-mounted`][] rule ([#37][] @lencioni)
  1281. * Add `never` option to [`prefer-es6-class`][] rule ([#359][] @pwmckenna)
  1282. ### Fixed
  1283. * Fix [`jsx-pascal-case`][] to stop checking lower cased components ([#329][])
  1284. * Fix crash in component detection class ([#364][])
  1285. ### Changed
  1286. * Add link to [eslint-plugin-react-native](https://github.com/Intellicode/eslint-plugin-react-native) in Readme
  1287. * Update dependencies
  1288. [3.12.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.11.3...v3.12.0
  1289. [#356]: https://github.com/yannickcr/eslint-plugin-react/pull/356
  1290. [#37]: https://github.com/yannickcr/eslint-plugin-react/issues/37
  1291. [#359]: https://github.com/yannickcr/eslint-plugin-react/pull/359
  1292. [#329]: https://github.com/yannickcr/eslint-plugin-react/issues/329
  1293. [#364]: https://github.com/yannickcr/eslint-plugin-react/issues/364
  1294. ## [3.11.3] - 2015-12-05
  1295. ### Fixed
  1296. * Fix crash in [`prop-types`][] when reassigning props ([#345][])
  1297. * Fix [`jsx-handler-names`][] for stateless components ([#346][])
  1298. ### Changed
  1299. * Update [`jsx-handler-names`][] error messages to be less specific ([#348][] @jakemmarsh)
  1300. [3.11.3]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.11.2...v3.11.3
  1301. [#345]: https://github.com/yannickcr/eslint-plugin-react/issues/345
  1302. [#346]: https://github.com/yannickcr/eslint-plugin-react/issues/346
  1303. [#348]: https://github.com/yannickcr/eslint-plugin-react/pull/348
  1304. ## [3.11.2] - 2015-12-01
  1305. ### Fixed
  1306. * Allow numbers in [`jsx-pascal-case`][] ([#339][])
  1307. * Fix [`jsx-handler-names`][] crash with arrays ([#340][])
  1308. ### Changed
  1309. * Add `allow-in-func` option to [`no-did-update-set-state`][] documentation
  1310. [3.11.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.11.1...v3.11.2
  1311. [#339]: https://github.com/yannickcr/eslint-plugin-react/issues/339
  1312. [#340]: https://github.com/yannickcr/eslint-plugin-react/issues/340
  1313. ## [3.11.1] - 2015-11-29
  1314. ### Fixed
  1315. * Fix SVG attributes support for [`no-unknown-property`][] ([#338][])
  1316. [3.11.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.11.0...v3.11.1
  1317. [#338]: https://github.com/yannickcr/eslint-plugin-react/issues/338
  1318. ## [3.11.0] - 2015-11-29
  1319. ### Added
  1320. * Add [`jsx-handler-names`][] rule ([#315][] @jakemmarsh)
  1321. * Add SVG attributes support to [`no-unknown-property`][] ([#318][])
  1322. * Add shorthandFirst option to [`jsx-sort-props`][] ([#336][] @lucasmotta)
  1323. ### Fixed
  1324. * Fix destructured props detection in stateless components ([#326][])
  1325. * Fix props validation for nested stateless components ([#331][])
  1326. * Fix [`require-extension`][] to ignore extension if it's part of the package name ([#319][])
  1327. ### Changed
  1328. * Allow consecutive uppercase letters in [`jsx-pascal-case`][] ([#328][] @lencioni)
  1329. * Update dependencies
  1330. [3.11.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.10.0...v3.11.0
  1331. [#315]: https://github.com/yannickcr/eslint-plugin-react/pull/315
  1332. [#318]: https://github.com/yannickcr/eslint-plugin-react/issues/318
  1333. [#336]: https://github.com/yannickcr/eslint-plugin-react/pull/336
  1334. [#326]: https://github.com/yannickcr/eslint-plugin-react/issues/326
  1335. [#331]: https://github.com/yannickcr/eslint-plugin-react/issues/331
  1336. [#319]: https://github.com/yannickcr/eslint-plugin-react/issues/319
  1337. [#328]: https://github.com/yannickcr/eslint-plugin-react/issues/328
  1338. ## [3.10.0] - 2015-11-21
  1339. ### Added
  1340. * Add [`jsx-pascal-case`][] rule ([#306][] @jakemmarsh)
  1341. ### Fixed
  1342. * Fix crash on incomplete class property declaration ([#317][] @dapetcu21)
  1343. * Fix crash with ESLint 1.10.0 ([#323][] @lukekarrys)
  1344. [3.10.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.9.0...v3.10.0
  1345. [#306]: https://github.com/yannickcr/eslint-plugin-react/pull/306
  1346. [#317]: https://github.com/yannickcr/eslint-plugin-react/issues/317
  1347. [#323]: https://github.com/yannickcr/eslint-plugin-react/issues/323
  1348. ## [3.9.0] - 2015-11-17
  1349. ### Added
  1350. * Add [`jsx-key`][] rule ([#293][] @benmosher)
  1351. * Add `allow-in-func` option to [`no-did-update-set-state`][] ([#300][])
  1352. * Add option to only enforce [`jsx-closing-bracket-location`][] rule to one type of tag (nonEmpty or selfClosing) ([#307][])
  1353. ### Fixed
  1354. * Fix crash when destructuring with only the rest spread ([#269][])
  1355. * Fix variables detection when searching for related components ([#303][])
  1356. * Fix [`no-unknown-property`][] to not check custom elements ([#308][] @zertosh)
  1357. ### Changed
  1358. * Improve [`jsx-closing-bracket-location`][] error message ([#301][] @alopatin)
  1359. * Update dependencies
  1360. [3.9.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.8.0...v3.9.0
  1361. [#293]: https://github.com/yannickcr/eslint-plugin-react/pull/293
  1362. [#300]: https://github.com/yannickcr/eslint-plugin-react/issues/300
  1363. [#307]: https://github.com/yannickcr/eslint-plugin-react/issues/307
  1364. [#269]: https://github.com/yannickcr/eslint-plugin-react/issues/269
  1365. [#303]: https://github.com/yannickcr/eslint-plugin-react/issues/303
  1366. [#308]: https://github.com/yannickcr/eslint-plugin-react/pull/308
  1367. [#301]: https://github.com/yannickcr/eslint-plugin-react/pull/301
  1368. ## [3.8.0] - 2015-11-07
  1369. ### Added
  1370. * Add ignoreStateless option to [`no-multi-comp`][] ([#290][])
  1371. ### Fixed
  1372. * Fix classes with properties to always be marked as components ([#291][])
  1373. * Fix ES5 class detection when using `createClass` by itself ([#297][])
  1374. * Fix direct props detection ([#298][])
  1375. * Ignore functions containing the keyword `this` during component detection
  1376. [3.8.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.7.1...v3.8.0
  1377. [#290]: https://github.com/yannickcr/eslint-plugin-react/issues/290
  1378. [#291]: https://github.com/yannickcr/eslint-plugin-react/issues/291
  1379. [#297]: https://github.com/yannickcr/eslint-plugin-react/issues/297
  1380. [#298]: https://github.com/yannickcr/eslint-plugin-react/issues/298
  1381. ## [3.7.1] - 2015-11-05
  1382. ### Fixed
  1383. * Fix [`sort-comp`][] crash on stateless components ([#285][])
  1384. * Fix crash in ES5 components detection ([#286][])
  1385. * Fix ES5 components detection from nested functions ([#287][])
  1386. [3.7.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.7.0...v3.7.1
  1387. [#285]: https://github.com/yannickcr/eslint-plugin-react/issues/285
  1388. [#286]: https://github.com/yannickcr/eslint-plugin-react/issues/286
  1389. [#287]: https://github.com/yannickcr/eslint-plugin-react/issues/287
  1390. ## [3.7.0] - 2015-11-05
  1391. ### Added
  1392. * Add [`jsx-no-bind`][] rule ([#184][] @Daniel15)
  1393. * Add line-aligned option to [`jsx-closing-bracket-location`][] ([#243][] @alopatin)
  1394. ### Fixed
  1395. * Fix a lot of issues about components detection, mostly related to stateless components ([#264][], [#267][], [#268][], [#276][], [#277][], [#280][])
  1396. ### Changed
  1397. * Update dependencies
  1398. [3.7.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.6.3...v3.7.0
  1399. [#184]: https://github.com/yannickcr/eslint-plugin-react/issues/184
  1400. [#243]: https://github.com/yannickcr/eslint-plugin-react/issues/243
  1401. [#264]: https://github.com/yannickcr/eslint-plugin-react/issues/264
  1402. [#267]: https://github.com/yannickcr/eslint-plugin-react/issues/267
  1403. [#268]: https://github.com/yannickcr/eslint-plugin-react/issues/268
  1404. [#276]: https://github.com/yannickcr/eslint-plugin-react/issues/276
  1405. [#277]: https://github.com/yannickcr/eslint-plugin-react/issues/277
  1406. [#280]: https://github.com/yannickcr/eslint-plugin-react/issues/280
  1407. ## [3.6.3] - 2015-10-20
  1408. ### Fixed
  1409. * Fix [`display-name`][] for stateless components ([#256][])
  1410. * Fix [`prop-types`][] props validation in constructor ([#259][])
  1411. * Fix typo in README ([#261][] @chiedojohn)
  1412. [3.6.3]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.6.2...v3.6.3
  1413. [#256]: https://github.com/yannickcr/eslint-plugin-react/issues/256
  1414. [#259]: https://github.com/yannickcr/eslint-plugin-react/issues/259
  1415. [#261]: https://github.com/yannickcr/eslint-plugin-react/pull/261
  1416. ## [3.6.2] - 2015-10-18
  1417. ### Fixed
  1418. * Fix wrong prop-types detection ([#255][])
  1419. [3.6.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.6.1...v3.6.2
  1420. [#255]: https://github.com/yannickcr/eslint-plugin-react/issues/255
  1421. ## [3.6.1] - 2015-10-18
  1422. ### Fixed
  1423. * Fix props validation in constructor ([#254][])
  1424. [3.6.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.6.0...v3.6.1
  1425. [#254]: https://github.com/yannickcr/eslint-plugin-react/issues/254
  1426. ## [3.6.0] - 2015-10-18
  1427. ### Added
  1428. * Add support for stateless function components to [`display-name`][] and [`prop-types`][] ([#237][])
  1429. * Add callbacksLast option to [`jsx-sort-props`][] and [`jsx-sort-prop-types`][] ([#242][] @Daniel15)
  1430. * Add [`prefer-es6-class`][] rule ([#247][] @hamiltondanielb)
  1431. ### Fixed
  1432. * Fix [`forbid-prop-types`][] crash with destructured PropTypes ([#230][] @epmatsw)
  1433. * Fix [`forbid-prop-types`][] to do not modify AST directly ([#249][] @rhysd)
  1434. * Fix [`prop-types`][] crash with empty destructuring ([#251][])
  1435. * Fix [`prop-types`][] to not validate computed keys in destructuring ([#236][])
  1436. ### Changed
  1437. * Update dependencies
  1438. * Improve components detection ([#233][])
  1439. * Documentation improvements ([#248][] @dguo)
  1440. [3.6.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.5.1...v3.6.0
  1441. [#237]: https://github.com/yannickcr/eslint-plugin-react/issues/237
  1442. [#242]: https://github.com/yannickcr/eslint-plugin-react/pull/242
  1443. [#247]: https://github.com/yannickcr/eslint-plugin-react/issues/247
  1444. [#230]: https://github.com/yannickcr/eslint-plugin-react/issues/230
  1445. [#249]: https://github.com/yannickcr/eslint-plugin-react/issues/249
  1446. [#251]: https://github.com/yannickcr/eslint-plugin-react/issues/251
  1447. [#236]: https://github.com/yannickcr/eslint-plugin-react/issues/236
  1448. [#233]: https://github.com/yannickcr/eslint-plugin-react/issues/233
  1449. [#248]: https://github.com/yannickcr/eslint-plugin-react/pull/248
  1450. ## [3.5.1] - 2015-10-01
  1451. ### Fixed
  1452. * Fix [`no-direct-mutation-state`][] to report only in React components ([#229][])
  1453. * Fix [`forbid-prop-types`][] for arrayOf and instanceOf ([#230][])
  1454. ### Changed
  1455. * Documentation improvements ([#232][] @edge)
  1456. [3.5.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.5.0...v3.5.1
  1457. [#229]: https://github.com/yannickcr/eslint-plugin-react/issues/229
  1458. [#230]: https://github.com/yannickcr/eslint-plugin-react/issues/230
  1459. [#232]: https://github.com/yannickcr/eslint-plugin-react/pull/232
  1460. ## [3.5.0] - 2015-09-28
  1461. ### Added
  1462. * Add [`no-direct-mutation-state`][] rule ([#133][], [#201][] @petersendidit)
  1463. * Add [`forbid-prop-types`][] rule ([#215][] @pwmckenna)
  1464. ### Fixed
  1465. * Fix no-did-mount/update-set-state rules, these rules were not working on ES6 classes
  1466. ### Changed
  1467. * Update dependencies
  1468. * Documentation improvements ([#222][] @Andersos)
  1469. [3.5.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.4.2...v3.5.0
  1470. [#133]: https://github.com/yannickcr/eslint-plugin-react/issues/133
  1471. [#201]: https://github.com/yannickcr/eslint-plugin-react/issues/201
  1472. [#215]: https://github.com/yannickcr/eslint-plugin-react/issues/215
  1473. [#222]: https://github.com/yannickcr/eslint-plugin-react/pull/222
  1474. ## [3.4.2] - 2015-09-18
  1475. ### Fixed
  1476. * Only display the `jsx-quotes` deprecation warning with the default formatter ([#221][])
  1477. [3.4.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.4.1...v3.4.2
  1478. [#221]: https://github.com/yannickcr/eslint-plugin-react/issues/221
  1479. ## [3.4.1] - 2015-09-17
  1480. ### Fixed
  1481. * Fix `jsx-quotes` rule deprecation message ([#220][])
  1482. [3.4.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.4.0...v3.4.1
  1483. [#220]: https://github.com/yannickcr/eslint-plugin-react/issues/220
  1484. ## [3.4.0] - 2015-09-16
  1485. ### Added
  1486. * Add namespaced JSX support to [`jsx-no-undef`][] ([#219][] @zertosh)
  1487. * Add option to [`jsx-closing-bracket-location`][] to configure different styles for self-closing and non-empty tags ([#208][] @evocateur)
  1488. ### Deprecated
  1489. * Deprecate `jsx-quotes` rule, will now trigger a warning if used ([#217][])
  1490. [3.4.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.3.2...v3.4.0
  1491. [#219]: https://github.com/yannickcr/eslint-plugin-react/pull/219
  1492. [#208]: https://github.com/yannickcr/eslint-plugin-react/pull/208
  1493. [#217]: https://github.com/yannickcr/eslint-plugin-react/issues/217
  1494. ## [3.3.2] - 2015-09-10
  1495. ### Changed
  1496. * Add `state` in lifecycle methods for [`sort-comp`][] rule ([#197][] @mathieudutour)
  1497. * Treat component with render which returns `createElement` as valid ([#206][] @epmatsw)
  1498. ### Fixed
  1499. * Fix allowed methods on arrayOf in [`prop-types`][] ([#146][])
  1500. * Fix default configuration for [`jsx-boolean-value`][] ([#210][])
  1501. [3.3.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.3.1...v3.3.2
  1502. [#146]: https://github.com/yannickcr/eslint-plugin-react/issues/146
  1503. [#197]: https://github.com/yannickcr/eslint-plugin-react/pull/197
  1504. [#206]: https://github.com/yannickcr/eslint-plugin-react/pull/206
  1505. [#210]: https://github.com/yannickcr/eslint-plugin-react/issues/210
  1506. ## [3.3.1] - 2015-09-01
  1507. ### Changed
  1508. * Update dependencies
  1509. * Update changelog to follow the Keep a CHANGELOG standards
  1510. * Documentation improvements ([#198][] @lencioni)
  1511. ### Fixed
  1512. * Fix [`jsx-closing-bracket-location`][] for multiline props ([#199][])
  1513. [3.3.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.3.0...v3.3.1
  1514. [#198]: https://github.com/yannickcr/eslint-plugin-react/pull/198
  1515. [#199]: https://github.com/yannickcr/eslint-plugin-react/issues/199
  1516. ## [3.3.0] - 2015-08-26
  1517. ### Added
  1518. * Add [`jsx-indent-props`][] rule ([#15][], [#181][])
  1519. * Add `no-set-state rule` ([#197][] @markdalgleish)
  1520. * Add [`jsx-closing-bracket-location`][] rule ([#14][], [#64][])
  1521. ### Changed
  1522. * Update dependencies
  1523. ### Fixed
  1524. * Fix crash on propTypes declarations with an empty body ([#193][] @mattyod)
  1525. [3.3.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.2.3...v3.3.0
  1526. [#15]: https://github.com/yannickcr/eslint-plugin-react/issues/15
  1527. [#181]: https://github.com/yannickcr/eslint-plugin-react/issues/181
  1528. [#197]: https://github.com/yannickcr/eslint-plugin-react/pull/197
  1529. [#14]: https://github.com/yannickcr/eslint-plugin-react/issues/14
  1530. [#64]: https://github.com/yannickcr/eslint-plugin-react/issues/64
  1531. [#193]: https://github.com/yannickcr/eslint-plugin-react/pull/193
  1532. ## [3.2.3] - 2015-08-16
  1533. ### Changed
  1534. * Update dependencies
  1535. ### Fixed
  1536. * Fix object rest/spread handling ([#187][] @xjamundx, [#189][] @Morantron)
  1537. [3.2.3]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.2.2...v3.2.3
  1538. [#187]: https://github.com/yannickcr/eslint-plugin-react/pull/187
  1539. [#189]: https://github.com/yannickcr/eslint-plugin-react/pull/189
  1540. ## [3.2.2] - 2015-08-11
  1541. ### Changed
  1542. * Remove peerDependencies ([#178][])
  1543. [3.2.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.2.1...v3.2.2
  1544. [#178]: https://github.com/yannickcr/eslint-plugin-react/issues/178
  1545. ## [3.2.1] - 2015-08-08
  1546. ### Fixed
  1547. * Fix crash when propTypes don't have any parent ([#182][])
  1548. * Fix jsx-no-literals reporting errors outside JSX ([#183][] @CalebMorris)
  1549. [3.2.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.2.0...v3.2.1
  1550. [#182]: https://github.com/yannickcr/eslint-plugin-react/issues/182
  1551. [#183]: https://github.com/yannickcr/eslint-plugin-react/pull/183
  1552. ## [3.2.0] - 2015-08-04
  1553. ### Added
  1554. * Add [`jsx-max-props-per-line`][] rule ([#13][])
  1555. * Add [`jsx-no-literals`][] rule ([#176][] @CalebMorris)
  1556. ### Changed
  1557. * Update dependencies
  1558. ### Fixed
  1559. * Fix object access in [`jsx-no-undef`][] ([#172][])
  1560. [3.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.1.0...v3.2.0
  1561. [#13]: https://github.com/yannickcr/eslint-plugin-react/issues/13
  1562. [#176]: https://github.com/yannickcr/eslint-plugin-react/pull/176
  1563. [#172]: https://github.com/yannickcr/eslint-plugin-react/issues/172
  1564. ## [3.1.0] - 2015-07-28
  1565. ### Added
  1566. * Add event handlers to [`no-unknown-property`][] ([#164][] @mkenyon)
  1567. * Add customValidators option to [`prop-types`][] ([#145][] @CalebMorris)
  1568. ### Changed
  1569. * Update dependencies
  1570. * Documentation improvements ([#167][] @ngbrown)
  1571. ### Fixed
  1572. * Fix comment handling in [`jsx-curly-spacing`][] ([#165][])
  1573. [3.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v3.0.0...v3.1.0
  1574. [#164]: https://github.com/yannickcr/eslint-plugin-react/pull/164
  1575. [#145]: https://github.com/yannickcr/eslint-plugin-react/issues/145
  1576. [#165]: https://github.com/yannickcr/eslint-plugin-react/issues/165
  1577. [#167]: https://github.com/yannickcr/eslint-plugin-react/pull/167
  1578. ## [3.0.0] - 2015-07-21
  1579. ### Added
  1580. * Add jsx-no-duplicate-props rule ([#161][] @hummlas)
  1581. * Add allowMultiline option to the [`jsx-curly-spacing`][] rule ([#156][] @mathieumg)
  1582. ### Breaking
  1583. * In [`jsx-curly-spacing`][] braces spanning multiple lines are now allowed with `never` option ([#156][] @mathieumg)
  1584. ### Fixed
  1585. * Fix multiple var and destructuring handling in [`prop-types`][] ([#159][])
  1586. * Fix crash when retrieving propType name ([#163][])
  1587. [3.0.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.7.1...v3.0.0
  1588. [#161]: https://github.com/yannickcr/eslint-plugin-react/pull/161
  1589. [#156]: https://github.com/yannickcr/eslint-plugin-react/pull/156
  1590. [#159]: https://github.com/yannickcr/eslint-plugin-react/issues/159
  1591. [#163]: https://github.com/yannickcr/eslint-plugin-react/issues/163
  1592. ## [2.7.1] - 2015-07-16
  1593. ### Changed
  1594. * Update peerDependencies requirements ([#154][])
  1595. * Update codebase for ESLint v1.0.0
  1596. * Change oneOfType to actually keep the child types ([#148][] @CalebMorris)
  1597. * Documentation improvements ([#147][] @lencioni)
  1598. [2.7.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.7.0...v2.7.1
  1599. [#154]: https://github.com/yannickcr/eslint-plugin-react/issues/154
  1600. [#148]: https://github.com/yannickcr/eslint-plugin-react/issues/148
  1601. [#147]: https://github.com/yannickcr/eslint-plugin-react/pull/147
  1602. ## [2.7.0] - 2015-07-11
  1603. ### Added
  1604. * Add [`no-danger`][] rule ([#138][] @scothis)
  1605. * Add [`jsx-curly-spacing`][] rule ([#142][])
  1606. ### Fixed
  1607. * Fix properties limitations on propTypes ([#139][])
  1608. * Fix component detection ([#144][])
  1609. [2.7.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.6.4...v2.7.0
  1610. [#138]: https://github.com/yannickcr/eslint-plugin-react/pull/138
  1611. [#142]: https://github.com/yannickcr/eslint-plugin-react/issues/142
  1612. [#139]: https://github.com/yannickcr/eslint-plugin-react/issues/139
  1613. [#144]: https://github.com/yannickcr/eslint-plugin-react/issues/144
  1614. ## [2.6.4] - 2015-07-02
  1615. ### Fixed
  1616. * Fix simple destructuring handling ([#137][])
  1617. [2.6.4]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.6.3...v2.6.4
  1618. [#137]: https://github.com/yannickcr/eslint-plugin-react/issues/137
  1619. ## [2.6.3] - 2015-06-30
  1620. ### Fixed
  1621. * Fix ignore option for [`prop-types`][] rule ([#135][])
  1622. * Fix nested props destructuring ([#136][])
  1623. [2.6.3]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.6.2...v2.6.3
  1624. [#135]: https://github.com/yannickcr/eslint-plugin-react/issues/135
  1625. [#136]: https://github.com/yannickcr/eslint-plugin-react/issues/136
  1626. ## [2.6.2] - 2015-06-28
  1627. ### Fixed
  1628. * Fix props validation when using a prop as an object key ([#132][])
  1629. [2.6.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.6.1...v2.6.2
  1630. [#132]: https://github.com/yannickcr/eslint-plugin-react/issues/132
  1631. ## [2.6.1] - 2015-06-28
  1632. ### Fixed
  1633. * Fix crash in [`prop-types`][] when encountering an empty variable declaration ([#130][])
  1634. [2.6.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.6.0...v2.6.1
  1635. [#130]: https://github.com/yannickcr/eslint-plugin-react/issues/130
  1636. ## [2.6.0] - 2015-06-28
  1637. ### Added
  1638. * Add support for nested propTypes ([#62][] [#105][] @Cellule)
  1639. * Add [`require-extension`][] rule ([#117][] @scothis)
  1640. * Add support for computed string format in [`prop-types`][] ([#127][] @Cellule)
  1641. * Add ES6 methods to [`sort-comp`][] default configuration ([#97][] [#122][])
  1642. * Add support for props destructuring directly on the this keyword
  1643. * Add `acceptTranspilerName` option to [`display-name`][] rule ([#75][])
  1644. * Add schema to validate rules options
  1645. ### Changed
  1646. * Update dependencies
  1647. ### Fixed
  1648. * Fix test command for Windows ([#114][] @Cellule)
  1649. * Fix detection of missing displayName and propTypes when `ecmaFeatures.jsx` is false ([#119][] @rpl)
  1650. * Fix propTypes destructuring with properties as string ([#118][] @Cellule)
  1651. * Fix [`jsx-sort-prop-types`][] support for keys as string ([#123][] @Cellule)
  1652. * Fix crash if a ClassProperty has only one token ([#125][])
  1653. * Fix invalid class property handling in [`jsx-sort-prop-types`][] ([#129][])
  1654. [2.6.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.5.2...v2.6.0
  1655. [#62]: https://github.com/yannickcr/eslint-plugin-react/issues/62
  1656. [#105]: https://github.com/yannickcr/eslint-plugin-react/issues/105
  1657. [#114]: https://github.com/yannickcr/eslint-plugin-react/pull/114
  1658. [#117]: https://github.com/yannickcr/eslint-plugin-react/pull/117
  1659. [#119]: https://github.com/yannickcr/eslint-plugin-react/pull/119
  1660. [#118]: https://github.com/yannickcr/eslint-plugin-react/issues/118
  1661. [#123]: https://github.com/yannickcr/eslint-plugin-react/pull/123
  1662. [#125]: https://github.com/yannickcr/eslint-plugin-react/issues/125
  1663. [#127]: https://github.com/yannickcr/eslint-plugin-react/pull/127
  1664. [#97]: https://github.com/yannickcr/eslint-plugin-react/issues/97
  1665. [#122]: https://github.com/yannickcr/eslint-plugin-react/issues/122
  1666. [#129]: https://github.com/yannickcr/eslint-plugin-react/issues/129
  1667. [#75]: https://github.com/yannickcr/eslint-plugin-react/issues/75
  1668. ## [2.5.2] - 2015-06-14
  1669. ### Fixed
  1670. * Fix regression in [`jsx-uses-vars`][] with `babel-eslint` ([#110][])
  1671. [2.5.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.5.1...v2.5.2
  1672. [#110]: https://github.com/yannickcr/eslint-plugin-react/issues/110
  1673. ## [2.5.1] - 2015-06-14
  1674. ### Changed
  1675. * Update dependencies
  1676. * Documentation improvements ([#99][] @morenoh149)
  1677. ### Fixed
  1678. * Fix [`prop-types`][] crash when propTypes definition is invalid ([#95][])
  1679. * Fix [`jsx-uses-vars`][] for ES6 classes ([#96][])
  1680. * Fix hasOwnProperty that is taken for a prop ([#102][])
  1681. [2.5.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.5.0...v2.5.1
  1682. [#95]: https://github.com/yannickcr/eslint-plugin-react/issues/95
  1683. [#96]: https://github.com/yannickcr/eslint-plugin-react/issues/96
  1684. [#102]: https://github.com/yannickcr/eslint-plugin-react/issues/102
  1685. [#99]: https://github.com/yannickcr/eslint-plugin-react/pull/99
  1686. ## [2.5.0] - 2015-06-04
  1687. ### Added
  1688. * Add option to make [`wrap-multilines`][] more granular ([#94][] @PiPeep)
  1689. ### Changed
  1690. * Update dependencies
  1691. * Documentation improvements ([#92][] [#93][] @lencioni)
  1692. [2.5.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.4.0...v2.5.0
  1693. [#94]: https://github.com/yannickcr/eslint-plugin-react/pull/94
  1694. [#92]: https://github.com/yannickcr/eslint-plugin-react/pull/92
  1695. [#93]: https://github.com/yannickcr/eslint-plugin-react/pull/93
  1696. ## [2.4.0] - 2015-05-30
  1697. ### Added
  1698. * Add pragma option to [`jsx-uses-react`][] ([#82][] @dominicbarnes)
  1699. * Add context props to [`sort-comp`][] ([#89][] @zertosh)
  1700. ### Changed
  1701. * Update dependencies
  1702. * Documentation improvement ([#91][] @matthewwithanm)
  1703. ### Fixed
  1704. * Fix itemID in [`no-unknown-property`][] rule ([#85][] @cody)
  1705. * Fix license field in package.json ([#90][] @zertosh)
  1706. * Fix usage of contructor in [`sort-comp`][] options ([#88][])
  1707. [2.4.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.3.0...v2.4.0
  1708. [#82]: https://github.com/yannickcr/eslint-plugin-react/pull/82
  1709. [#89]: https://github.com/yannickcr/eslint-plugin-react/pull/89
  1710. [#85]: https://github.com/yannickcr/eslint-plugin-react/pull/85
  1711. [#90]: https://github.com/yannickcr/eslint-plugin-react/pull/90
  1712. [#88]: https://github.com/yannickcr/eslint-plugin-react/issues/88
  1713. [#91]: https://github.com/yannickcr/eslint-plugin-react/pull/91
  1714. ## [2.3.0] - 2015-05-14
  1715. ### Added
  1716. * Add [`sort-comp`][] rule ([#39][])
  1717. * Add `allow-in-func` option to [`no-did-mount-set-state`][] ([#56][])
  1718. ### Changed
  1719. * Update dependencies
  1720. * Improve errors locations for `prop-types`
  1721. ### Fixed
  1722. * Fix quoted propTypes in ES6 ([#77][])
  1723. [2.3.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.2.0...v2.3.0
  1724. [#39]: https://github.com/yannickcr/eslint-plugin-react/issues/39
  1725. [#77]: https://github.com/yannickcr/eslint-plugin-react/issues/77
  1726. [#56]: https://github.com/yannickcr/eslint-plugin-react/issues/56
  1727. ## [2.2.0] - 2015-04-22
  1728. ### Added
  1729. * Add [`jsx-sort-prop-types`][] rule ([#38][] @AlexKVal)
  1730. ### Changed
  1731. * Documentation improvements ([#71][] @AlexKVal)
  1732. ### Fixed
  1733. * Fix variables marked as used when a prop has the same name ([#69][] @burnnat)
  1734. [2.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.1.1...v2.2.0
  1735. [#38]: https://github.com/yannickcr/eslint-plugin-react/issues/38
  1736. [#69]: https://github.com/yannickcr/eslint-plugin-react/pull/69
  1737. [#71]: https://github.com/yannickcr/eslint-plugin-react/pull/71
  1738. ## [2.1.1] - 2015-04-17
  1739. ### Added
  1740. * Add support for classes static properties ([#43][])
  1741. * Add tests for the `babel-eslint` parser
  1742. * Add ESLint as peerDependency ([#63][] @AlexKVal)
  1743. ### Changed
  1744. * Documentation improvements ([#55][] @AlexKVal, [#60][] @chriscalo)
  1745. [2.1.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.1.0...v2.1.1
  1746. [#43]: https://github.com/yannickcr/eslint-plugin-react/issues/43
  1747. [#63]: https://github.com/yannickcr/eslint-plugin-react/pull/63
  1748. [#55]: https://github.com/yannickcr/eslint-plugin-react/pull/55
  1749. [#60]: https://github.com/yannickcr/eslint-plugin-react/pull/60
  1750. ## [2.1.0] - 2015-04-06
  1751. ### Added
  1752. * Add [`jsx-boolean-value`][] rule ([#11][])
  1753. * Add support for static methods in [`display-name`][] and [`prop-types`][] ([#48][])
  1754. ### Changed
  1755. * Update [`jsx-sort-props`][] to reset the alphabetical verification on spread ([#47][] @zertosh)
  1756. * Update [`jsx-uses-vars`][] to be enabled by default ([#49][] @banderson)
  1757. ### Fixed
  1758. * Fix describing comment for hasSpreadOperator() method ([#53][] @AlexKVal)
  1759. [2.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.0.2...v2.1.0
  1760. [#47]: https://github.com/yannickcr/eslint-plugin-react/pull/47
  1761. [#49]: https://github.com/yannickcr/eslint-plugin-react/pull/49
  1762. [#11]: https://github.com/yannickcr/eslint-plugin-react/issues/11
  1763. [#48]: https://github.com/yannickcr/eslint-plugin-react/issues/48
  1764. [#53]: https://github.com/yannickcr/eslint-plugin-react/pull/53
  1765. ## [2.0.2] - 2015-03-31
  1766. ### Fixed
  1767. * Fix ignore rest spread when destructuring props ([#46][])
  1768. * Fix component detection in [`prop-types`][] and [`display-name`][] ([#45][])
  1769. * Fix spread handling in [`jsx-sort-props`][] ([#42][] @zertosh)
  1770. [2.0.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.0.1...v2.0.2
  1771. [#46]: https://github.com/yannickcr/eslint-plugin-react/issues/46
  1772. [#45]: https://github.com/yannickcr/eslint-plugin-react/issues/45
  1773. [#42]: https://github.com/yannickcr/eslint-plugin-react/pull/42
  1774. ## [2.0.1] - 2015-03-30
  1775. ### Fixed
  1776. * Fix props detection when used in an object ([#41][])
  1777. [2.0.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v2.0.0...v2.0.1
  1778. [#41]: https://github.com/yannickcr/eslint-plugin-react/issues/41
  1779. ## [2.0.0] - 2015-03-29
  1780. ### Added
  1781. * Add [`jsx-sort-props`][] rule ([#16][])
  1782. * Add [`no-unknown-property`][] rule ([#28][])
  1783. * Add ignore option to [`prop-types`][] rule
  1784. ### Changed
  1785. * Update dependencies
  1786. ### Breaking
  1787. * In [`prop-types`][] the children prop is no longer ignored
  1788. ### Fixed
  1789. * Fix components are now detected when using ES6 classes ([#24][])
  1790. * Fix [`prop-types`][] now return the right line/column ([#33][])
  1791. * Fix props are now detected when destructuring ([#27][])
  1792. * Fix only check for computed property names in [`prop-types`][] ([#36][] @burnnat)
  1793. [2.0.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.6.1...v2.0.0
  1794. [#16]: https://github.com/yannickcr/eslint-plugin-react/issues/16
  1795. [#28]: https://github.com/yannickcr/eslint-plugin-react/issues/28
  1796. [#24]: https://github.com/yannickcr/eslint-plugin-react/issues/24
  1797. [#33]: https://github.com/yannickcr/eslint-plugin-react/issues/33
  1798. [#27]: https://github.com/yannickcr/eslint-plugin-react/issues/27
  1799. [#36]: https://github.com/yannickcr/eslint-plugin-react/pull/36
  1800. ## [1.6.1] - 2015-03-25
  1801. ### Changed
  1802. * Update `jsx-quotes` documentation
  1803. ### Fixed
  1804. * Fix [`jsx-no-undef`][] with `babel-eslint` ([#30][])
  1805. * Fix `jsx-quotes` on Literal childs ([#29][])
  1806. [1.6.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.6.0...v1.6.1
  1807. [#30]: https://github.com/yannickcr/eslint-plugin-react/issues/30
  1808. [#29]: https://github.com/yannickcr/eslint-plugin-react/issues/29
  1809. ## [1.6.0] - 2015-03-22
  1810. ### Added
  1811. * Add [`jsx-no-undef`][] rule
  1812. * Add `jsx-quotes` rule ([#12][])
  1813. * Add `@jsx` pragma support ([#23][])
  1814. ### Changed
  1815. * Allow `this.getState` references (not calls) in lifecycle methods ([#22][] @benmosher)
  1816. * Update dependencies
  1817. ### Fixed
  1818. * Fix [`react-in-jsx-scope`][] in Node.js env
  1819. * Fix usage of propTypes with an external object ([#9][])
  1820. [1.6.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.5.0...v1.6.0
  1821. [#12]: https://github.com/yannickcr/eslint-plugin-react/issues/12
  1822. [#23]: https://github.com/yannickcr/eslint-plugin-react/issues/23
  1823. [#9]: https://github.com/yannickcr/eslint-plugin-react/issues/9
  1824. [#22]: https://github.com/yannickcr/eslint-plugin-react/pull/22
  1825. ## [1.5.0] - 2015-03-14
  1826. ### Added
  1827. * Add [`jsx-uses-vars`][] rule
  1828. ### Fixed
  1829. * Fix [`jsx-uses-react`][] for ESLint 0.17.0
  1830. [1.5.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.4.1...v1.5.0
  1831. ## [1.4.1] - 2015-03-03
  1832. ### Fixed
  1833. * Fix `this.props.children` marked as missing in props validation ([#7][])
  1834. * Fix usage of `this.props` without property ([#8][])
  1835. [1.4.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.4.0...v1.4.1
  1836. [#7]: https://github.com/yannickcr/eslint-plugin-react/issues/7
  1837. [#8]: https://github.com/yannickcr/eslint-plugin-react/issues/8
  1838. ## [1.4.0] - 2015-02-24
  1839. ### Added
  1840. * Add [`react-in-jsx-scope`][] rule ([#5][] @glenjamin)
  1841. * Add [`jsx-uses-react`][] rule ([#6][] @glenjamin)
  1842. ### Changed
  1843. * Update [`prop-types`][] to check props usage insead of propTypes presence ([#4][])
  1844. [1.4.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.3.0...v1.4.0
  1845. [#4]: https://github.com/yannickcr/eslint-plugin-react/issues/4
  1846. [#5]: https://github.com/yannickcr/eslint-plugin-react/pull/5
  1847. [#6]: https://github.com/yannickcr/eslint-plugin-react/pull/6
  1848. ## [1.3.0] - 2015-02-24
  1849. ### Added
  1850. * Add [`no-did-mount-set-state`][] rule
  1851. * Add [`no-did-update-set-state`][] rule
  1852. ### Changed
  1853. * Update dependencies
  1854. [1.3.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.2.2...v1.3.0
  1855. ## [1.2.2] - 2015-02-09
  1856. ### Changed
  1857. * Update dependencies
  1858. ### Fixed
  1859. * Fix childs detection in [`self-closing-comp`][] ([#3][])
  1860. [1.2.2]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.2.1...v1.2.2
  1861. [#3]: https://github.com/yannickcr/eslint-plugin-react/issues/3
  1862. ## [1.2.1] - 2015-01-29
  1863. ### Changed
  1864. * Update Readme
  1865. * Update dependencies
  1866. * Update [`wrap-multilines`][] and [`self-closing-comp`][] rules for ESLint 0.13.0
  1867. [1.2.1]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.2.0...v1.2.1
  1868. ## [1.2.0] - 2014-12-29
  1869. ### Added
  1870. * Add [`self-closing-comp`][] rule
  1871. ### Fixed
  1872. * Fix [`display-name`][] and [`prop-types`][] rules
  1873. [1.2.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.1.0...v1.2.0
  1874. ## [1.1.0] - 2014-12-28
  1875. ### Added
  1876. * Add [`display-name`][] rule
  1877. * Add [`wrap-multilines`][] rule
  1878. * Add rules documentation
  1879. * Add rules tests
  1880. [1.1.0]: https://github.com/yannickcr/eslint-plugin-react/compare/v1.0.0...v1.1.0
  1881. ## 1.0.0 - 2014-12-16
  1882. ### Added
  1883. * First revision
  1884. [`display-name`]: docs/rules/display-name.md
  1885. [`forbid-component-props`]: docs/rules/forbid-component-props.md
  1886. [`forbid-elements`]: docs/rules/forbid-elements.md
  1887. [`forbid-foreign-prop-types`]: docs/rules/forbid-foreign-prop-types.md
  1888. [`forbid-prop-types`]: docs/rules/forbid-prop-types.md
  1889. [`no-array-index-key`]: docs/rules/no-array-index-key.md
  1890. [`no-children-prop`]: docs/rules/no-children-prop.md
  1891. [`no-danger`]: docs/rules/no-danger.md
  1892. [`no-danger-with-children`]: docs/rules/no-danger-with-children.md
  1893. [`no-deprecated`]: docs/rules/no-deprecated.md
  1894. [`no-did-mount-set-state`]: docs/rules/no-did-mount-set-state.md
  1895. [`no-did-update-set-state`]: docs/rules/no-did-update-set-state.md
  1896. [`no-direct-mutation-state`]: docs/rules/no-direct-mutation-state.md
  1897. [`no-find-dom-node`]: docs/rules/no-find-dom-node.md
  1898. [`no-is-mounted`]: docs/rules/no-is-mounted.md
  1899. [`no-multi-comp`]: docs/rules/no-multi-comp.md
  1900. [`no-render-return-value`]: docs/rules/no-render-return-value.md
  1901. [`no-set-state`]: docs/rules/no-set-state.md
  1902. [`no-string-refs`]: docs/rules/no-string-refs.md
  1903. [`no-unescaped-entities`]: docs/rules/no-unescaped-entities.md
  1904. [`no-unknown-property`]: docs/rules/no-unknown-property.md
  1905. [`no-unused-prop-types`]: docs/rules/no-unused-prop-types.md
  1906. [`no-will-update-set-state`]: docs/rules/no-will-update-set-state.md
  1907. [`prefer-es6-class`]: docs/rules/prefer-es6-class.md
  1908. [`prefer-stateless-function`]: docs/rules/prefer-stateless-function.md
  1909. [`prop-types`]: docs/rules/prop-types.md
  1910. [`react-in-jsx-scope`]: docs/rules/react-in-jsx-scope.md
  1911. [`require-optimization`]: docs/rules/require-optimization.md
  1912. [`require-render-return`]: docs/rules/require-render-return.md
  1913. [`self-closing-comp`]: docs/rules/self-closing-comp.md
  1914. [`sort-comp`]: docs/rules/sort-comp.md
  1915. [`sort-prop-types`]: docs/rules/sort-prop-types.md
  1916. [`style-prop-object`]: docs/rules/style-prop-object.md
  1917. [`jsx-boolean-value`]: docs/rules/jsx-boolean-value.md
  1918. [`jsx-closing-bracket-location`]: docs/rules/jsx-closing-bracket-location.md
  1919. [`jsx-curly-spacing`]: docs/rules/jsx-curly-spacing.md
  1920. [`jsx-equals-spacing`]: docs/rules/jsx-equals-spacing.md
  1921. [`jsx-filename-extension`]: docs/rules/jsx-filename-extension.md
  1922. [`jsx-first-prop-new-line`]: docs/rules/jsx-first-prop-new-line.md
  1923. [`jsx-handler-names`]: docs/rules/jsx-handler-names.md
  1924. [`jsx-indent`]: docs/rules/jsx-indent.md
  1925. [`jsx-indent-props`]: docs/rules/jsx-indent-props.md
  1926. [`jsx-key`]: docs/rules/jsx-key.md
  1927. [`jsx-max-props-per-line`]: docs/rules/jsx-max-props-per-line.md
  1928. [`jsx-no-bind`]: docs/rules/jsx-no-bind.md
  1929. [`jsx-no-comment-textnodes`]: docs/rules/jsx-no-comment-textnodes.md
  1930. [`jsx-no-duplicate-props`]: docs/rules/jsx-no-duplicate-props.md
  1931. [`jsx-no-literals`]: docs/rules/jsx-no-literals.md
  1932. [`jsx-no-target-blank`]: docs/rules/jsx-no-target-blank.md
  1933. [`jsx-no-undef`]: docs/rules/jsx-no-undef.md
  1934. [`jsx-pascal-case`]: docs/rules/jsx-pascal-case.md
  1935. [`require-default-props`]: docs/rules/require-default-props.md
  1936. [`jsx-sort-props`]: docs/rules/jsx-sort-props.md
  1937. [`jsx-space-before-closing`]: docs/rules/jsx-space-before-closing.md
  1938. [`jsx-tag-spacing`]: docs/rules/jsx-tag-spacing.md
  1939. [`jsx-uses-react`]: docs/rules/jsx-uses-react.md
  1940. [`jsx-uses-vars`]: docs/rules/jsx-uses-vars.md
  1941. [`jsx-wrap-multilines`]: docs/rules/jsx-wrap-multilines.md
  1942. [`void-dom-elements-no-children`]: docs/rules/void-dom-elements-no-children.md
  1943. [`default-props-match-prop-types`]: docs/rules/default-props-match-prop-types.md
  1944. [`no-redundant-should-component-update`]: docs/rules/no-redundant-should-component-update.md
  1945. [`jsx-closing-tag-location`]: docs/rules/jsx-closing-tag-location.md
  1946. [`no-unused-state`]: docs/rules/no-unused-state.md
  1947. [`boolean-prop-naming`]: docs/rules/boolean-prop-naming.md
  1948. [`no-typos`]: docs/rules/no-typos.md
  1949. [`jsx-sort-prop-types`]: docs/rules/sort-prop-types.md
  1950. [`require-extension`]: docs/rules/require-extension.md
  1951. [`no-comment-textnodes`]: docs/rules/jsx-no-comment-textnodes.md
  1952. [`wrap-multilines`]: docs/rules/jsx-wrap-multilines.md
  1953. [`jsx-curly-brace-presence`]: docs/rules/jsx-curly-brace-presence.md
  1954. [`jsx-one-expression-per-line`]: docs/rules/jsx-one-expression-per-line.md
  1955. [`destructuring-assignment`]: docs/rules/destructuring-assignment.md
  1956. [`no-access-state-in-setstate`]: docs/rules/no-access-state-in-setstate.md
  1957. [`button-has-type`]: docs/rules/button-has-type.md
  1958. [`forbid-dom-props`]: docs/rules/forbid-dom-props.md
  1959. [`jsx-child-element-spacing`]: docs/rules/jsx-child-element-spacing.md
  1960. [`no-this-in-sfc`]: docs/rules/no-this-in-sfc.md
  1961. [`jsx-sort-default-props`]: docs/rules/jsx-sort-default-props.md
  1962. [`jsx-max-depth`]: docs/rules/jsx-max-depth.md
  1963. [`jsx-props-no-multi-spaces`]: docs/rules/jsx-props-no-multi-spaces.md
  1964. [`no-unsafe`]: docs/rules/no-unsafe.md