postdoc 0.1.2 → 0.2.0.beta4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/pdf.js +27 -0
- data/lib/postdoc.rb +3 -7
- data/node_modules/agent-base/History.md +113 -0
- data/node_modules/agent-base/README.md +145 -0
- data/node_modules/agent-base/index.js +160 -0
- data/node_modules/agent-base/package.json +35 -0
- data/node_modules/agent-base/patch-core.js +37 -0
- data/node_modules/agent-base/test/ssl-cert-snakeoil.key +15 -0
- data/node_modules/agent-base/test/ssl-cert-snakeoil.pem +12 -0
- data/node_modules/agent-base/test/test.js +673 -0
- data/node_modules/async-limiter/LICENSE +8 -0
- data/node_modules/async-limiter/coverage/coverage.json +1 -0
- data/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.html +73 -0
- data/node_modules/async-limiter/coverage/lcov-report/async-throttle/index.js.html +246 -0
- data/node_modules/async-limiter/coverage/lcov-report/base.css +182 -0
- data/node_modules/async-limiter/coverage/lcov-report/index.html +73 -0
- data/node_modules/async-limiter/coverage/lcov-report/prettify.css +1 -0
- data/node_modules/async-limiter/coverage/lcov-report/prettify.js +1 -0
- data/node_modules/async-limiter/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- data/node_modules/async-limiter/coverage/lcov-report/sorter.js +156 -0
- data/node_modules/async-limiter/coverage/lcov.info +74 -0
- data/node_modules/async-limiter/index.js +67 -0
- data/node_modules/async-limiter/package.json +35 -0
- data/node_modules/async-limiter/readme.md +132 -0
- data/node_modules/balanced-match/LICENSE.md +21 -0
- data/node_modules/balanced-match/README.md +91 -0
- data/node_modules/balanced-match/index.js +59 -0
- data/node_modules/balanced-match/package.json +49 -0
- data/node_modules/brace-expansion/LICENSE +21 -0
- data/node_modules/brace-expansion/README.md +129 -0
- data/node_modules/brace-expansion/index.js +201 -0
- data/node_modules/brace-expansion/package.json +47 -0
- data/node_modules/buffer-from/index.js +69 -0
- data/node_modules/buffer-from/package.json +16 -0
- data/node_modules/buffer-from/readme.md +69 -0
- data/node_modules/buffer-from/test.js +12 -0
- data/node_modules/concat-map/LICENSE +18 -0
- data/node_modules/concat-map/README.markdown +62 -0
- data/node_modules/concat-map/example/map.js +6 -0
- data/node_modules/concat-map/index.js +13 -0
- data/node_modules/concat-map/package.json +43 -0
- data/node_modules/concat-map/test/map.js +39 -0
- data/node_modules/concat-stream/LICENSE +24 -0
- data/node_modules/concat-stream/index.js +144 -0
- data/node_modules/concat-stream/package.json +55 -0
- data/node_modules/concat-stream/readme.md +102 -0
- data/node_modules/core-util-is/LICENSE +19 -0
- data/node_modules/core-util-is/README.md +3 -0
- data/node_modules/core-util-is/float.patch +604 -0
- data/node_modules/core-util-is/lib/util.js +107 -0
- data/node_modules/core-util-is/package.json +32 -0
- data/node_modules/core-util-is/test.js +68 -0
- data/node_modules/debug/CHANGELOG.md +395 -0
- data/node_modules/debug/LICENSE +19 -0
- data/node_modules/debug/Makefile +58 -0
- data/node_modules/debug/README.md +368 -0
- data/node_modules/debug/karma.conf.js +70 -0
- data/node_modules/debug/node.js +1 -0
- data/node_modules/debug/package.json +43 -0
- data/node_modules/debug/src/browser.js +195 -0
- data/node_modules/debug/src/debug.js +225 -0
- data/node_modules/debug/src/index.js +10 -0
- data/node_modules/debug/src/node.js +186 -0
- data/node_modules/es6-promise/CHANGELOG.md +151 -0
- data/node_modules/es6-promise/LICENSE +19 -0
- data/node_modules/es6-promise/README.md +97 -0
- data/node_modules/es6-promise/auto.js +4 -0
- data/node_modules/es6-promise/dist/es6-promise.auto.js +1181 -0
- data/node_modules/es6-promise/dist/es6-promise.auto.map +1 -0
- data/node_modules/es6-promise/dist/es6-promise.auto.min.js +1 -0
- data/node_modules/es6-promise/dist/es6-promise.auto.min.map +1 -0
- data/node_modules/es6-promise/dist/es6-promise.js +1179 -0
- data/node_modules/es6-promise/dist/es6-promise.map +1 -0
- data/node_modules/es6-promise/dist/es6-promise.min.js +1 -0
- data/node_modules/es6-promise/dist/es6-promise.min.map +1 -0
- data/node_modules/es6-promise/es6-promise.d.ts +81 -0
- data/node_modules/es6-promise/lib/es6-promise/-internal.js +266 -0
- data/node_modules/es6-promise/lib/es6-promise/asap.js +119 -0
- data/node_modules/es6-promise/lib/es6-promise/enumerator.js +113 -0
- data/node_modules/es6-promise/lib/es6-promise/polyfill.js +35 -0
- data/node_modules/es6-promise/lib/es6-promise/promise/all.js +52 -0
- data/node_modules/es6-promise/lib/es6-promise/promise/race.js +84 -0
- data/node_modules/es6-promise/lib/es6-promise/promise/reject.js +46 -0
- data/node_modules/es6-promise/lib/es6-promise/promise/resolve.js +48 -0
- data/node_modules/es6-promise/lib/es6-promise/promise.js +427 -0
- data/node_modules/es6-promise/lib/es6-promise/then.js +32 -0
- data/node_modules/es6-promise/lib/es6-promise/utils.js +21 -0
- data/node_modules/es6-promise/lib/es6-promise.auto.js +3 -0
- data/node_modules/es6-promise/lib/es6-promise.js +7 -0
- data/node_modules/es6-promise/package.json +75 -0
- data/node_modules/es6-promisify/README.md +89 -0
- data/node_modules/es6-promisify/dist/promise.js +73 -0
- data/node_modules/es6-promisify/dist/promisify.js +85 -0
- data/node_modules/es6-promisify/package.json +41 -0
- data/node_modules/extract-zip/CONTRIBUTING.md +1 -0
- data/node_modules/extract-zip/LICENSE +23 -0
- data/node_modules/extract-zip/cli.js +20 -0
- data/node_modules/extract-zip/index.js +205 -0
- data/node_modules/extract-zip/node_modules/debug/CHANGELOG.md +362 -0
- data/node_modules/extract-zip/node_modules/debug/LICENSE +19 -0
- data/node_modules/extract-zip/node_modules/debug/Makefile +50 -0
- data/node_modules/extract-zip/node_modules/debug/README.md +312 -0
- data/node_modules/extract-zip/node_modules/debug/component.json +19 -0
- data/node_modules/extract-zip/node_modules/debug/karma.conf.js +70 -0
- data/node_modules/extract-zip/node_modules/debug/node.js +1 -0
- data/node_modules/extract-zip/node_modules/debug/package.json +49 -0
- data/node_modules/extract-zip/node_modules/debug/src/browser.js +185 -0
- data/node_modules/extract-zip/node_modules/debug/src/debug.js +202 -0
- data/node_modules/extract-zip/node_modules/debug/src/index.js +10 -0
- data/node_modules/extract-zip/node_modules/debug/src/inspector-log.js +15 -0
- data/node_modules/extract-zip/node_modules/debug/src/node.js +248 -0
- data/node_modules/extract-zip/package.json +35 -0
- data/node_modules/extract-zip/readme.md +49 -0
- data/node_modules/fd-slicer/CHANGELOG.md +49 -0
- data/node_modules/fd-slicer/LICENSE +21 -0
- data/node_modules/fd-slicer/README.md +189 -0
- data/node_modules/fd-slicer/index.js +277 -0
- data/node_modules/fd-slicer/package.json +36 -0
- data/node_modules/fd-slicer/test/test.js +350 -0
- data/node_modules/fs.realpath/LICENSE +43 -0
- data/node_modules/fs.realpath/README.md +33 -0
- data/node_modules/fs.realpath/index.js +66 -0
- data/node_modules/fs.realpath/old.js +303 -0
- data/node_modules/fs.realpath/package.json +26 -0
- data/node_modules/glob/LICENSE +15 -0
- data/node_modules/glob/README.md +368 -0
- data/node_modules/glob/changelog.md +67 -0
- data/node_modules/glob/common.js +240 -0
- data/node_modules/glob/glob.js +790 -0
- data/node_modules/glob/package.json +43 -0
- data/node_modules/glob/sync.js +486 -0
- data/node_modules/https-proxy-agent/History.md +124 -0
- data/node_modules/https-proxy-agent/README.md +137 -0
- data/node_modules/https-proxy-agent/index.js +229 -0
- data/node_modules/https-proxy-agent/package.json +35 -0
- data/node_modules/https-proxy-agent/test/ssl-cert-snakeoil.key +15 -0
- data/node_modules/https-proxy-agent/test/ssl-cert-snakeoil.pem +12 -0
- data/node_modules/https-proxy-agent/test/test.js +342 -0
- data/node_modules/inflight/LICENSE +15 -0
- data/node_modules/inflight/README.md +37 -0
- data/node_modules/inflight/inflight.js +54 -0
- data/node_modules/inflight/package.json +29 -0
- data/node_modules/inherits/LICENSE +16 -0
- data/node_modules/inherits/README.md +42 -0
- data/node_modules/inherits/inherits.js +7 -0
- data/node_modules/inherits/inherits_browser.js +23 -0
- data/node_modules/inherits/package.json +29 -0
- data/node_modules/isarray/Makefile +6 -0
- data/node_modules/isarray/README.md +60 -0
- data/node_modules/isarray/component.json +19 -0
- data/node_modules/isarray/index.js +5 -0
- data/node_modules/isarray/package.json +45 -0
- data/node_modules/isarray/test.js +20 -0
- data/node_modules/mime/CHANGELOG.md +225 -0
- data/node_modules/mime/CONTRIBUTING.md +5 -0
- data/node_modules/mime/LICENSE +21 -0
- data/node_modules/mime/Mime.js +89 -0
- data/node_modules/mime/README.md +188 -0
- data/node_modules/mime/cli.js +10 -0
- data/node_modules/mime/index.js +4 -0
- data/node_modules/mime/lite.js +4 -0
- data/node_modules/mime/package.json +43 -0
- data/node_modules/mime/src/README_js.md +179 -0
- data/node_modules/mime/src/build.js +71 -0
- data/node_modules/mime/src/test.js +257 -0
- data/node_modules/mime/types/other.json +1 -0
- data/node_modules/mime/types/standard.json +1 -0
- data/node_modules/minimatch/LICENSE +15 -0
- data/node_modules/minimatch/README.md +209 -0
- data/node_modules/minimatch/minimatch.js +923 -0
- data/node_modules/minimatch/package.json +30 -0
- data/node_modules/minimist/LICENSE +18 -0
- data/node_modules/minimist/example/parse.js +2 -0
- data/node_modules/minimist/index.js +187 -0
- data/node_modules/minimist/package.json +40 -0
- data/node_modules/minimist/readme.markdown +73 -0
- data/node_modules/minimist/test/dash.js +24 -0
- data/node_modules/minimist/test/default_bool.js +20 -0
- data/node_modules/minimist/test/dotted.js +16 -0
- data/node_modules/minimist/test/long.js +31 -0
- data/node_modules/minimist/test/parse.js +318 -0
- data/node_modules/minimist/test/parse_modified.js +9 -0
- data/node_modules/minimist/test/short.js +67 -0
- data/node_modules/minimist/test/whitespace.js +8 -0
- data/node_modules/mkdirp/LICENSE +21 -0
- data/node_modules/mkdirp/bin/cmd.js +33 -0
- data/node_modules/mkdirp/bin/usage.txt +12 -0
- data/node_modules/mkdirp/examples/pow.js +6 -0
- data/node_modules/mkdirp/index.js +98 -0
- data/node_modules/mkdirp/package.json +27 -0
- data/node_modules/mkdirp/readme.markdown +100 -0
- data/node_modules/mkdirp/test/chmod.js +41 -0
- data/node_modules/mkdirp/test/clobber.js +38 -0
- data/node_modules/mkdirp/test/mkdirp.js +28 -0
- data/node_modules/mkdirp/test/opts_fs.js +29 -0
- data/node_modules/mkdirp/test/opts_fs_sync.js +27 -0
- data/node_modules/mkdirp/test/perm.js +32 -0
- data/node_modules/mkdirp/test/perm_sync.js +36 -0
- data/node_modules/mkdirp/test/race.js +37 -0
- data/node_modules/mkdirp/test/rel.js +32 -0
- data/node_modules/mkdirp/test/return.js +25 -0
- data/node_modules/mkdirp/test/return_sync.js +24 -0
- data/node_modules/mkdirp/test/root.js +19 -0
- data/node_modules/mkdirp/test/sync.js +32 -0
- data/node_modules/mkdirp/test/umask.js +28 -0
- data/node_modules/mkdirp/test/umask_sync.js +32 -0
- data/node_modules/ms/index.js +152 -0
- data/node_modules/ms/license.md +21 -0
- data/node_modules/ms/package.json +37 -0
- data/node_modules/ms/readme.md +51 -0
- data/node_modules/once/LICENSE +15 -0
- data/node_modules/once/README.md +79 -0
- data/node_modules/once/once.js +42 -0
- data/node_modules/once/package.json +33 -0
- data/node_modules/path-is-absolute/index.js +20 -0
- data/node_modules/path-is-absolute/license +21 -0
- data/node_modules/path-is-absolute/package.json +43 -0
- data/node_modules/path-is-absolute/readme.md +59 -0
- data/node_modules/pend/LICENSE +23 -0
- data/node_modules/pend/README.md +41 -0
- data/node_modules/pend/index.js +55 -0
- data/node_modules/pend/package.json +18 -0
- data/node_modules/pend/test.js +137 -0
- data/node_modules/process-nextick-args/index.js +44 -0
- data/node_modules/process-nextick-args/license.md +19 -0
- data/node_modules/process-nextick-args/package.json +25 -0
- data/node_modules/process-nextick-args/readme.md +18 -0
- data/node_modules/progress/CHANGELOG.md +115 -0
- data/node_modules/progress/LICENSE +22 -0
- data/node_modules/progress/Makefile +8 -0
- data/node_modules/progress/README.md +146 -0
- data/node_modules/progress/index.js +1 -0
- data/node_modules/progress/lib/node-progress.js +231 -0
- data/node_modules/progress/package.json +25 -0
- data/node_modules/proxy-from-env/README.md +131 -0
- data/node_modules/proxy-from-env/index.js +103 -0
- data/node_modules/proxy-from-env/package.json +35 -0
- data/node_modules/proxy-from-env/test.js +393 -0
- data/node_modules/puppeteer/CONTRIBUTING.md +206 -0
- data/node_modules/puppeteer/DeviceDescriptors.js +704 -0
- data/node_modules/puppeteer/LICENSE +202 -0
- data/node_modules/puppeteer/README.md +306 -0
- data/node_modules/puppeteer/index.js +28 -0
- data/node_modules/puppeteer/install.js +122 -0
- data/node_modules/puppeteer/lib/Browser.js +186 -0
- data/node_modules/puppeteer/lib/BrowserFetcher.js +279 -0
- data/node_modules/puppeteer/lib/Connection.js +246 -0
- data/node_modules/puppeteer/lib/Coverage.js +301 -0
- data/node_modules/puppeteer/lib/Dialog.js +84 -0
- data/node_modules/puppeteer/lib/ElementHandle.js +328 -0
- data/node_modules/puppeteer/lib/EmulationManager.js +89 -0
- data/node_modules/puppeteer/lib/ExecutionContext.js +232 -0
- data/node_modules/puppeteer/lib/FrameManager.js +997 -0
- data/node_modules/puppeteer/lib/Input.js +309 -0
- data/node_modules/puppeteer/lib/Launcher.js +310 -0
- data/node_modules/puppeteer/lib/Multimap.js +95 -0
- data/node_modules/puppeteer/lib/NavigatorWatcher.js +137 -0
- data/node_modules/puppeteer/lib/NetworkManager.js +796 -0
- data/node_modules/puppeteer/lib/Page.js +1098 -0
- data/node_modules/puppeteer/lib/Pipe.js +69 -0
- data/node_modules/puppeteer/lib/Puppeteer.js +60 -0
- data/node_modules/puppeteer/lib/Target.js +88 -0
- data/node_modules/puppeteer/lib/TaskQueue.js +17 -0
- data/node_modules/puppeteer/lib/Tracing.js +99 -0
- data/node_modules/puppeteer/lib/USKeyboardLayout.js +281 -0
- data/node_modules/puppeteer/lib/helper.js +248 -0
- data/node_modules/puppeteer/node6/lib/Browser.js +394 -0
- data/node_modules/puppeteer/node6/lib/BrowserFetcher.js +357 -0
- data/node_modules/puppeteer/node6/lib/Connection.js +350 -0
- data/node_modules/puppeteer/node6/lib/Coverage.js +561 -0
- data/node_modules/puppeteer/node6/lib/Dialog.js +136 -0
- data/node_modules/puppeteer/node6/lib/ElementHandle.js +796 -0
- data/node_modules/puppeteer/node6/lib/EmulationManager.js +115 -0
- data/node_modules/puppeteer/node6/lib/ExecutionContext.js +414 -0
- data/node_modules/puppeteer/node6/lib/FrameManager.js +1621 -0
- data/node_modules/puppeteer/node6/lib/Input.js +569 -0
- data/node_modules/puppeteer/node6/lib/Launcher.js +362 -0
- data/node_modules/puppeteer/node6/lib/Multimap.js +95 -0
- data/node_modules/puppeteer/node6/lib/NavigatorWatcher.js +163 -0
- data/node_modules/puppeteer/node6/lib/NetworkManager.js +1108 -0
- data/node_modules/puppeteer/node6/lib/Page.js +2242 -0
- data/node_modules/puppeteer/node6/lib/Pipe.js +69 -0
- data/node_modules/puppeteer/node6/lib/Puppeteer.js +60 -0
- data/node_modules/puppeteer/node6/lib/Target.js +114 -0
- data/node_modules/puppeteer/node6/lib/TaskQueue.js +17 -0
- data/node_modules/puppeteer/node6/lib/Tracing.js +177 -0
- data/node_modules/puppeteer/node6/lib/USKeyboardLayout.js +281 -0
- data/node_modules/puppeteer/node6/lib/helper.js +274 -0
- data/node_modules/puppeteer/package.json +61 -0
- data/node_modules/readable-stream/CONTRIBUTING.md +38 -0
- data/node_modules/readable-stream/GOVERNANCE.md +136 -0
- data/node_modules/readable-stream/LICENSE +47 -0
- data/node_modules/readable-stream/README.md +58 -0
- data/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
- data/node_modules/readable-stream/duplex-browser.js +1 -0
- data/node_modules/readable-stream/duplex.js +1 -0
- data/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
- data/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
- data/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
- data/node_modules/readable-stream/lib/_stream_transform.js +214 -0
- data/node_modules/readable-stream/lib/_stream_writable.js +687 -0
- data/node_modules/readable-stream/lib/internal/streams/BufferList.js +79 -0
- data/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
- data/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
- data/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
- data/node_modules/readable-stream/package.json +52 -0
- data/node_modules/readable-stream/passthrough.js +1 -0
- data/node_modules/readable-stream/readable-browser.js +7 -0
- data/node_modules/readable-stream/readable.js +19 -0
- data/node_modules/readable-stream/transform.js +1 -0
- data/node_modules/readable-stream/writable-browser.js +1 -0
- data/node_modules/readable-stream/writable.js +8 -0
- data/node_modules/rimraf/LICENSE +15 -0
- data/node_modules/rimraf/README.md +101 -0
- data/node_modules/rimraf/bin.js +50 -0
- data/node_modules/rimraf/package.json +26 -0
- data/node_modules/rimraf/rimraf.js +364 -0
- data/node_modules/safe-buffer/LICENSE +21 -0
- data/node_modules/safe-buffer/README.md +584 -0
- data/node_modules/safe-buffer/index.d.ts +187 -0
- data/node_modules/safe-buffer/index.js +62 -0
- data/node_modules/safe-buffer/package.json +37 -0
- data/node_modules/string_decoder/LICENSE +48 -0
- data/node_modules/string_decoder/README.md +47 -0
- data/node_modules/string_decoder/lib/string_decoder.js +296 -0
- data/node_modules/string_decoder/package.json +31 -0
- data/node_modules/typedarray/LICENSE +35 -0
- data/node_modules/typedarray/example/tarray.js +4 -0
- data/node_modules/typedarray/index.js +630 -0
- data/node_modules/typedarray/package.json +55 -0
- data/node_modules/typedarray/readme.markdown +61 -0
- data/node_modules/typedarray/test/server/undef_globals.js +19 -0
- data/node_modules/typedarray/test/tarray.js +10 -0
- data/node_modules/ultron/LICENSE +22 -0
- data/node_modules/ultron/README.md +113 -0
- data/node_modules/ultron/index.js +136 -0
- data/node_modules/ultron/package.json +41 -0
- data/node_modules/util-deprecate/History.md +16 -0
- data/node_modules/util-deprecate/LICENSE +24 -0
- data/node_modules/util-deprecate/README.md +53 -0
- data/node_modules/util-deprecate/browser.js +67 -0
- data/node_modules/util-deprecate/node.js +6 -0
- data/node_modules/util-deprecate/package.json +27 -0
- data/node_modules/wrappy/LICENSE +15 -0
- data/node_modules/wrappy/README.md +36 -0
- data/node_modules/wrappy/package.json +29 -0
- data/node_modules/wrappy/wrappy.js +33 -0
- data/node_modules/ws/LICENSE +21 -0
- data/node_modules/ws/README.md +341 -0
- data/node_modules/ws/index.js +15 -0
- data/node_modules/ws/lib/BufferUtil.js +71 -0
- data/node_modules/ws/lib/Constants.js +10 -0
- data/node_modules/ws/lib/ErrorCodes.js +28 -0
- data/node_modules/ws/lib/EventTarget.js +151 -0
- data/node_modules/ws/lib/Extensions.js +203 -0
- data/node_modules/ws/lib/PerMessageDeflate.js +507 -0
- data/node_modules/ws/lib/Receiver.js +553 -0
- data/node_modules/ws/lib/Sender.js +412 -0
- data/node_modules/ws/lib/Validation.js +17 -0
- data/node_modules/ws/lib/WebSocket.js +717 -0
- data/node_modules/ws/lib/WebSocketServer.js +326 -0
- data/node_modules/ws/package.json +46 -0
- data/node_modules/yauzl/LICENSE +21 -0
- data/node_modules/yauzl/README.md +467 -0
- data/node_modules/yauzl/index.js +626 -0
- data/node_modules/yauzl/package.json +36 -0
- data/package.json +5 -0
- data/yarn.lock +240 -0
- metadata +372 -7
- data/app/assets/stylesheets/default.css +0 -4
- data/lib/postdoc/postdoc_view_helper.rb +0 -22
@@ -0,0 +1,38 @@
|
|
1
|
+
# Developer's Certificate of Origin 1.1
|
2
|
+
|
3
|
+
By making a contribution to this project, I certify that:
|
4
|
+
|
5
|
+
* (a) The contribution was created in whole or in part by me and I
|
6
|
+
have the right to submit it under the open source license
|
7
|
+
indicated in the file; or
|
8
|
+
|
9
|
+
* (b) The contribution is based upon previous work that, to the best
|
10
|
+
of my knowledge, is covered under an appropriate open source
|
11
|
+
license and I have the right under that license to submit that
|
12
|
+
work with modifications, whether created in whole or in part
|
13
|
+
by me, under the same open source license (unless I am
|
14
|
+
permitted to submit under a different license), as indicated
|
15
|
+
in the file; or
|
16
|
+
|
17
|
+
* (c) The contribution was provided directly to me by some other
|
18
|
+
person who certified (a), (b) or (c) and I have not modified
|
19
|
+
it.
|
20
|
+
|
21
|
+
* (d) I understand and agree that this project and the contribution
|
22
|
+
are public and that a record of the contribution (including all
|
23
|
+
personal information I submit with it, including my sign-off) is
|
24
|
+
maintained indefinitely and may be redistributed consistent with
|
25
|
+
this project or the open source license(s) involved.
|
26
|
+
|
27
|
+
## Moderation Policy
|
28
|
+
|
29
|
+
The [Node.js Moderation Policy] applies to this WG.
|
30
|
+
|
31
|
+
## Code of Conduct
|
32
|
+
|
33
|
+
The [Node.js Code of Conduct][] applies to this WG.
|
34
|
+
|
35
|
+
[Node.js Code of Conduct]:
|
36
|
+
https://github.com/nodejs/node/blob/master/CODE_OF_CONDUCT.md
|
37
|
+
[Node.js Moderation Policy]:
|
38
|
+
https://github.com/nodejs/TSC/blob/master/Moderation-Policy.md
|
@@ -0,0 +1,136 @@
|
|
1
|
+
### Streams Working Group
|
2
|
+
|
3
|
+
The Node.js Streams is jointly governed by a Working Group
|
4
|
+
(WG)
|
5
|
+
that is responsible for high-level guidance of the project.
|
6
|
+
|
7
|
+
The WG has final authority over this project including:
|
8
|
+
|
9
|
+
* Technical direction
|
10
|
+
* Project governance and process (including this policy)
|
11
|
+
* Contribution policy
|
12
|
+
* GitHub repository hosting
|
13
|
+
* Conduct guidelines
|
14
|
+
* Maintaining the list of additional Collaborators
|
15
|
+
|
16
|
+
For the current list of WG members, see the project
|
17
|
+
[README.md](./README.md#current-project-team-members).
|
18
|
+
|
19
|
+
### Collaborators
|
20
|
+
|
21
|
+
The readable-stream GitHub repository is
|
22
|
+
maintained by the WG and additional Collaborators who are added by the
|
23
|
+
WG on an ongoing basis.
|
24
|
+
|
25
|
+
Individuals making significant and valuable contributions are made
|
26
|
+
Collaborators and given commit-access to the project. These
|
27
|
+
individuals are identified by the WG and their addition as
|
28
|
+
Collaborators is discussed during the WG meeting.
|
29
|
+
|
30
|
+
_Note:_ If you make a significant contribution and are not considered
|
31
|
+
for commit-access log an issue or contact a WG member directly and it
|
32
|
+
will be brought up in the next WG meeting.
|
33
|
+
|
34
|
+
Modifications of the contents of the readable-stream repository are
|
35
|
+
made on
|
36
|
+
a collaborative basis. Anybody with a GitHub account may propose a
|
37
|
+
modification via pull request and it will be considered by the project
|
38
|
+
Collaborators. All pull requests must be reviewed and accepted by a
|
39
|
+
Collaborator with sufficient expertise who is able to take full
|
40
|
+
responsibility for the change. In the case of pull requests proposed
|
41
|
+
by an existing Collaborator, an additional Collaborator is required
|
42
|
+
for sign-off. Consensus should be sought if additional Collaborators
|
43
|
+
participate and there is disagreement around a particular
|
44
|
+
modification. See _Consensus Seeking Process_ below for further detail
|
45
|
+
on the consensus model used for governance.
|
46
|
+
|
47
|
+
Collaborators may opt to elevate significant or controversial
|
48
|
+
modifications, or modifications that have not found consensus to the
|
49
|
+
WG for discussion by assigning the ***WG-agenda*** tag to a pull
|
50
|
+
request or issue. The WG should serve as the final arbiter where
|
51
|
+
required.
|
52
|
+
|
53
|
+
For the current list of Collaborators, see the project
|
54
|
+
[README.md](./README.md#members).
|
55
|
+
|
56
|
+
### WG Membership
|
57
|
+
|
58
|
+
WG seats are not time-limited. There is no fixed size of the WG.
|
59
|
+
However, the expected target is between 6 and 12, to ensure adequate
|
60
|
+
coverage of important areas of expertise, balanced with the ability to
|
61
|
+
make decisions efficiently.
|
62
|
+
|
63
|
+
There is no specific set of requirements or qualifications for WG
|
64
|
+
membership beyond these rules.
|
65
|
+
|
66
|
+
The WG may add additional members to the WG by unanimous consensus.
|
67
|
+
|
68
|
+
A WG member may be removed from the WG by voluntary resignation, or by
|
69
|
+
unanimous consensus of all other WG members.
|
70
|
+
|
71
|
+
Changes to WG membership should be posted in the agenda, and may be
|
72
|
+
suggested as any other agenda item (see "WG Meetings" below).
|
73
|
+
|
74
|
+
If an addition or removal is proposed during a meeting, and the full
|
75
|
+
WG is not in attendance to participate, then the addition or removal
|
76
|
+
is added to the agenda for the subsequent meeting. This is to ensure
|
77
|
+
that all members are given the opportunity to participate in all
|
78
|
+
membership decisions. If a WG member is unable to attend a meeting
|
79
|
+
where a planned membership decision is being made, then their consent
|
80
|
+
is assumed.
|
81
|
+
|
82
|
+
No more than 1/3 of the WG members may be affiliated with the same
|
83
|
+
employer. If removal or resignation of a WG member, or a change of
|
84
|
+
employment by a WG member, creates a situation where more than 1/3 of
|
85
|
+
the WG membership shares an employer, then the situation must be
|
86
|
+
immediately remedied by the resignation or removal of one or more WG
|
87
|
+
members affiliated with the over-represented employer(s).
|
88
|
+
|
89
|
+
### WG Meetings
|
90
|
+
|
91
|
+
The WG meets occasionally on a Google Hangout On Air. A designated moderator
|
92
|
+
approved by the WG runs the meeting. Each meeting should be
|
93
|
+
published to YouTube.
|
94
|
+
|
95
|
+
Items are added to the WG agenda that are considered contentious or
|
96
|
+
are modifications of governance, contribution policy, WG membership,
|
97
|
+
or release process.
|
98
|
+
|
99
|
+
The intention of the agenda is not to approve or review all patches;
|
100
|
+
that should happen continuously on GitHub and be handled by the larger
|
101
|
+
group of Collaborators.
|
102
|
+
|
103
|
+
Any community member or contributor can ask that something be added to
|
104
|
+
the next meeting's agenda by logging a GitHub Issue. Any Collaborator,
|
105
|
+
WG member or the moderator can add the item to the agenda by adding
|
106
|
+
the ***WG-agenda*** tag to the issue.
|
107
|
+
|
108
|
+
Prior to each WG meeting the moderator will share the Agenda with
|
109
|
+
members of the WG. WG members can add any items they like to the
|
110
|
+
agenda at the beginning of each meeting. The moderator and the WG
|
111
|
+
cannot veto or remove items.
|
112
|
+
|
113
|
+
The WG may invite persons or representatives from certain projects to
|
114
|
+
participate in a non-voting capacity.
|
115
|
+
|
116
|
+
The moderator is responsible for summarizing the discussion of each
|
117
|
+
agenda item and sends it as a pull request after the meeting.
|
118
|
+
|
119
|
+
### Consensus Seeking Process
|
120
|
+
|
121
|
+
The WG follows a
|
122
|
+
[Consensus
|
123
|
+
Seeking](http://en.wikipedia.org/wiki/Consensus-seeking_decision-making)
|
124
|
+
decision-making model.
|
125
|
+
|
126
|
+
When an agenda item has appeared to reach a consensus the moderator
|
127
|
+
will ask "Does anyone object?" as a final call for dissent from the
|
128
|
+
consensus.
|
129
|
+
|
130
|
+
If an agenda item cannot reach a consensus a WG member can call for
|
131
|
+
either a closing vote or a vote to table the issue to the next
|
132
|
+
meeting. The call for a vote must be seconded by a majority of the WG
|
133
|
+
or else the discussion will continue. Simple majority wins.
|
134
|
+
|
135
|
+
Note that changes to WG membership require a majority consensus. See
|
136
|
+
"WG Membership" above.
|
@@ -0,0 +1,47 @@
|
|
1
|
+
Node.js is licensed for use as follows:
|
2
|
+
|
3
|
+
"""
|
4
|
+
Copyright Node.js contributors. All rights reserved.
|
5
|
+
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
7
|
+
of this software and associated documentation files (the "Software"), to
|
8
|
+
deal in the Software without restriction, including without limitation the
|
9
|
+
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
10
|
+
sell copies of the Software, and to permit persons to whom the Software is
|
11
|
+
furnished to do so, subject to the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be included in
|
14
|
+
all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
21
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
22
|
+
IN THE SOFTWARE.
|
23
|
+
"""
|
24
|
+
|
25
|
+
This license applies to parts of Node.js originating from the
|
26
|
+
https://github.com/joyent/node repository:
|
27
|
+
|
28
|
+
"""
|
29
|
+
Copyright Joyent, Inc. and other Node contributors. All rights reserved.
|
30
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
31
|
+
of this software and associated documentation files (the "Software"), to
|
32
|
+
deal in the Software without restriction, including without limitation the
|
33
|
+
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
34
|
+
sell copies of the Software, and to permit persons to whom the Software is
|
35
|
+
furnished to do so, subject to the following conditions:
|
36
|
+
|
37
|
+
The above copyright notice and this permission notice shall be included in
|
38
|
+
all copies or substantial portions of the Software.
|
39
|
+
|
40
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
41
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
42
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
43
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
44
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
45
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
46
|
+
IN THE SOFTWARE.
|
47
|
+
"""
|
@@ -0,0 +1,58 @@
|
|
1
|
+
# readable-stream
|
2
|
+
|
3
|
+
***Node-core v8.11.1 streams for userland*** [![Build Status](https://travis-ci.org/nodejs/readable-stream.svg?branch=master)](https://travis-ci.org/nodejs/readable-stream)
|
4
|
+
|
5
|
+
|
6
|
+
[![NPM](https://nodei.co/npm/readable-stream.png?downloads=true&downloadRank=true)](https://nodei.co/npm/readable-stream/)
|
7
|
+
[![NPM](https://nodei.co/npm-dl/readable-stream.png?&months=6&height=3)](https://nodei.co/npm/readable-stream/)
|
8
|
+
|
9
|
+
|
10
|
+
[![Sauce Test Status](https://saucelabs.com/browser-matrix/readable-stream.svg)](https://saucelabs.com/u/readable-stream)
|
11
|
+
|
12
|
+
```bash
|
13
|
+
npm install --save readable-stream
|
14
|
+
```
|
15
|
+
|
16
|
+
***Node-core streams for userland***
|
17
|
+
|
18
|
+
This package is a mirror of the Streams2 and Streams3 implementations in
|
19
|
+
Node-core.
|
20
|
+
|
21
|
+
Full documentation may be found on the [Node.js website](https://nodejs.org/dist/v8.11.1/docs/api/stream.html).
|
22
|
+
|
23
|
+
If you want to guarantee a stable streams base, regardless of what version of
|
24
|
+
Node you, or the users of your libraries are using, use **readable-stream** *only* and avoid the *"stream"* module in Node-core, for background see [this blogpost](http://r.va.gg/2014/06/why-i-dont-use-nodes-core-stream-module.html).
|
25
|
+
|
26
|
+
As of version 2.0.0 **readable-stream** uses semantic versioning.
|
27
|
+
|
28
|
+
# Streams Working Group
|
29
|
+
|
30
|
+
`readable-stream` is maintained by the Streams Working Group, which
|
31
|
+
oversees the development and maintenance of the Streams API within
|
32
|
+
Node.js. The responsibilities of the Streams Working Group include:
|
33
|
+
|
34
|
+
* Addressing stream issues on the Node.js issue tracker.
|
35
|
+
* Authoring and editing stream documentation within the Node.js project.
|
36
|
+
* Reviewing changes to stream subclasses within the Node.js project.
|
37
|
+
* Redirecting changes to streams from the Node.js project to this
|
38
|
+
project.
|
39
|
+
* Assisting in the implementation of stream providers within Node.js.
|
40
|
+
* Recommending versions of `readable-stream` to be included in Node.js.
|
41
|
+
* Messaging about the future of streams to give the community advance
|
42
|
+
notice of changes.
|
43
|
+
|
44
|
+
<a name="members"></a>
|
45
|
+
## Team Members
|
46
|
+
|
47
|
+
* **Chris Dickinson** ([@chrisdickinson](https://github.com/chrisdickinson)) <christopher.s.dickinson@gmail.com>
|
48
|
+
- Release GPG key: 9554F04D7259F04124DE6B476D5A82AC7E37093B
|
49
|
+
* **Calvin Metcalf** ([@calvinmetcalf](https://github.com/calvinmetcalf)) <calvin.metcalf@gmail.com>
|
50
|
+
- Release GPG key: F3EF5F62A87FC27A22E643F714CE4FF5015AA242
|
51
|
+
* **Rod Vagg** ([@rvagg](https://github.com/rvagg)) <rod@vagg.org>
|
52
|
+
- Release GPG key: DD8F2338BAE7501E3DD5AC78C273792F7D83545D
|
53
|
+
* **Sam Newman** ([@sonewman](https://github.com/sonewman)) <newmansam@outlook.com>
|
54
|
+
* **Mathias Buus** ([@mafintosh](https://github.com/mafintosh)) <mathiasbuus@gmail.com>
|
55
|
+
* **Domenic Denicola** ([@domenic](https://github.com/domenic)) <d@domenic.me>
|
56
|
+
* **Matteo Collina** ([@mcollina](https://github.com/mcollina)) <matteo.collina@gmail.com>
|
57
|
+
- Release GPG key: 3ABC01543F22DD2239285CDD818674489FBC127E
|
58
|
+
* **Irina Shestak** ([@lrlna](https://github.com/lrlna)) <shestak.irina@gmail.com>
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# streams WG Meeting 2015-01-30
|
2
|
+
|
3
|
+
## Links
|
4
|
+
|
5
|
+
* **Google Hangouts Video**: http://www.youtube.com/watch?v=I9nDOSGfwZg
|
6
|
+
* **GitHub Issue**: https://github.com/iojs/readable-stream/issues/106
|
7
|
+
* **Original Minutes Google Doc**: https://docs.google.com/document/d/17aTgLnjMXIrfjgNaTUnHQO7m3xgzHR2VXBTmi03Qii4/
|
8
|
+
|
9
|
+
## Agenda
|
10
|
+
|
11
|
+
Extracted from https://github.com/iojs/readable-stream/labels/wg-agenda prior to meeting.
|
12
|
+
|
13
|
+
* adopt a charter [#105](https://github.com/iojs/readable-stream/issues/105)
|
14
|
+
* release and versioning strategy [#101](https://github.com/iojs/readable-stream/issues/101)
|
15
|
+
* simpler stream creation [#102](https://github.com/iojs/readable-stream/issues/102)
|
16
|
+
* proposal: deprecate implicit flowing of streams [#99](https://github.com/iojs/readable-stream/issues/99)
|
17
|
+
|
18
|
+
## Minutes
|
19
|
+
|
20
|
+
### adopt a charter
|
21
|
+
|
22
|
+
* group: +1's all around
|
23
|
+
|
24
|
+
### What versioning scheme should be adopted?
|
25
|
+
* group: +1’s 3.0.0
|
26
|
+
* domenic+group: pulling in patches from other sources where appropriate
|
27
|
+
* mikeal: version independently, suggesting versions for io.js
|
28
|
+
* mikeal+domenic: work with TC to notify in advance of changes
|
29
|
+
simpler stream creation
|
30
|
+
|
31
|
+
### streamline creation of streams
|
32
|
+
* sam: streamline creation of streams
|
33
|
+
* domenic: nice simple solution posted
|
34
|
+
but, we lose the opportunity to change the model
|
35
|
+
may not be backwards incompatible (double check keys)
|
36
|
+
|
37
|
+
**action item:** domenic will check
|
38
|
+
|
39
|
+
### remove implicit flowing of streams on(‘data’)
|
40
|
+
* add isFlowing / isPaused
|
41
|
+
* mikeal: worrying that we’re documenting polyfill methods – confuses users
|
42
|
+
* domenic: more reflective API is probably good, with warning labels for users
|
43
|
+
* new section for mad scientists (reflective stream access)
|
44
|
+
* calvin: name the “third state”
|
45
|
+
* mikeal: maybe borrow the name from whatwg?
|
46
|
+
* domenic: we’re missing the “third state”
|
47
|
+
* consensus: kind of difficult to name the third state
|
48
|
+
* mikeal: figure out differences in states / compat
|
49
|
+
* mathias: always flow on data – eliminates third state
|
50
|
+
* explore what it breaks
|
51
|
+
|
52
|
+
**action items:**
|
53
|
+
* ask isaac for ability to list packages by what public io.js APIs they use (esp. Stream)
|
54
|
+
* ask rod/build for infrastructure
|
55
|
+
* **chris**: explore the “flow on data” approach
|
56
|
+
* add isPaused/isFlowing
|
57
|
+
* add new docs section
|
58
|
+
* move isPaused to that section
|
59
|
+
|
60
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
module.exports = require('./lib/_stream_duplex.js');
|
@@ -0,0 +1 @@
|
|
1
|
+
module.exports = require('./readable').Duplex
|
@@ -0,0 +1,131 @@
|
|
1
|
+
// Copyright Joyent, Inc. and other Node contributors.
|
2
|
+
//
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a
|
4
|
+
// copy of this software and associated documentation files (the
|
5
|
+
// "Software"), to deal in the Software without restriction, including
|
6
|
+
// without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
// distribute, sublicense, and/or sell copies of the Software, and to permit
|
8
|
+
// persons to whom the Software is furnished to do so, subject to the
|
9
|
+
// following conditions:
|
10
|
+
//
|
11
|
+
// The above copyright notice and this permission notice shall be included
|
12
|
+
// in all copies or substantial portions of the Software.
|
13
|
+
//
|
14
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
15
|
+
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
17
|
+
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
18
|
+
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
19
|
+
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
20
|
+
// USE OR OTHER DEALINGS IN THE SOFTWARE.
|
21
|
+
|
22
|
+
// a duplex stream is just a stream that is both readable and writable.
|
23
|
+
// Since JS doesn't have multiple prototypal inheritance, this class
|
24
|
+
// prototypally inherits from Readable, and then parasitically from
|
25
|
+
// Writable.
|
26
|
+
|
27
|
+
'use strict';
|
28
|
+
|
29
|
+
/*<replacement>*/
|
30
|
+
|
31
|
+
var pna = require('process-nextick-args');
|
32
|
+
/*</replacement>*/
|
33
|
+
|
34
|
+
/*<replacement>*/
|
35
|
+
var objectKeys = Object.keys || function (obj) {
|
36
|
+
var keys = [];
|
37
|
+
for (var key in obj) {
|
38
|
+
keys.push(key);
|
39
|
+
}return keys;
|
40
|
+
};
|
41
|
+
/*</replacement>*/
|
42
|
+
|
43
|
+
module.exports = Duplex;
|
44
|
+
|
45
|
+
/*<replacement>*/
|
46
|
+
var util = require('core-util-is');
|
47
|
+
util.inherits = require('inherits');
|
48
|
+
/*</replacement>*/
|
49
|
+
|
50
|
+
var Readable = require('./_stream_readable');
|
51
|
+
var Writable = require('./_stream_writable');
|
52
|
+
|
53
|
+
util.inherits(Duplex, Readable);
|
54
|
+
|
55
|
+
{
|
56
|
+
// avoid scope creep, the keys array can then be collected
|
57
|
+
var keys = objectKeys(Writable.prototype);
|
58
|
+
for (var v = 0; v < keys.length; v++) {
|
59
|
+
var method = keys[v];
|
60
|
+
if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];
|
61
|
+
}
|
62
|
+
}
|
63
|
+
|
64
|
+
function Duplex(options) {
|
65
|
+
if (!(this instanceof Duplex)) return new Duplex(options);
|
66
|
+
|
67
|
+
Readable.call(this, options);
|
68
|
+
Writable.call(this, options);
|
69
|
+
|
70
|
+
if (options && options.readable === false) this.readable = false;
|
71
|
+
|
72
|
+
if (options && options.writable === false) this.writable = false;
|
73
|
+
|
74
|
+
this.allowHalfOpen = true;
|
75
|
+
if (options && options.allowHalfOpen === false) this.allowHalfOpen = false;
|
76
|
+
|
77
|
+
this.once('end', onend);
|
78
|
+
}
|
79
|
+
|
80
|
+
Object.defineProperty(Duplex.prototype, 'writableHighWaterMark', {
|
81
|
+
// making it explicit this property is not enumerable
|
82
|
+
// because otherwise some prototype manipulation in
|
83
|
+
// userland will fail
|
84
|
+
enumerable: false,
|
85
|
+
get: function () {
|
86
|
+
return this._writableState.highWaterMark;
|
87
|
+
}
|
88
|
+
});
|
89
|
+
|
90
|
+
// the no-half-open enforcer
|
91
|
+
function onend() {
|
92
|
+
// if we allow half-open state, or if the writable side ended,
|
93
|
+
// then we're ok.
|
94
|
+
if (this.allowHalfOpen || this._writableState.ended) return;
|
95
|
+
|
96
|
+
// no more data can be written.
|
97
|
+
// But allow more writes to happen in this tick.
|
98
|
+
pna.nextTick(onEndNT, this);
|
99
|
+
}
|
100
|
+
|
101
|
+
function onEndNT(self) {
|
102
|
+
self.end();
|
103
|
+
}
|
104
|
+
|
105
|
+
Object.defineProperty(Duplex.prototype, 'destroyed', {
|
106
|
+
get: function () {
|
107
|
+
if (this._readableState === undefined || this._writableState === undefined) {
|
108
|
+
return false;
|
109
|
+
}
|
110
|
+
return this._readableState.destroyed && this._writableState.destroyed;
|
111
|
+
},
|
112
|
+
set: function (value) {
|
113
|
+
// we ignore the value if the stream
|
114
|
+
// has not been initialized yet
|
115
|
+
if (this._readableState === undefined || this._writableState === undefined) {
|
116
|
+
return;
|
117
|
+
}
|
118
|
+
|
119
|
+
// backward compatibility, the user is explicitly
|
120
|
+
// managing destroyed
|
121
|
+
this._readableState.destroyed = value;
|
122
|
+
this._writableState.destroyed = value;
|
123
|
+
}
|
124
|
+
});
|
125
|
+
|
126
|
+
Duplex.prototype._destroy = function (err, cb) {
|
127
|
+
this.push(null);
|
128
|
+
this.end();
|
129
|
+
|
130
|
+
pna.nextTick(cb, err);
|
131
|
+
};
|
@@ -0,0 +1,47 @@
|
|
1
|
+
// Copyright Joyent, Inc. and other Node contributors.
|
2
|
+
//
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a
|
4
|
+
// copy of this software and associated documentation files (the
|
5
|
+
// "Software"), to deal in the Software without restriction, including
|
6
|
+
// without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
// distribute, sublicense, and/or sell copies of the Software, and to permit
|
8
|
+
// persons to whom the Software is furnished to do so, subject to the
|
9
|
+
// following conditions:
|
10
|
+
//
|
11
|
+
// The above copyright notice and this permission notice shall be included
|
12
|
+
// in all copies or substantial portions of the Software.
|
13
|
+
//
|
14
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
15
|
+
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
17
|
+
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
18
|
+
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
19
|
+
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
20
|
+
// USE OR OTHER DEALINGS IN THE SOFTWARE.
|
21
|
+
|
22
|
+
// a passthrough stream.
|
23
|
+
// basically just the most minimal sort of Transform stream.
|
24
|
+
// Every written chunk gets output as-is.
|
25
|
+
|
26
|
+
'use strict';
|
27
|
+
|
28
|
+
module.exports = PassThrough;
|
29
|
+
|
30
|
+
var Transform = require('./_stream_transform');
|
31
|
+
|
32
|
+
/*<replacement>*/
|
33
|
+
var util = require('core-util-is');
|
34
|
+
util.inherits = require('inherits');
|
35
|
+
/*</replacement>*/
|
36
|
+
|
37
|
+
util.inherits(PassThrough, Transform);
|
38
|
+
|
39
|
+
function PassThrough(options) {
|
40
|
+
if (!(this instanceof PassThrough)) return new PassThrough(options);
|
41
|
+
|
42
|
+
Transform.call(this, options);
|
43
|
+
}
|
44
|
+
|
45
|
+
PassThrough.prototype._transform = function (chunk, encoding, cb) {
|
46
|
+
cb(null, chunk);
|
47
|
+
};
|