Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gulp local crash: fresh repo clone, Windows, node 6.9.5 #14319

Closed
mihailik opened this issue Feb 26, 2017 · 8 comments
Closed

gulp local crash: fresh repo clone, Windows, node 6.9.5 #14319

mihailik opened this issue Feb 26, 2017 · 8 comments
Labels
Bug A bug in TypeScript Fixed A PR has been merged for this issue

Comments

@mihailik
Copy link
Contributor

TypeScript Version: checked out latest master commit 87d804e as of 26 Feb 03:08GMT

node v6.9.5 -- default download for Windows
npm 3.10.10 -- part of node (above)

Followed the TS home page readme, getting a crash:

> git clone https://github.com/Microsoft/TypeScript
> npm install -g gulp
> npm install
> gulp loca
[15:39:38] Requiring external module ts-node/register

C:\Users\####\typescript\node_modules\ts-node\src\index.ts:319
          throw new TSError(formatDiagnostics(diagnosticList, cwd, ts, lineOffset))
                ^
TSError: ⨯ Unable to compile TypeScript
gulpfile.ts (26,10): Duplicate identifier 'Promise'. (2300)
    at getOutput (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:319:17)
    at C:\Users\####\typescript\node_modules\ts-node\src\index.ts:350:18
    at Object.compile (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:483:19)
    at Module.m._compile (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:413:44)
    at Module._extensions..js (module.js:579:10)
    at Object.require.extensions.(anonymous function) [as .ts] (C:\Users\####\typescript\node_modules\ts-node\src\index
.ts:416:12)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)

typescript-gul-local-fail

@mihailik
Copy link
Contributor Author

Here's some useful logs from Console below.

Note I've no tsc on %PATH% before repo checkout. I've had gulp installed with -g already -- but find all the versions double-checked at the very end.

C:\Users\####\Downloads>tsc --version
'tsc' is not recognized as an internal or external command,
operable program or batch file.

C:\Users\####\Downloads>C:\Users\####\Downloads\GitHubSetup.exe

C:\Users\####>git clone https://github.com/microsoft/typescript
Cloning into 'typescript'...
remote: Counting objects: 285238, done.
remote: Compressing objects: 100% (537/537), done.
remote: Total 285238 (delta 320), reused 0 (delta 0), pack-reused 284690
Receiving objects: 100% (285238/285238), 342.51 MiB | 2.25 MiB/s, done.
Resolving deltas: 100% (183105/183105), done.
Checking out files: 100% (35497/35497), done.


C:\Users\####\typescript>npm install
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update t
o graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
typescript@2.3.0 C:\Users\####\typescript
+-- @types/browserify@12.0.30
+-- @types/chai@3.4.35
+-- @types/convert-source-map@1.3.32
+-- @types/del@2.2.32
+-- @types/glob@5.0.30
+-- @types/gulp@3.8.32
| +-- @types/orchestrator@0.0.30
| `-- @types/vinyl@2.0.0
+-- @types/gulp-concat@0.0.29
+-- @types/gulp-help@0.0.32
+-- @types/gulp-newer@0.0.29
+-- @types/gulp-sourcemaps@0.0.29
+-- @types/gulp-typescript@0.0.32
+-- @types/merge2@0.3.29
+-- @types/minimatch@2.0.29
+-- @types/minimist@1.2.0
+-- @types/mkdirp@0.3.29
+-- @types/mocha@2.2.39
+-- @types/node@7.0.5
+-- @types/q@0.0.32
+-- @types/run-sequence@0.0.28
+-- @types/through2@2.0.32
+-- browserify@14.1.0
| +-- assert@1.4.1
| +-- browser-pack@6.0.2
| | +-- combine-source-map@0.7.2
| | | +-- convert-source-map@1.1.3
| | | +-- inline-source-map@0.6.2
| | | `-- lodash.memoize@3.0.4
| | `-- umd@3.0.1
| +-- browser-resolve@1.11.2
| | `-- resolve@1.1.7
| +-- browserify-zlib@0.1.4
| | `-- pako@0.2.9
| +-- buffer@5.0.5
| | +-- base64-js@1.2.0
| | `-- ieee754@1.1.8
| +-- cached-path-relative@1.0.1
| +-- concat-stream@1.5.2
| | +-- readable-stream@2.0.6
| | `-- typedarray@0.0.6
| +-- console-browserify@1.1.0
| | `-- date-now@0.1.4
| +-- constants-browserify@1.0.0
| +-- crypto-browserify@3.11.0
| | +-- browserify-cipher@1.0.0
| | | +-- browserify-aes@1.0.6
| | | | `-- buffer-xor@1.0.3
| | | +-- browserify-des@1.0.0
| | | | `-- des.js@1.0.0
| | | `-- evp_bytestokey@1.0.0
| | +-- browserify-sign@4.0.0
| | | +-- bn.js@4.11.6
| | | +-- browserify-rsa@4.0.1
| | | +-- elliptic@6.4.0
| | | | +-- brorand@1.1.0
| | | | +-- hash.js@1.0.3
| | | | +-- hmac-drbg@1.0.0
| | | | +-- minimalistic-assert@1.0.0
| | | | `-- minimalistic-crypto-utils@1.0.1
| | | `-- parse-asn1@5.0.0
| | |   `-- asn1.js@4.9.1
| | +-- create-ecdh@4.0.0
| | +-- create-hash@1.1.2
| | | +-- cipher-base@1.0.3
| | | `-- ripemd160@1.0.1
| | +-- create-hmac@1.1.4
| | +-- diffie-hellman@5.0.2
| | | `-- miller-rabin@4.0.0
| | +-- pbkdf2@3.0.9
| | +-- public-encrypt@4.0.0
| | `-- randombytes@2.0.3
| +-- defined@1.0.0
| +-- deps-sort@2.0.0
| +-- domain-browser@1.1.7
| +-- duplexer2@0.1.4
| +-- events@1.1.1
| +-- glob@7.1.1
| | +-- fs.realpath@1.0.0
| | +-- inflight@1.0.6
| | `-- path-is-absolute@1.0.1
| +-- has@1.0.1
| | `-- function-bind@1.1.0
| +-- htmlescape@1.1.1
| +-- https-browserify@0.0.1
| +-- inherits@2.0.3
| +-- insert-module-globals@7.0.1
| | +-- is-buffer@1.1.4
| | `-- lexical-scope@1.2.0
| |   `-- astw@2.0.0
| |     `-- acorn@1.2.2
| +-- JSONStream@1.3.1
| | +-- jsonparse@1.3.0
| | `-- through@2.3.8
| +-- labeled-stream-splicer@2.0.0
| | +-- isarray@0.0.1
| | `-- stream-splicer@2.0.0
| +-- module-deps@4.1.1
| | +-- detective@4.3.2
| | | `-- acorn@3.3.0
| | `-- stream-combiner2@1.1.1
| +-- os-browserify@0.1.2
| +-- parents@1.0.1
| | `-- path-platform@0.11.15
| +-- path-browserify@0.0.0
| +-- process@0.11.9
| +-- punycode@1.4.1
| +-- querystring-es3@0.2.1
| +-- read-only-stream@2.0.0
| +-- readable-stream@2.2.3
| | +-- buffer-shims@1.0.0
| | +-- core-util-is@1.0.2
| | +-- isarray@1.0.0
| | +-- process-nextick-args@1.0.7
| | `-- util-deprecate@1.0.2
| +-- resolve@1.3.1
| | `-- path-parse@1.0.5
| +-- shasum@1.0.2
| | +-- json-stable-stringify@0.0.1
| | `-- sha.js@2.4.8
| +-- shell-quote@1.6.1
| | +-- array-filter@0.0.1
| | +-- array-map@0.0.0
| | +-- array-reduce@0.0.0
| | `-- jsonify@0.0.0
| +-- stream-browserify@2.0.1
| +-- stream-http@2.6.3
| | +-- builtin-status-codes@3.0.0
| | `-- to-arraybuffer@1.0.1
| +-- string_decoder@0.10.31
| +-- subarg@1.0.0
| +-- syntax-error@1.1.6
| | `-- acorn@2.7.0
| +-- timers-browserify@1.4.2
| +-- tty-browserify@0.0.0
| +-- url@0.11.0
| | +-- punycode@1.3.2
| | `-- querystring@0.2.0
| +-- util@0.10.3
| | `-- inherits@2.0.1
| +-- vm-browserify@0.0.4
| | `-- indexof@0.0.1
| `-- xtend@4.0.1
+-- chai@3.5.0
| +-- assertion-error@1.0.2
| +-- deep-eql@0.1.3
| | `-- type-detect@0.1.1
| `-- type-detect@1.0.0
+-- convert-source-map@1.4.0
+-- del@2.2.2
| +-- globby@5.0.0
| | `-- array-union@1.0.2
| +-- is-path-cwd@1.0.0
| +-- is-path-in-cwd@1.0.0
| | `-- is-path-inside@1.0.0
| |   `-- path-is-inside@1.0.2
| +-- object-assign@4.1.1
| +-- pify@2.3.0
| +-- pinkie-promise@2.0.1
| `-- rimraf@2.6.1
+-- gulp@3.9.1
| +-- archy@1.0.0
| +-- chalk@1.1.3
| | +-- ansi-styles@2.2.1
| | +-- has-ansi@2.0.0
| | | `-- ansi-regex@2.1.1
| | +-- strip-ansi@3.0.1
| | `-- supports-color@2.0.0
| +-- deprecated@0.0.1
| +-- gulp-util@3.0.8
| | +-- array-differ@1.0.0
| | +-- array-uniq@1.0.3
| | +-- beeper@1.1.1
| | +-- dateformat@2.0.0
| | +-- fancy-log@1.3.0
| | | `-- time-stamp@1.0.1
| | +-- gulplog@1.0.0
| | | `-- glogg@1.0.0
| | +-- has-gulplog@0.1.0
| | | `-- sparkles@1.0.0
| | +-- lodash._reescape@3.0.0
| | +-- lodash._reevaluate@3.0.0
| | +-- lodash._reinterpolate@3.0.0
| | +-- lodash.template@3.6.2
| | | +-- lodash._basecopy@3.0.1
| | | +-- lodash._basetostring@3.0.1
| | | +-- lodash._basevalues@3.0.0
| | | +-- lodash.escape@3.2.0
| | | | `-- lodash._root@3.0.1
| | | +-- lodash.keys@3.1.2
| | | | +-- lodash._getnative@3.9.1
| | | | +-- lodash.isarguments@3.1.0
| | | | `-- lodash.isarray@3.0.4
| | | +-- lodash.restparam@3.6.1
| | | `-- lodash.templatesettings@3.1.1
| | +-- multipipe@0.1.2
| | | `-- duplexer2@0.0.2
| | |   `-- readable-stream@1.1.14
| | |     `-- isarray@0.0.1
| | +-- object-assign@3.0.0
| | +-- replace-ext@0.0.1
| | `-- vinyl@0.5.3
| +-- interpret@1.0.1
| +-- liftoff@2.3.0
| | +-- extend@3.0.0
| | +-- findup-sync@0.4.3
| | | +-- detect-file@0.1.0
| | | | `-- fs-exists-sync@0.1.0
| | | +-- is-glob@2.0.1
| | | | `-- is-extglob@1.0.0
| | | +-- micromatch@2.3.11
| | | | +-- arr-diff@2.0.0
| | | | | `-- arr-flatten@1.0.1
| | | | +-- array-unique@0.2.1
| | | | +-- braces@1.8.5
| | | | | +-- expand-range@1.8.2
| | | | | | `-- fill-range@2.2.3
| | | | | |   +-- is-number@2.1.0
| | | | | |   +-- isobject@2.1.0
| | | | | |   +-- randomatic@1.1.6
| | | | | |   `-- repeat-string@1.6.1
| | | | | +-- preserve@0.2.0
| | | | | `-- repeat-element@1.1.2
| | | | +-- expand-brackets@0.1.5
| | | | | `-- is-posix-bracket@0.1.1
| | | | +-- extglob@0.3.2
| | | | +-- filename-regex@2.0.0
| | | | +-- kind-of@3.1.0
| | | | +-- normalize-path@2.0.1
| | | | +-- object.omit@2.0.1
| | | | | +-- for-own@0.1.4
| | | | | | `-- for-in@0.1.6
| | | | | `-- is-extendable@0.1.1
| | | | +-- parse-glob@3.0.4
| | | | | +-- glob-base@0.3.0
| | | | | | `-- glob-parent@2.0.0
| | | | | `-- is-dotfile@1.0.2
| | | | `-- regex-cache@0.4.3
| | | |   +-- is-equal-shallow@0.1.3
| | | |   `-- is-primitive@2.0.0
| | | `-- resolve-dir@0.1.1
| | |   `-- global-modules@0.2.3
| | |     +-- global-prefix@0.1.5
| | |     | +-- homedir-polyfill@1.0.1
| | |     | | `-- parse-passwd@1.0.0
| | |     | `-- ini@1.3.4
| | |     `-- is-windows@0.2.0
| | +-- fined@1.0.2
| | | +-- expand-tilde@1.2.2
| | | +-- lodash.assignwith@4.2.0
| | | +-- lodash.isempty@4.4.0
| | | +-- lodash.pick@4.4.0
| | | `-- parse-filepath@1.0.1
| | |   +-- is-absolute@0.2.6
| | |   | `-- is-relative@0.2.1
| | |   |   `-- is-unc-path@0.1.2
| | |   |     `-- unc-path-regex@0.1.2
| | |   +-- map-cache@0.2.2
| | |   `-- path-root@0.1.1
| | |     `-- path-root-regex@0.1.2
| | +-- flagged-respawn@0.3.2
| | +-- lodash.isplainobject@4.0.6
| | +-- lodash.isstring@4.0.1
| | +-- lodash.mapvalues@4.6.0
| | `-- rechoir@0.6.2
| +-- orchestrator@0.3.8
| | +-- end-of-stream@0.1.5
| | | `-- once@1.3.3
| | +-- sequencify@0.0.7
| | `-- stream-consume@0.1.0
| +-- pretty-hrtime@1.0.3
| +-- semver@4.3.6
| +-- tildify@1.2.0
| | `-- os-homedir@1.0.2
| +-- v8flags@2.0.11
| | `-- user-home@1.1.1
| `-- vinyl-fs@0.3.14
|   +-- defaults@1.0.3
|   +-- glob-stream@3.1.18
|   | +-- glob@4.5.3
|   | +-- glob2base@0.0.12
|   | | `-- find-index@0.1.1
|   | +-- minimatch@2.0.10
|   | +-- ordered-read-streams@0.1.0
|   | +-- through2@0.6.5
|   | | `-- readable-stream@1.0.34
|   | |   `-- isarray@0.0.1
|   | `-- unique-stream@1.0.0
|   +-- glob-watcher@0.0.6
|   | `-- gaze@0.5.2
|   |   `-- globule@0.1.0
|   |     +-- glob@3.1.21
|   |     | +-- graceful-fs@1.2.3
|   |     | `-- inherits@1.0.2
|   |     +-- lodash@1.0.2
|   |     `-- minimatch@0.2.14
|   |       +-- lru-cache@2.7.3
|   |       `-- sigmund@1.0.1
|   +-- graceful-fs@3.0.11
|   | `-- natives@1.1.0
|   +-- strip-bom@1.0.0
|   | +-- first-chunk-stream@1.0.0
|   | `-- is-utf8@0.2.1
|   +-- through2@0.6.5
|   | `-- readable-stream@1.0.34
|   |   `-- isarray@0.0.1
|   `-- vinyl@0.4.6
|     `-- clone@0.2.0
+-- gulp-clone@1.0.0
| +-- gulp-util@2.2.20
| | +-- chalk@0.5.1
| | | +-- ansi-styles@1.1.0
| | | +-- has-ansi@0.1.0
| | | | `-- ansi-regex@0.2.1
| | | +-- strip-ansi@0.3.0
| | | `-- supports-color@0.2.0
| | +-- dateformat@1.0.12
| | | +-- get-stdin@4.0.1
| | | `-- meow@3.7.0
| | |   +-- camelcase-keys@2.1.0
| | |   +-- decamelize@1.2.0
| | |   +-- loud-rejection@1.6.0
| | |   | +-- currently-unhandled@0.4.1
| | |   | | `-- array-find-index@1.0.2
| | |   | `-- signal-exit@3.0.2
| | |   +-- map-obj@1.0.1
| | |   +-- normalize-package-data@2.3.5
| | |   | +-- hosted-git-info@2.2.0
| | |   | +-- is-builtin-module@1.0.0
| | |   | | `-- builtin-modules@1.1.1
| | |   | `-- validate-npm-package-license@3.0.1
| | |   |   +-- spdx-correct@1.0.2
| | |   |   | `-- spdx-license-ids@1.2.2
| | |   |   `-- spdx-expression-parse@1.0.4
| | |   +-- read-pkg-up@1.0.1
| | |   | +-- find-up@1.1.2
| | |   | | `-- path-exists@2.1.0
| | |   | `-- read-pkg@1.1.0
| | |   |   +-- load-json-file@1.1.0
| | |   |   | +-- graceful-fs@4.1.11
| | |   |   | `-- strip-bom@2.0.0
| | |   |   `-- path-type@1.1.0
| | |   |     `-- graceful-fs@4.1.11
| | |   +-- redent@1.0.0
| | |   | +-- indent-string@2.1.0
| | |   | `-- strip-indent@1.0.1
| | |   `-- trim-newlines@1.0.0
| | +-- lodash._reinterpolate@2.4.1
| | +-- lodash.template@2.4.1
| | | +-- lodash._escapestringchar@2.4.1
| | | +-- lodash.defaults@2.4.1
| | | | +-- lodash._objecttypes@2.4.1
| | | | `-- lodash.keys@2.4.1
| | | +-- lodash.escape@2.4.1
| | | | +-- lodash._escapehtmlchar@2.4.1
| | | | | `-- lodash._htmlescapes@2.4.1
| | | | `-- lodash._reunescapedhtml@2.4.1
| | | |   `-- lodash.keys@2.4.1
| | | +-- lodash.keys@2.4.1
| | | | +-- lodash._isnative@2.4.1
| | | | +-- lodash._shimkeys@2.4.1
| | | | `-- lodash.isobject@2.4.1
| | | +-- lodash.templatesettings@2.4.1
| | | `-- lodash.values@2.4.1
| | |   `-- lodash.keys@2.4.1
| | +-- minimist@0.2.0
| | +-- through2@0.5.1
| | | `-- xtend@3.0.0
| | `-- vinyl@0.2.3
| `-- through2@0.4.2
|   +-- readable-stream@1.0.34
|   | `-- isarray@0.0.1
|   `-- xtend@2.1.2
|     `-- object-keys@0.4.0
+-- gulp-concat@2.6.1
| +-- concat-with-sourcemaps@1.0.4
| `-- vinyl@2.0.1
|   +-- clone@1.0.2
|   +-- clone-buffer@1.0.0
|   +-- clone-stats@1.0.0
|   +-- cloneable-readable@1.0.0
|   +-- is-stream@1.1.0
|   +-- remove-trailing-separator@1.0.1
|   `-- replace-ext@1.0.0
+-- gulp-help@1.6.1
| `-- object-assign@3.0.0
+-- gulp-insert@0.5.0
| +-- readable-stream@1.1.14
| | `-- isarray@0.0.1
| `-- streamqueue@0.0.6
|   `-- readable-stream@1.1.14
|     `-- isarray@0.0.1
+-- gulp-newer@1.3.0
| `-- kew@0.7.0
+-- gulp-sourcemaps@2.4.1
| +-- acorn@4.0.11
| +-- css@2.2.1
| | +-- source-map@0.1.43
| | | `-- amdefine@1.0.1
| | +-- source-map-resolve@0.3.1
| | | +-- atob@1.1.3
| | | +-- resolve-url@0.2.1
| | | `-- source-map-url@0.3.0
| | `-- urix@0.1.0
| +-- debug-fabulous@0.0.4
| | +-- debug@2.6.1
| | | `-- ms@0.7.2
| | +-- lazy-debug-legacy@0.0.1
| | `-- object-assign@4.1.0
| +-- detect-newline@2.1.0
| +-- graceful-fs@4.1.11
| +-- source-map@0.5.6
| +-- strip-bom@3.0.0
| `-- vinyl@1.2.0
|   `-- clone-stats@0.0.1
+-- gulp-typescript@3.1.5
| `-- vinyl-fs@2.4.4
|   +-- duplexify@3.5.0
|   | +-- end-of-stream@1.0.0
|   | | `-- once@1.3.3
|   | `-- stream-shift@1.0.0
|   +-- glob-stream@5.3.5
|   | +-- glob@5.0.15
|   | +-- glob-parent@3.1.0
|   | | +-- is-glob@3.1.0
|   | | | `-- is-extglob@2.1.1
|   | | `-- path-dirname@1.0.2
|   | +-- ordered-read-streams@0.3.0
|   | +-- through2@0.6.5
|   | | `-- readable-stream@1.0.34
|   | |   `-- isarray@0.0.1
|   | +-- to-absolute-glob@0.1.1
|   | | `-- extend-shallow@2.0.1
|   | `-- unique-stream@2.2.1
|   |   `-- json-stable-stringify@1.0.1
|   +-- graceful-fs@4.1.11
|   +-- gulp-sourcemaps@1.6.0
|   +-- is-valid-glob@0.3.0
|   +-- lazystream@1.0.0
|   +-- lodash.isequal@4.5.0
|   +-- merge-stream@1.0.1
|   +-- strip-bom@2.0.0
|   +-- strip-bom-stream@1.0.0
|   | `-- strip-bom@2.0.0
|   +-- through2-filter@2.0.0
|   +-- vali-date@1.0.0
|   `-- vinyl@1.2.0
+-- into-stream@3.1.0
| +-- from2@2.3.0
| `-- p-is-promise@1.1.0
+-- istanbul@0.4.5
| +-- abbrev@1.0.9
| +-- async@1.5.2
| +-- escodegen@1.8.1
| | +-- estraverse@1.9.3
| | +-- esutils@2.0.2
| | +-- optionator@0.8.2
| | | +-- deep-is@0.1.3
| | | +-- fast-levenshtein@2.0.6
| | | +-- levn@0.3.0
| | | +-- prelude-ls@1.1.2
| | | `-- type-check@0.3.2
| | `-- source-map@0.2.0
| +-- esprima@2.7.3
| +-- glob@5.0.15
| +-- handlebars@4.0.6
| | +-- source-map@0.4.4
| | `-- uglify-js@2.7.5
| |   +-- async@0.2.10
| |   +-- uglify-to-browserify@1.0.2
| |   `-- yargs@3.10.0
| |     +-- camelcase@1.2.1
| |     +-- cliui@2.1.0
| |     | +-- center-align@0.1.3
| |     | | +-- align-text@0.1.4
| |     | | | `-- longest@1.0.1
| |     | | `-- lazy-cache@1.0.4
| |     | +-- right-align@0.1.3
| |     | `-- wordwrap@0.0.2
| |     `-- window-size@0.1.0
| +-- js-yaml@3.8.1
| | +-- argparse@1.0.9
| | `-- esprima@3.1.3
| +-- nopt@3.0.6
| +-- once@1.4.0
| | `-- wrappy@1.0.2
| +-- resolve@1.1.7
| +-- supports-color@3.2.3
| | `-- has-flag@1.0.0
| +-- which@1.2.12
| | `-- isexe@1.1.2
| `-- wordwrap@1.0.0
+-- jake@8.0.15
| +-- async@0.9.2
| +-- chalk@0.4.0
| | +-- ansi-styles@1.0.0
| | +-- has-color@0.1.7
| | `-- strip-ansi@0.1.1
| +-- filelist@0.0.6
| | `-- utilities@0.0.37
| +-- minimatch@3.0.3
| | `-- brace-expansion@1.1.6
| |   +-- balanced-match@0.4.2
| |   `-- concat-map@0.0.1
| `-- utilities@1.0.4
+-- merge2@1.0.3
+-- minimist@1.2.0
+-- mkdirp@0.5.1
| `-- minimist@0.0.8
+-- mocha@3.2.0
| +-- browser-stdout@1.3.0
| +-- commander@2.9.0
| | `-- graceful-readlink@1.0.1
| +-- debug@2.2.0
| | `-- ms@0.7.1
| +-- diff@1.4.0
| +-- escape-string-regexp@1.0.5
| +-- glob@7.0.5
| +-- growl@1.9.2
| +-- json3@3.3.2
| +-- lodash.create@3.1.1
| | +-- lodash._baseassign@3.2.0
| | +-- lodash._basecreate@3.0.3
| | `-- lodash._isiterateecall@3.0.9
| `-- supports-color@3.1.2
+-- mocha-fivemat-progress-reporter@0.1.0
+-- q@1.4.1
+-- run-sequence@1.2.2
+-- sorcery@0.10.0
| +-- buffer-crc32@0.2.13
| +-- sander@0.5.1
| | +-- es6-promise@3.3.1
| | `-- graceful-fs@4.1.11
| `-- sourcemap-codec@1.3.0
|   `-- vlq@0.2.1
+-- through2@2.0.3
+-- travis-fold@0.1.2
+-- ts-node@2.1.0
| +-- arrify@1.0.1
| +-- diff@3.2.0
| +-- make-error@1.2.1
| +-- pinkie@2.0.4
| +-- source-map-support@0.4.11
| +-- tsconfig@5.0.3
| | +-- any-promise@1.3.0
| | +-- parse-json@2.2.0
| | | `-- error-ex@1.3.0
| | |   `-- is-arrayish@0.2.1
| | +-- strip-bom@2.0.0
| | `-- strip-json-comments@2.0.1
| `-- yn@1.2.0
+-- tslint@4.3.0-dev.0
| +-- babel-code-frame@6.22.0
| | `-- js-tokens@3.0.1
| +-- colors@1.1.2
| +-- diff@3.2.0
| +-- findup-sync@0.3.0
| | `-- glob@5.0.15
| +-- optimist@0.6.1
| | +-- minimist@0.0.10
| | `-- wordwrap@0.0.3
| +-- underscore.string@3.3.4
| | `-- sprintf-js@1.0.3
| `-- update-notifier@1.0.3
|   +-- boxen@0.6.0
|   | +-- ansi-align@1.1.0
|   | +-- camelcase@2.1.1
|   | +-- cli-boxes@1.0.0
|   | +-- filled-array@1.1.0
|   | +-- repeating@2.0.1
|   | | `-- is-finite@1.0.2
|   | |   `-- number-is-nan@1.0.1
|   | +-- string-width@1.0.2
|   | | +-- code-point-at@1.1.0
|   | | `-- is-fullwidth-code-point@1.0.0
|   | `-- widest-line@1.0.0
|   +-- configstore@2.1.0
|   | +-- dot-prop@3.0.0
|   | | `-- is-obj@1.0.1
|   | +-- graceful-fs@4.1.11
|   | +-- os-tmpdir@1.0.2
|   | +-- osenv@0.1.4
|   | +-- uuid@2.0.3
|   | `-- write-file-atomic@1.3.1
|   |   +-- graceful-fs@4.1.11
|   |   +-- imurmurhash@0.1.4
|   |   `-- slide@1.1.6
|   +-- is-npm@1.0.0
|   +-- latest-version@2.0.0
|   | `-- package-json@2.4.0
|   |   +-- got@5.7.1
|   |   | +-- create-error-class@3.0.2
|   |   | | `-- capture-stack-trace@1.0.0
|   |   | +-- is-redirect@1.0.0
|   |   | +-- is-retry-allowed@1.1.0
|   |   | +-- lowercase-keys@1.0.0
|   |   | +-- node-status-codes@1.0.0
|   |   | +-- read-all-stream@3.1.0
|   |   | +-- timed-out@3.1.3
|   |   | +-- unzip-response@1.0.2
|   |   | `-- url-parse-lax@1.0.0
|   |   |   `-- prepend-http@1.0.4
|   |   +-- registry-auth-token@3.1.0
|   |   | `-- rc@1.1.7
|   |   |   `-- deep-extend@0.4.1
|   |   +-- registry-url@3.1.0
|   |   `-- semver@5.3.0
|   +-- lazy-req@1.1.0
|   +-- semver-diff@2.1.0
|   | `-- semver@5.3.0
|   `-- xdg-basedir@2.0.0
`-- typescript@2.3.0-dev.20170226


C:\Users\####\typescript>gulp local
[15:39:38] Requiring external module ts-node/register

C:\Users\####\typescript\node_modules\ts-node\src\index.ts:319
          throw new TSError(formatDiagnostics(diagnosticList, cwd, ts, lineOffset))
                ^
TSError: ⨯ Unable to compile TypeScript
gulpfile.ts (26,10): Duplicate identifier 'Promise'. (2300)
    at getOutput (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:319:17)
    at C:\Users\####\typescript\node_modules\ts-node\src\index.ts:350:18
    at Object.compile (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:483:19)
    at Module.m._compile (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:413:44)
    at Module._extensions..js (module.js:579:10)
    at Object.require.extensions.(anonymous function) [as .ts] (C:\Users\####\typescript\node_modules\ts-node\src\index
.ts:416:12)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)

C:\Users\####\typescript>git log
commit 87d804e4715f6c5bb0cf3693b1da386242e57219
Merge: 5b23dbc999 efcca8ce46
Author: Mohamed Hegazy <mhegazy@microsoft.com>
Date:   Sat Feb 25 19:08:19 2017 -0800

    Merge pull request #14313 from Microsoft/updateJakeFile

    Make server target depend on services inputs

commit efcca8ce468d2245faa087e30255cb99f4e89479
Author: Mohamed Hegazy <mhegazy@microsoft.com>
Date:   Sat Feb 25 13:02:56 2017 -0800

    Make server target depend on services inputs

commit 5b23dbc9990e1d65b22998ff0e3ef12f8247a110
Merge: 1a579d1d4d 44e1140cf6
Author: Nathan Shively-Sanders <nathansa@microsoft.com>
Date:   Fri Feb 24 15:14:30 2017 -0800

    Merge pull request #14302 from Microsoft/make-special-property-assignment-apply-only-to-lhs

    Provide special property assignment symbol only for left-hand side of assignment

commit 44e1140cf69605bc2c3a60c186b98b0e73a94423
Author: Nathan Shively-Sanders <nathansa@microsoft.com>
Date:   Fri Feb 24 14:53:35 2017 -0800

    Rename tests

C:\Users\####\typescript>node --version
v6.9.5

C:\Users\####\typescript>npm --version
3.10.10

C:\Users\####\typescript>gulp --version
[16:01:04] Requiring external module ts-node/register
[16:01:04] CLI version 3.9.1
[16:01:04] Local version 3.9.1

@mihailik
Copy link
Contributor Author

Thought for a moment: maybe npm install -g typescript is a pre-requisite?

No, that doesn't help, still crashes in that ts-node place, same error:

C:\Users\####\typescript>npm install -g typescript
C:\Users\####\AppData\Roaming\npm\tsc -> C:\Users\####\AppData\Roaming\npm\node_modules\typescript\bin\tsc
C:\Users\####\AppData\Roaming\npm\tsserver -> C:\Users\####\AppData\Roaming\npm\node_modules\typescript\bin\tsserver
C:\Users\####\AppData\Roaming\npm
`-- typescript@2.2.1


C:\Users\####\typescript>gulp local
[16:07:38] Requiring external module ts-node/register

C:\Users\####\typescript\node_modules\ts-node\src\index.ts:319
          throw new TSError(formatDiagnostics(diagnosticList, cwd, ts, lineOffset))
                ^
TSError: ⨯ Unable to compile TypeScript
gulpfile.ts (26,10): Duplicate identifier 'Promise'. (2300)
    at getOutput (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:319:17)
    at C:\Users\####\typescript\node_modules\ts-node\src\index.ts:350:18
    at Object.compile (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:483:19)
    at Module.m._compile (C:\Users\####\typescript\node_modules\ts-node\src\index.ts:413:44)
    at Module._extensions..js (module.js:579:10)
    at Object.require.extensions.(anonymous function) [as .ts] (C:\Users\####\typescript\node_modules\ts-node\src\index
.ts:416:12)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)

C:\Users\####\typescript>tsc --version
Version 2.2.1

@mihailik
Copy link
Contributor Author

mihailik commented Feb 26, 2017

So it looks like a failure of ts-node dependency?

Leaves one baffled how all that npm tree is needed anyway: whole 15 pages of dependency tree alone!

Would have thought firing node lib/tsc.js several times with different arguments might be done in 3 pages of JavaScript tops. Gulp/jake added huge value before tsconfig, before exclude/include globs — but today naked compiler + trivial JS can do it all no sweat.

I'm tempted to experiment and possibly do a PR on self-hosted simple build script:

  • producing all outputs;
  • running tests;
  • executing some useful stuff from scripts directory.

@mihailik
Copy link
Contributor Author

Here's the same error on a fresh Cloud9 instance on Ubuntu+node v4.7.3:

mihailik:~/workspace (master) $ gulp
bash: gulp: command not found
mihailik:~/workspace (master) $ npm install -g gulp
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
/home/ubuntu/.nvm/versions/node/v4.7.3/bin/gulp -> /home/ubuntu/.nvm/versions/node/v4.7.3/lib/node_modules/gulp/bin/gulp.js
[email protected] /home/ubuntu/.nvm/versions/node/v4.7.3/lib/node_modules/gulp
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
mihailik:~/workspace (master) $ npm install
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
@types/[email protected] node_modules/@types/mkdirp

@types/[email protected] node_modules/@types/run-sequence

@types/[email protected] node_modules/@types/del

@types/[email protected] node_modules/@types/minimist

@types/[email protected] node_modules/@types/merge2

@types/[email protected] node_modules/@types/gulp-newer

@types/[email protected] node_modules/@types/mocha

@types/[email protected] node_modules/@types/gulp-typescript

@types/[email protected] node_modules/@types/gulp-sourcemaps

@types/[email protected] node_modules/@types/minimatch

@types/[email protected] node_modules/@types/glob

@types/[email protected] node_modules/@types/browserify

[email protected] node_modules/merge2

@types/[email protected] node_modules/@types/through2

@types/[email protected] node_modules/@types/convert-source-map

@types/[email protected] node_modules/@types/gulp-concat

@types/[email protected] node_modules/@types/chai

@types/[email protected] node_modules/@types/q

[email protected] node_modules/mocha-fivemat-progress-reporter

@types/[email protected] node_modules/@types/node

[email protected] node_modules/q

[email protected] node_modules/travis-fold

[email protected] node_modules/convert-source-map

[email protected] node_modules/minimist

@types/[email protected] node_modules/@types/gulp-help
└── @types/[email protected]

@types/[email protected] node_modules/@types/gulp
├── @types/[email protected]
└── @types/[email protected]

[email protected] node_modules/mkdirp
└── [email protected]

[email protected] node_modules/gulp-help
├── [email protected]
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/gulp-insert
├── [email protected]
└── [email protected] ([email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/through2
├── [email protected]
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/gulp-concat
├── [email protected] ([email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/into-stream
├── [email protected]
└── [email protected] ([email protected], [email protected])

[email protected] node_modules/chai
├── [email protected]
├── [email protected]
└── [email protected] ([email protected])

[email protected] node_modules/del
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
└── [email protected] ([email protected], [email protected], [email protected])

[email protected] node_modules/ts-node
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/run-sequence
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/jake
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected] ([email protected])
├── [email protected]
└── [email protected] ([email protected])

[email protected] node_modules/gulp-newer
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/gulp-sourcemaps
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/mocha
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected])

[email protected] node_modules/sorcery
├── [email protected]
├── [email protected] ([email protected])
└── [email protected] ([email protected], [email protected], [email protected])

[email protected] node_modules/gulp
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/gulp-typescript
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/gulp-clone
├── [email protected] ([email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/typescript

[email protected] node_modules/istanbul
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected])
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected])

[email protected] node_modules/tslint
├── [email protected]
├── [email protected]
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

[email protected] node_modules/browserify
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected])
mihailik:~/workspace (master) $ gulp local
[17:28:49] Requiring external module ts-node/register

/home/ubuntu/workspace/node_modules/ts-node/src/index.ts:319
          throw new TSError(formatDiagnostics(diagnosticList, cwd, ts, lineOffset))
                ^
TSError: ⨯ Unable to compile TypeScript
Gulpfile.ts (26,10): Duplicate identifier 'Promise'. (2300)
    at getOutput (/home/ubuntu/workspace/node_modules/ts-node/src/index.ts:319:17)
    at /home/ubuntu/workspace/node_modules/ts-node/src/index.ts:350:18
    at Object.compile (/home/ubuntu/workspace/node_modules/ts-node/src/index.ts:483:19)
    at Module.m._compile (/home/ubuntu/workspace/node_modules/ts-node/src/index.ts:413:44)
    at Module._extensions..js (module.js:416:10)
    at Object.require.extensions.(anonymous function) [as .ts] (/home/ubuntu/workspace/node_modules/ts-node/src/index.ts:416:12)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
mihailik:~/workspace (master) $ 

@mihailik
Copy link
Contributor Author

Mind you: jake works fine

Gonna use it for the PR I was actually meaning to do.

@blakeembrey
Copy link
Contributor

blakeembrey commented Feb 26, 2017

@mihailik It seems like the error would be coming from https://github.com/Microsoft/TypeScript/blob/87d804e4715f6c5bb0cf3693b1da386242e57219/Gulpfile.ts#L26 - probably combined with lib using ES2015 promises or an @types dependency recently shipping with a global Promise. I'm not super familiar with the build-chain here.

@mihailik
Copy link
Contributor Author

Looks like the official tests use jake rather than gulp:

https://ci2.dot.net/job/Microsoft_TypeScript/job/master/job/typescript_node.4_prtest/1306/console

15:24:06 > [email protected] pretest /mnt/j/workspace/Microsoft_TypeScript/master/typescript_node.4_prtest
15:24:06 > jake tests
15:24:06 

But the official GitHub homepage says gulp https://github.com/Microsoft/TypeScript look:

Building

In order to build the TypeScript compiler, ensure that you have Git and Node.js installed.

Clone a copy of the repo:

git clone https://github.com/Microsoft/TypeScript.git

Change to the TypeScript directory:

cd TypeScript

Install Gulp tools and dev dependencies:

npm install -g gulp
npm install

Use one of the following to build and test:

gulp local            # Build the compiler into built/local 
gulp clean            # Delete the built compiler 
gulp LKG              # Replace the last known good with the built one.
                      # Bootstrapping step to be executed when the built compiler reaches a stable state.
gulp tests            # Build the test infrastructure using the built compiler. 
gulp runtests         # Run tests using the built compiler and test infrastructure. 
                      # You can override the host or specify a test for this command. 
                      # Use host=<hostName> or tests=<testPath>. 
gulp runtests-browser # Runs the tests using the built run.js file. Syntax is gulp runtests. Optional
                        parameters 'host=', 'tests=[regex], reporter=[list|spec|json|<more>]'.
gulp baseline-accept  # This replaces the baseline test results with the results obtained from gulp runtests.
gulp lint             # Runs tslint on the TypeScript source.
gulp help             # List the above commands. 

@mihailik
Copy link
Contributor Author

@blakeembrey thanks to your point, I've proposed a fix at #14330 👍

@mhegazy mhegazy added this to the TypeScript 2.3 milestone Feb 27, 2017
@mhegazy mhegazy added Bug A bug in TypeScript Fixed A PR has been merged for this issue labels Feb 27, 2017
@microsoft microsoft locked and limited conversation to collaborators Jun 19, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Bug A bug in TypeScript Fixed A PR has been merged for this issue
Projects
None yet
Development

No branches or pull requests

3 participants