Commit Graph

79 Commits

Author SHA1 Message Date
Pete Nykänen
779dad5546 Add loader for .graphql files (#3909)
* Add graphql loader to webpack config

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Update README.md

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Update react-scripts README.md

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Add graphql jest transform

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Add integration tests, pin versions in package.json

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Tests expect regexp matchers

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Use strict equal test instead

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Escaping is hard

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Add comment for signifying a different file

* Update docs

* Fix jest config

* Remove node_modules exclusion

* Update README.md

* Inline graphql jest transform

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Update copyright header

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>

* Use .graphql extension only

Signed-off-by: petetnt <pete.a.nykanen@gmail.com>
2018-02-03 15:51:55 +00:00
Ian Sutherland
d0e17316b9 Named asset import for SVG files (#3907)
* Add named asset import for svg files via babel plugin and webpack loader.

* Fix failing e2e test

* Switched to svgr loader

* Updated SVG component test

* Disable named asset import plugin in test environment

* Added tests for including SVG in CSS

* Update tests

* Moved babel plugin config into webpack config
2018-02-02 12:56:57 -07:00
bradfordlemley
b43ad04b88 Add support for yarn and lerna monorepos. (#3741)
* Support for multiple source paths via package.json srcPaths entry.

Initial support for yarn workspace.

Support lerna workspace, fix for when to use template files.

Remove support for specifying srcPaths in package.json.

Re-enable transpilation caching.

* Clean up, use file matching (similar to original) in webpack configs instead of matching function.

* Remove package lock files.

* Fix for eject.
Note: monorepos won't work after eject.
Can be fixed easily with JEST 22.0.?+ which has file pattern matches against realpaths.

* Filter tests to run only tests in monorepo components included by the app.
(Not sure this is desireable, might be cool to be able to easily run all tests in monorepo from one app.)

* Fix conditions for when to use template.

* Fix eject.

* Remove code that is not needed w/ Jest 22.

* Include all cra-comp tests in monorepo instead of trying to include only tests that are dependencies of app.
(tests can be easily filtered via jest cli if desired, e.g. 'npm test -- myapp comp1')

* Pin find-pkg version.

* Hopefully fix jest test file matching on windows by removing first slash.

* E2E tests for monorepo.

* Run monorepo tests in CI.

* Fix and test post-eject build.

* Fix e2e test.

* Fix test suite names in appveyor.

* Include individual package dirs as srcPaths instead of top-level monorepo root.
Fixes build/start after eject.

* Fix running tests after eject.

* Clean up test workspace, add some verifcations.

* Cleanup.

* Try to fix hang when running test on appveyor.

* Don't write babel or lint config to package.json when ejecting.

* Incorporate review comments.
* Simply monorepo pkg finder
* Only include monorepo pkgs if app itself is included in monorepo
* Check for specific tests in e2e

* Fixes for windows.

* Fix for kitchensink mocha tests compiling.

* Add lerna monorepo test.

* Fix lerna bootstrap on windows.

* Incorporate more review comments:
* remove support for lerna w/o yarn workspace
* add react and react-dom as devDeps to comp1 and comp2

* Add monorepo info to user guide.
2018-02-01 20:58:18 +00:00
Michaël De Boey
25184c4e91 Fix links to package (#3898) 2018-01-22 22:16:22 +00:00
Dan Abramov
1cf2248c46 Don't use app node_modules folder as a resolve fallback (#3884) 2018-01-21 19:05:24 +00:00
Joe Haddad
713eec417d Babel 7 disabled code highlighting by default 😢 (#3849) 2018-01-17 22:05:45 -05:00
Andrew
c9b289b64d fix small grammatical typo in webpack config documentation (#3842) 2018-01-17 21:34:08 +00:00
Ian Sutherland
82907fd23c Import SVGs as React components (#1388) (#3718)
* Import SVGs as React components (#1388)

* Updated webpack production config and fixed tests

* Improved Jest SVG file transform

* Improved SVG tests

* Add a comment

* Update webpack.config.prod.js
2018-01-17 19:40:56 +00:00
Joe Haddad
f4988e224a Update comments for accuracy 2018-01-17 10:30:45 -05:00
Ro Savage
fc7c9915b0 Add support for CSS Modules with explicit filename (#2285)
* Add css modules with [name].modules.css file convention

* Add e2e for CSS Modules

* Updated based on feedback

* Change css modules class name to be deterministic and fix licences

* Update css modules class naming convention
2018-01-17 10:20:57 -05:00
Joe Haddad
2ed4a7034f Compile code in parallel (#3778)
* Cheap perf gains

* Whoopsie
2018-01-15 00:08:14 -05:00
Dan Abramov
3d4440812c Compile dependencies with babel-preset-env (#3776) 2018-01-15 00:08:14 -05:00
Clement Hoang
1552949a3b Switch to Babel 7 (#3522)
* Update dependencies in react-scripts

* Add first pass of working dependencies for babel-preset-react-app and react-scripts

* Bump more dependency versions

* Adjust more versions and edit fix options

* Restore functionality of old preset

* Disable Uglify in iframe webpack

* Apply prettier

* Re-enable cache in dev and clean deps

* Lock packages and move babel/core to dep in preset

* Bump babel-jest

* Re-enable uglify

* Nest forceAllTransforms correctly in webpack config

* Install babel-core bridge for jest

* Add jest-cli and babel-core bridge to make tests in react-error-overlay pass

* Re-enable transform-dynamic-import

* Add dynamic import syntax support back

* Use new babel in kitchensink

* Transform modules in test

* Revert "Transform modules in test"

This reverts commit 539e46a1d77259898b7e70d778a5e43fc25edc2a.

* Attempt fix for ejected tests

* try this

* Add regenerator back

* Bump babel deps to beta.34

* Remove bad files

* Use default when requiring babel transform plugin

* Bump deps

* Try the fix?

* Oopsie

* Remove some weird things

* Run Babel on react-error-overlay tests

* Try fixing kitchensink

* Use new API for codeFrame

* Add missing (?) babelrc

* Maybe this helps?

* Maybe fix mocha

* I shouldn't have deleted this 🤦
2018-01-15 00:07:57 -05:00
everdimension
813584ff35 Redisable require.ensure() (#3121) 2018-01-15 00:06:24 -05:00
Andrey Sitnik
0a331710aa Move browsers to cross-tool config (#3644) 2018-01-15 00:06:24 -05:00
Nils Magnus Englund
bd682de1f6 Fixed typo in webpack.config.dev.js (#3601)
Replaced `it's` with `its`
2017-12-15 13:17:33 -05:00
Ian Sutherland
af291f3cb6 Add mjs and jsx filename extensions to file-loader exclude pattern (#3537) 2017-12-07 13:20:45 -05:00
Nik Nyby
70e0c08ef7 Remove output.path from dev webpack config (#3158)
According to this parameter's comment, it's unused but webpack-dev-server crashes without it. However, webpack-dev-server is running fine for me without this parameter.
2017-10-28 21:58:09 +01:00
Joe Haddad
5c8000f300 Add .mjs support (#3239) 2017-10-28 21:48:42 +01:00
Sophie Alpert
2e82ebb337 BSD+Patents -> MIT (#3189)
* File headers BSD+Patents -> MIT

* BSD+Patents -> MIT
2017-09-26 10:30:05 +01:00
Kristie Howard
b67ef01ade Update unclear wording in webpack config docs (#3160) 2017-09-19 22:00:44 -04:00
Anthony
6644054fc3 provide empty mock for child_process so importing libraries with it works (#3033) 2017-09-02 13:41:40 -07:00
Tharaka Wijebandara
1df16109c9 Fix error overlay 'Object.assign' issue in IE by including polyfills before webpack client (#3046) 2017-09-01 12:54:58 -07:00
Tharaka Wijebandara
ecd1f0544b Convert react-error-overlay to React (#2515)
* Convert react-error-overlay to React

* Update compile-time error overlay to use react-error-overlay components

 * Refactor react-error-overlay components to container and presentational components.

 * Make the compile-time error overlay a part of react-error-overlay package.

 * Use react-error-overlay as dependency in react-dev-utils to show compile-time errors.

* Run Prettier

* Move the function name fix into StackFrame itself

* Fix clicking on source code snippet to open the code in editor

* Use exact objects + minor style tweak

* Don't linkify frames that don't exist on the disk

* Fix lint

* Consolidate iframe rendering logic

* Remove circular dependency between react-dev-utils and react-error-overlay

* Fix lint

* Fix decoupling of react-dev-utils and react-error-overlay by moving middleware

* Deduplicate identical errors
2017-08-27 19:45:55 -06:00
iamdoron
24b18aedd9 Allow importing package.json (#2468)
* Allow importing package.json

* Remove package.json import from App.js template

* fix importing package.json

* Rename variable to reflect path is relative to root

* Check for both package & package.json in ModuleScopePlugin

* Use regex to check relative path to package.json

* Strictly enforce package.json extension on scope plugin

* Add allowedPaths to ModuleScopePlugin ctor and use it to allow app package.json

* Remove package.json import from App.js template

* Add package.json to react-scripts/template, show package version and name in the template

* Remove import package.json from template

* Remove template/package.json and its references in code

* Update ModuleScopePlugin.js

* Update README.md
2017-08-01 22:50:58 -04:00
Andreas Hoffmann
a08eb3b44b Use Rule.oneOf to resolve correct loader (#2747)
* Use oneOf to resolve correct loader

* Add html and json fallthrough again

* Use oneOf to resolve correct loader in dev

* Document file-loaders `js` exclusion

* Remove `jsx` from exclusion in prod config
2017-07-09 21:59:19 +01:00
Đinh Quang Trung
bbbc15dc8e ESLint 4 (#2735)
* Update eslint-loader 1.7.1 -> 1.9.0

* Add eslintPath option

* Update eslint 3.19.0 -> 4.1.1

* Update peer dependencies

* Move eslintPath config to outside @remove-on-eject
2017-07-07 11:40:29 +01:00
Dan Abramov
567d981ee2 Fix external CSS imports (#2680)
* Fix external CSS imports

* Add external CSS import to integration test

* Fix assertion
2017-06-29 12:59:49 +01:00
Evan Jones
6ab0ec0075 Better React Native Web support (#2511)
* Better React Native Web support

* Adding better react-native-web support for jest testing
2017-06-28 15:29:58 +01:00
Daniel Ciao
a9ac78996b Fix sourcemap directory organizing on Windows (#2456) (#2610)
* Fix sourcemap directory organizing on Windows

* Update comments
2017-06-27 16:55:28 +01:00
Andy Kenward
43d0307bc1 webpack no need for ident if using complex options anymore (#2430)
Since `v2.2.1` of webpack the need for `ident` for complex options is no longer required. See

https://webpack.js.org/guides/migrating/#complex-options
2017-06-26 17:31:25 +01:00
Mico Piira
6e2898e596 Add empty mock for dgram (#2600) 2017-06-26 16:48:21 +01:00
Zac Kwan
c78c1fae62 Added NamedModulesPlugin in webpack.config.dev.js (#2458)
* Added NamedModulesPlugin in webpack.config.dev.js

* Update webpack.config.dev.js
2017-06-06 14:06:39 +01:00
Dan Abramov
3a3be7478b Fix a bug on empty NODE_PATH (#2264) 2017-05-19 20:06:15 +01:00
Dan Abramov
d24311ea79 Always resolve NODE_PATH (#2261)
* Always resolve NODE_PATH

* Update env.js
2017-05-19 19:55:57 +01:00
Kant
e7c113eb15 Webpack config typo (#2193)
* Webpack config typo

* Webpack config more typo
2017-05-17 14:30:07 +01:00
Joe Haddad
a61be9c619 Add module scope plugin (#2189)
* Add module scope plugin

* Oops

* Add comments

* Check windows seps too

* More descriptive error

* Document it
2017-05-17 12:19:52 +01:00
Dan Abramov
65ff5481d9 Ignore Moment.js locales by default (#2187)
* Ignore Moment.js locales by default

* Update README.md
2017-05-16 23:59:48 +01:00
Dan Abramov
134d2297dd Reenable require.ensure() 2017-05-16 16:10:10 +01:00
Dan Abramov
50aaae6c1c Resolve regenerator runtime relative to react-scripts (#2175) 2017-05-16 15:40:16 +01:00
Cristian
044e57b726 Adding plugin postcss-flexbugs-fixes and flexbox: 'no-2009' to Autoprefixer (#1771)
* Adding postcss-flexbugs-fixes

Using postcss-flexbugs-fixes to fix all flexbug's issues.

* Adding flexbox: 'no-2009' to Autoprefixer

It will add flexbox prefixes only for final and IE versions of
specification.
2017-05-16 01:02:38 +01:00
Dan Abramov
d6dbfc0353 Support hoisting react-scripts and add require.resolve() to loaders (#2166)
* Support hoisting react-scripts

* require.resolve() loaders and configs

This makes it so that loaders and configs are resolved relative to the config rather than to the app. This seems to make more sense to me.
2017-05-15 23:47:28 +01:00
Siddharth Doshi
f17448e9e5 Add custom eslint formatter (#2138)
* Add custom eslint formatter

* Add formatter docs

* Update formatter docs

* Slightly tweak it

* Update README.md
2017-05-15 00:42:13 +01:00
Joe Haddad
76d2d848c6 Improve unmapper file heuristic, add limited warning support, and ignore internal errors (#2128)
* Browser sort is not stable

* Fix ordering of final message

* Register the warning capture

* Display only createElement warnings

* Use different method name

* Fix regression

* Ignore errors with only node_module files

* Ignore null files, too

* Revise count

* Revise warning

* Update overlay.js

* Add support for https://github.com/facebook/react/pull/9679

* Use absolute paths

* Trim path if it's absolute

* Make sure it's an absolute path

* Oops

* Tweak for new behavior

* Make it safer

* More resilient warnings

* Prettier output

* Fix flow
2017-05-13 14:39:32 +01:00
Joe Haddad
70768b321e Add react-error-overlay package (#2111)
* ༼ つ ◕_◕ ༽つ stack-frame-overlay

* Fix linting

* Remove auto overlay

* Fix e2e

* Pull in the rest

* Appease flow

* Correct dep

* Remove old repo references

* Check flow on test

* Test overlay in e2e

* Add cross env

* Rename package

* Make sure it gets built post-install

* Update the README

* Remove extra builds now that there's a postinstall script

* Revert "Remove extra builds now that there's a postinstall script"

This reverts commit 8bf601dbd36c1e0da7f785fa9ade70ab08ed8772.

* Remove broken script

* Fix some dev ergo
2017-05-10 19:56:30 -04:00
Joe Haddad
1acc3a45f1 Do not parse .eslintignore (#2115) 2017-05-10 19:24:51 -04:00
Jeremy Stucki
3fac03664c Define dev chunk names (#2050)
* Define dev chunk names

Fixes #2046

* Add comment
2017-05-01 13:01:37 +01:00
Joe Haddad
88f4f95ae8 Upgrade webpack deps and use strictExportPresence (#2028) 2017-04-25 10:36:18 +01:00
Joe Haddad
927c539bc5 Use custom sourcemap file names 2017-04-24 21:51:59 -04:00
Asa Ayers
47a8148fb1 Fix importing npm linked libraries (#1359)
* Fix importing npm linked libraries

* Update webpack.config.dev.js

* Update webpack.config.prod.js
2017-03-22 20:29:53 -04:00