1. Oct 08, 2014
  2. Oct 07, 2014
  3. Oct 04, 2014
  4. Oct 03, 2014
    • Yazhong Liu's avatar
      buffer: add generic functions for (u)int ops · 83d7d9e6
      Yazhong Liu authored
      
      
      Add generic functions for (U)Int read/write operations on Buffers. These
      support up to and including 48 bit reads and writes.
      
      Include documentation and tests.
      
      Additional work done by Trevor Norris to include 40 and 48 bit write
      support. Because bitwise operations cannot be used on values greater
      than 32 bits, the operations have been replaced with mathematical
      calculations. Regardless, they are still faster than floating point
      operations.
      
      Reviewed-by: default avatarTrevor Norris <trev.norris@gmail.com>
      83d7d9e6
  5. Oct 02, 2014
    • Trevor Norris's avatar
      buffer: mv floating point read/write checks to JS · e9ca7b9d
      Trevor Norris authored
      
      
      Performance improvement by moving checks for floating point operations
      to JS and doing the operation on a protected internal function that
      assumes all arguments are correct. Still abort if the operation
      overflows memory. This can only be caused if the Buffer's length
      property isn't the same as the actual internal length.
      
      Signed-off-by: default avatarTrevor Norris <trev.norris@gmail.com>
      e9ca7b9d
    • Julien Gilli's avatar
      readline: should not require an output stream. · 862cc281
      Julien Gilli authored
      Passing null as the output stream to readline.Interface()'s constructor
      is now supported. Any output written by readline is just discarded. It
      makes it easier to use readline just as a line parser.
      
      Fixes: https://github.com/joyent/node/issues/4408
      
      
      Reviewed-by: default avatarTrevor Norris <trev.norris@gmail.com>
      862cc281
    • Vladimir Kurchatkin's avatar
      node: avoid automatic microtask runs · 8dc6be17
      Vladimir Kurchatkin authored
      
      
      Since we are taking control of the microtask queue it makes sense to
      disable autorun and only run microtasks when necessary. Just setting
      isolate->SetAutorunMicrotasks(false) would cause _tickCallback() not to
      be called.
      
      Automatically running the microtask queue will cause it to run:
      
      * After callback invocation
      * Inside _tickCallback()
      * After _tickCallback() invocation
      
      The third one is unnecessary as the microtask queue is guaranteed to be
      empty at this point. The first only needs to be run manually when
      _tickCallback() isn't going to be called by MakeCallback().
      
      Reviewed-by: default avatarTrevor Norris <trev.norris@gmail.com>
      8dc6be17
    • Gabriel Wicke's avatar
      url: make query() consistent · b705b73e
      Gabriel Wicke authored
      Match the behavior of the slow path by setting url.query to an empty
      object when the url contains no query, but query parsing is requested.
      
      Also add a test for this case, and update the documents to clearly
      reflect this behavior.
      
      Fixes: https://github.com/joyent/node/issues/8332
      
      
      Reviewed-by: default avatarTrevor Norris <trev.norris@gmail.com>
      b705b73e
    • Steven R. Loomis's avatar
      build, i18n: improve Intl build, add "--with-intl" · ac2857b1
      Steven R. Loomis authored
      The two main goals of this change are:
       - To make it easier to build the Intl option using ICU (particularly,
         using a newer ICU than v8/Chromium's version)
       - To enable a much smaller ICU build with only English support The goal
         here is to get node.js binaries built this way by default so that the
         Intl API can be used. Additional data can be added at execution time
         (see Readme and wiki)
      
      More details are at https://github.com/joyent/node/pull/7719
      
      In particular, this change adds the "--with-intl=" configure option to
      provide more ways of building "Intl":
       - "full-icu" picks up an ICU from deps/icu
       - "small-icu" is similar, but builds only English
       - "system-icu" uses pkg-config to find an installed ICU
       - "none" does nothing (no Intl)
      
      For Windows builds, the "full-icu" or "small-icu" options are added to
      vcbuild.bat.
      
      Note that the existing "--with-icu-path" option is not removed from
      configure, but may not be used alongside the new option.
      
      Wiki changes have already been made on
       https://github.com/joyent/node/wiki/Installation
      and a new page created at
       https://github.com/joyent/node/wiki/Intl
      (marked as provisional until this change lands.)
      
      Summary of changes:
      
      * README.md : doc updates
      
      * .gitignore : added "deps/icu" as this is the location where ICU is
        unpacked to.
      
      * Makefile : added the tools/icu/* files to cpplint, but excluded a
        problematic file.
      
      * configure : added the "--with-intl" option mentioned above.
        Calculate at config time the list of ICU source files to use and data
        packaging options.
      
      * node.gyp : add the new files src/node_i18n.cc/.h as well as ICU
        linkage.
      
      * src/node.cc : add call into
        node::i18n::InitializeICUDirectory(icu_data_dir) as well as new
        --icu-data-dir option and NODE_ICU_DATA env variable to configure ICU
        data loading. This loading is only relevant in the "small"
        configuration.
      
      * src/node_i18n.cc : new source file for the above Initialize..
        function, to setup ICU as needed.
      
      * tools/icu : new directory with some tools needed for this build.
      
      * tools/icu/icu-generic.gyp : new .gyp file that builds ICU in some new
        ways, both on unix/mac and windows.
      
      * tools/icu/icu-system.gyp : new .gyp file to build node against a
        pkg-config detected ICU.
      
      * tools/icu/icu_small.json : new config file for the "English-only" small
        build.
      
      * tools/icu/icutrim.py : new tool for trimming down ICU data. Reads the
        above .json file.
      
      * tools/icu/iculslocs.cc : new tool for repairing ICU data manifests
        after trim operation.
      
      * tools/icu/no-op.cc : dummy file to force .gyp into using a C++ linker.
      
      * vcbuild.bat : added small-icu and full-icu options, to call into
        configure.
      
      * Fixed toolset dependencies, see
        https://github.com/joyent/node/pull/7719#issuecomment-54641687
      
      
      
      Note that because of a bug in gyp {CC,CXX}_host must also be set.
      Otherwise gcc/g++ will be used by default for part of the build.
      
      Reviewed-by: default avatarTrevor Norris <trev.norris@gmail.com>
      Reviewed-by: default avatarFedor Indutny <fedor@indutny.com>
      ac2857b1
    • Julien Fontanet's avatar
  6. Oct 01, 2014
  7. Sep 30, 2014
  8. Sep 26, 2014
  9. Sep 25, 2014
    • Timothy J Fontaine's avatar
      Now working on 0.11.15 · 8e4fc88c
      Timothy J Fontaine authored
      8e4fc88c
    • Timothy J Fontaine's avatar
      2014.09.24, Version 0.11.14 (Unstable) · fd896d5a
      Timothy J Fontaine authored
      * uv: Upgrade to v1.0.0-rc1
      
      * http_parser: Upgrade to v2.3.0
      
      * npm: Upgrade to v2.0.0
      
      * openssl: Upgrade to v1.0.1i
      
      * v8: Upgrade to 3.26.33
      
      * Add fast path for simple URL parsing (Gabriel Wicke)
      
      * Added support for options parameter in console.dir() (Xavi Magrinyà)
      
      * Cluster: fix shared handles on Windows (Alexis Campailla)
      
      * buffer: Fix incorrect Buffer.compare behavior (Feross Aboukhadijeh)
      
      * buffer: construct new buffer from buffer toJSON() output (cjihrig)
      
      * buffer: improve Buffer constructor (Kang-Hao Kenny)
      
      * build: linking CoreFoundation framework for OSX (Thorsten Lorenz)
      
      * child_process: accept uid/gid everywhere (Fedor Indutny)
      
      * child_process: add path to spawn ENOENT Error (Ryan Cole)
      
      * child_process: copy spawnSync() cwd option to proper buffer (cjihrig)
      
      * child_process: do not access stderr when stdio set to 'ignore' (cjihrig)
      
      * child_process: don't throw on EAGAIN (Charles)
      
      * child_process: don't throw on EMFILE/ENFILE (Ben Noordhuis)
      
      * child_process: use full path for cmd.exe on Win32 (Ed Morley)
      
      * cluster: allow multiple calls to setupMaster() (Ryan Graham)
      
      * cluster: centralize removal from workers list. (Julien Gilli)
      
      * cluster: enable error/message events using .worker (cjihrig)
      
      * cluster: include settings object in 'setup' event (Ryan Graham)
      
      * cluster: restore v0.10.x setupMaster() behaviour (Ryan Graham)
      
      * cluster: support options in Worker constructor (cjihrig)
      
      * cluster: test events emit on cluster.worker (Sam Roberts)
      
      * console: console.dir() accepts options object (Xavi Magrinyà)
      
      * crypto: add `honorCipherOrder` argument (Fedor Indutny)
      
      * crypto: allow padding in RSA methods (Fedor Indutny)
      
      * crypto: clarify RandomBytes() error msg (Mickael van der Beek)
      
      * crypto: never store pointer to conn in SSL_CTX (Fedor Indutny)
      
      * crypto: unsigned value can't be negative (Brian White)
      
      * dgram: remove new keyword from errnoException (Jackson Tian)
      
      * dns: always set variable family in lookup() (cjihrig)
      
      * dns: include host name in error message if available (Maciej Małecki)
      
      * dns: introduce lookupService function (Saúl Ibarra Corretgé)
      
      * dns: send lookup c-ares errors to callback (Chris Dickinson)
      
      * dns: throw if hostname is not string or falsey (cjihrig)
      
      * events: Output the event that is leaking (Arnout Kazemier)
      
      * fs: close file if fstat() fails in readFile() (cjihrig)
      
      * fs: fs.readFile should not throw uncaughtException (Jackson Tian)
      
      * http: add 308 status_code, see RFC7238 (Yazhong Liu)
      
      * http: don't default OPTIONS to chunked encoding (Nick Muerdter)
      
      * http: fix bailout for writeHead (Alex Kocharin)
      
      * http: remove unused code block (Fedor Indutny)
      
      * http: write() after end() emits an error. (Julien Gilli)
      
      * lib, src: add vm.runInDebugContext() (Ben Noordhuis)
      
      * lib: noisy deprecation of child_process customFds (Ryan Graham)
      
      * module: don't require fs several times (Robert Kowalski)
      
      * net,dgram: workers can listen on exclusive ports (cjihrig)
      
      * net,stream: add isPaused, don't read() when paused (Chris Dickinson)
      
      * net: Ensure consistent binding to IPV6 if address is absent (Raymond Feng)
      
      * net: add remoteFamily for socket (Jackson Tian)
      
      * net: don't emit listening if handle is closed (Eli Skeggs)
      
      * net: don't prefer IPv4 addresses during resolution (cjihrig)
      
      * net: don't throw on net.Server.close() (cjihrig)
      
      * net: reset `errorEmitted` on reconnect (Ed Umansky)
      
      * node: set names for prototype methods (Trevor Norris)
      
      * node: support v8 microtask queue (Vladimir Kurchatkin)
      
      * path: fix slice OOB in trim (Lucio M. Tato)
      
      * path: isAbsolute() should always return boolean (Herman Lee)
      
      * process: throw TypeError if kill pid not a number (Sam Roberts)
      
      * querystring: custom encode and decode (fengmk2)
      
      * querystring: do not add sep for empty array (cjihrig)
      
      * querystring: remove prepended ? from query field (Ezequiel Rabinovich)
      
      * readline: fix close event of readline.Interface() (Yazhong Liu)
      
      * readline: fixes scoping bug (Dan Kaplun)
      
      * readline: implements keypress buffering (Dan Kaplun)
      
      * repl: fix multi-line input (Fedor Indutny)
      
      * repl: fix overwrite for this._prompt (Yazhong Liu)
      
      * repl: proper `setPrompt()` and `multiline` support (Fedor Indutny)
      
      * stream: don't try to finish if buffer is not empty (Vladimir Kurchatkin)
      
      * stream: only end reading on null, not undefined (Jonathan Reem)
      
      * streams: set default hwm properly for Duplex (Andrew Oppenlander)
      
      * string_bytes: ucs2 support big endian (Andrew Low)
      
      * tls, crypto: add DHE support (Shigeki Ohtsu)
      
      * tls: `checkServerIdentity` option (Trevor Livingston)
      
      * tls: add DHE-RSA-AES128-SHA256 to the def ciphers (Shigeki Ohtsu)
      
      * tls: better error reporting at cert validation (Fedor Indutny)
      
      * tls: support multiple keys/certs (Fedor Indutny)
      
      * tls: throw an error, not string (Jackson Tian)
      
      * udp: make it possible to receive empty udp packets (Andrius Bentkus)
      
      * url: treat  the same as / (isaacs)
      fd896d5a
    • Timothy J Fontaine's avatar
      deps: upgrade npm to 2.0.0 · 9fad8958
      Timothy J Fontaine authored
      9fad8958
    • Patrick Mooney's avatar
      net: Make server.connections un-enumerable · b26dd4e5
      Patrick Mooney authored
      The property server.connections should no longer be enumerable because
      it has been deprecated. This will prevent deprecation warnings when
      server objects are accessed by functions such as JSON.stringify.
      
      Fixes: https://github.com/joyent/node/issues/8373
      
      
      Reviewed-by: default avatarTrevor Norris <trev.norris@gmail.com>
      b26dd4e5
    • Robert Kowalski's avatar
      benchmark: add test for module loader · efa47e59
      Robert Kowalski authored
      
      
      Adds a test for benchmarking the module loader, needed for benchmarking
      changes / refacortings in the module loader.
      
      Reviewed-by: default avatarTrevor Norris <trev.norris@gmail.com>
      Reviewed-by: default avatarTimothy J Fontaine <tjfontaine@gmail.com>
      efa47e59
    • Timothy J Fontaine's avatar
      test: disable dgram-bind-shared-ports on win32 · f773fb41
      Timothy J Fontaine authored
      Windows currently doesn't support clustered dgram sockets, when it does
      re-enable this test
      f773fb41
    • Julien Gilli's avatar
      tests: add test for buffer.slice. · 2f7234d8
      Julien Gilli authored
      4c9b30db introduced a regression in buffer.slice that 7c3c51b8 fixed, but
      no test had been added to make sure that a similar regression is caught
      by the tests suite in the future.
      2f7234d8
  10. Sep 24, 2014