PDF.js v1.8.170 Release Notes

Release Date: 2017-04-06 // almost 3 years ago
  • πŸ”„ Changes:

    πŸš€ #8001 Release of 1.7.225
    πŸ‘• #7991 [Firefox addon] Enforce double quotes, using ESLint, to avoid linting errors in mozilla-central (issue 7957)
    πŸ‘• #7995 [Firefox addon] Enable the consistent-return ESLint rule (issue 7957)
    🚚 #8003 Move EOF/isEOF from core/parser.js to core/primitives.js
    🚚 #8006 Remove usage of mozFillRule
    #7959 Display a notification on the sidebarToggle button for PDF documents with outline/attachments
    🚚 #8016 Remove the unused isStream property on various Streams
    πŸ‘• #7972 Enable the no-unused-vars ESLint rule
    🚚 #8023 Moves preprocessor stuff to the gulpfile.
    πŸ’… #8025 Adjust the brace-style ESLint rule to disallow single lines (and also enable no-iterator)
    🚚 #8027 [Firefox addon] Remove the unused MOZ_CENTRAL constant
    ♻️ #8002 [api-minor] Fix #7798: Refactor scratch canvas usage.
    #8030 Interactive forms: rewrite AcroForms example
    βœ… #8028 Prevent browser console errors during testing
    #8035 [api-minor] Add a getDocument parameter that allows disabling of the NativeImageDecoder (e.g. for use with Node.js)
    πŸ›  #8036 [api-minor] Fixes behaviour of DOMCanvasFactory to return {canvas, context}.
    πŸ”€ #8038 Moves sed processing into the preprocessing tasks and merging tasks.
    #8039 Moving interactive examples to jsfiddle.net
    ⚑️ #8040 Update localization files
    #8041 Interactive forms: set the buttonValue for radio buttons that do not have a fieldValue
    πŸ–¨ #8043 Allow automatic print rotation via the enablePrintAutoRotate preference
    #8046 Replacing custom bundling with webpack 2
    πŸ”§ #8053 [Chromium addon] Prevent errors that break the addon, caused by the DEFAULT_URL constant being replaced by a defaultUrl viewer configuration parameter (PR 8046 follow-up)
    πŸ— #8054 Write the l10n files to the correct destination for gulp mozcentral builds (PR 8023 follow-up)
    πŸ›  #8058 Fixes pdf.combined.js for webpack
    🚚 #8056 Use ChildNode.remove instead of ChildNode.ParentNode.removeChild in a couple of places (bug 1334831, issue 8008)
    #8060 Font ascent descent calculation fix
    #8062 Improve the README by removing outdated information
    #8063 Consume the current character when encountering illegal characters in Lexer.getObject, in order to prevent infinite loops during reading of streams (issue 8061)
    πŸ— #8067 Include the pdfjschildbootstrap.js file in the output for gulp mozcentral builds (PR 8023 follow-up)
    #8070 New node.js check to protect from webpack.
    ♻️ #8065 Annotations: refactor setting the normal appearance stream
    #8071 Always choose a (3, 1) cmap table for TrueType fonts that have an encoding specified, regardless of the Symbolic font flag (bug 1337429)
    ♻️ #8064 [api-minor] Refactor fetching of built-in CMaps to utilize a factory on the display side instead, to allow users of the API to provide a custom CMap loading factory (e.g. for use with Node.js)
    βœ… #8080 Enable running the cmap unit-tests on Travis by utilizing a NodeCMapReaderFactory
    #8024 Open PDF attachments in the viewer instead of an unconditional download
    #8081 iOS Chrome: Fix broken download button
    #8091 Gulp: migrate baseline target from make.js
    #8105 Always check all Kids nodes, in Catalog.getPageDict, to avoid getting stuck in an empty node further down in the Pages tree (issue 8088)
    🚚 #8102 Move compatibility code to the shared/compatibility.js.
    πŸ‘· #8107 Init PDFWorker via MesssagePort.
    #8109 Add gulp task to generate refs.
    #8106 Ensure that Dicts found in Object Streams are assigned an objId in XRef.fetch
    #8110 Interactive forms: make choice widget options inheritable (issue 8094)
    🚚 #8072 Annotations: move operator list addition logic to src/core/document.js
    #8050 Replaces RequireJS to SystemJS.
    🚚 #8115 [CONTRIBUTING.md] Remove any mention of the mailing list, and the weekly meetings
    πŸ‘• #8116 Get rid of a couple eslint-disable statements in web/download_manager.js by instead relying on the preprocessor dead-code removal added in PR 7942
    #8087 Allows to pull pdf.js from pdf_viewer using require().
    πŸ‘ #8112 Support the newWindow flag in white-listed app.launchURL JavaScript actions (PR 7794 follow-up)
    #8126 Ensure that we don't ignore 0 values in Page.getInheritedPageProp (issue 8125)
    #8128 Network: use the current location to prevent errors when using CSP headers
    #8120 Publishes processed sources into pdfjs-dist/lib
    #8129 Return undefined instead of Dict.empty from Page.getInheritedPageProp for non-existent properties to prevent possible future bugs
    🌐 #8130 Don't include web/compatibility.js in the output for gulp lib (PR 8120 follow-up)
    🚚 #8138 Get rid of element.removeChild(element.firstChild) usage (bug 1345253)
    #8132 Viewer: enable find functionality for small devices
    #8144 Widget annotations: do not crash if Parent is not a dictionary during field name construction (issue 8143)
    🚚 #8151 Remove unnecessary .toolbarButton.group CSS class
    #8135 Handle cff fonts with erroneous stackSize (issue 8097)
    #8156 Add (and adjust) a couple of findbar title attributes, in viewer.html, that doesn't agree with the l10n/en-US/viewer.properties file
    #8154 Change to conditions that pdfjsLib
    #8168 Normalize the BBox entry in Tiling Pattern dictionaries (issue 8117)
    πŸ‘• #8174 Adjust the yoda ESLint rule to apply to inequalities as well
    #8172 Upstream the changes from bug 1345294 - nsIPrefBranch should have methods to get/set unicode strings
    #8170 Try to recover when encountering JPEG markers with too short marker lengths (issue 8169)
    0️⃣ #8164 Don't read past the EOI marker for JPEG images with non-default restart interval (issue 7828)
    #8183 Ensure that PDFDocument.documentInfo doesn't fail during document load, when the entire XRef table hasn't been fetched yet (issue 8180)
    #8184 Rethrow MissingDataException when needed
    #8194 Use a proper MessageHandler for PartialEvaluator.getTextContent to avoid errors for fonts relying on built-in CMap files (PR 8064 follow-up)
    🚚 #8196 Remove unnecessary xref parameters from various method signatures in PartialEvaluator, since this.xref is already available in the relevant scope
    #8198 Example for converting PDF to PNG using the Node canvas library
    #8195 Enable babel on sources
    #8190 Try harder to find the next valid JPEG marker when decoding Scan data (issue 8182, issue 8189)
    πŸ‘• #8202 Add a couple of basic ES6 rules to the ESLint config
    🐎 #8207 Use a simple RefSetCache to significantly improve the performance of Catalog.getPageDict for certain long documents (PR 8105 follow-up)
    #8205 Improve the error handling when loading of built-in CMap files fail (PR 8064 follow-up)
    ♻️ #8210 Refactor removing of the zoomLayer into a helper method, and use that in PDFPageView.reset to ensure that the entire zoomLayer is actually removed (issue 8209)
    #8232 Lazily load NetUtil.jsm in PdfStreamConverter.jsm.
    πŸ”€ #8218 Split pdfjschildbootstrap.js to avoid sync IPC
    #8157 [api-minor] Reject the RenderTask with an actual Error, instead of just a string, when rendering is cancelled
    #8222 ios: Patch cancelAnimationFrame whenever fakeRequestAnimationFrame is used
    #8235 Disable the NativeImageDecoder in the node/pdf2svg.js example (issue 7901)
    #8239 Stub out Firefox addon Telemetry wrapper
    #8243 Don’t skip glyph 0 in cmap.
    #8248 Version 1.8