- Breaking Change: Disabled implicit serving of source files in development. (@gaearon in #551)
- You can use
NODE_PATH
environment variable for absoluteimport
paths. (@jimmyhmiller in #476) - If
src/setupTest.js
exists, it will be used to setup the test environment. (@gaelduplessix in #548) - If
HTTPS
environment variable is set totrue
, development server will run in HTTPS mode. (@dceddia in #552)
Inside any created project that has not been ejected, run:
npm install --save-dev --save-exact [email protected]
Paths like /src/somefile.png
used to be served in development, but only by accident. They never worked in production builds. Since 0.4.0, we don’t serve static files by default in development anymore either. This removes a dangerous inconsistency that we never intentionally supported.
If you need a static file to be part for the build, import it from JavaScript and you will get its filename. This ensures it gets included into the production build as well, and its filename contains the content hash.
If you used static files with <link href>
, read this new guide on how to make sure these files get included into the builds. For example, you can replace <link href="/src/favicons/favicon-32.png">
with <link href="./src/favicons/favicon-32.png">
, and then Webpack will recognize it and include it into the build.
If you referenced some other files from index.html
, please file an issue to discuss your use case. In the meantime, you can serve them from a separate static server until your use case is supported.
- Bumps Jest dependency to fix a few issues discovered yesterday. (@cpojer in facebook/jest#1580, @insin in facebook/jest#1574)
Inside any created project that has not been ejected, run:
npm install --save-dev --save-exact [email protected]
- Testing is now supported! (Jest project contributors, @cpojer in #250, @gaearon in #378, #530, #533)
- Static files such as CSS, images, and fonts, can now exist outside
src
directory. (@fson in #504) - Local paths in
<link href>
inindex.html
will now be correctly resolved, so deletingfavicon.ico
is not an error anymore. (@andreypopp in #428) - Removed an annoying lint rule that warned for
<div ref={node => this.node = node}>
. (@mrscobbler in #529) - Temporarily disabled
react-constant-elements
Babel transform because of its bugs. (@gaearon in #534) - Fixed a permission issue with Docker. (@gaearon in 73c940)
- Fixed an issue with generator syntax in Jest that occurred in an alpha release. (@gaearon in #535)
- You can now create a project in a folder that already contains an
.idea
folder, which is necessary for future WebStorm integration. (@denofevil in #522)
You may optionally update the global command (it’s not required):
npm install -g [email protected]
Inside any created project that has not been ejected, run:
npm install --save-dev --save-exact [email protected]
Since 0.3.0 added a test runner, we recommend that you add it to the scripts
section of your package.json
like this:
// ...
"scripts": {
// ...
"test": "react-scripts test --env=jsdom"
}
Then read the testing guide to learn more about using it!
- You can now proxy requests to an API server without worrying about CORS. (@gaearon in #282)
- You can now pass custom environment variables to your application. (@eliperelman in #342)
- You can now use
async
andawait
syntax. (@gaearon in #327, @fson in #332) - Paths with period in them now load successfully on the development server. (@mxstbr in #422)
- Images with
.webp
extension are now supported. (@gafemoyano in #458) - The most recent version of React is now added to
package.json
. (@wdhorton in #477) - Babel configuration is simplified. (@kripod in #490)
Update react-scripts
to point to 0.2.3
in your package.json
and run npm install
. You shouldn’t need to do anything else.
Newly created projects will use 0.2.3
automatically. You don’t need to update the global create-react-app
CLI itself. It stays at 0.2.0
for now because it doesn’t have any changes.
- When the bundle size changes, we now display the difference after build. (@elijahmanor in #340)
npm install
ing a missing dependency now forces a rebuild. (@gaearon in #349)- Autoprefixer config now includes more commonly supported browsers. (@kripod in #345)
- All the configuration is now documented inline so ejecting doesn’t leave you in the dark. (@gaearon in #362)
Object.assign()
polyfill is now bundled by default. (@gaearon in #399)- React Native Web now works out of the box. (@grigio in #407)
- Same asset filenames in different folders don’t confuse the server now. (@arunoda in #446)
- The
otf
font format is now supported. (@A-gambit in #434) - The
new-cap
linting rule has been disabled thanks to feedback from Immutable.js users. (@rricard in #470)
Update react-scripts
to point to 0.2.2
in your package.json
and run npm install
. You shouldn’t need to do anything else.
Newly created projects will use 0.2.2
automatically. You don’t need to update the global create-react-app
CLI itself. It stays at 0.2.0
for now because it doesn’t have any changes.
- Fixes an issue with
npm start
taking a very long time on OS X with Firewall enabled (@gaearon in #319) - Fixes an issue with Webpack eating a lot of CPU in some cases (@dceddia in #294)
- We now warn if you import a file with mismatched casing because this breaks the watcher (@alexzherdev in #266)
- CSS files specifying
?v=
after asset filenames, such as Font Awesome, now works correctly (@alexzherdev in #298) - Issues with
npm link
ingreact-scripts
have been fixed (@dallonf in #277) - We now use
/static
prefix for assets both in development and production (@gaearon in #278)
Update react-scripts
to point to 0.2.1
in your package.json
and run npm install
. You shouldn’t need to do anything else. If you see a warning about wrong file casing next time you npm start
, fix your imports to use the correct filename casing.
Newly created projects will use 0.2.1
automatically. You don’t need to update the global create-react-app
CLI itself. It stays at 0.2.0
for now because it doesn’t have any changes.
- You can now enable deployment to GitHub Pages by adding
homepage
field topackage.json
(@dhruska in #94) - Development server now runs on
0.0.0.0
and works with VirtualBox (@JWo1F in #128) - Cloud9 and Nitrous online IDEs are now supported (@gaearon in 2fe84e)
- When
3000
port is taken, we offer to use another port (@chocnut in #101, 2edf21) - You can now
import
CSS files from npm modules (@glennreyes in #105, @breaddevil in #178) fetch
andPromise
polyfills are now always included (@gaearon in #235)- Regenerator runtime is now included if you use ES6 generators (@gaearon in #238)
- Generated project now contains
.gitignore
(@npverni in #79, @chibicode in #112) - ESLint config is now more compatible with Flow (@gaearon in #261)
- A stylistic lint rule about method naming has been removed (@mxstbr in #152)
- A few unobtrusive accessibility lint rules have been added (@evcohen in #175)
- A
.babelrc
in parent directory no longer causes an error (@alexzherdev in #236) - Files with
.json
extension are now discovered (@gaearon in a11d6a) - Bug fixes from transitive dependencies are included (#126)
- Linting now works with IDEs if you follow these instructions (@keyanzhang in #149)
- After building, we now print gzipped bundle size (@lvwrence in #229)
- It enforces that you have Node >= 4 (@conorhastings in #88)
- It handles
--version
flag correctly (@mxstbr in #152)
You may optionally update the global command (it’s not required):
npm install -g [email protected]
Inside any created project that has not been ejected, run:
npm install --save-dev --save-exact [email protected]
You may need to fix a few lint warnings about missing <img alt>
tag, but everything else should work out of the box. If you intend to deploy your site to GitHub Pages, you may now add homepage
field to package.json
. If you had issues with integrating editor linter plugins, follow these new instructions.
- Initial public release