bnoordhuis / node-iconv

node.js iconv bindings - text recoding for fun and profit!
Other
797 stars 123 forks source link

i can't install iconv #104

Closed judasowelu closed 9 years ago

judasowelu commented 9 years ago

sorry for my stupid eng

i have installed python 3.4.2 but it show it says same message before install python and after

i don't need iconv anymore but i wish this information may help you

here is my computer

OS : windows 7 Ultimate K 64bit RAM : 8.00GB CPU : intel{R) Core(TM) i7-4960X CPU @ 3.60GHz 3.80GHz Node.js v0.10.26

here is cmd

D:\dev\workspace\nodeJsServer\src>npm install iconv npm http GET https://registry.npmjs.org/iconv npm http 304 https://registry.npmjs.org/iconv npm http GET https://registry.npmjs.org/nan npm http 304 https://registry.npmjs.org/nan

iconv@2.1.4 install D:\dev\workspace\nodeJsServer\src\node_modules\iconv node-gyp rebuild

D:\dev\workspace\nodeJsServer\src\node_modules\iconv>node "C:\Program Files\node js\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.j s" rebuild gyp ERR! configure error gyp ERR! stack Error: Can't find Python executable "python", you can set the PYT HON env variable. gyp ERR! stack at failNoPython (C:\Program Files\nodejs\node_modules\npm\nod e_modules\node-gyp\lib\configure.js:101:14) gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node -gyp\lib\configure.js:64:11 gyp ERR! stack at Object.oncomplete (fs.js:107:15) gyp ERR! System Windows_NT 6.1.7601 gyp ERR! command "node" "C:\Program Files\nodejs\node_modules\npm\node_modu les\node-gyp\bin\node-gyp.js" "rebuild" gyp ERR! cwd D:\dev\workspace\nodeJsServer\src\node_modules\iconv gyp ERR! node -v v0.10.26 gyp ERR! node-gyp -v v0.12.2 gyp ERR! not ok npm ERR! iconv@2.1.4 install: node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the iconv@2.1.4 install script. npm ERR! This is most likely a problem with the iconv package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! You can get their info via: npm ERR! npm owner ls iconv npm ERR! There is likely additional logging output above.

npm ERR! System Windows_NT 6.1.7601 npm ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nod ejs\node_modules\npm\bin\npm-cli.js" "install" "iconv" npm ERR! cwd D:\dev\workspace\nodeJsServer\src npm ERR! node -v v0.10.26 npm ERR! npm -v 1.4.3 npm ERR! code ELIFECYCLE npm ERR! npm ERR! Additional logging details can be found in: npm ERR! D:\dev\workspace\nodeJsServer\src\npm-debug.log npm ERR! not ok code 0

D:\dev\workspace\nodeJsServer\src>

here is npm-debug.log

0 info it worked if it ends with ok 1 verbose cli [ 'C:\Program Files\nodejs\node.exe', 1 verbose cli 'C:\Program Files\nodejs\nodemodules\npm\bin\npm-cli.js', 1 verbose cli 'install', 1 verbose cli 'iconv' ] 2 info using npm@1.4.3 3 info using node@v0.10.26 4 verbose node symlink C:\Program Files\nodejs\node.exe 5 verbose cache add [ 'iconv', null ] 6 verbose cache add name=undefined spec="iconv" args=["iconv",null] 7 verbose parsed url { protocol: null, 7 verbose parsed url slashes: null, 7 verbose parsed url auth: null, 7 verbose parsed url host: null, 7 verbose parsed url port: null, 7 verbose parsed url hostname: null, 7 verbose parsed url hash: null, 7 verbose parsed url search: null, 7 verbose parsed url query: null, 7 verbose parsed url pathname: 'iconv', 7 verbose parsed url path: 'iconv', 7 verbose parsed url href: 'iconv' } 8 silly lockFile b77bb132-iconv iconv 9 verbose lock iconv C:\Users\SM\AppData\Roaming\npm-cache\b77bb132-iconv.lock 10 silly lockFile b77bb132-iconv iconv 11 silly lockFile b77bb132-iconv iconv 12 verbose addNamed [ 'iconv', '' ] 13 verbose addNamed [ null, '' ] 14 silly lockFile 7ff3175f-iconv iconv@ 15 verbose lock iconv@ C:\Users\SM\AppData\Roaming\npm-cache\7ff3175f-iconv.lock 16 silly addNameRange { name: 'iconv', range: '', hasData: false } 17 verbose url raw iconv 18 verbose url resolving [ 'https://registry.npmjs.org/', './iconv' ] 19 verbose url resolved https://registry.npmjs.org/iconv 20 info trying registry request attempt 1 at 14:31:20 21 verbose etag "BRAF79I2G31P3LEK64SRW8513" 22 http GET https://registry.npmjs.org/iconv 23 http 304 https://registry.npmjs.org/iconv 24 silly registry.get cb [ 304, 24 silly registry.get { date: 'Fri, 16 Jan 2015 05:31:11 GMT', 24 silly registry.get server: 'Apache', 24 silly registry.get via: '1.1 varnish', 24 silly registry.get 'last-modified': 'Fri, 16 Jan 2015 05:31:11 GMT', 24 silly registry.get 'cache-control': 'max-age=60', 24 silly registry.get etag: '"BRAF79I2G31P3LEK64SRW8513"', 24 silly registry.get age: '0', 24 silly registry.get 'x-served-by': 'cache-ty66-TYO', 24 silly registry.get 'x-cache': 'HIT', 24 silly registry.get 'x-cache-hits': '1', 24 silly registry.get 'x-timer': 'S1421386271.409670,VS0,VE185', 24 silly registry.get vary: 'Accept', 24 silly registry.get 'content-length': '0', 24 silly registry.get 'keep-alive': 'timeout=10, max=50', 24 silly registry.get connection: 'Keep-Alive' } ] 25 verbose etag iconv from cache 26 silly addNameRange number 2 { name: 'iconv', range: '', hasData: true } 27 silly addNameRange versions [ 'iconv', 27 silly addNameRange [ '1.0.0', 27 silly addNameRange '1.0.1', 27 silly addNameRange '1.1.0', 27 silly addNameRange '1.1.1', 27 silly addNameRange '1.1.2', 27 silly addNameRange '1.1.3', 27 silly addNameRange '1.2.0', 27 silly addNameRange '1.2.1', 27 silly addNameRange '1.2.2', 27 silly addNameRange '1.2.3', 27 silly addNameRange '1.2.4', 27 silly addNameRange '2.0.0', 27 silly addNameRange '2.0.1', 27 silly addNameRange '2.0.2', 27 silly addNameRange '2.0.3', 27 silly addNameRange '2.0.4', 27 silly addNameRange '2.0.5', 27 silly addNameRange '2.0.6', 27 silly addNameRange '2.0.7', 27 silly addNameRange '2.1.0', 27 silly addNameRange '2.1.1', 27 silly addNameRange '2.1.2', 27 silly addNameRange '2.1.3', 27 silly addNameRange '2.1.4' ] ] 28 verbose addNamed [ 'iconv', '2.1.4' ] 29 verbose addNamed [ '2.1.4', '2.1.4' ] 30 silly lockFile 40dc9946-iconv-2-1-4 iconv@2.1.4 31 verbose lock iconv@2.1.4 C:\Users\SM\AppData\Roaming\npm-cache\40dc9946-iconv-2-1-4.lock 32 silly lockFile 40dc9946-iconv-2-1-4 iconv@2.1.4 33 silly lockFile 40dc9946-iconv-2-1-4 iconv@2.1.4 34 silly lockFile 7ff3175f-iconv iconv@ 35 silly lockFile 7ff3175f-iconv iconv@ 36 silly resolved [ { name: 'iconv', 36 silly resolved main: './lib/iconv', 36 silly resolved version: '2.1.4', 36 silly resolved description: 'Text recoding in JavaScript for fun and profit!', 36 silly resolved homepage: 'https://github.com/bnoordhuis/node-iconv', 36 silly resolved repository: 36 silly resolved { type: 'git', 36 silly resolved url: 'git://github.com/bnoordhuis/node-iconv.git' }, 36 silly resolved author: { name: 'Ben Noordhuis', email: 'info@bnoordhuis.nl' }, 36 silly resolved engines: { node: '>=0.8.0' }, 36 silly resolved license: 'ISC', 36 silly resolved readmeFilename: 'README.md', 36 silly resolved dependencies: { nan: '~1.1.1' }, 36 silly resolved devDependencies: { tap: '~0.4.8' }, 36 silly resolved scripts: { test: 'tap test/test-*.js', install: 'node-gyp rebuild' }, 36 silly resolved gypfile: true, 36 silly resolved readme: '# node-iconv\n\nText recoding in JavaScript for fun and profit!\n\nnode-iconv may or may not work on Windows. Please try it and report any issues\nyou have.\n\n## Installing with npm\n\n $ npm install iconv\n\nNote that you do not need to have a copy of libiconv installed to use this\nmodule.\n\n## Compiling from source\n\n $ git clone git://github.com/bnoordhuis/node-iconv.git\n $ node-gyp configure build\n $ npm install .\n\n## Usage\n\nEncode from one character encoding to another:\n\n // convert from UTF-8 to ISO-8859-1\n var Buffer = require(\'buffer\').Buffer;\n var Iconv = require(\'iconv\').Iconv;\n var assert = require(\'assert\');\n\n var iconv = new Iconv(\'UTF-8\', \'ISO-8859-1\');\n var buffer = iconv.convert(\'Hello, world!\');\n var buffer2 = iconv.convert(new Buffer(\'Hello, world!\'));\n assert.equals(buffer.inspect(), buffer2.inspect());\n // do something useful with the buffers\n\nA simple ISO-8859-1 to UTF-8 conversion TCP service:\n\n var net = require(\'net\');\n var Iconv = require(\'iconv\').Iconv;\n var server = net.createServer(function(conn) {\n var iconv = new Iconv(\'latin1\', \'utf-8\');\n conn.pipe(iconv).pipe(conn);\n });\n server.listen(8000);\n console.log(\'Listening on tcp://0.0.0.0:8000/\');\n\nLook at test/test-basic.js and test/test-stream.js for more examples\nand node-iconv\'s behaviour under error conditions.\n\n## Notes\n\nThings to keep in mind when you work with node-iconv.\n\n### Chunked data\n\nSay you are reading data in chunks from a HTTP stream. The logical input is a\nsingle document (the full POST request data) but the physical input will be\nspread over several buffers (the request chunks).\n\nYou must accumulate the small buffers into a single large buffer before\nperforming the conversion. If you don\'t, you will get unexpected results with\nmulti-byte and stateful character sets like UTF-8 and ISO-2022-JP.\n\nThe above only applies when you are calling Iconv#convert() yourself.\nIf you use the streaming interface, node-iconv takes care of stitching\npartial character sequences together again.\n\n### Dealing with untranslatable characters\n\nCharacters are not always translatable to another encoding. The UTF-8 string\n"ça va が", for example, cannot be represented in plain 7-bits ASCII without\nsome loss of fidelity.\n\nBy default, node-iconv throws EILSEQ when untranslatabe characters are\nencountered but this can be customized. Quoting the iconv_open(3) man page:\n\n //TRANSLIT\n When the string "//TRANSLIT" is appended to tocode, transliteration is\n activated. This means that when a character cannot be represented in the\n target character set, it can be approximated through one or several\n similarly looking characters.\n\n //IGNORE\n When the string "//IGNORE" is appended to tocode, characters that cannot be\n represented in the target character set will be silently discarded.\n\nExample usage:\n\n var iconv = new Iconv(\'UTF-8\', \'ASCII\');\n iconv.convert(\'ça va\'); // throws EILSEQ\n\n var iconv = new Iconv(\'UTF-8\', \'ASCII//IGNORE\');\n iconv.convert(\'ça va\'); // returns "a va"\n\n var iconv = new Iconv(\'UTF-8\', \'ASCII//TRANSLIT\');\n iconv.convert(\'ça va\'); // "ca va"\n\n var iconv = new Iconv(\'UTF-8\', \'ASCII//TRANSLIT//IGNORE\');\n iconv.convert(\'ça va が\'); // "ca va "\n\n### EINVAL\n\nEINVAL is raised when the input ends in a partial character sequence. This is a\nfeature, not a bug.\n', 36 silly resolved bugs: { url: 'https://github.com/bnoordhuis/node-iconv/issues' }, 36 silly resolved _id: 'iconv@2.1.4', 36 silly resolved _from: 'iconv@' } ] 37 info install iconv@2.1.4 into D:\dev\workspace\nodeJsServer\src 38 info installOne iconv@2.1.4 39 info D:\dev\workspace\nodeJsServer\src\node_modules\iconv unbuild 40 verbose tar unpack C:\Users\SM\AppData\Roaming\npm-cache\iconv\2.1.4\package.tgz 41 silly lockFile 12d4d841-eJsServer-src-node-modules-iconv tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv 42 verbose lock tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv C:\Users\SM\AppData\Roaming\npm-cache\12d4d841-eJsServer-src-node-modules-iconv.lock 43 silly lockFile 51d678f1-pm-cache-iconv-2-1-4-package-tgz tar://C:\Users\SM\AppData\Roaming\npm-cache\iconv\2.1.4\package.tgz 44 verbose lock tar://C:\Users\SM\AppData\Roaming\npm-cache\iconv\2.1.4\package.tgz C:\Users\SM\AppData\Roaming\npm-cache\51d678f1-pm-cache-iconv-2-1-4-package-tgz.lock 45 silly gunzTarPerm modes [ '755', '644' ] 46 silly gunzTarPerm extractEntry package.json 47 silly gunzTarPerm modified mode [ 'package.json', 438, 420 ] 48 silly gunzTarPerm extractEntry .npmignore 49 silly gunzTarPerm modified mode [ '.npmignore', 438, 420 ] 50 silly gunzTarPerm extractEntry README.md 51 silly gunzTarPerm modified mode [ 'README.md', 438, 420 ] 52 silly gunzTarPerm extractEntry LICENSE 53 silly gunzTarPerm modified mode [ 'LICENSE', 438, 420 ] 54 silly gunzTarPerm extractEntry binding.gyp 55 silly gunzTarPerm modified mode [ 'binding.gyp', 438, 420 ] 56 silly gunzTarPerm extractEntry deps/libiconv/README 57 silly gunzTarPerm modified mode [ 'deps/libiconv/README', 438, 420 ] 58 silly gunzTarPerm extractEntry deps/libiconv/INSTALL.generic 59 silly gunzTarPerm modified mode [ 'deps/libiconv/INSTALL.generic', 438, 420 ] 60 silly gunzTarPerm extractEntry deps/libiconv/COPYING 61 silly gunzTarPerm modified mode [ 'deps/libiconv/COPYING', 438, 420 ] 62 silly gunzTarPerm extractEntry deps/libiconv/COPYING.LIB 63 silly gunzTarPerm modified mode [ 'deps/libiconv/COPYING.LIB', 438, 420 ] 64 silly gunzTarPerm extractEntry deps/libiconv/ChangeLog 65 silly gunzTarPerm modified mode [ 'deps/libiconv/ChangeLog', 438, 420 ] 66 silly gunzTarPerm extractEntry deps/libiconv/DEPENDENCIES 67 silly gunzTarPerm modified mode [ 'deps/libiconv/DEPENDENCIES', 438, 420 ] 68 silly gunzTarPerm extractEntry deps/libiconv/DESIGN 69 silly gunzTarPerm modified mode [ 'deps/libiconv/DESIGN', 438, 420 ] 70 silly gunzTarPerm extractEntry deps/libiconv/HACKING 71 silly gunzTarPerm modified mode [ 'deps/libiconv/HACKING', 438, 420 ] 72 silly gunzTarPerm extractEntry deps/libiconv/AUTHORS 73 silly gunzTarPerm modified mode [ 'deps/libiconv/AUTHORS', 438, 420 ] 74 silly gunzTarPerm extractEntry deps/libiconv/NEWS 75 silly gunzTarPerm modified mode [ 'deps/libiconv/NEWS', 438, 420 ] 76 silly gunzTarPerm extractEntry deps/libiconv/NOTES 77 silly gunzTarPerm modified mode [ 'deps/libiconv/NOTES', 438, 420 ] 78 silly gunzTarPerm extractEntry deps/libiconv/PORTS 79 silly gunzTarPerm modified mode [ 'deps/libiconv/PORTS', 438, 420 ] 80 silly gunzTarPerm extractEntry deps/libiconv/ABOUT-NLS 81 silly gunzTarPerm modified mode [ 'deps/libiconv/ABOUT-NLS', 438, 420 ] 82 silly gunzTarPerm extractEntry deps/libiconv/README.woe32 83 silly gunzTarPerm modified mode [ 'deps/libiconv/README.woe32', 438, 420 ] 84 silly gunzTarPerm extractEntry deps/libiconv/THANKS 85 silly gunzTarPerm modified mode [ 'deps/libiconv/THANKS', 438, 420 ] 86 silly gunzTarPerm extractEntry deps/libiconv/lib/euc_tw.h 87 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/euc_tw.h', 438, 420 ] 88 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases.gperf 89 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases.gperf', 438, 420 ] 90 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases2.h 91 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases2.h', 438, 420 ] 92 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_aix.h 93 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_aix.h', 438, 420 ] 94 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_aix_sysaix.h 95 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_aix_sysaix.h', 438, 420 ] 96 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_dos.h 97 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_dos.h', 438, 420 ] 98 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_extra.h 99 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_extra.h', 438, 420 ] 100 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_osf1.h 101 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_osf1.h', 438, 420 ] 102 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_osf1_sysosf1.h 103 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_osf1_sysosf1.h', 438, 420 ] 104 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_sysaix.gperf 105 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_sysaix.gperf', 438, 420 ] 106 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_sysaix.h 107 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_sysaix.h', 438, 420 ] 108 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_syshpux.gperf 109 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_syshpux.gperf', 438, 420 ] 110 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_syshpux.h 111 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_syshpux.h', 438, 420 ] 112 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_sysosf1.gperf 113 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_sysosf1.gperf', 438, 420 ] 114 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_sysosf1.h 115 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_sysosf1.h', 438, 420 ] 116 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_syssolaris.gperf 117 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_syssolaris.gperf', 438, 420 ] 118 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases_syssolaris.h 119 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases_syssolaris.h', 438, 420 ] 120 silly gunzTarPerm extractEntry deps/libiconv/lib/armscii_8.h 121 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/armscii_8.h', 438, 420 ] 122 silly gunzTarPerm extractEntry deps/libiconv/lib/ascii.h 123 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ascii.h', 438, 420 ] 124 silly gunzTarPerm extractEntry deps/libiconv/lib/atarist.h 125 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/atarist.h', 438, 420 ] 126 silly gunzTarPerm extractEntry deps/libiconv/lib/big5.h 127 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/big5.h', 438, 420 ] 128 silly gunzTarPerm extractEntry deps/libiconv/lib/big5_2003.h 129 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/big5_2003.h', 438, 420 ] 130 silly gunzTarPerm extractEntry deps/libiconv/lib/big5hkscs1999.h 131 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/big5hkscs1999.h', 438, 420 ] 132 silly gunzTarPerm extractEntry deps/libiconv/lib/big5hkscs2001.h 133 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/big5hkscs2001.h', 438, 420 ] 134 silly gunzTarPerm extractEntry deps/libiconv/lib/big5hkscs2004.h 135 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/big5hkscs2004.h', 438, 420 ] 136 silly gunzTarPerm extractEntry deps/libiconv/lib/big5hkscs2008.h 137 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/big5hkscs2008.h', 438, 420 ] 138 silly gunzTarPerm extractEntry deps/libiconv/lib/c99.h 139 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/c99.h', 438, 420 ] 140 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical.h 141 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical.h', 438, 420 ] 142 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_aix.h 143 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_aix.h', 438, 420 ] 144 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_aix_sysaix.h 145 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_aix_sysaix.h', 438, 420 ] 146 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_dos.h 147 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_dos.h', 438, 420 ] 148 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_extra.h 149 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_extra.h', 438, 420 ] 150 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_local.h 151 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_local.h', 438, 420 ] 152 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_local_sysaix.h 153 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_local_sysaix.h', 438, 420 ] 154 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_local_syshpux.h 155 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_local_syshpux.h', 438, 420 ] 156 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_local_sysosf1.h 157 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_local_sysosf1.h', 438, 420 ] 158 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_local_syssolaris.h 159 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_local_syssolaris.h', 438, 420 ] 160 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_osf1.h 161 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_osf1.h', 438, 420 ] 162 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_osf1_sysosf1.h 163 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_osf1_sysosf1.h', 438, 420 ] 164 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_sysaix.h 165 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_sysaix.h', 438, 420 ] 166 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_syshpux.h 167 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_syshpux.h', 438, 420 ] 168 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_sysosf1.h 169 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_sysosf1.h', 438, 420 ] 170 silly gunzTarPerm extractEntry deps/libiconv/lib/canonical_syssolaris.h 171 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/canonical_syssolaris.h', 438, 420 ] 172 silly gunzTarPerm extractEntry deps/libiconv/lib/ces_big5.h 173 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ces_big5.h', 438, 420 ] 174 silly gunzTarPerm extractEntry deps/libiconv/lib/ces_gbk.h 175 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ces_gbk.h', 438, 420 ] 176 silly gunzTarPerm extractEntry deps/libiconv/lib/cjk_variants.h 177 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cjk_variants.h', 438, 420 ] 178 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643.h 179 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643.h', 438, 420 ] 180 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_1.h 181 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_1.h', 438, 420 ] 182 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_15.h 183 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_15.h', 438, 420 ] 184 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_2.h 185 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_2.h', 438, 420 ] 186 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_3.h 187 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_3.h', 438, 420 ] 188 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_4.h 189 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_4.h', 438, 420 ] 190 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_4a.h 191 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_4a.h', 438, 420 ] 192 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_4b.h 193 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_4b.h', 438, 420 ] 194 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_5.h 195 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_5.h', 438, 420 ] 196 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_6.h 197 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_6.h', 438, 420 ] 198 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_7.h 199 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_7.h', 438, 420 ] 200 silly gunzTarPerm extractEntry deps/libiconv/lib/cns11643_inv.h 201 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cns11643_inv.h', 438, 420 ] 202 silly gunzTarPerm extractEntry deps/libiconv/lib/converters.h 203 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/converters.h', 438, 420 ] 204 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1046.h 205 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1046.h', 438, 420 ] 206 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1124.h 207 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1124.h', 438, 420 ] 208 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1125.h 209 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1125.h', 438, 420 ] 210 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1129.h 211 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1129.h', 438, 420 ] 212 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1131.h 213 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1131.h', 438, 420 ] 214 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1133.h 215 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1133.h', 438, 420 ] 216 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1161.h 217 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1161.h', 438, 420 ] 218 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1162.h 219 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1162.h', 438, 420 ] 220 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1163.h 221 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1163.h', 438, 420 ] 222 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1250.h 223 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1250.h', 438, 420 ] 224 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1251.h 225 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1251.h', 438, 420 ] 226 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1252.h 227 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1252.h', 438, 420 ] 228 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1253.h 229 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1253.h', 438, 420 ] 230 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1254.h 231 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1254.h', 438, 420 ] 232 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1255.h 233 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1255.h', 438, 420 ] 234 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1256.h 235 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1256.h', 438, 420 ] 236 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1257.h 237 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1257.h', 438, 420 ] 238 silly gunzTarPerm extractEntry deps/libiconv/lib/cp1258.h 239 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp1258.h', 438, 420 ] 240 silly gunzTarPerm extractEntry deps/libiconv/lib/cp437.h 241 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp437.h', 438, 420 ] 242 silly gunzTarPerm extractEntry deps/libiconv/lib/cp737.h 243 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp737.h', 438, 420 ] 244 silly gunzTarPerm extractEntry deps/libiconv/lib/cp775.h 245 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp775.h', 438, 420 ] 246 silly gunzTarPerm extractEntry deps/libiconv/lib/cp850.h 247 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp850.h', 438, 420 ] 248 silly gunzTarPerm extractEntry deps/libiconv/lib/cp852.h 249 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp852.h', 438, 420 ] 250 silly gunzTarPerm extractEntry deps/libiconv/lib/cp853.h 251 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp853.h', 438, 420 ] 252 silly gunzTarPerm extractEntry deps/libiconv/lib/cp855.h 253 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp855.h', 438, 420 ] 254 silly gunzTarPerm extractEntry deps/libiconv/lib/cp856.h 255 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp856.h', 438, 420 ] 256 silly gunzTarPerm extractEntry deps/libiconv/lib/cp857.h 257 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp857.h', 438, 420 ] 258 silly gunzTarPerm extractEntry deps/libiconv/lib/cp858.h 259 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp858.h', 438, 420 ] 260 silly gunzTarPerm extractEntry deps/libiconv/lib/cp860.h 261 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp860.h', 438, 420 ] 262 silly gunzTarPerm extractEntry deps/libiconv/lib/cp861.h 263 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp861.h', 438, 420 ] 264 silly gunzTarPerm extractEntry deps/libiconv/lib/cp862.h 265 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp862.h', 438, 420 ] 266 silly gunzTarPerm extractEntry deps/libiconv/lib/cp863.h 267 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp863.h', 438, 420 ] 268 silly gunzTarPerm extractEntry deps/libiconv/lib/cp864.h 269 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp864.h', 438, 420 ] 270 silly gunzTarPerm extractEntry deps/libiconv/lib/cp865.h 271 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp865.h', 438, 420 ] 272 silly gunzTarPerm extractEntry deps/libiconv/lib/cp866.h 273 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp866.h', 438, 420 ] 274 silly gunzTarPerm extractEntry deps/libiconv/lib/cp869.h 275 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp869.h', 438, 420 ] 276 silly gunzTarPerm extractEntry deps/libiconv/lib/cp874.h 277 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp874.h', 438, 420 ] 278 silly gunzTarPerm extractEntry deps/libiconv/lib/cp922.h 279 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp922.h', 438, 420 ] 280 silly gunzTarPerm extractEntry deps/libiconv/lib/cp932.h 281 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp932.h', 438, 420 ] 282 silly gunzTarPerm extractEntry deps/libiconv/lib/cp932ext.h 283 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp932ext.h', 438, 420 ] 284 silly gunzTarPerm extractEntry deps/libiconv/lib/cp936.h 285 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp936.h', 438, 420 ] 286 silly gunzTarPerm extractEntry deps/libiconv/lib/cp936ext.h 287 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp936ext.h', 438, 420 ] 288 silly gunzTarPerm extractEntry deps/libiconv/lib/cp943.h 289 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp943.h', 438, 420 ] 290 silly gunzTarPerm extractEntry deps/libiconv/lib/cp949.h 291 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp949.h', 438, 420 ] 292 silly gunzTarPerm extractEntry deps/libiconv/lib/cp950.h 293 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp950.h', 438, 420 ] 294 silly gunzTarPerm extractEntry deps/libiconv/lib/cp950ext.h 295 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/cp950ext.h', 438, 420 ] 296 silly gunzTarPerm extractEntry deps/libiconv/lib/dec_hanyu.h 297 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/dec_hanyu.h', 438, 420 ] 298 silly gunzTarPerm extractEntry deps/libiconv/lib/dec_kanji.h 299 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/dec_kanji.h', 438, 420 ] 300 silly gunzTarPerm extractEntry deps/libiconv/lib/encodings.def 301 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/encodings.def', 438, 420 ] 302 silly gunzTarPerm extractEntry deps/libiconv/lib/encodings_aix.def 303 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/encodings_aix.def', 438, 420 ] 304 silly gunzTarPerm extractEntry deps/libiconv/lib/encodings_dos.def 305 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/encodings_dos.def', 438, 420 ] 306 silly gunzTarPerm extractEntry deps/libiconv/lib/encodings_extra.def 307 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/encodings_extra.def', 438, 420 ] 308 silly gunzTarPerm extractEntry deps/libiconv/lib/encodings_local.def 309 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/encodings_local.def', 438, 420 ] 310 silly gunzTarPerm extractEntry deps/libiconv/lib/encodings_osf1.def 311 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/encodings_osf1.def', 438, 420 ] 312 silly gunzTarPerm extractEntry deps/libiconv/lib/euc_cn.h 313 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/euc_cn.h', 438, 420 ] 314 silly gunzTarPerm extractEntry deps/libiconv/lib/euc_jisx0213.h 315 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/euc_jisx0213.h', 438, 420 ] 316 silly gunzTarPerm extractEntry deps/libiconv/lib/euc_jp.h 317 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/euc_jp.h', 438, 420 ] 318 silly gunzTarPerm extractEntry deps/libiconv/lib/euc_kr.h 319 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/euc_kr.h', 438, 420 ] 320 silly gunzTarPerm extractEntry deps/libiconv/lib/aliases.h 321 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/aliases.h', 438, 420 ] 322 silly gunzTarPerm extractEntry deps/libiconv/lib/flags.h 323 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/flags.h', 438, 420 ] 324 silly gunzTarPerm extractEntry deps/libiconv/lib/flushwc.h 325 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/flushwc.h', 438, 420 ] 326 silly gunzTarPerm extractEntry deps/libiconv/lib/gb12345.h 327 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gb12345.h', 438, 420 ] 328 silly gunzTarPerm extractEntry deps/libiconv/lib/gb12345ext.h 329 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gb12345ext.h', 438, 420 ] 330 silly gunzTarPerm extractEntry deps/libiconv/lib/gb18030.h 331 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gb18030.h', 438, 420 ] 332 silly gunzTarPerm extractEntry deps/libiconv/lib/gb18030ext.h 333 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gb18030ext.h', 438, 420 ] 334 silly gunzTarPerm extractEntry deps/libiconv/lib/gb18030uni.h 335 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gb18030uni.h', 438, 420 ] 336 silly gunzTarPerm extractEntry deps/libiconv/lib/gb2312.h 337 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gb2312.h', 438, 420 ] 338 silly gunzTarPerm extractEntry deps/libiconv/lib/gbk.h 339 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gbk.h', 438, 420 ] 340 silly gunzTarPerm extractEntry deps/libiconv/lib/gbkext1.h 341 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gbkext1.h', 438, 420 ] 342 silly gunzTarPerm extractEntry deps/libiconv/lib/gbkext2.h 343 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gbkext2.h', 438, 420 ] 344 silly gunzTarPerm extractEntry deps/libiconv/lib/gbkext_inv.h 345 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gbkext_inv.h', 438, 420 ] 346 silly gunzTarPerm extractEntry deps/libiconv/lib/genaliases.c 347 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/genaliases.c', 438, 420 ] 348 silly gunzTarPerm extractEntry deps/libiconv/lib/genaliases2.c 349 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/genaliases2.c', 438, 420 ] 350 silly gunzTarPerm extractEntry deps/libiconv/lib/genflags.c 351 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/genflags.c', 438, 420 ] 352 silly gunzTarPerm extractEntry deps/libiconv/lib/gentranslit.c 353 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/gentranslit.c', 438, 420 ] 354 silly gunzTarPerm extractEntry deps/libiconv/lib/georgian_academy.h 355 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/georgian_academy.h', 438, 420 ] 356 silly gunzTarPerm extractEntry deps/libiconv/lib/georgian_ps.h 357 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/georgian_ps.h', 438, 420 ] 358 silly gunzTarPerm extractEntry deps/libiconv/lib/hkscs1999.h 359 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/hkscs1999.h', 438, 420 ] 360 silly gunzTarPerm extractEntry deps/libiconv/lib/hkscs2001.h 361 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/hkscs2001.h', 438, 420 ] 362 silly gunzTarPerm extractEntry deps/libiconv/lib/hkscs2004.h 363 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/hkscs2004.h', 438, 420 ] 364 silly gunzTarPerm extractEntry deps/libiconv/lib/hkscs2008.h 365 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/hkscs2008.h', 438, 420 ] 366 silly gunzTarPerm extractEntry deps/libiconv/lib/hp_roman8.h 367 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/hp_roman8.h', 438, 420 ] 368 silly gunzTarPerm extractEntry deps/libiconv/lib/hz.h 369 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/hz.h', 438, 420 ] 370 silly gunzTarPerm extractEntry deps/libiconv/lib/iconv.c 371 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iconv.c', 438, 420 ] 372 silly gunzTarPerm extractEntry deps/libiconv/lib/iconv_open1.h 373 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iconv_open1.h', 438, 420 ] 374 silly gunzTarPerm extractEntry deps/libiconv/lib/iconv_open2.h 375 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iconv_open2.h', 438, 420 ] 376 silly gunzTarPerm extractEntry deps/libiconv/lib/iso2022_cn.h 377 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso2022_cn.h', 438, 420 ] 378 silly gunzTarPerm extractEntry deps/libiconv/lib/iso2022_cnext.h 379 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso2022_cnext.h', 438, 420 ] 380 silly gunzTarPerm extractEntry deps/libiconv/lib/iso2022_jp.h 381 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso2022_jp.h', 438, 420 ] 382 silly gunzTarPerm extractEntry deps/libiconv/lib/iso2022_jp1.h 383 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso2022_jp1.h', 438, 420 ] 384 silly gunzTarPerm extractEntry deps/libiconv/lib/iso2022_jp2.h 385 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso2022_jp2.h', 438, 420 ] 386 silly gunzTarPerm extractEntry deps/libiconv/lib/iso2022_jp3.h 387 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso2022_jp3.h', 438, 420 ] 388 silly gunzTarPerm extractEntry deps/libiconv/lib/iso2022_kr.h 389 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso2022_kr.h', 438, 420 ] 390 silly gunzTarPerm extractEntry deps/libiconv/lib/iso646_cn.h 391 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso646_cn.h', 438, 420 ] 392 silly gunzTarPerm extractEntry deps/libiconv/lib/iso646_jp.h 393 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso646_jp.h', 438, 420 ] 394 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_1.h 395 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_1.h', 438, 420 ] 396 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_10.h 397 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_10.h', 438, 420 ] 398 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_11.h 399 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_11.h', 438, 420 ] 400 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_13.h 401 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_13.h', 438, 420 ] 402 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_14.h 403 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_14.h', 438, 420 ] 404 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_15.h 405 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_15.h', 438, 420 ] 406 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_16.h 407 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_16.h', 438, 420 ] 408 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_2.h 409 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_2.h', 438, 420 ] 410 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_3.h 411 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_3.h', 438, 420 ] 412 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_4.h 413 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_4.h', 438, 420 ] 414 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_5.h 415 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_5.h', 438, 420 ] 416 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_6.h 417 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_6.h', 438, 420 ] 418 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_7.h 419 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_7.h', 438, 420 ] 420 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_8.h 421 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_8.h', 438, 420 ] 422 silly gunzTarPerm extractEntry deps/libiconv/lib/iso8859_9.h 423 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/iso8859_9.h', 438, 420 ] 424 silly gunzTarPerm extractEntry deps/libiconv/lib/isoir165.h 425 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/isoir165.h', 438, 420 ] 426 silly gunzTarPerm extractEntry deps/libiconv/lib/isoir165ext.h 427 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/isoir165ext.h', 438, 420 ] 428 silly gunzTarPerm extractEntry deps/libiconv/lib/java.h 429 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/java.h', 438, 420 ] 430 silly gunzTarPerm extractEntry deps/libiconv/lib/jisx0201.h 431 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/jisx0201.h', 438, 420 ] 432 silly gunzTarPerm extractEntry deps/libiconv/lib/jisx0208.h 433 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/jisx0208.h', 438, 420 ] 434 silly gunzTarPerm extractEntry deps/libiconv/lib/jisx0212.h 435 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/jisx0212.h', 438, 420 ] 436 silly gunzTarPerm extractEntry deps/libiconv/lib/jisx0213.h 437 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/jisx0213.h', 438, 420 ] 438 silly gunzTarPerm extractEntry deps/libiconv/lib/johab.h 439 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/johab.h', 438, 420 ] 440 silly gunzTarPerm extractEntry deps/libiconv/lib/johab_hangul.h 441 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/johab_hangul.h', 438, 420 ] 442 silly gunzTarPerm extractEntry deps/libiconv/lib/koi8_r.h 443 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/koi8_r.h', 438, 420 ] 444 silly gunzTarPerm extractEntry deps/libiconv/lib/koi8_ru.h 445 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/koi8_ru.h', 438, 420 ] 446 silly gunzTarPerm extractEntry deps/libiconv/lib/koi8_t.h 447 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/koi8_t.h', 438, 420 ] 448 silly gunzTarPerm extractEntry deps/libiconv/lib/koi8_u.h 449 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/koi8_u.h', 438, 420 ] 450 silly gunzTarPerm extractEntry deps/libiconv/lib/ksc5601.h 451 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ksc5601.h', 438, 420 ] 452 silly gunzTarPerm extractEntry deps/libiconv/lib/loop_unicode.h 453 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/loop_unicode.h', 438, 420 ] 454 silly gunzTarPerm extractEntry deps/libiconv/lib/loop_wchar.h 455 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/loop_wchar.h', 438, 420 ] 456 silly gunzTarPerm extractEntry deps/libiconv/lib/loops.h 457 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/loops.h', 438, 420 ] 458 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_arabic.h 459 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_arabic.h', 438, 420 ] 460 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_centraleurope.h 461 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_centraleurope.h', 438, 420 ] 462 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_croatian.h 463 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_croatian.h', 438, 420 ] 464 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_cyrillic.h 465 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_cyrillic.h', 438, 420 ] 466 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_greek.h 467 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_greek.h', 438, 420 ] 468 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_hebrew.h 469 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_hebrew.h', 438, 420 ] 470 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_iceland.h 471 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_iceland.h', 438, 420 ] 472 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_roman.h 473 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_roman.h', 438, 420 ] 474 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_romania.h 475 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_romania.h', 438, 420 ] 476 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_thai.h 477 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_thai.h', 438, 420 ] 478 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_turkish.h 479 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_turkish.h', 438, 420 ] 480 silly gunzTarPerm extractEntry deps/libiconv/lib/mac_ukraine.h 481 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mac_ukraine.h', 438, 420 ] 482 silly gunzTarPerm extractEntry deps/libiconv/lib/mulelao.h 483 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/mulelao.h', 438, 420 ] 484 silly gunzTarPerm extractEntry deps/libiconv/lib/nextstep.h 485 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/nextstep.h', 438, 420 ] 486 silly gunzTarPerm extractEntry deps/libiconv/lib/pt154.h 487 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/pt154.h', 438, 420 ] 488 silly gunzTarPerm extractEntry deps/libiconv/lib/relocatable.c 489 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/relocatable.c', 438, 420 ] 490 silly gunzTarPerm extractEntry deps/libiconv/lib/relocatable.h 491 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/relocatable.h', 438, 420 ] 492 silly gunzTarPerm extractEntry deps/libiconv/lib/riscos1.h 493 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/riscos1.h', 438, 420 ] 494 silly gunzTarPerm extractEntry deps/libiconv/lib/rk1048.h 495 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/rk1048.h', 438, 420 ] 496 silly gunzTarPerm extractEntry deps/libiconv/lib/shift_jisx0213.h 497 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/shift_jisx0213.h', 438, 420 ] 498 silly gunzTarPerm extractEntry deps/libiconv/lib/sjis.h 499 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/sjis.h', 438, 420 ] 500 silly gunzTarPerm extractEntry deps/libiconv/lib/tcvn.h 501 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/tcvn.h', 438, 420 ] 502 silly gunzTarPerm extractEntry deps/libiconv/lib/tds565.h 503 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/tds565.h', 438, 420 ] 504 silly gunzTarPerm extractEntry deps/libiconv/lib/tis620.h 505 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/tis620.h', 438, 420 ] 506 silly gunzTarPerm extractEntry deps/libiconv/lib/translit.def 507 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/translit.def', 438, 420 ] 508 silly gunzTarPerm extractEntry deps/libiconv/lib/translit.h 509 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/translit.h', 438, 420 ] 510 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs2.h 511 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs2.h', 438, 420 ] 512 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs2be.h 513 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs2be.h', 438, 420 ] 514 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs2internal.h 515 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs2internal.h', 438, 420 ] 516 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs2le.h 517 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs2le.h', 438, 420 ] 518 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs2swapped.h 519 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs2swapped.h', 438, 420 ] 520 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs4.h 521 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs4.h', 438, 420 ] 522 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs4be.h 523 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs4be.h', 438, 420 ] 524 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs4internal.h 525 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs4internal.h', 438, 420 ] 526 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs4le.h 527 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs4le.h', 438, 420 ] 528 silly gunzTarPerm extractEntry deps/libiconv/lib/ucs4swapped.h 529 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/ucs4swapped.h', 438, 420 ] 530 silly gunzTarPerm extractEntry deps/libiconv/lib/uhc_1.h 531 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/uhc_1.h', 438, 420 ] 532 silly gunzTarPerm extractEntry deps/libiconv/lib/uhc_2.h 533 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/uhc_2.h', 438, 420 ] 534 silly gunzTarPerm extractEntry deps/libiconv/lib/utf16.h 535 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf16.h', 438, 420 ] 536 silly gunzTarPerm extractEntry deps/libiconv/lib/utf16be.h 537 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf16be.h', 438, 420 ] 538 silly gunzTarPerm extractEntry deps/libiconv/lib/utf16le.h 539 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf16le.h', 438, 420 ] 540 silly gunzTarPerm extractEntry deps/libiconv/lib/utf32.h 541 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf32.h', 438, 420 ] 542 silly gunzTarPerm extractEntry deps/libiconv/lib/utf32be.h 543 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf32be.h', 438, 420 ] 544 silly gunzTarPerm extractEntry deps/libiconv/lib/utf32le.h 545 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf32le.h', 438, 420 ] 546 silly gunzTarPerm extractEntry deps/libiconv/lib/utf7.h 547 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf7.h', 438, 420 ] 548 silly gunzTarPerm extractEntry deps/libiconv/lib/utf8.h 549 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/utf8.h', 438, 420 ] 550 silly gunzTarPerm extractEntry deps/libiconv/lib/vietcomb.h 551 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/vietcomb.h', 438, 420 ] 552 silly gunzTarPerm extractEntry deps/libiconv/lib/viscii.h 553 silly gunzTarPerm modified mode [ 'deps/libiconv/lib/viscii.h', 438, 420 ] 554 silly gunzTarPerm extractEntry deps/libiconv/src/iconv.c 555 silly gunzTarPerm modified mode [ 'deps/libiconv/src/iconv.c', 438, 420 ] 556 silly gunzTarPerm extractEntry deps/libiconv/src/iconv_no_i18n.c 557 silly gunzTarPerm modified mode [ 'deps/libiconv/src/iconv_no_i18n.c', 438, 420 ] 558 silly gunzTarPerm extractEntry lib/iconv.js 559 silly gunzTarPerm modified mode [ 'lib/iconv.js', 438, 420 ] 560 silly gunzTarPerm extractEntry src/binding.cc 561 silly gunzTarPerm modified mode [ 'src/binding.cc', 438, 420 ] 562 silly gunzTarPerm extractEntry support/config.h 563 silly gunzTarPerm modified mode [ 'support/config.h', 438, 420 ] 564 silly gunzTarPerm extractEntry support/iconv.h 565 silly gunzTarPerm modified mode [ 'support/iconv.h', 438, 420 ] 566 silly gunzTarPerm extractEntry test/test-basic.js 567 silly gunzTarPerm modified mode [ 'test/test-basic.js', 438, 420 ] 568 silly gunzTarPerm extractEntry test/test-big-buffer.js 569 silly gunzTarPerm modified mode [ 'test/test-big-buffer.js', 438, 420 ] 570 silly gunzTarPerm extractEntry test/test-stream.js 571 silly gunzTarPerm modified mode [ 'test/test-stream.js', 438, 420 ] 572 silly gunzTarPerm extractEntry test/fixtures/lorem-ipsum.txt 573 silly gunzTarPerm modified mode [ 'test/fixtures/lorem-ipsum.txt', 438, 420 ] 574 silly lockFile 12d4d841-eJsServer-src-node-modules-iconv tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv 575 silly lockFile 12d4d841-eJsServer-src-node-modules-iconv tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv 576 silly lockFile 51d678f1-pm-cache-iconv-2-1-4-package-tgz tar://C:\Users\SM\AppData\Roaming\npm-cache\iconv\2.1.4\package.tgz 577 silly lockFile 51d678f1-pm-cache-iconv-2-1-4-package-tgz tar://C:\Users\SM\AppData\Roaming\npm-cache\iconv\2.1.4\package.tgz 578 info preinstall iconv@2.1.4 579 verbose readDependencies using package.json deps 580 verbose readDependencies using package.json deps 581 verbose cache add [ 'nan@~1.1.1', null ] 582 verbose cache add name=undefined spec="nan@~1.1.1" args=["nan@~1.1.1",null] 583 verbose parsed url { protocol: null, 583 verbose parsed url slashes: null, 583 verbose parsed url auth: null, 583 verbose parsed url host: null, 583 verbose parsed url port: null, 583 verbose parsed url hostname: null, 583 verbose parsed url hash: null, 583 verbose parsed url search: null, 583 verbose parsed url query: null, 583 verbose parsed url pathname: 'nan@~1.1.1', 583 verbose parsed url path: 'nan@~1.1.1', 583 verbose parsed url href: 'nan@~1.1.1' } 584 verbose cache add name="nan" spec="~1.1.1" args=["nan","~1.1.1"] 585 verbose parsed url { protocol: null, 585 verbose parsed url slashes: null, 585 verbose parsed url auth: null, 585 verbose parsed url host: null, 585 verbose parsed url port: null, 585 verbose parsed url hostname: null, 585 verbose parsed url hash: null, 585 verbose parsed url search: null, 585 verbose parsed url query: null, 585 verbose parsed url pathname: '~1.1.1', 585 verbose parsed url path: '~1.1.1', 585 verbose parsed url href: '~1.1.1' } 586 verbose addNamed [ 'nan', '~1.1.1' ] 587 verbose addNamed [ null, '>=1.1.1-0 <1.2.0-0' ] 588 silly lockFile 02cc762c-nan-1-1-1 nan@~1.1.1 589 verbose lock nan@~1.1.1 C:\Users\SM\AppData\Roaming\npm-cache\02cc762c-nan-1-1-1.lock 590 silly addNameRange { name: 'nan', range: '>=1.1.1-0 <1.2.0-0', hasData: false } 591 verbose url raw nan 592 verbose url resolving [ 'https://registry.npmjs.org/', './nan' ] 593 verbose url resolved https://registry.npmjs.org/nan 594 info trying registry request attempt 1 at 14:31:22 595 verbose etag "5BYMDXP63NAXJ1QSKMNKT61L8" 596 http GET https://registry.npmjs.org/nan 597 http 304 https://registry.npmjs.org/nan 598 silly registry.get cb [ 304, 598 silly registry.get { date: 'Fri, 16 Jan 2015 05:31:12 GMT', 598 silly registry.get server: 'Apache', 598 silly registry.get via: '1.1 varnish', 598 silly registry.get 'last-modified': 'Fri, 16 Jan 2015 05:30:37 GMT', 598 silly registry.get 'cache-control': 'max-age=60', 598 silly registry.get etag: '"5BYMDXP63NAXJ1QSKMNKT61L8"', 598 silly registry.get age: '19', 598 silly registry.get 'x-served-by': 'cache-ty67-TYO', 598 silly registry.get 'x-cache': 'HIT', 598 silly registry.get 'x-cache-hits': '2', 598 silly registry.get 'x-timer': 'S1421386272.788639,VS0,VE0', 598 silly registry.get vary: 'Accept', 598 silly registry.get 'content-length': '0', 598 silly registry.get 'keep-alive': 'timeout=10, max=50', 598 silly registry.get connection: 'Keep-Alive' } ] 599 verbose etag nan from cache 600 silly addNameRange number 2 { name: 'nan', range: '>=1.1.1-0 <1.2.0-0', hasData: true } 601 silly addNameRange versions [ 'nan', 601 silly addNameRange [ '0.3.0-wip', 601 silly addNameRange '0.3.0-wip2', 601 silly addNameRange '0.3.0', 601 silly addNameRange '0.3.1', 601 silly addNameRange '0.3.2', 601 silly addNameRange '0.4.0', 601 silly addNameRange '0.4.1', 601 silly addNameRange '0.4.2', 601 silly addNameRange '0.4.3', 601 silly addNameRange '0.4.4', 601 silly addNameRange '0.5.0', 601 silly addNameRange '0.5.1', 601 silly addNameRange '0.5.2', 601 silly addNameRange '0.6.0', 601 silly addNameRange '0.7.0', 601 silly addNameRange '0.7.1', 601 silly addNameRange '0.8.0', 601 silly addNameRange '1.0.0', 601 silly addNameRange '1.1.0', 601 silly addNameRange '1.1.1', 601 silly addNameRange '1.1.2', 601 silly addNameRange '1.2.0', 601 silly addNameRange '1.3.0', 601 silly addNameRange '1.4.0', 601 silly addNameRange '1.4.1', 601 silly addNameRange '1.5.0', 601 silly addNameRange '1.4.2', 601 silly addNameRange '1.4.3', 601 silly addNameRange '1.5.1' ] ] 602 verbose addNamed [ 'nan', '1.1.2' ] 603 verbose addNamed [ '1.1.2', '1.1.2' ] 604 silly lockFile 60c82d82-nan-1-1-2 nan@1.1.2 605 verbose lock nan@1.1.2 C:\Users\SM\AppData\Roaming\npm-cache\60c82d82-nan-1-1-2.lock 606 silly lockFile 60c82d82-nan-1-1-2 nan@1.1.2 607 silly lockFile 60c82d82-nan-1-1-2 nan@1.1.2 608 silly lockFile 02cc762c-nan-1-1-1 nan@~1.1.1 609 silly lockFile 02cc762c-nan-1-1-1 nan@~1.1.1 610 silly resolved [ { name: 'nan', 610 silly resolved version: '1.1.2', 610 silly resolved description: 'Native Abstractions for Node.js: C++ header for Node 0.8->0.12 compatibility', 610 silly resolved main: 'includedirs.js', 610 silly resolved repository: { type: 'git', url: 'git://github.com/rvagg/nan.git' }, 610 silly resolved contributors: [ [Object], [Object], [Object], [Object], [Object], [Object] ], 610 silly resolved license: 'MIT', 610 silly resolved readme: 'Native Abstractions for Node.js\n===============================\n\nA header file filled with macro and utility goodness for making add-on development for Node.js easier across versions 0.8, 0.10 and 0.11, and eventually 0.12.\n\nCurrent version: 1.1.2* (See nan.h for complete ChangeLog)\n\nNPM NPM\n\nThanks to the crazy changes in V8 (and some in Node core), keeping native addons compiling happily across versions, particularly 0.10 to 0.11/0.12, is a minor nightmare. The goal of this project is to store all logic necessary to develop native Node.js addons without having to inspect NODE_MODULE_VERSION and get yourself into a macro-tangle.\n\nThis project also contains some helper utilities that make addon development a bit more pleasant.\n\n * News & Updates\n * Usage\n * Example\n * API\n\n\n## News & Updates\n\n### May-2014: 1.1.0 release\n\n* We\'ve deprecated NanSymbol(), you should just use NanNew<String>() now.\n* NanNull(), NanUndefined(), NanTrue(), NanFalse() all return Locals now.\n* nan_isolate is gone, it was intended to be internal-only but if you were using it then you should switch to v8::Isolate::GetCurrent().\n* NanNew() has received some additional overload-love so you should be able to give it many kinds of values without specifying the <Type>.\n* Lots of small fixes and additions to expand the V8 API coverage, use the source, Luke.\n\n\n### May-2014: Major changes for V8 3.25 / Node 0.11.13\n\nNode 0.11.11 and 0.11.12 were both broken releases for native add-ons, you simply can\'t properly compile against either of them for different reasons. But we now have a 0.11.13 release that jumps a couple of versions of V8 ahead and includes some more, major (traumatic) API changes.\n\nBecause we are now nearing Node 0.12 and estimate that the version of V8 we are using in Node 0.11.13 will be close to the API we get for 0.12, we have taken the opportunity to not only fix NAN for 0.11.13 but make some major changes to improve the NAN API.\n\nWe have removed support for Node 0.11 versions prior to 0.11.13. As usual, our tests are run against (and pass) the last 5 versions of Node 0.8 and Node 0.10. We also include Node 0.11.13 obviously.\n\nThe major change is something that Benjamin Byholm has put many hours in to. We now have a fantastic new NanNew<T>(args) interface for creating new Locals, this replaces NanNewLocal() and much more. If you look in ./nan.h you\'ll see a large number of overloaded versions of this method. In general you should be able to NanNew<Type>(arguments) for any type you want to make a Local from. This includes Persistent types, so we now have a Local<T> NanNew(const Persistent<T> arg) to replace NanPersistentToLocal().\n\nWe also now have NanUndefined(), NanNull(), NanTrue() and NanFalse(). Mainly because of the new requirement for an Isolate argument for each of the native V8 versions of this.\n\nV8 has now introduced an EscapableHandleScope from which you scope.Escape(Local<T> value) to return a value from a one scope to another. This replaces the standard HandleScope and scope.Close(Local<T> value), although HandleScope still exists for when you don\'t need to return a handle to the caller. For NAN we are exposing it as NanEscapableScope() and NanEscapeScope(), while NanScope() is still how you create a new scope that doesn\'t need to return handles. For older versions of Node/V8, it\'ll still map to the older HandleScope functionality.\n\nNanFromV8String() was deprecated and has now been removed. You should use NanCString() or NanRawString() instead.\n\nBecause node::MakeCallback() now takes an Isolate, and because it doesn\'t exist in older versions of Node, we\'ve introduced NanMakeCallback(). You should always use this when calling a JavaScript function from C++.\n\nThere\'s lots more, check out the Changelog in nan.h or look through #86 for all the gory details.\n\n### Dec-2013: NanCString and NanRawString\n\nTwo new functions have been introduced to replace the functionality that\'s been provided by NanFromV8String until now. NanCString has sensible defaults so it\'s super easy to fetch a null-terminated c-style string out of a v8::String. NanFromV8String is still around and has defaults that allow you to pass a single handle to fetch a char* while NanRawString requires a little more attention to arguments.\n\n### Nov-2013: Node 0.11.9+ breaking V8 change\n\nThe version of V8 that\'s shipping with Node 0.11.9+ has changed the signature for new Locals to: v8::Local<T>::New(isolate, value), i.e. introducing the isolate argument and therefore breaking all new Local declarations for previous versions. NAN 0.6+ now includes a NanNewLocal<T>(value) that can be used in place to work around this incompatibility and maintain compatibility with 0.8->0.11.9+ (minus a few early 0.11 releases).\n\nFor example, if you wanted to return a null on a callback you will have to change the argument from v8::Local<v8::Value>::New(v8::Null()) to NanNewLocal<v8::Value>(v8::Null()).\n\n### Nov-2013: Change to binding.gyp "include_dirs" for NAN\n\nInclusion of NAN in a project\'s binding.gyp is now greatly simplified. You can now just use "<!(node -e \\"require(\'nan\')\\")" in your "include_dirs", see example below (note Windows needs the quoting around require to be just right: "require(\'nan\')" with appropriate \\ escaping).\n\n\n## Usage\n\nSimply add NAN as a dependency in the package.json of your Node addon:\n\nbash\n$ npm install --save nan\n\n\nPull in the path to NAN in your binding.gyp so that you can use #include <nan.h> in your .cpp files:\n\npython\n"include_dirs" : [\n "<!(node -e \\"require(\'nan\')\\")"\n]\n\n\nThis works like a -I<path-to-NAN> when compiling your addon.\n\n\n## Example\n\nSee LevelDOWN for a full example of NAN in use.\n\nFor a simpler example, see the async pi estimation example in the examples directory for full code and an explanation of what this Monte Carlo Pi estimation example does. Below are just some parts of the full example that illustrate the use of NAN.\n\nCompare to the current 0.10 version of this example, found in the node-addon-examples repository and also a 0.11 version of the same found here.\n\nNote that there is no embedded version sniffing going on here and also the async work is made much simpler, see below for details on the NanAsyncWorker class.\n\nc++\n// addon.cc\n#include <node.h>\n#include <nan.h>\n// ...\n\nusing v8::FunctionTemplate;\nusing v8::Handle;\nusing v8::Object;\nusing v8::String;\n\nvoid InitAll(Handle<Object> exports) {\n exports->Set(NanNew<String>("calculateSync"),\n NanNew<FunctionTemplate>(CalculateSync)->GetFunction());\n\n exports->Set(NanNew<String>("calculateAsync"),\n NanNew<FunctionTemplate>(CalculateAsync)->GetFunction());\n}\n\nNODE_MODULE(addon, InitAll)\n\n\nc++\n// sync.h\n#include <node.h>\n#include <nan.h>\n\nNAN_METHOD(CalculateSync);\n\n\nc++\n// sync.cc\n#include <node.h>\n#include <nan.h>\n#include "./sync.h"\n// ...\n\nusing v8::Number;\n\n// Simple synchronous access to theEstimate()function\nNAN_METHOD(CalculateSync) {\n NanScope();\n\n // expect a number as the first argument\n int points = args[0]->Uint32Value();\n double est = Estimate(points);\n\n NanReturnValue(NanNew<Number>(est));\n}\n\n\nc++\n// async.cc\n#include <node.h>\n#include <nan.h>\n#include "./async.h"\n\n// ...\n\nusing v8::Function;\nusing v8::Local;\nusing v8::Null;\nusing v8::Number;\nusing v8::Value;\n\nclass PiWorker : public NanAsyncWorker {\n public:\n PiWorker(NanCallback *callback, int points)\n : NanAsyncWorker(callback), points(points) {}\n ~PiWorker() {}\n\n // Executed inside the worker-thread.\n // It is not safe to access V8, or V8 data structures\n // here, so everything we need for input and output\n // should go onthis.\n void Execute () {\n estimate = Estimate(points);\n }\n\n // Executed when the async work is complete\n // this function will be run inside the main event loop\n // so it is safe to use V8 again\n void HandleOKCallback () {\n NanScope();\n\n Local<Value> argv[] = {\n NanNull()\n , NanNew<Number>(estimate)\n };\n\n callback->Call(2, argv);\n };\n\n private:\n int points;\n double estimate;\n};\n\n// Asynchronous access to theEstimate()function\nNAN_METHOD(CalculateAsync) {\n NanScope();\n\n int points = args[0]->Uint32Value();\n NanCallback *callback = new NanCallback(args[1].As<Function>());\n\n NanAsyncQueueWorker(new PiWorker(callback, points));\n NanReturnUndefined();\n}\n\n\n\n## API\n\n * NAN_METHOD\n * NAN_GETTER\n * NAN_SETTER\n * NAN_PROPERTY_GETTER\n * NAN_PROPERTY_SETTER\n * NAN_PROPERTY_ENUMERATOR\n * NAN_PROPERTY_DELETER\n * NAN_PROPERTY_QUERY\n * NAN_INDEX_GETTER\n * NAN_INDEX_SETTER\n * NAN_INDEX_ENUMERATOR\n * NAN_INDEX_DELETER\n * NAN_INDEX_QUERY\n * NAN_WEAK_CALLBACK\n * NAN_DEPRECATED\n * NAN_INLINE\n * NanNew\n * NanUndefined\n * NanNull\n * NanTrue\n * NanFalse\n * NanReturnValue\n * NanReturnUndefined\n * NanReturnNull\n * NanReturnEmptyString\n * NanScope\n * NanEscapableScope\n * NanEscapeScope\n * NanLocker\n * NanUnlocker\n * NanGetInternalFieldPointer\n * NanSetInternalFieldPointer\n * NanObjectWrapHandle\n * NanSymbol\n * NanGetPointerSafe\n * NanSetPointerSafe\n * NanRawString\n * NanCString\n * NanBooleanOptionValue\n * NanUInt32OptionValue\n * NanError, NanTypeError, NanRangeError\n * NanThrowError, NanThrowTypeError, NanThrowRangeError, NanThrowError(Handle), NanThrowError(Handle, int)\n * NanNewBufferHandle(char _, size_t, FreeCallback, void ), NanNewBufferHandle(char , uint32_t), NanNewBufferHandle(uint32_t)\n * NanBufferUse(char , uint32_t)\n * NanNewContextHandle\n * NanGetCurrentContext\n * NanHasInstance\n * NanDisposePersistent\n * NanAssignPersistent\n * NanMakeWeakPersistent\n * NanSetTemplate\n * NanMakeCallback\n * NanCompileScript\n * NanRunScript\n * NanAdjustExternalMemory\n * NanAddGCEpilogueCallback\n * NanAddGCPrologueCallback\n * NanRemoveGCEpilogueCallback\n * NanRemoveGCPrologueCallback\n * NanGetHeapStatistics\n * NanCallback\n * NanAsyncWorker\n * NanAsyncQueueWorker\n\n\n### NAN_METHOD(methodname)\n\nUse NAN_METHOD to define your V8 accessible methods:\n\nc++\n// .h:\nclass Foo : public node::ObjectWrap {\n ...\n\n static NAN_METHOD(Bar);\n static NAN_METHOD(Baz);\n}\n\n\n// .cc:\nNAN_METHOD(Foo::Bar) {\n ...\n}\n\nNAN_METHOD(Foo::Baz) {\n ...\n}\n\n\nThe reason for this macro is because of the method signature change in 0.11:\n\nc++\n// 0.10 and below:\nHandle<Value> name(const Arguments& args)\n\n// 0.11 and above\nvoid name(const FunctionCallbackInfo<Value>& args)\n\n\nThe introduction of FunctionCallbackInfo brings additional complications:\n\n\n### NAN_GETTER(methodname)\n\nUse NAN_GETTER to declare your V8 accessible getters. You get a Local<String> property and an appropriately typed args object that can act like the args argument to a NAN_METHOD call.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_GETTER.\n\n\n### NAN_SETTER(methodname)\n\nUse NAN_SETTER to declare your V8 accessible setters. Same as NAN_GETTER but you also get a Local<Value> value object to work with.\n\n\n### NAN_PROPERTY_GETTER(cbname)\nUse NAN_PROPERTY_GETTER to declare your V8 accessible property getters. You get a Local<String> property and an appropriately typed args object that can act similar to the args argument to a NAN_METHOD call.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_PROPERTY_GETTER.\n\n\n### NAN_PROPERTY_SETTER(cbname)\nUse NAN_PROPERTY_SETTER to declare your V8 accessible property setters. Same as NAN_PROPERTY_GETTER but you also get a Local<Value> value object to work with.\n\n\n### NAN_PROPERTY_ENUMERATOR(cbname)\nUse NAN_PROPERTY_ENUMERATOR to declare your V8 accessible property enumerators. You get an appropriately typed args object like the args argument to a NAN_PROPERTY_GETTER call.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_PROPERTY_ENUMERATOR.\n\n\n### NAN_PROPERTY_DELETER(cbname)\nUse NAN_PROPERTY_DELETER to declare your V8 accessible property deleters. Same as NAN_PROPERTY_GETTER.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_PROPERTY_DELETER.\n\n\n### NAN_PROPERTY_QUERY(cbname)\nUse NAN_PROPERTY_QUERY to declare your V8 accessible property queries. Same as NAN_PROPERTY_GETTER.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_PROPERTY_QUERY.\n\n\n### NAN_INDEX_GETTER(cbname)\nUse NAN_INDEX_GETTER to declare your V8 accessible index getters. You get a uint32_t index and an appropriately typed args object that can act similar to the args argument to a NAN_METHOD call.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_INDEX_GETTER.\n\n\n### NAN_INDEX_SETTER(cbname)\nUse NAN_INDEX_SETTER to declare your V8 accessible index setters. Same as NAN_INDEX_GETTER but you also get a Local<Value> value object to work with.\n\n\n### NAN_INDEX_ENUMERATOR(cbname)\nUse NAN_INDEX_ENUMERATOR to declare your V8 accessible index enumerators. You get an appropriately typed args object like the args argument to a NAN_INDEX_GETTER call.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_INDEX_ENUMERATOR.\n\n\n### NAN_INDEX_DELETER(cbname)\nUse NAN_INDEX_DELETER to declare your V8 accessible index deleters. Same as NAN_INDEX_GETTER.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_INDEX_DELETER.\n\n\n### NAN_INDEX_QUERY(cbname)\nUse NAN_INDEX_QUERY to declare your V8 accessible index queries. Same as NAN_INDEX_GETTER.\n\nYou can use NanReturnNull(), NanReturnEmptyString(), NanReturnUndefined() and NanReturnValue() in a NAN_INDEX_QUERY.\n\n\n### NAN_WEAK_CALLBACK(cbname)\n\nUse NAN_WEAK_CALLBACK to define your V8 WeakReference callbacks. Do not use for declaration. There is an argument object const _NanWeakCallbackData<T, P> &data allowing access to the weak object and the supplied parameter through its GetValue and GetParameter methods. You can even access the weak callback info object through the GetCallbackInfo()method, but you probably should not. Revive() keeps the weak object alive until the next GC round.\n\n```c++\nNAN_WEAK_CALLBACK(weakCallback) {\n int parameter = data.GetParameter();\n NanMakeCallback(NanGetCurrentContext()->Global(), data.GetValue(), 0, NULL);\n if ((_parameter)++ == 0) {\n data.Revive();\n } else {\n delete parameter;\n }\n}\n\n\n<a name="api_nan_deprecated"></a>\n### NAN_DEPRECATED\nDeclares a function as deprecated.\n\nc++\nstatic NAN_DEPRECATED NAN_METHOD(foo) {\n ...\n}\n\n\n<a name="api_nan_inline"></a>\n### NAN_INLINE\nInlines a function.\n\nc++\nNAN_INLINE int foo(int bar) {\n ...\n}\n\n\n<a name="api_nan_new"></a>\n### Local&lt;T&gt; NanNew&lt;T&gt;( ... )\n\nUseNanNewto construct almost all v8 objects and make new local handles.\n\nc++\nLocal s = NanNew("value");\n\n...\n\nPersistent o;\n\n...\n\nLocal lo = NanNew(o);\n\n\n\n<a name="api_nan_undefined"></a>\n### Local&lt;Primitive&gt; NanUndefined()\n\nUse instead ofUndefined()\n\n<a name="api_nan_null"></a>\n### Local&lt;Primitive&gt; NanNull()\n\nUse instead ofNull()\n\n<a name="api_nan_true"></a>\n### Local&lt;Boolean&gt; NanTrue()\n\nUse instead ofTrue()\n\n<a name="api_nan_false"></a>\n### Local&lt;Boolean&gt; NanFalse()\n\nUse instead ofFalse()\n\n<a name="api_nan_return_value"></a>\n### NanReturnValue(Handle&lt;Value&gt;)\n\nUseNanReturnValuewhen you want to return a value from your V8 accessible method:\n\nc++\nNAN_METHOD(Foo::Bar) {\n ...\n\n NanReturnValue(NanNew("FooBar!"));\n}\n\n\nNoreturnstatement required.\n\n<a name="api_nan_return_undefined"></a>\n### NanReturnUndefined()\n\nUseNanReturnUndefinedwhen you don\'t want to return anything from your V8 accessible method:\n\nc++\nNAN_METHOD(Foo::Baz) {\n ...\n\n NanReturnUndefined();\n}\n\n\n<a name="api_nan_return_null"></a>\n### NanReturnNull()\n\nUseNanReturnNullwhen you want to returnNullfrom your V8 accessible method:\n\nc++\nNAN_METHOD(Foo::Baz) {\n ...\n\n NanReturnNull();\n}\n\n\n<a name="api_nan_return_empty_string"></a>\n### NanReturnEmptyString()\n\nUseNanReturnEmptyStringwhen you want to return an emptyStringfrom your V8 accessible method:\n\nc++\nNAN_METHOD(Foo::Baz) {\n ...\n\n NanReturnEmptyString();\n}\n\n\n<a name="api_nan_scope"></a>\n### NanScope()\n\nThe introduction ofisolatereferences for many V8 calls in Node 0.11 makesNanScope()necessary, use it in place ofHandleScope scopewhen you do not wish to return handles (HandleorLocal) to the surrounding scope (or in functions directly exposed to V8, as they do not return values in the normal sense):\n\nc++\nNAN_METHOD(Foo::Bar) {\n NanScope();\n\n NanReturnValue(NanNew("FooBar!"));\n}\n\n\nThis method is not directly exposed to V8, nor does it return a handle, so it uses an unescapable scope:\n\nc++\nbool Foo::Bar() {\n NanScope();\n \n Local val = NanFalse();\n ...\n return val->Value();\n}\n\n\n<a name="api_nan_escapable_scope"></a>\n### NanEscapableScope()\n\nThe separation of handle scopes into escapable and inescapable scopes makesNanEscapableScope()necessary, use it in place ofHandleScope scopewhen you later wish to return a handle (HandleorLocal) from the scope, this is for internal functions not directly exposed to V8:\n\nc++\nHandle Foo::Bar() {\n NanEscapableScope();\n\n return NanEscapeScope(NanNew("FooBar!"));\n}\n\n\n<a name="api_nan_esacpe_scope"></a>\n### Local&lt;T&gt; NanEscapeScope(Handle&lt;T&gt; value);\nUse together withNanEscapableScopeto escape the scope. Corresponds toHandleScope::CloseorEscapableHandleScope::Escape.\n\n<a name="api_nan_locker"></a>\n### NanLocker()\n\nThe introduction ofisolatereferences for many V8 calls in Node 0.11 makesNanLocker()necessary, use it in place ofLocker locker:\n\nc++\nNAN_METHOD(Foo::Bar) {\n NanLocker();\n ...\n NanUnlocker();\n}\n\n\n<a name="api_nan_unlocker"></a>\n### NanUnlocker()\n\nThe introduction ofisolatereferences for many V8 calls in Node 0.11 makesNanUnlocker()necessary, use it in place ofUnlocker unlocker:\n\nc++\nNAN_METHOD(Foo::Bar) {\n NanLocker();\n ...\n NanUnlocker();\n}\n\n\n<a name="api_nan_get_internal_field_pointer"></a>\n### void * NanGetInternalFieldPointer(Handle&lt;Object&gt;, int)\n\nGets a pointer to the internal field with atindexfrom a V8Objecthandle.\n\nc++\nLocal obj;\n...\nNanGetInternalFieldPointer(obj, 0);\n\n<a name="api_nan_set_internal_field_pointer"></a>\n### void NanSetInternalFieldPointer(Handle&lt;Object&gt;, int, void *)\n\nSets the value of the internal field atindexon a V8Objecthandle.\n\nc++\nstatic Persistent dataWrapperCtor;\n...\nLocal wrapper = NanNew(dataWrapperCtor)->NewInstance();\nNanSetInternalFieldPointer(wrapper, 0, this);\n\n\n<a name="api_nan_object_wrap_handle"></a>\n### Local&lt;Object&gt; NanObjectWrapHandle(Object)\n\nWhen you want to fetch the V8 object handle from a native object you\'ve wrapped with Node\'sObjectWrap, you should useNanObjectWrapHandle:\n\nc++\nNanObjectWrapHandle(iterator)->Get(NanNew("end"))\n\n\n<a name="api_nan_symbol"></a>\n### <del>Local&lt;String&gt; NanSymbol(const char *)</del>\n\nDeprecated. UseNanNewinstead.\n<del>Use to create string symbol objects (i.e.v8::String::NewSymbol(x)), for getting and setting object properties, or names of objects.</del>\n\nc++\nbool foo = false;\nif (obj->Has(NanNew("foo")))\n foo = optionsObj->Get(NanNew("foo"))->BooleanValue()\n\n\n<a name="api_nan_get_pointer_safe"></a>\n### Type NanGetPointerSafe(Type *[, Type])\n\nA helper for getting values from optional pointers. If the pointer isNULL, the function returns the optional default value, which defaults to0. Otherwise, the function returns the value the pointer points to.\n\nc++\nchar _plugh(uint32_t optional) {\n char res[] = "xyzzy";\n uint32_t param = NanGetPointerSafe(optional, 0x1337);\n switch (param) {\n ...\n }\n NanSetPointerSafe(optional, 0xDEADBEEF);\n} \n`\n\n\n### bool NanSetPointerSafe(Type , Type)\n\nA helper for setting optional argument pointers. If the pointer is NULL, the function simply returns false. Otherwise, the value is assigned to the variable the pointer points to.\n\nc++\nconst char *plugh(size_t *outputsize) {\n char res[] = "xyzzy";\n if !(NanSetPointerSafe<size_t>(outputsize, strlen(res) + 1)) {\n ...\n }\n\n ...\n}\n```\n\n<a name="api_nan_raw_string"></a>\n### void_ NanRawString(Handle&lt;Value&gt;, enum Nan::Encoding, size_t _, void *, size_t, int)\n\nWhen you want to convert a V8Stringto achar_buffer, useNanRawString. You have to supply an encoding as well as a pointer to a variable that will be assigned the number of bytes in the returned string. It is also possible to supply a buffer and its length to the function in order not to have a new buffer allocated. The final argument allows settingString::WriteOptions.\nJust remember that you\'ll end up with an object that you\'ll need todelete[]at some point unless you supply your own buffer:\n\n``c++\nsize_t count;\nvoid* decoded = NanRawString(args[1], Nan::BASE64, &count, NULL, 0, String::HINT_MANY_WRITES_EXPECTED);\nchar param_copy[count];\nmemcpy(param_copy, decoded, count);\ndelete[] decoded;\n``\n\n<a name="api_nan_c_string"></a>\n### char* NanCString(Handle&lt;Value&gt;, size_t *[, char *, size_t, int])\n\nWhen you want to convert a V8Stringto a null-terminated CcharuseNanCString. The resultingcharwill be UTF-8-encoded, and you need to supply a pointer to a variable that will be assigned the number of bytes in the returned string. It is also possible to supply a buffer and its length to the function in order not to have a new buffer allocated. The final argument allows optionally settingString::WriteOptions, which default tov8::String::NO_OPTIONS.\nJust remember that you\'ll end up with an object that you\'ll need todelete[]at some point unless you supply your own buffer:\n\n``c++\nsize_t count;\nchar* name = NanCString(args[0], &count);\n``\n\n<a name="api_nan_boolean_option_value"></a>\n### bool NanBooleanOptionValue(Handle&lt;Value&gt;, Handle&lt;String&gt;[, bool])\n\nWhen you have an "options" object that you need to fetch properties from, boolean options can be fetched with this pair. They check first if the object exists (IsEmpty), then if the object has the given property (Has) then they get and convert/coerce the property to abool.\n\nThe optional last parameter is the *default* value, which isfalseif left off:\n\n``c++\n//foois false unless the user supplies a truthy value for it\nbool foo = NanBooleanOptionValue(optionsObj, NanNew<String>("foo"));\n//baris true unless the user supplies a falsy value for it\nbool bar = NanBooleanOptionValueDefTrue(optionsObj, NanNew<String>("bar"), true);\n``\n\n<a name="api_nan_uint32_option_value"></a>\n### uint32_t NanUInt32OptionValue(Handle&lt;Value&gt;, Handle&lt;String&gt;, uint32_t)\n\nSimilar toNanBooleanOptionValue, useNanUInt32OptionValueto fetch an integer option from your options object. Can be any kind of JavaScriptNumberand it will be coerced to an unsigned 32-bit integer.\n\nRequires all 3 arguments as a default is not optional:\n\n``c++\nuint32_t count = NanUInt32OptionValue(optionsObj, NanNew<String>("count"), 1024);\n``\n\n<a name="api_nan_error"></a>\n### NanError(message), NanTypeError(message), NanRangeError(message)\n\nFor makingError,TypeErrorandRangeErrorobjects.\n\n``c++\nLocal<Value> res = NanError("you must supply a callback argument");\n``\n\n<a name="api_nan_throw_error"></a>\n### NanThrowError(message), NanThrowTypeError(message), NanThrowRangeError(message), NanThrowError(Local&lt;Value&gt;), NanThrowError(Local&lt;Value&gt;, int)\n\nFor throwingError,TypeErrorandRangeErrorobjects.\n\n``c++\nNanThrowError("you must supply a callback argument");\n``\n\nCan also handle any custom object you may want to throw. If used with the error code argument, it will add the supplied error code to the error object as a property calledcode.\n\n<a name="api_nan_new_buffer_handle"></a>\n### Local&lt;Object&gt; NanNewBufferHandle(char *, uint32_t), Local&lt;Object&gt; NanNewBufferHandle(uint32_t)\n\nTheBufferAPI has changed a little in Node 0.11, this helper provides consistent access toBuffercreation:\n\n``c++\nNanNewBufferHandle((char*)value.data(), value.size());\n``\n\nCan also be used to initialize aBufferwith just asizeargument.\n\nCan also be supplied with aNanFreeCallbackand a hint for the garbage collector.\n\n<a name="api_nan_buffer_use"></a>\n### Local&lt;Object&gt; NanBufferUse(char*, uint32_t)\n\nBuffer::New(char_, uint32t)prior to 0.11 would make a copy of the data.\nWhile it was possible to get around this, it required a shim by passing a\ncallback. So the new APIBuffer::Use(char, uint32t)was introduced to remove\nneeding to use this shim.\n\nNanBufferUseuses thecharpassed as the backing data, and will free the\nmemory automatically when the weak callback is called. Keep this in mind, as\ncareless use can lead to "double free or corruption" and other cryptic failures.\n\n<a name="api_nan_has_instance"></a>\n### bool NanHasInstance(Persistent&lt;FunctionTemplate&gt;&, Handle&lt;Value&gt;)\n\nCan be used to check the type of an object to determine it is of a particular class you have already defined and have aPersistenthandle for.\n\n<a href="#api_nan_new_context_handle">\n### Local&lt;Context&gt; NanNewContextHandle([ExtensionConfiguration_, Handle&lt;ObjectTemplate&gt;, Handle&lt;Value&gt;])\nCreates a newLocalhandle.\n\nc++\nLocal ftmpl = NanNew();\nLocal otmpl = ftmpl->InstanceTemplate();\nLocal ctx = NanNewContextHandle(NULL, otmpl);\n\n\n<a href="#api_nan_get_current_context">\n### Local&lt;Context&gt; NanGetCurrentContext()\n\nGets the current context.\n\nc++\nLocal ctx = NanGetCurrentContext();\n\n\n<a name="api_nan_dispose_persistent"></a>\n### void NanDisposePersistent(Persistent&lt;T&gt; &)\n\nUseNanDisposePersistentto dispose aPersistenthandle.\n\nc++\nNanDisposePersistent(persistentHandle);\n\n\n<a name="api_nan_assign_persistent"></a>\n### NanAssignPersistent(handle, object)\n\nUseNanAssignPersistentto assign a non-Persistenthandle to aPersistentone. You can no longer just declare aPersistenthandle and assign directly to it later, you have toResetit in Node 0.11, so this makes it easier.\n\nIn general it is now better to place anything you want to protect from V8\'s garbage collector as properties of a genericObjectand then assign that to aPersistent. This works in older versions of Node also if you useNanAssignPersistent:\n\nc++\nPersistent persistentHandle;\n\n...\n\nLocal obj = NanNew();\nobj->Set(NanNew("key"), keyHandle); // where keyHandle might be a Local\nNanAssignPersistent(persistentHandle, obj)\n\n\n<a name="api_nan_make_weak_persistent"></a>\n### _NanWeakCallbackInfo&lt;T, P&gt;\* NanMakeWeakPersistent(Handle&lt;T&gt;, P_, _NanWeakCallbackInfo&lt;T, P&gt;::Callback)\n\nCreates a weak persistent handle with the supplied parameter andNAN_WEAK_CALLBACK. The callback has to be fully specialized to work on all versions of Node.\n\nc++\nNAN_WEAK_CALLBACK(weakCallback) {\n\n...\n\n}\n\nLocal func;\n\n...\n\nint parameter = new int(0);\nNanMakeWeakPersistent(func, parameter, &weakCallback<Function, int>);\n\n\n<a name="api_nan_set_template"></a>\n### NanSetTemplate(templ, name, value)\n\nUse to add properties on object and function templates.\n\n<a name="api_nan_make_callback"></a>\n### NanMakeCallback(target, func, argc, argv)\n\nUse instead ofnode::MakeCallbackto call javascript functions. This is the only proper way of calling functions.\n\n<a name="api_nan_compile_script"></a>\n### NanCompileScript(Handle<String> s [, const ScriptOrigin&amp; origin])\n\nUse to create new scripts bound to the current context.\n\n<a name="api_nan_run_script"></a>\n### NanRunScript(script)\n\nUse to run both bound and unbound scripts.\n\n<a name="api_nan_adjust_external_memory"></a>\n### NanAdjustExternalMemory(int change_in_bytes)\n\nSimply doesAdjustAmountOfExternalAllocatedMemory\n\n<a name="api_nan_add_gc_epilogue_callback"></a>\n### NanAddGCEpilogueCallback(GCEpilogueCallback callback, GCType gc_type_filter=kGCTypeAll)\n\nSimply doesAddGCEpilogueCallback\n\n<a name="api_nan_add_gc_prologue_callback"></a>\n### NanAddGCPrologueCallback(GCPrologueCallback callback, GCType gc_type_filter=kGCTypeAll)\n\nSimply doesAddGCPrologueCallback\n\n<a name="api_nan_remove_gc_epilogue_callback"></a>\n### NanRemoveGCEpilogueCallback(GCEpilogueCallback callback)\n\nSimply doesRemoveGCEpilogueCallback\n\n<a name="api_nan_add_gc_prologue_callback"></a>\n### NanRemoveGCPrologueCallback(GCPrologueCallback callback)\n\nSimply doesRemoveGCPrologueCallback`\n\n\n### NanGetHeapStatistics(HeapStatistics heap_statistics)\n\nSimply does GetHeapStatistics\n\n\n### NanCallback\n\nBecause of the difficulties imposed by the changes to Persistent handles in V8 in Node 0.11, creating Persistent versions of your Handle<Function> is annoyingly tricky. NanCallback makes it easier by taking your handle, making it persistent until the NanCallback is deleted and even providing a handy Call() method to fetch and execute the callback Function.\n\nc++\nLocal<Function> callbackHandle = args[0].As<Function>();\nNanCallback *callback = new NanCallback(callbackHandle);\n// passcallbackaround and it\'s safe from GC until you:\ndelete callback;\n\n\nYou can execute the callback like so:\n\nc++\n// no arguments:\ncallback->Call(0, NULL);\n\n// an error argument:\nHandle<Value> argv[] = {\n NanError(NanNew<String>("fail!"))\n};\ncallback->Call(1, argv);\n\n// a success argument:\nHandle<Value> argv[] = {\n NanNull(),\n NanNew<String>("w00t!")\n};\ncallback->Call(2, argv);\n\n\nNanCallback also has a Local<Function> GetCallback() method that you can use\nto fetch a local handle to the underlying callback function, as well as a\nvoid SetFunction(Handle<Function>) for setting the callback on the\nNanCallback. You can check if a NanCallback is empty with the bool IsEmpty() method. Additionally a generic constructor is available for using\nNanCallback without performing heap allocations.\n\n\n### NanAsyncWorker\n\nNanAsyncWorker is an abstract class that you can subclass to have much of the annoying async queuing and handling taken care of for you. It can even store arbitrary V8 objects for you and have them persist while the async work is in progress.\n\nSee a rough outline of the implementation:\n\nc++\nclass NanAsyncWorker {\npublic:\n NanAsyncWorker (NanCallback *callback);\n\n // Clean up persistent handles and delete the *callback\n virtual ~NanAsyncWorker ();\n\n // Check theErrorMessage()and call HandleOKCallback()\n // or HandleErrorCallback depending on whether it has been set or not\n virtual void WorkComplete ();\n\n // You must implement this to do some async work. If there is an\n // error then useSetErrorMessage()to set an error message and the callback will\n // be passed that string in an Error object\n virtual void Execute ();\n\n // Save a V8 object in a Persistent handle to protect it from GC\n void SaveToPersistent(const char *key, Local<Object> &obj);\n\n // Fetch a stored V8 object (don\'t call from withinExecute())\n Local<Object> GetFromPersistent(const char *key);\n \n // Get the error message (or NULL)\n const char *ErrorMessage();\n \n // Set an error message\n void SetErrorMessage(const char *msg);\n \nprotected:\n // Default implementation calls the callback function with no arguments.\n // Override this to return meaningful data\n virtual void HandleOKCallback ();\n\n // Default implementation calls the callback function with an Error object\n // wrapping theerrmsgstring\n virtual void HandleErrorCallback ();\n};\n\n\n\n### NanAsyncQueueWorker(NanAsyncWorker )\n\nNanAsyncQueueWorker will run a NanAsyncWorker asynchronously via libuv. Both the execute_ and _afterwork steps are taken care of for you—most of the logic for this is embedded in NanAsyncWorker.\n\n### Contributors\n\nNAN is only possible due to the excellent work of the following contributors:\n\n\n\n\n\n\n\n\n
Rod VaggGitHub/rvaggTwitter/@rvagg
Benjamin ByholmGitHub/kkoopa-
Trevor NorrisGitHub/trevnorrisTwitter/@trevnorris
Nathan RajlichGitHub/TooTallNateTwitter/@TooTallNate
Brett LawsonGitHub/brett19Twitter/@brett19x
Ben NoordhuisGitHub/bnoordhuisTwitter/@bnoordhuis
\n\nLicence & copyright\n-----------------------\n\nCopyright (c) 2014 NAN contributors (listed above).\n\nNative Abstractions for Node.js is licensed under an MIT +no-false-attribs license. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.\n', 610 silly resolved readmeFilename: 'README.md', 610 silly resolved bugs: { url: 'https://github.com/rvagg/nan/issues' }, 610 silly resolved homepage: 'https://github.com/rvagg/nan', 610 silly resolved _id: 'nan@1.1.2', 610 silly resolved _from: 'nan@~1.1.1' } ] 611 info install nan@1.1.2 into D:\dev\workspace\nodeJsServer\src\node_modules\iconv 612 info installOne nan@1.1.2 613 info D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules\nan unbuild 614 verbose tar unpack C:\Users\SM\AppData\Roaming\npm-cache\nan\1.1.2\package.tgz 615 silly lockFile 0a87919c-e-modules-iconv-node-modules-nan tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules\nan 616 verbose lock tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules\nan C:\Users\SM\AppData\Roaming\npm-cache\0a87919c-e-modules-iconv-node-modules-nan.lock 617 silly lockFile ebff4fe9--npm-cache-nan-1-1-2-package-tgz tar://C:\Users\SM\AppData\Roaming\npm-cache\nan\1.1.2\package.tgz 618 verbose lock tar://C:\Users\SM\AppData\Roaming\npm-cache\nan\1.1.2\package.tgz C:\Users\SM\AppData\Roaming\npm-cache\ebff4fe9--npm-cache-nan-1-1-2-package-tgz.lock 619 silly gunzTarPerm modes [ '755', '644' ] 620 silly gunzTarPerm extractEntry package.json 621 silly gunzTarPerm modified mode [ 'package.json', 438, 420 ] 622 silly gunzTarPerm extractEntry README.md 623 silly gunzTarPerm modified mode [ 'README.md', 438, 420 ] 624 silly gunzTarPerm extractEntry LICENSE 625 silly gunzTarPerm modified mode [ 'LICENSE', 438, 420 ] 626 silly gunzTarPerm extractEntry include_dirs.js 627 silly gunzTarPerm modified mode [ 'include_dirs.js', 438, 420 ] 628 silly gunzTarPerm extractEntry .dntrc 629 silly gunzTarPerm modified mode [ '.dntrc', 438, 420 ] 630 silly gunzTarPerm extractEntry build/config.gypi 631 silly gunzTarPerm modified mode [ 'build/config.gypi', 438, 420 ] 632 silly gunzTarPerm extractEntry nan.h 633 silly gunzTarPerm modified mode [ 'nan.h', 438, 420 ] 634 silly lockFile 0a87919c-e-modules-iconv-node-modules-nan tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules\nan 635 silly lockFile 0a87919c-e-modules-iconv-node-modules-nan tar://D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules\nan 636 silly lockFile ebff4fe9--npm-cache-nan-1-1-2-package-tgz tar://C:\Users\SM\AppData\Roaming\npm-cache\nan\1.1.2\package.tgz 637 silly lockFile ebff4fe9--npm-cache-nan-1-1-2-package-tgz tar://C:\Users\SM\AppData\Roaming\npm-cache\nan\1.1.2\package.tgz 638 info preinstall nan@1.1.2 639 verbose readDependencies using package.json deps 640 verbose readDependencies using package.json deps 641 silly resolved [] 642 verbose about to build D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules\nan 643 info build D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules\nan 644 verbose linkStuff [ false, 644 verbose linkStuff false, 644 verbose linkStuff false, 644 verbose linkStuff 'D:\dev\workspace\nodeJsServer\src\node_modules\iconv\node_modules' ] 645 info linkStuff nan@1.1.2 646 verbose linkBins nan@1.1.2 647 verbose linkMans nan@1.1.2 648 verbose rebuildBundles nan@1.1.2 649 info install nan@1.1.2 650 info postinstall nan@1.1.2 651 verbose about to build D:\dev\workspace\nodeJsServer\src\node_modules\iconv 652 info build D:\dev\workspace\nodeJsServer\src\node_modules\iconv 653 verbose linkStuff [ false, 653 verbose linkStuff false, 653 verbose linkStuff false, 653 verbose linkStuff 'D:\dev\workspace\nodeJsServer\src\node_modules' ] 654 info linkStuff iconv@2.1.4 655 verbose linkBins iconv@2.1.4 656 verbose linkMans iconv@2.1.4 657 verbose rebuildBundles iconv@2.1.4 658 verbose rebuildBundles [ 'nan' ] 659 info install iconv@2.1.4 660 verbose unsafe-perm in lifecycle true 661 info iconv@2.1.4 Failed to exec install script 662 info D:\dev\workspace\nodeJsServer\src\node_modules\iconv unbuild 663 info preuninstall iconv@2.1.4 664 info uninstall iconv@2.1.4 665 verbose true,D:\dev\workspace\nodeJsServer\src\node_modules,D:\dev\workspace\nodeJsServer\src\node_modules unbuild iconv@2.1.4 666 info postuninstall iconv@2.1.4 667 error iconv@2.1.4 install: node-gyp rebuild 667 error Exit status 1 668 error Failed at the iconv@2.1.4 install script. 668 error This is most likely a problem with the iconv package, 668 error not with npm itself. 668 error Tell the author that this fails on your system: 668 error node-gyp rebuild 668 error You can get their info via: 668 error npm owner ls iconv 668 error There is likely additional logging output above. 669 error System Windows_NT 6.1.7601 670 error command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "iconv" 671 error cwd D:\dev\workspace\nodeJsServer\src 672 error node -v v0.10.26 673 error npm -v 1.4.3 674 error code ELIFECYCLE 675 verbose exit [ 1, true ]

dzcpy commented 9 years ago

In the log you pasted, it's said that Can't find Python executable "python". Are you sure you have python 2.x successfully installed? If you can't solve it you can also try iconv-lite

judasowelu commented 9 years ago

my fault i was install python 3.4 thank you!