Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • C create-react-app
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,547
    • Issues 1,547
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 417
    • Merge requests 417
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Meta
  • create-react-app
  • Merge requests
  • !2485

Remove module field in production webpack config

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Administrator requested to merge github/fork/tlvince/patch-1 into master Jun 06, 2017
  • Overview 6
  • Commits 1
  • Pipelines 0
  • Changes 1

Created by: tlvince

This crops up in the form of uglify errors during a production build, e.g. #2236 (closed), #2433 (closed), #2475 (closed). The suggestion there is to transpile deps down to ES5 and/or remove module. This is correct with respect to main, however module is there specifically to indicate ES module support, which uglify doesn't support. Therefore, ask webpack not to resolve it.

You can test this by depending on a package that ships with multiple targets i.e. main pointing to a transpiled/common JS target and module targeting ES6+, e.g. tlvince-reduced-test-case-cra-module:

src/index.js

import test from 'tlvince-reduced-test-case-cra-module' 
test()

Before:

> react-scripts build

Creating an optimized production build...

Failed to compile.

static/js/main.1b21038d.js from UglifyJs
Unexpected token: punc (}) [./~/tlvince-reduced-test-case-cra-module/dist/tlvince-reduced-test-case-cra-module.es.js:1,14][static/js/main.1b21038d.js:79667,19]

After:

> react-scripts build

Creating an optimized production build...
Compiled successfully.
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/tlvince/patch-1