Issue 1:
Hello everyone,

I have a project on react / typescript with webpack 2 and different components and modules and submodules refered by the main module from outside.

The structure is this:

in index.ts - are all my exports with

export * from './"helper1"

export * from './"helper2"

export * from './"helper3"

export * from './"authorize"

and in the upper levels I'm exporting the folder name like this

export * from './Common'

export * from './Core'

example:

-App(folder)

-Core(folder)

-Common(folder)

-helper1.ts

-helper2.ts

-helper3.ts

-authorize.tsx

index.ts - (export * from './helper1' export * from './helper2' export * from './helper3' export * from './authorize')

when generate the final bundle with index exports it duplicates components (one and the same component is occured 2 or 3 times in bundle instead of one with different numbers like this:

/* 445 */
/***/ (function(module, exports, __webpack_require__) {

var LogAppender = __webpack_require__(441);
var log4js = __webpack_require__(21);
var Helper1;
(function (Helper1) {
function initializeLogger(Service1) {
log4js.clearAppenders();
log4js.loadAppender("ajaxLogAppender", ajaxLogAppender);
log4js.addAppender(log4js.appenders.ajaxLogAppender({ type: 'ajaxLogAppender', category: 'corp', logService: Service1, logInConsole: true }), 'corp');
var logger = log4js.getLogger('corp');
logger.setLevel('info');
}
Helper1.initializeLogger = initializeLogger;
})(Helper1 = exports.Helper1 || (exports.Helper1 = {}));
exports.logger = log4js.getLogger('corp');

/***/ }),

and the second occurance:

/* 464 */
/***/ (function(module, exports, __webpack_require__) {

var LogAppender = __webpack_require__(460);
var log4js = __webpack_require__(21);
var Helper1;
(function (Helper1) {
function initializeLogger(Service1) {
log4js.clearAppenders();
log4js.loadAppender("ajaxLogAppender", ajaxLogAppender);
log4js.addAppender(log4js.appenders.ajaxLogAppender({ type: 'ajaxLogAppender', category: 'corp', logService: Service1, logInConsole: true }), 'corp');
var logger = log4js.getLogger('corp');
logger.setLevel('info');
}
Helper1.initializeLogger = initializeLogger;
})(Helper1 = exports.Helper1 || (exports.Helper1 = {}));
exports.logger = log4js.getLogger('corp');

/***/ }),

**when the route is static route to component like this: (import { Helper1 } from 'App/Core/Common/Helper1') then the occurence is only one, but when I import it like this:

(import { Helper1 } from 'Core') it does multiple occurences in the final bundle.

**

I've tried to add the dedupe plugin in webpack.config / it does some optimization but it does not solve the duplication of my components (in some sites there is information that dedupe is deprecated in webpack 2. is it realy deprecated or not?). Tried also the commonchunks plugin.

Issue 2:
Do you want to request a feature or report a bug?

Bug

What is the current behavior?

When used with commonsChunk with async:true and children:true I get a message that I have missing dependencies in all the folders specified in the resolve.alias config.

If the current behavior is a bug, please provide the steps to reproduce.

Using laravel-mix for setting up webpack.

My two entries are:

'resources/assets/js/app.js'

'resources/assets/js/admin.js'

config: https://gist.github.com/dobromir-hristov/546c4cc0d321e6c6ca3486d89fa766b9

What is the expected behavior?

Should be able to find the aliased files.

Please mention other relevant information such as the browser version, Node.js version, webpack version and Operating System.

Node - 6.9.1

Webpack 3.2.0, 3.3.0

Windows 10