Browse Source

PDF.js version 2.0.224 - See mozilla/pdf.js@1d4651b2e4ad349887e91dcfd2c9a83e295ee7c4

pdfjsbot 7 years ago
parent
commit
f76ba13d5b

+ 1 - 1
bower.json

@@ -1,6 +1,6 @@
 {
   "name": "pdfjs-dist",
-  "version": "2.0.222",
+  "version": "2.0.224",
   "main": [
     "build/pdf.js",
     "build/pdf.worker.js"

+ 9 - 9
build/pdf.combined.js

@@ -10945,7 +10945,7 @@ function validateRangeRequestCapabilities(_ref) {
       rangeChunkSize = _ref.rangeChunkSize,
       disableRange = _ref.disableRange;
 
-  (0, _util.assert)(rangeChunkSize > 0);
+  (0, _util.assert)(rangeChunkSize > 0, 'Range chunk size must be larger than zero');
   var returnValues = {
     allowRangeRequests: false,
     suggestedLength: undefined
@@ -11638,7 +11638,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
   if (worker.destroyed) {
     return Promise.reject(new Error('Worker was destroyed'));
   }
-  var apiVersion = '2.0.222';
+  var apiVersion = '2.0.224';
   source.disableRange = (0, _dom_utils.getDefaultSetting)('disableRange');
   source.disableAutoFetch = (0, _dom_utils.getDefaultSetting)('disableAutoFetch');
   source.disableStream = (0, _dom_utils.getDefaultSetting)('disableStream');
@@ -12929,8 +12929,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() {
 }();
 var version, build;
 {
-  exports.version = version = '2.0.222';
-  exports.build = build = '404cba87';
+  exports.version = version = '2.0.224';
+  exports.build = build = '1d4651b2';
 }
 exports.getDocument = getDocument;
 exports.LoopbackPort = LoopbackPort;
@@ -26711,8 +26711,8 @@ exports.SVGGraphics = SVGGraphics;
 "use strict";
 
 
-var pdfjsVersion = '2.0.222';
-var pdfjsBuild = '404cba87';
+var pdfjsVersion = '2.0.224';
+var pdfjsBuild = '1d4651b2';
 var pdfjsSharedUtil = __w_pdfjs_require__(0);
 var pdfjsDisplayGlobal = __w_pdfjs_require__(131);
 var pdfjsDisplayAPI = __w_pdfjs_require__(65);
@@ -31892,8 +31892,8 @@ if (!_global_scope2.default.PDFJS) {
 }
 var PDFJS = _global_scope2.default.PDFJS;
 {
-  PDFJS.version = '2.0.222';
-  PDFJS.build = '404cba87';
+  PDFJS.version = '2.0.224';
+  PDFJS.build = '1d4651b2';
 }
 PDFJS.pdfBug = false;
 if (PDFJS.verbosity !== undefined) {
@@ -35255,7 +35255,7 @@ var WorkerMessageHandler = {
     var cancelXHRs = null;
     var WorkerTasks = [];
     var apiVersion = docParams.apiVersion;
-    var workerVersion = '2.0.222';
+    var workerVersion = '2.0.224';
     if (apiVersion !== null && apiVersion !== workerVersion) {
       throw new Error('The API version "' + apiVersion + '" does not match ' + ('the Worker version "' + workerVersion + '".'));
     }

File diff suppressed because it is too large
+ 0 - 0
build/pdf.combined.js.map


+ 8 - 8
build/pdf.js

@@ -2607,7 +2607,7 @@ function validateRangeRequestCapabilities(_ref) {
       rangeChunkSize = _ref.rangeChunkSize,
       disableRange = _ref.disableRange;
 
-  (0, _util.assert)(rangeChunkSize > 0);
+  (0, _util.assert)(rangeChunkSize > 0, 'Range chunk size must be larger than zero');
   var returnValues = {
     allowRangeRequests: false,
     suggestedLength: undefined
@@ -3325,7 +3325,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
   if (worker.destroyed) {
     return Promise.reject(new Error('Worker was destroyed'));
   }
-  var apiVersion = '2.0.222';
+  var apiVersion = '2.0.224';
   source.disableRange = (0, _dom_utils.getDefaultSetting)('disableRange');
   source.disableAutoFetch = (0, _dom_utils.getDefaultSetting)('disableAutoFetch');
   source.disableStream = (0, _dom_utils.getDefaultSetting)('disableStream');
@@ -4697,8 +4697,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() {
 }();
 var version, build;
 {
-  exports.version = version = '2.0.222';
-  exports.build = build = '404cba87';
+  exports.version = version = '2.0.224';
+  exports.build = build = '1d4651b2';
 }
 exports.getDocument = getDocument;
 exports.LoopbackPort = LoopbackPort;
@@ -7442,8 +7442,8 @@ exports.SVGGraphics = SVGGraphics;
 "use strict";
 
 
-var pdfjsVersion = '2.0.222';
-var pdfjsBuild = '404cba87';
+var pdfjsVersion = '2.0.224';
+var pdfjsBuild = '1d4651b2';
 var pdfjsSharedUtil = __w_pdfjs_require__(0);
 var pdfjsDisplayGlobal = __w_pdfjs_require__(114);
 var pdfjsDisplayAPI = __w_pdfjs_require__(57);
@@ -12623,8 +12623,8 @@ if (!_global_scope2.default.PDFJS) {
 }
 var PDFJS = _global_scope2.default.PDFJS;
 {
-  PDFJS.version = '2.0.222';
-  PDFJS.build = '404cba87';
+  PDFJS.version = '2.0.224';
+  PDFJS.build = '1d4651b2';
 }
 PDFJS.pdfBug = false;
 if (PDFJS.verbosity !== undefined) {

File diff suppressed because it is too large
+ 0 - 0
build/pdf.js.map


File diff suppressed because it is too large
+ 0 - 0
build/pdf.min.js


+ 3 - 3
build/pdf.worker.js

@@ -21930,8 +21930,8 @@ exports.PostScriptCompiler = PostScriptCompiler;
 "use strict";
 
 
-var pdfjsVersion = '2.0.222';
-var pdfjsBuild = '404cba87';
+var pdfjsVersion = '2.0.224';
+var pdfjsBuild = '1d4651b2';
 var pdfjsCoreWorker = __w_pdfjs_require__(72);
 exports.WorkerMessageHandler = pdfjsCoreWorker.WorkerMessageHandler;
 
@@ -22138,7 +22138,7 @@ var WorkerMessageHandler = {
     var cancelXHRs = null;
     var WorkerTasks = [];
     var apiVersion = docParams.apiVersion;
-    var workerVersion = '2.0.222';
+    var workerVersion = '2.0.224';
     if (apiVersion !== null && apiVersion !== workerVersion) {
       throw new Error('The API version "' + apiVersion + '" does not match ' + ('the Worker version "' + workerVersion + '".'));
     }

File diff suppressed because it is too large
+ 0 - 0
build/pdf.worker.js.map


File diff suppressed because it is too large
+ 0 - 0
build/pdf.worker.min.js


+ 1 - 1
lib/core/worker.js

@@ -210,7 +210,7 @@ var WorkerMessageHandler = {
     var cancelXHRs = null;
     var WorkerTasks = [];
     var apiVersion = docParams.apiVersion;
-    var workerVersion = '2.0.222';
+    var workerVersion = '2.0.224';
     if (apiVersion !== null && apiVersion !== workerVersion) {
       throw new Error('The API version "' + apiVersion + '" does not match ' + ('the Worker version "' + workerVersion + '".'));
     }

+ 3 - 3
lib/display/api.js

@@ -171,7 +171,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
   if (worker.destroyed) {
     return Promise.reject(new Error('Worker was destroyed'));
   }
-  var apiVersion = '2.0.222';
+  var apiVersion = '2.0.224';
   source.disableRange = (0, _dom_utils.getDefaultSetting)('disableRange');
   source.disableAutoFetch = (0, _dom_utils.getDefaultSetting)('disableAutoFetch');
   source.disableStream = (0, _dom_utils.getDefaultSetting)('disableStream');
@@ -1543,8 +1543,8 @@ var InternalRenderTask = function InternalRenderTaskClosure() {
 }();
 var version, build;
 {
-  exports.version = version = '2.0.222';
-  exports.build = build = '404cba87';
+  exports.version = version = '2.0.224';
+  exports.build = build = '1d4651b2';
 }
 exports.getDocument = getDocument;
 exports.LoopbackPort = LoopbackPort;

+ 2 - 2
lib/display/global.js

@@ -44,8 +44,8 @@ if (!_global_scope2.default.PDFJS) {
 }
 var PDFJS = _global_scope2.default.PDFJS;
 {
-  PDFJS.version = '2.0.222';
-  PDFJS.build = '404cba87';
+  PDFJS.version = '2.0.224';
+  PDFJS.build = '1d4651b2';
 }
 PDFJS.pdfBug = false;
 if (PDFJS.verbosity !== undefined) {

+ 1 - 1
lib/display/network_utils.js

@@ -27,7 +27,7 @@ function validateRangeRequestCapabilities(_ref) {
       rangeChunkSize = _ref.rangeChunkSize,
       disableRange = _ref.disableRange;
 
-  (0, _util.assert)(rangeChunkSize > 0);
+  (0, _util.assert)(rangeChunkSize > 0, 'Range chunk size must be larger than zero');
   var returnValues = {
     allowRangeRequests: false,
     suggestedLength: undefined

+ 2 - 2
lib/pdf.js

@@ -14,8 +14,8 @@
  */
 'use strict';
 
-var pdfjsVersion = '2.0.222';
-var pdfjsBuild = '404cba87';
+var pdfjsVersion = '2.0.224';
+var pdfjsBuild = '1d4651b2';
 var pdfjsSharedUtil = require('./shared/util.js');
 var pdfjsDisplayGlobal = require('./display/global.js');
 var pdfjsDisplayAPI = require('./display/api.js');

+ 2 - 2
lib/pdf.worker.js

@@ -14,7 +14,7 @@
  */
 'use strict';
 
-var pdfjsVersion = '2.0.222';
-var pdfjsBuild = '404cba87';
+var pdfjsVersion = '2.0.224';
+var pdfjsBuild = '1d4651b2';
 var pdfjsCoreWorker = require('./core/worker.js');
 exports.WorkerMessageHandler = pdfjsCoreWorker.WorkerMessageHandler;

+ 1 - 1
lib/test/unit/jasmine-boot.js

@@ -15,7 +15,7 @@
 'use strict';
 
 function initializePDFJS(callback) {
-  Promise.all(['pdfjs/display/global', 'pdfjs/display/api', 'pdfjs/display/network', 'pdfjs/display/fetch_stream', 'pdfjs-test/unit/annotation_spec', 'pdfjs-test/unit/api_spec', 'pdfjs-test/unit/bidi_spec', 'pdfjs-test/unit/cff_parser_spec', 'pdfjs-test/unit/cmap_spec', 'pdfjs-test/unit/colorspace_spec', 'pdfjs-test/unit/crypto_spec', 'pdfjs-test/unit/custom_spec', 'pdfjs-test/unit/display_svg_spec', 'pdfjs-test/unit/document_spec', 'pdfjs-test/unit/dom_utils_spec', 'pdfjs-test/unit/evaluator_spec', 'pdfjs-test/unit/fonts_spec', 'pdfjs-test/unit/function_spec', 'pdfjs-test/unit/metadata_spec', 'pdfjs-test/unit/murmurhash3_spec', 'pdfjs-test/unit/network_spec', 'pdfjs-test/unit/parser_spec', 'pdfjs-test/unit/pdf_history_spec', 'pdfjs-test/unit/primitives_spec', 'pdfjs-test/unit/stream_spec', 'pdfjs-test/unit/type1_parser_spec', 'pdfjs-test/unit/ui_utils_spec', 'pdfjs-test/unit/unicode_spec', 'pdfjs-test/unit/util_spec', 'pdfjs-test/unit/util_stream_spec'].map(function (moduleName) {
+  Promise.all(['pdfjs/display/global', 'pdfjs/display/api', 'pdfjs/display/network', 'pdfjs/display/fetch_stream', 'pdfjs-test/unit/annotation_spec', 'pdfjs-test/unit/api_spec', 'pdfjs-test/unit/bidi_spec', 'pdfjs-test/unit/cff_parser_spec', 'pdfjs-test/unit/cmap_spec', 'pdfjs-test/unit/colorspace_spec', 'pdfjs-test/unit/crypto_spec', 'pdfjs-test/unit/custom_spec', 'pdfjs-test/unit/display_svg_spec', 'pdfjs-test/unit/document_spec', 'pdfjs-test/unit/dom_utils_spec', 'pdfjs-test/unit/evaluator_spec', 'pdfjs-test/unit/fonts_spec', 'pdfjs-test/unit/function_spec', 'pdfjs-test/unit/metadata_spec', 'pdfjs-test/unit/murmurhash3_spec', 'pdfjs-test/unit/network_spec', 'pdfjs-test/unit/network_utils_spec', 'pdfjs-test/unit/parser_spec', 'pdfjs-test/unit/pdf_history_spec', 'pdfjs-test/unit/primitives_spec', 'pdfjs-test/unit/stream_spec', 'pdfjs-test/unit/type1_parser_spec', 'pdfjs-test/unit/ui_utils_spec', 'pdfjs-test/unit/unicode_spec', 'pdfjs-test/unit/util_spec', 'pdfjs-test/unit/util_stream_spec'].map(function (moduleName) {
     return SystemJS.import(moduleName);
   })).then(function (modules) {
     var displayGlobal = modules[0];

+ 147 - 0
lib/test/unit/network_utils_spec.js

@@ -0,0 +1,147 @@
+/* Copyright 2017 Mozilla Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+'use strict';
+
+var _network_utils = require('../../display/network_utils');
+
+var _util = require('../../shared/util');
+
+describe('network_utils', function () {
+  describe('validateRangeRequestCapabilities', function () {
+    var defaultValues = {
+      allowRangeRequests: false,
+      suggestedLength: undefined
+    };
+    it('rejects range chunk sizes that are not larger than zero', function () {
+      expect(function () {
+        (0, _network_utils.validateRangeRequestCapabilities)({ rangeChunkSize: 0 });
+      }).toThrow(new Error('Range chunk size must be larger than zero'));
+    });
+    it('rejects disabled or non-HTTP range requests', function () {
+      expect((0, _network_utils.validateRangeRequestCapabilities)({
+        disableRange: true,
+        isHttp: true,
+        rangeChunkSize: 64
+      })).toEqual(defaultValues);
+      expect((0, _network_utils.validateRangeRequestCapabilities)({
+        disableRange: false,
+        isHttp: false,
+        rangeChunkSize: 64
+      })).toEqual(defaultValues);
+    });
+    it('rejects invalid Accept-Ranges header values', function () {
+      expect((0, _network_utils.validateRangeRequestCapabilities)({
+        disableRange: false,
+        isHttp: true,
+        getResponseHeader: function getResponseHeader(headerName) {
+          if (headerName === 'Accept-Ranges') {
+            return 'none';
+          }
+        },
+        rangeChunkSize: 64
+      })).toEqual(defaultValues);
+    });
+    it('rejects invalid Content-Encoding header values', function () {
+      expect((0, _network_utils.validateRangeRequestCapabilities)({
+        disableRange: false,
+        isHttp: true,
+        getResponseHeader: function getResponseHeader(headerName) {
+          if (headerName === 'Accept-Ranges') {
+            return 'bytes';
+          } else if (headerName === 'Content-Encoding') {
+            return 'gzip';
+          }
+        },
+        rangeChunkSize: 64
+      })).toEqual(defaultValues);
+    });
+    it('rejects invalid Content-Length header values', function () {
+      expect((0, _network_utils.validateRangeRequestCapabilities)({
+        disableRange: false,
+        isHttp: true,
+        getResponseHeader: function getResponseHeader(headerName) {
+          if (headerName === 'Accept-Ranges') {
+            return 'bytes';
+          } else if (headerName === 'Content-Encoding') {
+            return null;
+          } else if (headerName === 'Content-Length') {
+            return 'eight';
+          }
+        },
+        rangeChunkSize: 64
+      })).toEqual(defaultValues);
+    });
+    it('rejects file sizes that are too small for range requests', function () {
+      expect((0, _network_utils.validateRangeRequestCapabilities)({
+        disableRange: false,
+        isHttp: true,
+        getResponseHeader: function getResponseHeader(headerName) {
+          if (headerName === 'Accept-Ranges') {
+            return 'bytes';
+          } else if (headerName === 'Content-Encoding') {
+            return null;
+          } else if (headerName === 'Content-Length') {
+            return 8;
+          }
+        },
+        rangeChunkSize: 64
+      })).toEqual({
+        allowRangeRequests: false,
+        suggestedLength: 8
+      });
+    });
+    it('accepts file sizes large enough for range requests', function () {
+      expect((0, _network_utils.validateRangeRequestCapabilities)({
+        disableRange: false,
+        isHttp: true,
+        getResponseHeader: function getResponseHeader(headerName) {
+          if (headerName === 'Accept-Ranges') {
+            return 'bytes';
+          } else if (headerName === 'Content-Encoding') {
+            return null;
+          } else if (headerName === 'Content-Length') {
+            return 8192;
+          }
+        },
+        rangeChunkSize: 64
+      })).toEqual({
+        allowRangeRequests: true,
+        suggestedLength: 8192
+      });
+    });
+  });
+  describe('createResponseStatusError', function () {
+    it('handles missing PDF file responses', function () {
+      expect((0, _network_utils.createResponseStatusError)(404, 'https://foo.com/bar.pdf')).toEqual(new _util.MissingPDFException('Missing PDF "https://foo.com/bar.pdf".'));
+      expect((0, _network_utils.createResponseStatusError)(0, 'file://foo.pdf')).toEqual(new _util.MissingPDFException('Missing PDF "file://foo.pdf".'));
+    });
+    it('handles unexpected responses', function () {
+      expect((0, _network_utils.createResponseStatusError)(302, 'https://foo.com/bar.pdf')).toEqual(new _util.UnexpectedResponseException('Unexpected server response (302) while retrieving PDF ' + '"https://foo.com/bar.pdf".'));
+      expect((0, _network_utils.createResponseStatusError)(0, 'https://foo.com/bar.pdf')).toEqual(new _util.UnexpectedResponseException('Unexpected server response (0) while retrieving PDF ' + '"https://foo.com/bar.pdf".'));
+    });
+  });
+  describe('validateResponseStatus', function () {
+    it('accepts valid response statuses', function () {
+      expect((0, _network_utils.validateResponseStatus)(200)).toEqual(true);
+      expect((0, _network_utils.validateResponseStatus)(206)).toEqual(true);
+    });
+    it('rejects invalid response statuses', function () {
+      expect((0, _network_utils.validateResponseStatus)(302)).toEqual(false);
+      expect((0, _network_utils.validateResponseStatus)(404)).toEqual(false);
+      expect((0, _network_utils.validateResponseStatus)(null)).toEqual(false);
+      expect((0, _network_utils.validateResponseStatus)(undefined)).toEqual(false);
+    });
+  });
+});

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "pdfjs-dist",
-  "version": "2.0.222",
+  "version": "2.0.224",
   "main": "build/pdf.js",
   "description": "Generic build of Mozilla's PDF.js library.",
   "keywords": [

Some files were not shown because too many files changed in this diff