Issue 1:
I have the following setup:

sources

-- main.ts

---- library

-------- config\base.ts

-------- test\spec.ts

-------- typings

-------------- tsd.d.ts

-------------- lodash\lodash.ts

main.ts:

import config = require("./library/config/base")
class main{}

base.ts:

/// <reference path="../typings/tsd.d.ts" />
import _ = require("lodash")
import Promise = require("bluebird")
class ConfigBase{}

spec.ts:

import config = require("../config/base")
import server = require("../../main")
class testspec{}

config/base.ts and main.ts compile just fine. However, on compiling test/spec.ts, tsc.cmd errors out including all the .d.ts files from typings directory. Note, that this issue doesn't occur if main.ts is inside the library directory. Errors:

../../library/typings/bluebird/bluebird.d.ts(19,15): error TS2300: Duplicate identifier 'Promise'.

../../library/typings/bluebird/bluebird.d.ts(604,16): error TS2300: Duplicate identifier 'Promise'.

../../library/typings/bluebird/bluebird.d.ts(709,2): error TS2308: A module cannot have more than one export assignment.

../../library/typings/lodash/lodash.d.ts(51,9): error TS2300: Duplicate identifier 'VERSION'.

../../library/typings/lodash/lodash.d.ts(56,9): error TS2300: Duplicate identifier 'support'.

../../library/typings/lodash/lodash.d.ts(62,9): error TS2300: Duplicate identifier 'templateSettings'.

../../library/typings/lodash/lodash.d.ts(73,9): error TS2300: Duplicate identifier 'escape'.

../../library/typings/lodash/lodash.d.ts(78,9): error TS2300: Duplicate identifier 'evaluate'.

../../library/typings/lodash/lodash.d.ts(83,9): error TS2300: Duplicate identifier 'imports'.

../../library/typings/lodash/lodash.d.ts(88,9): error TS2300: Duplicate identifier 'interpolate'.

../../library/typings/lodash/lodash.d.ts(93,9): error TS2300: Duplicate identifier 'variable'.

../../library/typings/lodash/lodash.d.ts(103,9): error TS2300: Duplicate identifier 'argsClass'.

../../library/typings/lodash/lodash.d.ts(108,9): error TS2300: Duplicate identifier 'argsObject'.

../../library/typings/lodash/lodash.d.ts(114,9): error TS2300: Duplicate identifier 'enumErrorProps'.

../../library/typings/lodash/lodash.d.ts(119,9): error TS2300: Duplicate identifier 'fastBind'.

../../library/typings/lodash/lodash.d.ts(125,9): error TS2300: Duplicate identifier 'funcDecomp'.

../../library/typings/lodash/lodash.d.ts(130,9): error TS2300: Duplicate identifier 'funcNames'.

../../library/typings/lodash/lodash.d.ts(136,9): error TS2300: Duplicate identifier 'nonEnumArgs'.

../../library/typings/lodash/lodash.d.ts(144,9): error TS2300: Duplicate identifier 'nonEnumShadows'.

../../library/typings/lodash/lodash.d.ts(149,9): error TS2300: Duplicate identifier 'ownLast'.

../../library/typings/lodash/lodash.d.ts(160,9): error TS2300: Duplicate identifier 'spliceObjects'.

../../library/typings/lodash/lodash.d.ts(168,9): error TS2300: Duplicate identifier 'unindexedChars'.

../../library/typings/lodash/lodash.d.ts(4976,9): error TS2300: Duplicate identifier 'leading'.

../../library/typings/lodash/lodash.d.ts(4981,9): error TS2300: Duplicate identifier 'maxWait'.

../../library/typings/lodash/lodash.d.ts(4986,9): error TS2300: Duplicate identifier 'trailing'.

../../library/typings/lodash/lodash.d.ts(5121,9): error TS2300: Duplicate identifier 'leading'.

../../library/typings/lodash/lodash.d.ts(5126,9): error TS2300: Duplicate identifier 'trailing'.

../../library/typings/lodash/lodash.d.ts(6279,9): error TS2300: Duplicate identifier 'source'.

../../library/typings/lodash/lodash.d.ts(6372,9): error TS2375: Duplicate number index signature.

../../library/typings/lodash/lodash.d.ts(6373,9): error TS2300: Duplicate identifier 'length'.

../../library/typings/lodash/lodash.d.ts(6377,9): error TS2374: Duplicate string index signature.

../../library/typings/lodash/lodash.d.ts(6382,5): error TS2308: A module cannot have more than one export assignment.

../typings/bluebird/bluebird.d.ts(709,2): error TS2308: A module cannot have more than one export assignment.

../typings/lodash/lodash.d.ts(6382,5): error TS2308: A module cannot have more than one export assignment.

Issue 2:
TypeScript Version:

1.8.10

Code

// A self-contained demonstration of the problem follows...

const ViolationsList = ({
violations: IViolation[]
}) => (<div></div>);

Expected behavior:

This code should compile fine.

Actual behavior:

Error msg printed on line containing violations: IViolation[]

error TS1005: '=' expected.

If i change the code to not take an array, it compiles fine:

const ViolationsList = ({
violations: IViolation
}) => (<div></div>);

This is a serious bug in typescript.