CHANGELOG.md 31.6 KB
Newer Older
Dan Abramov's avatar
Dan Abramov committed
1
## 1.0.0 (May 18, 2017)
Dan Abramov's avatar
Dan Abramov committed
2

Dan Abramov's avatar
Dan Abramov committed
3
We’ve been working on this release for the past few months, and there are many big impovements, from migrating to webpack 2 to a brand new runtime error overlay and built-in support for Progressive Web Apps.
Dan Abramov's avatar
Dan Abramov committed
4

Dan Abramov's avatar
Dan Abramov committed
5
6
So instead of just enumerating them here, we decided to write a blog post about all the new features.  
Check it out: **[What’s New in Create React App](https://facebook.github.io/react/blog/2017/05/18/whats-new-in-create-react-app.html)**.
Dan Abramov's avatar
Dan Abramov committed
7

Dan Abramov's avatar
Dan Abramov committed
8
Have you read it? Now let's see how to update your app to the latest version.
Dan Abramov's avatar
Dan Abramov committed
9

Dan Abramov's avatar
Dan Abramov committed
10
### Migrating from 0.9.5 to 1.0.0
Dan Abramov's avatar
Dan Abramov committed
11

Dan Abramov's avatar
Dan Abramov committed
12
First, ensure you are using the latest [Node 6 LTS or newer](https://nodejs.org/en/download/). In 1.0.0, we have dropped support for Node 4 and NPM 2.
Dan Abramov's avatar
Dan Abramov committed
13
14
15
16

Inside any created project that has not been ejected, run:

```
Dan Abramov's avatar
Dan Abramov committed
17
npm install --save-dev --save-exact react-scripts@1.0.0
Dan Abramov's avatar
Dan Abramov committed
18
19
```

Dan Abramov's avatar
Dan Abramov committed
20
You may also optionally update the global command-line utility for bug fixes:
Joe Haddad's avatar
Joe Haddad committed
21
22

```
Dan Abramov's avatar
Dan Abramov committed
23
npm install -g create-react-app
Joe Haddad's avatar
Joe Haddad committed
24
25
```

Dan Abramov's avatar
Dan Abramov committed
26
27
28
29
#### Ensure application and test files reside in `src/`

We've never supported importing files from outside `src/`, nor have we supported running tests outside of `src/`.<br>
We also never explicitly forbid doing so, which caused confusion when things didn't work like they should.
Joe Haddad's avatar
Joe Haddad committed
30

Dan Abramov's avatar
Dan Abramov committed
31
When running or building your application, you may see a message like so:
Joe Haddad's avatar
Joe Haddad committed
32
```
Dan Abramov's avatar
Dan Abramov committed
33
You attempted to import ... which falls outside of the project src/ directory.
Joe Haddad's avatar
Joe Haddad committed
34
35
```

Dan Abramov's avatar
Dan Abramov committed
36
To remedy this, simply move any files that you `import` within `src/` and update your relative imports accordingly. This enforces that files that `import` each other stay in `src/`, and other folders serve different purposes (e.g. the `public/` folder just gets served from the root).
Dan Abramov's avatar
Dan Abramov committed
37

Dan Abramov's avatar
Dan Abramov committed
38
If you used relative imports outside the project directory as a way to share code with another project, consider using a [monorepo](https://github.com/lerna/lerna) instead, so that other projects are symlinked to your project's `node_modules/`. Then you can import them as a Node modules.
Dan Abramov's avatar
Dan Abramov committed
39

Dan Abramov's avatar
Dan Abramov committed
40
While running `npm test`, you may notice some of your tests are missing. Please move any top-level test directory (i.e. `__test__`, `__spec__`) or files (i.e. `*.test.js`, `*.spec.js`) into `src/`. Conversely, if you have some similarly named files that you *don’t* want Jest to run, move them outside of `src/`.
Dan Abramov's avatar
Dan Abramov committed
41

Dan Abramov's avatar
Dan Abramov committed
42
#### Import required locales for Moment.js
Dan Abramov's avatar
Dan Abramov committed
43

Dan Abramov's avatar
Dan Abramov committed
44
Moment.js locales are now purposely excluded from the bundle unless explicitly depended on.
Dan Abramov's avatar
Dan Abramov committed
45

Dan Abramov's avatar
Dan Abramov committed
46
47
48
49
50
51
Please import the locales you need:
```js
import moment from 'moment';
import 'moment/locale/fr';
import 'moment/locale/es';
```
Dan Abramov's avatar
Dan Abramov committed
52

Dan Abramov's avatar
Dan Abramov committed
53
#### You can no longer import file content
Dan Abramov's avatar
Dan Abramov committed
54

Dan Abramov's avatar
Dan Abramov committed
55
56
You can no longer import a file and expect to receive its contents as an encoded string.<br>
This behavior was confusing and inconsistent depending on the file size.
Dan Abramov's avatar
Dan Abramov committed
57

Dan Abramov's avatar
Dan Abramov committed
58
Importing files with unknown extensions will now always include them into the build and return a valid URL.
59

Dan Abramov's avatar
Dan Abramov committed
60
61
If you'd like to import a file's contents as a string, consider [contributing to #1944](https://github.com/facebookincubator/create-react-app/issues/1944).
For the time being, you must embed assets within an export:
62

Dan Abramov's avatar
Dan Abramov committed
63
64
65
66
67
```js
// sample.txt
export default `i want
this data as a string
`;
68
69
```

Dan Abramov's avatar
Dan Abramov committed
70
71
72
You can then import this as so:
```js
import sampleText from './sample.txt';
73

Dan Abramov's avatar
Dan Abramov committed
74
// ...
75
```
Joe Haddad's avatar
Joe Haddad committed
76

Dan Abramov's avatar
Dan Abramov committed
77
#### Confusing window globals can no longer be used without `window` qualifier
Joe Haddad's avatar
Joe Haddad committed
78

Dan Abramov's avatar
Dan Abramov committed
79
Please prefix any global method with `window.`, you may experience this with methods such as `confirm`.
Joe Haddad's avatar
Joe Haddad committed
80

Dan Abramov's avatar
Dan Abramov committed
81
Simply update references from `confirm` to `window.confirm`.
Joe Haddad's avatar
Joe Haddad committed
82

Dan Abramov's avatar
Dan Abramov committed
83
Note that this new lint error will likely uncover legitimate accidental uses of global variables where you meant to define a local variable instead.
Dan Abramov's avatar
Dan Abramov committed
84

Dan Abramov's avatar
Dan Abramov committed
85
#### Why is my import erroring out?
Joe Haddad's avatar
Joe Haddad committed
86

Dan Abramov's avatar
Dan Abramov committed
87
You can no longer use AMD import syntax, nor define an import anywhere other than the top of the file.
Joe Haddad's avatar
Joe Haddad committed
88

Dan Abramov's avatar
Dan Abramov committed
89
This is to reduce confusion around import statements, which do not allow you to evaluate code between them.
Joe Haddad's avatar
Joe Haddad committed
90

Dan Abramov's avatar
Dan Abramov committed
91
#### I see many accessibility warnings
Joe Haddad's avatar
Joe Haddad committed
92

Dan Abramov's avatar
Dan Abramov committed
93
We have enabled a new set of rules to help make applications more accessible, please take time to learn about the errors and fix them.
Dan Abramov's avatar
Dan Abramov committed
94

Dan Abramov's avatar
Dan Abramov committed
95
You can search for every lint rule name in the right column and read its description on the web. The fixes are usually very simple.
Dan Abramov's avatar
Dan Abramov committed
96

Dan Abramov's avatar
Dan Abramov committed
97
#### I see many warnings about PropTypes and createClass
Joe Haddad's avatar
Joe Haddad committed
98

Dan Abramov's avatar
Dan Abramov committed
99
100
We have enabled the lint warnings about React APIs deprecated in React 15.5.
You can automatically convert your project to fix them by running the [corresponding codemods](https://github.com/reactjs/react-codemod).
101

Dan Abramov's avatar
Dan Abramov committed
102
#### How do I make my tests work with Jest 20?
Dan Abramov's avatar
Dan Abramov committed
103

Dan Abramov's avatar
Dan Abramov committed
104
Please refer to the [Jest 19](https://facebook.github.io/jest/blog/2017/02/21/jest-19-immersive-watch-mode-test-platform-improvements.html#breaking-changes) and [Jest 20](http://facebook.github.io/jest/blog/2017/05/06/jest-20-delightful-testing-multi-project-runner.html#breaking-changes) breaking changes for migration instructions.
Joe Haddad's avatar
Joe Haddad committed
105

Dan Abramov's avatar
Dan Abramov committed
106
If you use snapshots, you will likely need to update them once because of the change in format.
Joe Haddad's avatar
Joe Haddad committed
107

Dan Abramov's avatar
Dan Abramov committed
108
#### Flexbox 2009 spec is no longer polyfilled
Dan Abramov's avatar
Dan Abramov committed
109

Dan Abramov's avatar
Dan Abramov committed
110
The old, 2009 specification for Flexbox is [deprecated and is 2.3x slower than the latest specification](https://developers.google.com/web/tools/lighthouse/audits/old-flexbox).
Joe Haddad's avatar
Joe Haddad committed
111

Dan Abramov's avatar
Dan Abramov committed
112
We are no longer polyfilling it automatically.
Dan Abramov's avatar
Dan Abramov committed
113

Dan Abramov's avatar
Dan Abramov committed
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#### How to turn my app into a [Progressive Web App](https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#making-a-progressive-web-app)?

After the regular update procedure above, add these line to `<head>` in `public/index.html`:

```html
    <meta name="theme-color" content="#000000">
    <!--
      manifest.json provides metadata used when your web app is added to the
      homescreen on Android. See https://developers.google.com/web/fundamentals/engage-and-retain/web-app-manifest/
    -->
    <link rel="manifest" href="%PUBLIC_URL%/manifest.json">
```

Then create a file called `public/manifest.json` that looks like this:

```js
{
  "short_name": "React App",
  "name": "Create React App Sample",
  "icons": [
    {
      "src": "favicon.ico",
      "sizes": "192x192",
      "type": "image/png"
    }
  ],
  "start_url": "./index.html",
  "display": "standalone",
  "theme_color": "#000000",
  "background_color": "#ffffff"
}
```

Finally, create `src/registerServiceWorker.js` with [this template](https://github.com/facebookincubator/create-react-app/blob/bf9eca25f519c73f69cff20ac49ce9500e578fe0/packages/react-scripts/template/src/registerServiceWorker.js), [import it](https://github.com/facebookincubator/create-react-app/blob/bf9eca25f519c73f69cff20ac49ce9500e578fe0/packages/react-scripts/template/src/index.js#L4) from `src/index.js` and [call the function it exports](https://github.com/facebookincubator/create-react-app/blob/bf9eca25f519c73f69cff20ac49ce9500e578fe0/packages/react-scripts/template/src/index.js#L8).

Dan Abramov's avatar
Dan Abramov committed
149
#### Anything missing?
Joe Haddad's avatar
Joe Haddad committed
150

Dan Abramov's avatar
Dan Abramov committed
151
This was a large release, and we might have missed something.
Dan Abramov's avatar
Dan Abramov committed
152

Dan Abramov's avatar
Dan Abramov committed
153
Please [file an issue](https://github.com/facebookincubator/create-react-app/issues/new) and we will try to help.
Dan Abramov's avatar
Dan Abramov committed
154

Dan Abramov's avatar
Dan Abramov committed
155
### Detailed Changelog
Joe Haddad's avatar
Joe Haddad committed
156

Dan Abramov's avatar
Dan Abramov committed
157
**For a readable summary of the changes, [check out our blog post](https://facebook.github.io/react/blog/2017/05/18/whats-new-in-create-react-app.html).**
Joe Haddad's avatar
Joe Haddad committed
158

Joe Haddad's avatar
Joe Haddad committed
159
#### :boom: Breaking Change
Dan Abramov's avatar
Dan Abramov committed
160
161
* `react-dev-utils`, `react-scripts`
  * [#2189](https://github.com/facebookincubator/create-react-app/pull/2189) Add `ModuleScopePlugin` to ensure files reside in `src/`. ([@Timer](https://github.com/Timer))
Joe Haddad's avatar
Joe Haddad committed
162
* `react-scripts`
Dan Abramov's avatar
Dan Abramov committed
163
164
165
166
167
168
169
170
171
172
173
  * [#2187](https://github.com/facebookincubator/create-react-app/pull/2187) Ignore Moment.js locales by default. ([@gaearon](https://github.com/gaearon))
  * [#1808](https://github.com/facebookincubator/create-react-app/pull/1808) Only run tests in `src/` (#544). ([@motevets](https://github.com/motevets))
  * [#1771](https://github.com/facebookincubator/create-react-app/pull/1771) Some flexbox bugs are autofixed, and support for 2009 spec is dropped. ([@cr101](https://github.com/cr101))
  * [#1614](https://github.com/facebookincubator/create-react-app/pull/1614) Upgrade to Jest ~~19~~ (now 20). ([@rogeliog](https://github.com/rogeliog))
  * [#1305](https://github.com/facebookincubator/create-react-app/pull/1305) Whitelist files that can be embedded through url-loader. ([@pugnascotia](https://github.com/pugnascotia))
* `eslint-config-react-app`, `react-dev-utils`
  * [#2186](https://github.com/facebookincubator/create-react-app/pull/2186) Tweak lint rules. ([@gaearon](https://github.com/gaearon))
* `eslint-config-react-app`, `react-error-overlay`, `react-scripts`
  * [#2163](https://github.com/facebookincubator/create-react-app/pull/2163) Upgrade `eslint-plugin-jsx-a11y` and activate more rules. ([@AlmeroSteyn](https://github.com/AlmeroSteyn))
* `eslint-config-react-app`, `react-scripts`
  * [#2130](https://github.com/facebookincubator/create-react-app/pull/2130) Confusing global variables are now blacklisted. ([@doshisid](https://github.com/doshisid))
Dan Abramov's avatar
Dan Abramov committed
174

Joe Haddad's avatar
Joe Haddad committed
175

Dan Abramov's avatar
Dan Abramov committed
176
177
178
179
180
181
182
183
184
185
186
187
#### :rocket: New Feature
* `react-scripts`
  * [#1728](https://github.com/facebookincubator/create-react-app/pull/1728) Scaffolded applications are now Progressive Web Apps by default. ([@jeffposnick](https://github.com/jeffposnick))
  * [#1344](https://github.com/facebookincubator/create-react-app/pull/1344) Support multiple env configuration files. ([@tuchk4](https://github.com/tuchk4))
  * [#2168](https://github.com/facebookincubator/create-react-app/pull/2168) Enable CSS sourcemaps in production. ([@gaearon](https://github.com/gaearon))
  * [#1830](https://github.com/facebookincubator/create-react-app/pull/1830) Make subset of Jest options overridable. ([@ryansully](https://github.com/ryansully))
* `react-dev-utils`, `react-scripts`
  * [#1101](https://github.com/facebookincubator/create-react-app/pull/1101) Add `react-error-overlay`, our new crash overlay. ([@Timer](https://github.com/Timer))
  * [#1590](https://github.com/facebookincubator/create-react-app/pull/1590) Support specifying a node script as BROWSER environment variable. ([@GAumala](https://github.com/GAumala))
  * [#1790](https://github.com/facebookincubator/create-react-app/pull/1790) Support multiple proxies in development. ([@jamesblight](https://github.com/jamesblight))
* `eslint-config-react-app`, `react-scripts`
  * [#2163](https://github.com/facebookincubator/create-react-app/pull/2163) Upgrade `eslint-plugin-jsx-a11y` and activate more rules. ([@AlmeroSteyn](https://github.com/AlmeroSteyn))
Dan Abramov's avatar
Dan Abramov committed
188

Joe Haddad's avatar
Joe Haddad committed
189
190
191

#### :bug: Bug Fix
* `react-scripts`
Dan Abramov's avatar
Dan Abramov committed
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
  * [#2219](https://github.com/facebookincubator/create-react-app/pull/2219) Improve interaction between compile and runtime overlays ([@gaearon](https://github.com/gaearon))
  * [#2200](https://github.com/facebookincubator/create-react-app/pull/2200) Disable Uglify reduce_vars. ([@gaearon](https://github.com/gaearon))
  * [#2166](https://github.com/facebookincubator/create-react-app/pull/2166) Support hoisting `react-scripts` and add `require.resolve()` to loaders. ([@gaearon](https://github.com/gaearon))
  * [#2115](https://github.com/facebookincubator/create-react-app/pull/2115) Do not respect `.eslintignore`. ([@Timer](https://github.com/Timer))
  * [#2063](https://github.com/facebookincubator/create-react-app/pull/2063) Ignore yarn cache directory when searching for tests. ([@jmorrell](https://github.com/jmorrell))
  * [#2050](https://github.com/facebookincubator/create-react-app/pull/2050) Name development chunk names. ([@herrstucki](https://github.com/herrstucki))
  * [#2013](https://github.com/facebookincubator/create-react-app/pull/2013) Minify CSS post-webpack 2. ([@viankakrisna](https://github.com/viankakrisna))
  * [#1839](https://github.com/facebookincubator/create-react-app/pull/1839) Resolve `localhost` when offline (Windows). ([@bunshar](https://github.com/bunshar))
  * [#1301](https://github.com/facebookincubator/create-react-app/pull/1301) Bind to host environment variable. ([@GAumala](https://github.com/GAumala))
  * [#1890](https://github.com/facebookincubator/create-react-app/pull/1890) Ensure proxy url starts with `http://` or `https://`. ([@bunshar](https://github.com/bunshar))
  * [#1861](https://github.com/facebookincubator/create-react-app/pull/1861) Upgrade `detect-port`. ([@Andreyco](https://github.com/Andreyco))
  * [#1821](https://github.com/facebookincubator/create-react-app/pull/1821) Fix default responsive behavior in iOS 9+. ([@GreenGremlin](https://github.com/GreenGremlin))
  * [#1819](https://github.com/facebookincubator/create-react-app/pull/1819) Makes end-to-end testing crash on unhandled rejections. ([@dbismut](https://github.com/dbismut))
  * [#1810](https://github.com/facebookincubator/create-react-app/pull/1810) Fixes a silent crash when ejecting. ([@gaearon](https://github.com/gaearon))
  * [#1727](https://github.com/facebookincubator/create-react-app/pull/1727) Fix ejecting from a scoped fork. ([@gaearon](https://github.com/gaearon))
Joe Haddad's avatar
Joe Haddad committed
207
* `react-dev-utils`
Dan Abramov's avatar
Dan Abramov committed
208
209
210
211
212
213
214
215
216
217
218
  * [#2076](https://github.com/facebookincubator/create-react-app/pull/2076) `openBrowser` now supports urls with more than one parameter. ([@alisonmonteiro](https://github.com/alisonmonteiro))
  * [#1690](https://github.com/facebookincubator/create-react-app/pull/1690) Fix `openBrowser()` when `BROWSER=open` on macOS. ([@bpierre](https://github.com/bpierre))
  * [#1696](https://github.com/facebookincubator/create-react-app/pull/1696) Fix an edge-case for people with the username `cwd`. ([@chrisdrackett](https://github.com/chrisdrackett))
* `create-react-app`
  * [#1863](https://github.com/facebookincubator/create-react-app/pull/1863) Check internet connectivity with lookup instead of resolve. ([@kdleijer](https://github.com/kdleijer))
  * [#1867](https://github.com/facebookincubator/create-react-app/pull/1867) Show package name in CLI. ([@mkazantsev](https://github.com/mkazantsev))
  * [#1706](https://github.com/facebookincubator/create-react-app/pull/1706) Properly extract package name for installing a tgz of scoped packages. ([@Timer](https://github.com/Timer))
  * [#1695](https://github.com/facebookincubator/create-react-app/pull/1695) Add diagnostic code. ([@tgig](https://github.com/tgig))
  * [#1675](https://github.com/facebookincubator/create-react-app/pull/1675) Fix project cleanup on Windows. ([@johann-sonntagbauer](https://github.com/johann-sonntagbauer))
  * [#1662](https://github.com/facebookincubator/create-react-app/pull/1662) Add project name validation. ([@johann-sonntagbauer](https://github.com/johann-sonntagbauer))
  * [#1669](https://github.com/facebookincubator/create-react-app/pull/1669) Fix react dependency versions during initial install. ([@johann-sonntagbauer](https://github.com/johann-sonntagbauer))
Joe Haddad's avatar
Joe Haddad committed
219
220

#### :nail_care: Enhancement
Dan Abramov's avatar
Dan Abramov committed
221
222
223
224
225
226
227
* `react-dev-utils`, `react-scripts`
  * [#2202](https://github.com/facebookincubator/create-react-app/pull/2202) Refactor and improve build output. ([@gaearon](https://github.com/gaearon))
  * [#2152](https://github.com/facebookincubator/create-react-app/pull/2152) Tweak error and warning output. ([@gaearon](https://github.com/gaearon))
  * [#1772](https://github.com/facebookincubator/create-react-app/pull/1772) Replace prompt function Inquirer.js. (#1767). ([@iansu](https://github.com/iansu))
  * [#1726](https://github.com/facebookincubator/create-react-app/pull/1726) Extract generic build functions to react-dev-utils. ([@viankakrisna](https://github.com/viankakrisna))
* `react-dev-utils`, `react-error-overlay`
  * [#2201](https://github.com/facebookincubator/create-react-app/pull/2201) Tweak error overlay styles. ([@bvaughn](https://github.com/bvaughn))
Joe Haddad's avatar
Joe Haddad committed
228
* `react-scripts`
Dan Abramov's avatar
Dan Abramov committed
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
  * [#2187](https://github.com/facebookincubator/create-react-app/pull/2187) Ignore Moment.js locales by default. ([@gaearon](https://github.com/gaearon))
  * [#1771](https://github.com/facebookincubator/create-react-app/pull/1771) Adding plugin postcss-flexbugs-fixes and flexbox: 'no-2009' to Autoprefixer. ([@cr101](https://github.com/cr101))
  * [#1614](https://github.com/facebookincubator/create-react-app/pull/1614) Upgrade to Jest ~~19~~ (now 20). ([@rogeliog](https://github.com/rogeliog))
  * [#1993](https://github.com/facebookincubator/create-react-app/pull/1993) Removed redundant UglifyJS options. ([@marcofugaro](https://github.com/marcofugaro))
  * [#1800](https://github.com/facebookincubator/create-react-app/pull/1800) Suggest `yarn build` instead of `yarn run build`. ([@geoffdavis92](https://github.com/geoffdavis92))
  * [#1760](https://github.com/facebookincubator/create-react-app/pull/1760) Suggest `serve` for running in production. ([@leo](https://github.com/leo))
  * [#1747](https://github.com/facebookincubator/create-react-app/pull/1747) Display `yarn` instead of `yarnpkg` when creating a new application. ([@lpalmes](https://github.com/lpalmes))
  * [#1433](https://github.com/facebookincubator/create-react-app/pull/1433) Modularise scripts. ([@djgrant](https://github.com/djgrant))
  * [#1677](https://github.com/facebookincubator/create-react-app/pull/1677) Add `X-FORWARDED` headers for proxy requests. ([@johann-sonntagbauer](https://github.com/johann-sonntagbauer))
* `eslint-config-react-app`, `react-dev-utils`
  * [#2186](https://github.com/facebookincubator/create-react-app/pull/2186) Tweak lint rules. ([@gaearon](https://github.com/gaearon))
* `react-error-overlay`, `react-scripts`
  * [#2171](https://github.com/facebookincubator/create-react-app/pull/2171) Use Jest 20. ([@gaearon](https://github.com/gaearon))
* `babel-preset-react-app`, `eslint-config-react-app`, `react-dev-utils`, `react-error-overlay`, `react-scripts`
  * [#2170](https://github.com/facebookincubator/create-react-app/pull/2170) Bump dependencies. ([@gaearon](https://github.com/gaearon))
* `eslint-config-react-app`
  * [#2064](https://github.com/facebookincubator/create-react-app/pull/2064) Removing a stylistic lint rule. ([@anilreddykatta](https://github.com/anilreddykatta))
  * [#1763](https://github.com/facebookincubator/create-react-app/pull/1763) disable ignoring unused vars prefixed with _. ([@doshisid](https://github.com/doshisid))
  * [#1989](https://github.com/facebookincubator/create-react-app/pull/1989) Relax label rules (Closes [#1835](https://github.com/facebookincubator/create-react-app/issues/1835)). ([@anilreddykatta](https://github.com/anilreddykatta))
  * [#1773](https://github.com/facebookincubator/create-react-app/pull/1773) Remove 'guard-for-in' lint rule. ([@spicyj](https://github.com/spicyj))
* `eslint-config-react-app`, `react-scripts`
  * [#2130](https://github.com/facebookincubator/create-react-app/pull/2130) Blacklist confusing global variables. ([@doshisid](https://github.com/doshisid))
  * [#1542](https://github.com/facebookincubator/create-react-app/pull/1542) Bump jsx-a11y version. ([@bondz](https://github.com/bondz))
  * [#1705](https://github.com/facebookincubator/create-react-app/pull/1705) Add support for `ignoreRestSiblings` in `no-unused-vars`. ([@chrisdrackett](https://github.com/chrisdrackett))
* `react-dev-utils`
  * [#2125](https://github.com/facebookincubator/create-react-app/pull/2125) Only show the first compilation error. ([@gaearon](https://github.com/gaearon))
  * [#2120](https://github.com/facebookincubator/create-react-app/pull/2120) Omit ESLint warnings when there are ESLint errors. ([@gaearon](https://github.com/gaearon))
  * [#2113](https://github.com/facebookincubator/create-react-app/pull/2113) Prettify errors and warnings for Webpack 2. ([@gaearon](https://github.com/gaearon))
  * [#1842](https://github.com/facebookincubator/create-react-app/pull/1842) Modularize and extract crash overlay to iframe. ([@Timer](https://github.com/Timer))
Joe Haddad's avatar
Joe Haddad committed
258
* `create-react-app`
Dan Abramov's avatar
Dan Abramov committed
259
260
261
  * [#1811](https://github.com/facebookincubator/create-react-app/pull/1811) Allow creation of apps in empty Mercurial repos. ([@GreenGremlin](https://github.com/GreenGremlin))
* Other
  * [#1402](https://github.com/facebookincubator/create-react-app/pull/1402) Create empty package.json in e2e test (#1401). ([@matoilic](https://github.com/matoilic))
Dan Abramov's avatar
Dan Abramov committed
262

Joe Haddad's avatar
Joe Haddad committed
263
#### :memo: Documentation
Dan Abramov's avatar
Dan Abramov committed
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
* `react-scripts`
  * [#2193](https://github.com/facebookincubator/create-react-app/pull/2193) Fix webpack config typo. ([@Justkant](https://github.com/Justkant))
  * [#2137](https://github.com/facebookincubator/create-react-app/pull/2137) Remove live-editing since isn't accurate. ([@cesarvarela](https://github.com/cesarvarela))
  * [#2114](https://github.com/facebookincubator/create-react-app/pull/2114) Update Sass README. ([@kellyrmilligan](https://github.com/kellyrmilligan))
  * [#2081](https://github.com/facebookincubator/create-react-app/pull/2081) Fixed link for storybook. ([@scottrangerio](https://github.com/scottrangerio))
  * [#2052](https://github.com/facebookincubator/create-react-app/pull/2052) Fix instructions for serving with now. ([@davidascher](https://github.com/davidascher))
  * [#2058](https://github.com/facebookincubator/create-react-app/pull/2058) Clarify `.eslintrc` effects. ([@luftywiranda13](https://github.com/luftywiranda13))
  * [#2054](https://github.com/facebookincubator/create-react-app/pull/2054) Suggest to create `.eslintrc` for IDE lint plugins. ([@gaearon](https://github.com/gaearon))
  * [#2033](https://github.com/facebookincubator/create-react-app/pull/2033) Fix Netlify heading level. ([@benpickles](https://github.com/benpickles))
  * [#1987](https://github.com/facebookincubator/create-react-app/pull/1987) Suggest `node-sass` alternative. ([@michaelwayman](https://github.com/michaelwayman))
  * [#1988](https://github.com/facebookincubator/create-react-app/pull/1988) Update doc server example to work from any directory. ([@isramos](https://github.com/isramos))
  * [#1982](https://github.com/facebookincubator/create-react-app/pull/1982) Update information in User Guide for Enzyme dependency. ([@josephrace](https://github.com/josephrace))
  * [#1911](https://github.com/facebookincubator/create-react-app/pull/1911) Suggest Yarn in HTML template. ([@tmos](https://github.com/tmos))
  * [#1869](https://github.com/facebookincubator/create-react-app/pull/1869) User Guide: Removed blockquote from code section, due to markdown conflict. ([@stochris](https://github.com/stochris))
  * [#1756](https://github.com/facebookincubator/create-react-app/pull/1756) Add Yarn steps for adding flow. ([@zertosh](https://github.com/zertosh))
  * [#1710](https://github.com/facebookincubator/create-react-app/pull/1710) Update now.sh deployment instructions. ([@replaid](https://github.com/replaid))
  * [#1717](https://github.com/facebookincubator/create-react-app/pull/1717) Add docs for apache's client side routing setting. ([@viankakrisna](https://github.com/viankakrisna))
  * [#1698](https://github.com/facebookincubator/create-react-app/pull/1698) Suggest to use `.env` for enabling polling mode. ([@gaearon](https://github.com/gaearon))
  * [#1687](https://github.com/facebookincubator/create-react-app/pull/1687) Fixed missing --recursive flag in first `npm run watch-css` command. ([@mklemme](https://github.com/mklemme))
  * [#1657](https://github.com/facebookincubator/create-react-app/pull/1657) Set Chrome userDataDir to be under .vscode folder. ([@ryansully](https://github.com/ryansully))
* Other
  * [#2135](https://github.com/facebookincubator/create-react-app/pull/2135) Add note about `yarn.lock`. ([@viankakrisna](https://github.com/viankakrisna))
  * [#2040](https://github.com/facebookincubator/create-react-app/pull/2040) Fix typo. ([@tijwelch](https://github.com/tijwelch))
  * [#1991](https://github.com/facebookincubator/create-react-app/pull/1991) Add folder structure docs for new contributors. ([@anilreddykatta](https://github.com/anilreddykatta))
  * [#1962](https://github.com/facebookincubator/create-react-app/pull/1962) Add sku to the list of alternatives. ([@markdalgleish](https://github.com/markdalgleish))
  * [#1799](https://github.com/facebookincubator/create-react-app/pull/1799) Improve phrasing. ([@moniuch](https://github.com/moniuch))
* `babel-preset-react-app`
  * [#1787](https://github.com/facebookincubator/create-react-app/pull/1787) Update side-effect documentation. ([@evenchange4](https://github.com/evenchange4))
Joe Haddad's avatar
Joe Haddad committed
292
293

#### :house: Internal
Dan Abramov's avatar
Dan Abramov committed
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
* `react-scripts`
  * [#2213](https://github.com/facebookincubator/create-react-app/pull/2213) Use some ES6 syntax. ([@shashkovdanil](https://github.com/shashkovdanil))
  * [#1913](https://github.com/facebookincubator/create-react-app/pull/1913) Add linked modules test. ([@Timer](https://github.com/Timer))
  * [#1736](https://github.com/facebookincubator/create-react-app/pull/1736) Fix eject for linked react-scripts. ([@tuchk4](https://github.com/tuchk4))
  * [#1741](https://github.com/facebookincubator/create-react-app/pull/1741) Fix internal linting setup. ([@gaearon](https://github.com/gaearon))
  * [#1730](https://github.com/facebookincubator/create-react-app/pull/1730) Fix Node 4 e2e tests. ([@Timer](https://github.com/Timer))
  * [#1715](https://github.com/facebookincubator/create-react-app/pull/1715) Remove unused `url` import in Webpack config. ([@pd4d10](https://github.com/pd4d10))
  * [#1700](https://github.com/facebookincubator/create-react-app/pull/1700) Update extract-text-webpack-plugin to stable. ([@SimenB](https://github.com/SimenB))
* `react-dev-utils`, `react-scripts`
  * [#2209](https://github.com/facebookincubator/create-react-app/pull/2209) Move more logic from react-scripts to react-dev-utils. ([@gaearon](https://github.com/gaearon))
  * [#2138](https://github.com/facebookincubator/create-react-app/pull/2138) Add custom eslint formatter. ([@doshisid](https://github.com/doshisid))
* `babel-preset-react-app`, `react-scripts`
  * [#2175](https://github.com/facebookincubator/create-react-app/pull/2175) Resolve regenerator runtime relative to react-scripts. ([@gaearon](https://github.com/gaearon))
  * [#1894](https://github.com/facebookincubator/create-react-app/pull/1894) Re-disable babel modules transform. ([@Timer](https://github.com/Timer))
  * [#1742](https://github.com/facebookincubator/create-react-app/pull/1742) Switch to preset-env. ([@Timer](https://github.com/Timer))
* `create-react-app`, `react-dev-utils`, `react-scripts`
  * [#1897](https://github.com/facebookincubator/create-react-app/pull/1897) Bump minimal Node version to 6. ([@ianschmitz](https://github.com/ianschmitz))
Dan Abramov's avatar
Dan Abramov committed
311
* Other
Dan Abramov's avatar
Dan Abramov committed
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
  * [#1868](https://github.com/facebookincubator/create-react-app/pull/1868) Fix AppVeyor CI. ([@darrenscerri](https://github.com/darrenscerri))
  * [#1825](https://github.com/facebookincubator/create-react-app/pull/1825) Added test to check for accidental extraneous dependencies. ([@lpalmes](https://github.com/lpalmes))
  * [#1876](https://github.com/facebookincubator/create-react-app/pull/1876) Fix AppVeyor CI. ([@darrenscerri](https://github.com/darrenscerri))
  * [#1723](https://github.com/facebookincubator/create-react-app/pull/1723) Skip AppVeyor CI builds for Markdown changes. ([@gaearon](https://github.com/gaearon))
  * [#1707](https://github.com/facebookincubator/create-react-app/pull/1707) Add double quotes to escape spaces in paths in e2e. ([@viankakrisna](https://github.com/viankakrisna))
  * [#1688](https://github.com/facebookincubator/create-react-app/pull/1688) Pin and upgrade lerna version. ([@viankakrisna](https://github.com/viankakrisna))
  * [#1648](https://github.com/facebookincubator/create-react-app/pull/1648) Add `appveyor.yml`. ([@Timer](https://github.com/Timer))
* `babel-preset-react-app`, `create-react-app`, `eslint-config-react-app`, `react-dev-utils`, `react-scripts`
  * [#1738](https://github.com/facebookincubator/create-react-app/pull/1738) Update to modern code style (ES6). ([@tuchk4](https://github.com/tuchk4))
* `eslint-config-react-app`
  * [#1740](https://github.com/facebookincubator/create-react-app/pull/1740) Relax ESLint config peerDependency. ([@gaearon](https://github.com/gaearon))
* `eslint-config-react-app`, `react-dev-utils`, `react-scripts`
  * [#1729](https://github.com/facebookincubator/create-react-app/pull/1729) Lint internal scripts with eslint:recommended. ([@gaearon](https://github.com/gaearon))
* `react-dev-utils`
  * [#1724](https://github.com/facebookincubator/create-react-app/pull/1724) Don't use ES6 in a file that should run on Node 4. ([@gaearon](https://github.com/gaearon))
Dan Abramov's avatar
Dan Abramov committed
327

Dan Abramov's avatar
Dan Abramov committed
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
#### Committers: 66
- Ade Viankakrisna Fadlil ([viankakrisna](https://github.com/viankakrisna))
- Alison Monteiro ([alisonmonteiro](https://github.com/alisonmonteiro))
- Almero Steyn ([AlmeroSteyn](https://github.com/AlmeroSteyn))
- Andrej Badin ([Andreyco](https://github.com/Andreyco))
- Andres Suarez ([zertosh](https://github.com/zertosh))
- Asa Ayers ([AsaAyers](https://github.com/AsaAyers))
- Ben Alpert ([spicyj](https://github.com/spicyj))
- Ben Pickles ([benpickles](https://github.com/benpickles))
- Bond ([bondz](https://github.com/bondz))
- Brian Vaughn ([bvaughn](https://github.com/bvaughn))
- Buns Shar  ([bunshar](https://github.com/bunshar))
- Cesar Varela ([cesarvarela](https://github.com/cesarvarela))
- Chris Drackett ([chrisdrackett](https://github.com/chrisdrackett))
- Cristian Rosescu ([cr101](https://github.com/cr101))
Joe Haddad's avatar
Joe Haddad committed
343
- Dan Abramov ([gaearon](https://github.com/gaearon))
Dan Abramov's avatar
Dan Abramov committed
344
345
346
347
348
- Daniel Grant ([djgrant](https://github.com/djgrant))
- Danil Shashkov ([shashkovdanil](https://github.com/shashkovdanil))
- Darren Scerri ([darrenscerri](https://github.com/darrenscerri))
- David ([dbismut](https://github.com/dbismut))
- David Ascher ([davidascher](https://github.com/davidascher))
Joe Haddad's avatar
Joe Haddad committed
349
- Gabriel Aumala ([GAumala](https://github.com/GAumala))
Dan Abramov's avatar
Dan Abramov committed
350
351
352
353
354
355
356
357
- Geoff Davis ([geoffdavis92](https://github.com/geoffdavis92))
- Ian Schmitz ([ianschmitz](https://github.com/ianschmitz))
- Ian Sutherland ([iansu](https://github.com/iansu))
- Igor Ramos ([isramos](https://github.com/isramos))
- James Blight ([jamesblight](https://github.com/jamesblight))
- Jeffrey Posnick ([jeffposnick](https://github.com/jeffposnick))
- Jeremy Morrell ([jmorrell](https://github.com/jmorrell))
- Jeremy Stucki ([herrstucki](https://github.com/herrstucki))
Joe Haddad's avatar
Joe Haddad committed
358
- Joe Haddad ([Timer](https://github.com/Timer))
Dan Abramov's avatar
Dan Abramov committed
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
- Johann Hubert Sonntagbauer ([johann-sonntagbauer](https://github.com/johann-sonntagbauer))
- Jonathan ([GreenGremlin](https://github.com/GreenGremlin))
- Joseph Race ([josephrace](https://github.com/josephrace))
- Kant ([Justkant](https://github.com/Justkant))
- Kelly ([kellyrmilligan](https://github.com/kellyrmilligan))
- Kent C. Dodds ([kentcdodds](https://github.com/kentcdodds))
- Koen de Leijer ([kdleijer](https://github.com/kdleijer))
- Leo Lamprecht ([leo](https://github.com/leo))
- Lorenzo Palmes ([lpalmes](https://github.com/lpalmes))
- Lufty Wiranda ([luftywiranda13](https://github.com/luftywiranda13))
- Marco Fugaro ([marcofugaro](https://github.com/marcofugaro))
- Mark Dalgleish ([markdalgleish](https://github.com/markdalgleish))
- Mato Ilic ([matoilic](https://github.com/matoilic))
- Maxim Kazantsev ([mkazantsev](https://github.com/mkazantsev))
- Michael Hsu ([evenchange4](https://github.com/evenchange4))
- Michael Wayman ([michaelwayman](https://github.com/michaelwayman))
- Myk Klemme ([mklemme](https://github.com/mklemme))
- Pierre Bertet ([bpierre](https://github.com/bpierre))
- Rogelio Guzman ([rogeliog](https://github.com/rogeliog))
- Rory Hunter ([pugnascotia](https://github.com/pugnascotia))
- Ryan Platte ([replaid](https://github.com/replaid))
- Ryan Sullivan ([ryansully](https://github.com/ryansully))
- Scott Ranger ([scottrangerio](https://github.com/scottrangerio))
- Siddharth Doshi ([doshisid](https://github.com/doshisid))
- Simen Bekkhus ([SimenB](https://github.com/SimenB))
- Simon Vocella ([voxsim](https://github.com/voxsim))
- Stoicescu Cristi ([stochris](https://github.com/stochris))
- Tim Welch ([tijwelch](https://github.com/tijwelch))
- Tom Canac ([tmos](https://github.com/tmos))
- Tom Dunlap ([motevets](https://github.com/motevets))
- Travis Giggy ([tgig](https://github.com/tgig))
- Valerii Sorokobatko ([tuchk4](https://github.com/tuchk4))
- alberto ([alberto](https://github.com/alberto))
- anraka ([anilreddykatta](https://github.com/anilreddykatta))
- moniuch ([moniuch](https://github.com/moniuch))
Joe Haddad's avatar
Joe Haddad committed
394
- pd4d10 ([pd4d10](https://github.com/pd4d10))
Dan Abramov's avatar
Dan Abramov committed
395

Dan Abramov's avatar
Dan Abramov committed
396
## Releases Before 0.x
Dan Abramov's avatar
Dan Abramov committed
397

Dan Abramov's avatar
Dan Abramov committed
398
Please refer to [CHANGELOG-0.x.md](./CHANGELOG-0.x.md) for earlier versions.