babel: Build Failure when babel-traverse@6.21.0

We have got a following babel-traverse exception.

ERROR in ./src/shared/common/components/organisms/TaskModal/TaskModal.js
Module build failed: TypeError: /root/cocoroba-front/frontend/src/shared/common/components/organisms/TaskModal/TaskModal.js: Cannot read property 'declarations' of null
    at PathHoister.getAttachmentParentForPath (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/lib/hoister.js:143:137)
    at PathHoister.getAttachmentPath (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/lib/hoister.js:110:18)
    at PathHoister.run (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/lib/hoister.js:166:25)
    at NodePath.hoist (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/modification.js:263:18)
    at PluginPass.JSXElement (/root/cocoroba-front/frontend/node_modules/babel-plugin-transform-react-constant-elements/lib/index.js:39:16)
    at newFn (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/visitors.js:276:21)
    at NodePath._call (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:76:18)
    at NodePath.call (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:48:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:105:12)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitMultiple (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:103:17)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:190:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:115:19)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:156:21)
    at TraversalContext.visitMultiple (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:103:17)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:190:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:115:19)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:156:21)
    at TraversalContext.visitMultiple (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:103:17)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:190:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:115:19)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:156:21)
    at TraversalContext.visitMultiple (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:103:17)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:190:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
 @ ./src/shared/common/components/organisms/TaskModal/index.js 21:17-39
ERROR in ./src/shared/customer/components/atoms/AnchorLink/index.js
Module build failed: TypeError: /root/cocoroba-front/frontend/src/shared/customer/components/atoms/AnchorLink/index.js: Cannot read property 'declarations' of null
    at PathHoister.getAttachmentParentForPath (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/lib/hoister.js:143:137)
    at PathHoister.getAttachmentPath (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/lib/hoister.js:110:18)
    at PathHoister.run (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/lib/hoister.js:166:25)
    at NodePath.hoist (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/modification.js:263:18)
    at PluginPass.JSXElement (/root/cocoroba-front/frontend/node_modules/babel-plugin-transform-react-constant-elements/lib/index.js:39:16)
    at newFn (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/visitors.js:276:21)
    at NodePath._call (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:76:18)
    at NodePath.call (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:48:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:105:12)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitSingle (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:108:19)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:192:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:115:19)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitMultiple (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:103:17)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:190:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:115:19)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitSingle (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:108:19)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:192:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:115:19)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
    at TraversalContext.visitMultiple (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:103:17)
    at TraversalContext.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:190:19)
    at Function.traverse.node (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/index.js:114:17)
    at NodePath.visit (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/path/context.js:115:19)
    at TraversalContext.visitQueue (/root/cocoroba-front/frontend/node_modules/babel-traverse/lib/context.js:150:16)
 @ ./src/shared/customer/components/atoms/Home/ActiveCategory/index.js 35:18-54

We don’t know the workaround and the solution of this problem.

Input Code

import React, { Component, PropTypes } from 'react';
import { compose, setPropTypes } from 'recompose';
import { Link } from 'react-router';

export default compose(
  setPropTypes({
    isExternal: PropTypes.bool.isRequired,
    link: PropTypes.string.isRequired,
    children: PropTypes.node.isRequired,
  }),
)(class AnchorLink extends Component {
  render() {
    const { isExternal, link, children, isClosed } =  this.props;
    if (isExternal) {
      if (isClosed) {
        return (<p>{children}</p>);
      }

      return (<a href={link} target="_blank">{children}</a>);
    }

    return (<Link to={link}>{children}</Link>);
  }
});

Babel Configuration (.babelrc, package.json, cli command)

        query: {
          presets: [
            'react',
            'es2015-node4',
          ],
          plugins: [
            'syntax-trailing-function-commas',
            'transform-object-rest-spread',
            'transform-react-constant-elements',
            'transform-react-inline-elements',
          ],
        },

Expected Behavior

build success.

Current Behavior

build failure

Possible Solution

N/A

Context

Your Environment

software version
Babel v6.21
node v6.9.1
npm v3.10.1
Operating System Ubuntu

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Reactions: 4
  • Comments: 16 (7 by maintainers)

Commits related to this issue

Most upvoted comments

Ah, when I disable babel-preset-babili, it doesn’t crash…