Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRebecca Turner <me@re-becca.org>2018-05-24 23:31:26 +0300
committerRebecca Turner <me@re-becca.org>2018-05-24 23:31:38 +0300
commit0483f5c5deaf18c968a128657923103e49f4e67a (patch)
tree210f154da2f60938471d96a844dcb32cbda09e2a /node_modules/minizlib
parent6c294614d800cb95a49ef1c422fbdde65b0731a2 (diff)
Flatten dependencies and add dev deps to git
Diffstat (limited to 'node_modules/minizlib')
-rw-r--r--node_modules/minizlib/LICENSE26
-rw-r--r--node_modules/minizlib/README.md44
-rw-r--r--node_modules/minizlib/constants.js46
-rw-r--r--node_modules/minizlib/index.js364
-rw-r--r--node_modules/minizlib/package.json71
5 files changed, 551 insertions, 0 deletions
diff --git a/node_modules/minizlib/LICENSE b/node_modules/minizlib/LICENSE
new file mode 100644
index 000000000..ffce7383f
--- /dev/null
+++ b/node_modules/minizlib/LICENSE
@@ -0,0 +1,26 @@
+Minizlib was created by Isaac Z. Schlueter.
+It is a derivative work of the Node.js project.
+
+"""
+Copyright Isaac Z. Schlueter and Contributors
+Copyright Node.js contributors. All rights reserved.
+Copyright Joyent, Inc. and other Node contributors. All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the "Software"),
+to deal in the Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, sublicense,
+and/or sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+"""
diff --git a/node_modules/minizlib/README.md b/node_modules/minizlib/README.md
new file mode 100644
index 000000000..2b585545e
--- /dev/null
+++ b/node_modules/minizlib/README.md
@@ -0,0 +1,44 @@
+# minizlib
+
+A tiny fast zlib stream built on [minipass](http://npm.im/minipass)
+and Node.js's zlib binding.
+
+This module was created to serve the needs of
+[node-tar](http://npm.im/tar) v2. If your needs are different, then
+it may not be for you.
+
+## How does this differ from the streams in `require('zlib')`?
+
+First, there are no convenience methods to compress or decompress a
+buffer. If you want those, use the built-in `zlib` module. This is
+only streams.
+
+This module compresses and decompresses the data as fast as you feed
+it in. It is synchronous, and runs on the main process thread. Zlib
+operations can be high CPU, but they're very fast, and doing it this
+way means much less bookkeeping and artificial deferral.
+
+Node's built in zlib streams are built on top of `stream.Transform`.
+They do the maximally safe thing with respect to consistent
+asynchrony, buffering, and backpressure.
+
+This module _does_ support backpressure, and will buffer output chunks
+that are not consumed, but is less of a mediator between the input and
+output. There is no high or low watermarks, no state objects, and so
+artificial async deferrals. It will not protect you from Zalgo.
+
+If you write, data will be emitted right away. If you write
+everything synchronously in one tick, and you are listening to the
+`data` event to consume it, then it'll all be emitted right away in
+that same tick. If you want data to be emitted in the next tick, then
+write it in the next tick.
+
+It is thus the responsibility of the reader and writer to manage their
+own consumption and process execution flow.
+
+The goal is to compress and decompress as fast as possible, even for
+files that are too large to store all in one buffer.
+
+The API is very similar to the built-in zlib module. There are
+classes that you instantiate with `new` and they are streams that can
+be piped together.
diff --git a/node_modules/minizlib/constants.js b/node_modules/minizlib/constants.js
new file mode 100644
index 000000000..4edffde86
--- /dev/null
+++ b/node_modules/minizlib/constants.js
@@ -0,0 +1,46 @@
+module.exports = Object.freeze({
+ Z_NO_FLUSH: 0,
+ Z_PARTIAL_FLUSH: 1,
+ Z_SYNC_FLUSH: 2,
+ Z_FULL_FLUSH: 3,
+ Z_FINISH: 4,
+ Z_BLOCK: 5,
+ Z_OK: 0,
+ Z_STREAM_END: 1,
+ Z_NEED_DICT: 2,
+ Z_ERRNO: -1,
+ Z_STREAM_ERROR: -2,
+ Z_DATA_ERROR: -3,
+ Z_MEM_ERROR: -4,
+ Z_BUF_ERROR: -5,
+ Z_VERSION_ERROR: -6,
+ Z_NO_COMPRESSION: 0,
+ Z_BEST_SPEED: 1,
+ Z_BEST_COMPRESSION: 9,
+ Z_DEFAULT_COMPRESSION: -1,
+ Z_FILTERED: 1,
+ Z_HUFFMAN_ONLY: 2,
+ Z_RLE: 3,
+ Z_FIXED: 4,
+ Z_DEFAULT_STRATEGY: 0,
+ ZLIB_VERNUM: 4736,
+ DEFLATE: 1,
+ INFLATE: 2,
+ GZIP: 3,
+ GUNZIP: 4,
+ DEFLATERAW: 5,
+ INFLATERAW: 6,
+ UNZIP: 7,
+ Z_MIN_WINDOWBITS: 8,
+ Z_MAX_WINDOWBITS: 15,
+ Z_DEFAULT_WINDOWBITS: 15,
+ Z_MIN_CHUNK: 64,
+ Z_MAX_CHUNK: Infinity,
+ Z_DEFAULT_CHUNK: 16384,
+ Z_MIN_MEMLEVEL: 1,
+ Z_MAX_MEMLEVEL: 9,
+ Z_DEFAULT_MEMLEVEL: 8,
+ Z_MIN_LEVEL: -1,
+ Z_MAX_LEVEL: 9,
+ Z_DEFAULT_LEVEL: -1
+})
diff --git a/node_modules/minizlib/index.js b/node_modules/minizlib/index.js
new file mode 100644
index 000000000..10c8a8b48
--- /dev/null
+++ b/node_modules/minizlib/index.js
@@ -0,0 +1,364 @@
+'use strict'
+
+const assert = require('assert')
+const Buffer = require('buffer').Buffer
+const binding = process.binding('zlib')
+
+const constants = exports.constants = require('./constants.js')
+const MiniPass = require('minipass')
+
+class ZlibError extends Error {
+ constructor (msg, errno) {
+ super('zlib: ' + msg)
+ this.errno = errno
+ this.code = codes.get(errno)
+ }
+
+ get name () {
+ return 'ZlibError'
+ }
+}
+
+// translation table for return codes.
+const codes = new Map([
+ [constants.Z_OK, 'Z_OK'],
+ [constants.Z_STREAM_END, 'Z_STREAM_END'],
+ [constants.Z_NEED_DICT, 'Z_NEED_DICT'],
+ [constants.Z_ERRNO, 'Z_ERRNO'],
+ [constants.Z_STREAM_ERROR, 'Z_STREAM_ERROR'],
+ [constants.Z_DATA_ERROR, 'Z_DATA_ERROR'],
+ [constants.Z_MEM_ERROR, 'Z_MEM_ERROR'],
+ [constants.Z_BUF_ERROR, 'Z_BUF_ERROR'],
+ [constants.Z_VERSION_ERROR, 'Z_VERSION_ERROR']
+])
+
+const validFlushFlags = new Set([
+ constants.Z_NO_FLUSH,
+ constants.Z_PARTIAL_FLUSH,
+ constants.Z_SYNC_FLUSH,
+ constants.Z_FULL_FLUSH,
+ constants.Z_FINISH,
+ constants.Z_BLOCK
+])
+
+const strategies = new Set([
+ constants.Z_FILTERED,
+ constants.Z_HUFFMAN_ONLY,
+ constants.Z_RLE,
+ constants.Z_FIXED,
+ constants.Z_DEFAULT_STRATEGY
+])
+
+// the Zlib class they all inherit from
+// This thing manages the queue of requests, and returns
+// true or false if there is anything in the queue when
+// you call the .write() method.
+const _opts = Symbol('opts')
+const _chunkSize = Symbol('chunkSize')
+const _flushFlag = Symbol('flushFlag')
+const _finishFlush = Symbol('finishFlush')
+const _handle = Symbol('handle')
+const _hadError = Symbol('hadError')
+const _buffer = Symbol('buffer')
+const _offset = Symbol('offset')
+const _level = Symbol('level')
+const _strategy = Symbol('strategy')
+const _ended = Symbol('ended')
+const _writeState = Symbol('writeState')
+
+class Zlib extends MiniPass {
+ constructor (opts, mode) {
+ super(opts)
+ this[_ended] = false
+ this[_opts] = opts = opts || {}
+ this[_chunkSize] = opts.chunkSize || constants.Z_DEFAULT_CHUNK
+ if (opts.flush && !validFlushFlags.has(opts.flush)) {
+ throw new TypeError('Invalid flush flag: ' + opts.flush)
+ }
+ if (opts.finishFlush && !validFlushFlags.has(opts.finishFlush)) {
+ throw new TypeError('Invalid flush flag: ' + opts.finishFlush)
+ }
+
+ this[_flushFlag] = opts.flush || constants.Z_NO_FLUSH
+ this[_finishFlush] = typeof opts.finishFlush !== 'undefined' ?
+ opts.finishFlush : constants.Z_FINISH
+
+ if (opts.chunkSize) {
+ if (opts.chunkSize < constants.Z_MIN_CHUNK) {
+ throw new RangeError('Invalid chunk size: ' + opts.chunkSize)
+ }
+ }
+
+ if (opts.windowBits) {
+ if (opts.windowBits < constants.Z_MIN_WINDOWBITS ||
+ opts.windowBits > constants.Z_MAX_WINDOWBITS) {
+ throw new RangeError('Invalid windowBits: ' + opts.windowBits)
+ }
+ }
+
+ if (opts.level) {
+ if (opts.level < constants.Z_MIN_LEVEL ||
+ opts.level > constants.Z_MAX_LEVEL) {
+ throw new RangeError('Invalid compression level: ' + opts.level)
+ }
+ }
+
+ if (opts.memLevel) {
+ if (opts.memLevel < constants.Z_MIN_MEMLEVEL ||
+ opts.memLevel > constants.Z_MAX_MEMLEVEL) {
+ throw new RangeError('Invalid memLevel: ' + opts.memLevel)
+ }
+ }
+
+ if (opts.strategy && !(strategies.has(opts.strategy)))
+ throw new TypeError('Invalid strategy: ' + opts.strategy)
+
+ if (opts.dictionary) {
+ if (!(opts.dictionary instanceof Buffer)) {
+ throw new TypeError('Invalid dictionary: it should be a Buffer instance')
+ }
+ }
+
+ this[_handle] = new binding.Zlib(mode)
+
+ this[_hadError] = false
+ this[_handle].onerror = (message, errno) => {
+ // there is no way to cleanly recover.
+ // continuing only obscures problems.
+ this.close()
+ this[_hadError] = true
+
+ const error = new ZlibError(message, errno)
+ this.emit('error', error)
+ }
+
+ const level = typeof opts.level === 'number' ? opts.level
+ : constants.Z_DEFAULT_COMPRESSION
+
+ var strategy = typeof opts.strategy === 'number' ? opts.strategy
+ : constants.Z_DEFAULT_STRATEGY
+
+ this[_writeState] = new Uint32Array(2);
+ const window = opts.windowBits || constants.Z_DEFAULT_WINDOWBITS
+ const memLevel = opts.memLevel || constants.Z_DEFAULT_MEMLEVEL
+
+ // API changed in node v9
+ /* istanbul ignore next */
+ if (/^v[0-8]\./.test(process.version)) {
+ this[_handle].init(window,
+ level,
+ memLevel,
+ strategy,
+ opts.dictionary)
+ } else {
+ this[_handle].init(window,
+ level,
+ memLevel,
+ strategy,
+ this[_writeState],
+ () => {},
+ opts.dictionary)
+ }
+
+ this[_buffer] = Buffer.allocUnsafe(this[_chunkSize])
+ this[_offset] = 0
+ this[_level] = level
+ this[_strategy] = strategy
+
+ this.once('end', this.close)
+ }
+
+ close () {
+ if (this[_handle]) {
+ this[_handle].close()
+ this[_handle] = null
+ this.emit('close')
+ }
+ }
+
+ params (level, strategy) {
+ if (!this[_handle])
+ throw new Error('cannot switch params when binding is closed')
+
+ // no way to test this without also not supporting params at all
+ /* istanbul ignore if */
+ if (!this[_handle].params)
+ throw new Error('not supported in this implementation')
+
+ if (level < constants.Z_MIN_LEVEL ||
+ level > constants.Z_MAX_LEVEL) {
+ throw new RangeError('Invalid compression level: ' + level)
+ }
+
+ if (!(strategies.has(strategy)))
+ throw new TypeError('Invalid strategy: ' + strategy)
+
+ if (this[_level] !== level || this[_strategy] !== strategy) {
+ this.flush(constants.Z_SYNC_FLUSH)
+ assert(this[_handle], 'zlib binding closed')
+ this[_handle].params(level, strategy)
+ /* istanbul ignore else */
+ if (!this[_hadError]) {
+ this[_level] = level
+ this[_strategy] = strategy
+ }
+ }
+ }
+
+ reset () {
+ assert(this[_handle], 'zlib binding closed')
+ return this[_handle].reset()
+ }
+
+ flush (kind) {
+ if (kind === undefined)
+ kind = constants.Z_FULL_FLUSH
+
+ if (this.ended)
+ return
+
+ const flushFlag = this[_flushFlag]
+ this[_flushFlag] = kind
+ this.write(Buffer.alloc(0))
+ this[_flushFlag] = flushFlag
+ }
+
+ end (chunk, encoding, cb) {
+ if (chunk)
+ this.write(chunk, encoding)
+ this.flush(this[_finishFlush])
+ this[_ended] = true
+ return super.end(null, null, cb)
+ }
+
+ get ended () {
+ return this[_ended]
+ }
+
+ write (chunk, encoding, cb) {
+ // process the chunk using the sync process
+ // then super.write() all the outputted chunks
+ if (typeof encoding === 'function')
+ cb = encoding, encoding = 'utf8'
+
+ if (typeof chunk === 'string')
+ chunk = new Buffer(chunk, encoding)
+
+ let availInBefore = chunk && chunk.length
+ let availOutBefore = this[_chunkSize] - this[_offset]
+ let inOff = 0 // the offset of the input buffer
+ const flushFlag = this[_flushFlag]
+ let writeReturn = true
+
+ assert(this[_handle], 'zlib binding closed')
+ do {
+ let res = this[_handle].writeSync(
+ flushFlag,
+ chunk, // in
+ inOff, // in_off
+ availInBefore, // in_len
+ this[_buffer], // out
+ this[_offset], //out_off
+ availOutBefore // out_len
+ )
+
+ if (this[_hadError])
+ break
+
+ // API changed in v9
+ /* istanbul ignore next */
+ let availInAfter = res ? res[0] : this[_writeState][1]
+ /* istanbul ignore next */
+ let availOutAfter = res ? res[1] : this[_writeState][0]
+
+ const have = availOutBefore - availOutAfter
+ assert(have >= 0, 'have should not go down')
+
+ if (have > 0) {
+ const out = this[_buffer].slice(
+ this[_offset], this[_offset] + have
+ )
+
+ this[_offset] += have
+ // serve some output to the consumer.
+ writeReturn = super.write(out) && writeReturn
+ }
+
+ // exhausted the output buffer, or used all the input create a new one.
+ if (availOutAfter === 0 || this[_offset] >= this[_chunkSize]) {
+ availOutBefore = this[_chunkSize]
+ this[_offset] = 0
+ this[_buffer] = Buffer.allocUnsafe(this[_chunkSize])
+ }
+
+ if (availOutAfter === 0) {
+ // Not actually done. Need to reprocess.
+ // Also, update the availInBefore to the availInAfter value,
+ // so that if we have to hit it a third (fourth, etc.) time,
+ // it'll have the correct byte counts.
+ inOff += (availInBefore - availInAfter)
+ availInBefore = availInAfter
+ continue
+ }
+ break
+ } while (!this[_hadError])
+
+ if (cb)
+ cb()
+ return writeReturn
+ }
+}
+
+// minimal 2-byte header
+class Deflate extends Zlib {
+ constructor (opts) {
+ super(opts, constants.DEFLATE)
+ }
+}
+
+class Inflate extends Zlib {
+ constructor (opts) {
+ super(opts, constants.INFLATE)
+ }
+}
+
+// gzip - bigger header, same deflate compression
+class Gzip extends Zlib {
+ constructor (opts) {
+ super(opts, constants.GZIP)
+ }
+}
+
+class Gunzip extends Zlib {
+ constructor (opts) {
+ super(opts, constants.GUNZIP)
+ }
+}
+
+// raw - no header
+class DeflateRaw extends Zlib {
+ constructor (opts) {
+ super(opts, constants.DEFLATERAW)
+ }
+}
+
+class InflateRaw extends Zlib {
+ constructor (opts) {
+ super(opts, constants.INFLATERAW)
+ }
+}
+
+// auto-detect header.
+class Unzip extends Zlib {
+ constructor (opts) {
+ super(opts, constants.UNZIP)
+ }
+}
+
+exports.Deflate = Deflate
+exports.Inflate = Inflate
+exports.Gzip = Gzip
+exports.Gunzip = Gunzip
+exports.DeflateRaw = DeflateRaw
+exports.InflateRaw = InflateRaw
+exports.Unzip = Unzip
diff --git a/node_modules/minizlib/package.json b/node_modules/minizlib/package.json
new file mode 100644
index 000000000..5a909622d
--- /dev/null
+++ b/node_modules/minizlib/package.json
@@ -0,0 +1,71 @@
+{
+ "_from": "minizlib@^1.1.0",
+ "_id": "minizlib@1.1.0",
+ "_inBundle": false,
+ "_integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==",
+ "_location": "/minizlib",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "minizlib@^1.1.0",
+ "name": "minizlib",
+ "escapedName": "minizlib",
+ "rawSpec": "^1.1.0",
+ "saveSpec": null,
+ "fetchSpec": "^1.1.0"
+ },
+ "_requiredBy": [
+ "/tar"
+ ],
+ "_resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz",
+ "_shasum": "11e13658ce46bc3a70a267aac58359d1e0c29ceb",
+ "_spec": "minizlib@^1.1.0",
+ "_where": "/Users/rebecca/code/npm/node_modules/tar",
+ "author": {
+ "name": "Isaac Z. Schlueter",
+ "email": "i@izs.me",
+ "url": "http://blog.izs.me/"
+ },
+ "bugs": {
+ "url": "https://github.com/isaacs/minizlib/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "minipass": "^2.2.1"
+ },
+ "deprecated": false,
+ "description": "A small fast zlib stream built on [minipass](http://npm.im/minipass) and Node.js's zlib binding.",
+ "devDependencies": {
+ "tap": "^10.7.2"
+ },
+ "files": [
+ "index.js",
+ "constants.js"
+ ],
+ "homepage": "https://github.com/isaacs/minizlib#readme",
+ "keywords": [
+ "zlib",
+ "gzip",
+ "gunzip",
+ "deflate",
+ "inflate",
+ "compression",
+ "zip",
+ "unzip"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "minizlib",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/isaacs/minizlib.git"
+ },
+ "scripts": {
+ "postpublish": "git push origin --all; git push origin --tags",
+ "postversion": "npm publish",
+ "preversion": "npm test",
+ "test": "tap test/*.js --100 -J"
+ },
+ "version": "1.1.0"
+}