PDF.js v1.9.426 Release Notes
Release Date: 2017-08-14 // over 6 years ago-
๐ Changes:
#8281 v1.8.188
๐ #8131 ES6 modules: remove UMD header validation
#8240 [api-minor] Always allow e.g. rendering to continue even if there are errors, and add astopAtErrors
parameter togetDocument
to opt-out of this behaviour (issue 6342, issue 3795, bug 1130815)
๐ #8203 Convert the files in the/web
folder to ES6 modules
๐ฆ #8286 Changing package.json version to 1.0.0
๐ #8283 Moves Uint32ArrayView and hasCanvasTypedArrays into compatibility.js.
#8285 Change amd to cjs path in ES6 modules
#8287 Allow to convert (some of) ES6 code to ES5.
๐ #8289 Firefox extension: remove unused preference cleanup frombootstrap.js
๐ #8288 Moves 'web' target to the gulpfile.
#8291 Ensure thatPDFThumbnailView.draw
is able to handleRenderingCancelledException
correctly (PR 8157 follow-up)
#8293 Convert the password prompt to ES6 syntax
๐ #8295 UsecreatePromiseCapability
in/web
files and avoid unnecessaryPDFPageView.setPdfPage
calls
#8294 Convert the files in the/src/display
folder to ES6 modules
#8296 Convert the document properties to ES6 syntax
#8297 Convert the find bar to ES6 syntax
๐ #8299 ImportgetGlobalEventBus
correctly fromweb/dom_events.js
in various/web
files, to un-break e.g. the viewer components (PR 8203 follow-up)
๐จ #8300 Refactor theDownloadManager
initialization inGENERIC
/CHROME
builds again (PR 8203 follow-up)
๐ #8311 [Firefox addon] Upstream changes from: Bug 1356569 - Remove optional trailing parameters (issue 8310)
๐ #8312 Moves dist and minifiedpost tragets from make.js.
๐ #8315 Remove thesignchromium
target frommake.js
#8313 [Firefox addon] Upstream changes from: Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales
๐ #8321 ChangegetPDFFileNameFromURL
to ignoredata:
URLs for performance reasons (issue 8263)
๐จ #8322 [Firefox addon] Remove thewindow.FirefoxCom
hack fromweb/viewer.js
, since it was made redunant by thesetExternalLocalizerServices
refactoring (PR 7202 follow-up)
๐ #8323 Change theimportl10n
script to use the Beta channel, since Aurora is being removed
#8302 Convert the attachments/outline view to ES6 syntax
#8306 Convert the sidebar to ES6 syntax
#8303 Convert thePreferences
to an ES6 class
๐ #8328 Makefile: remove unusedmozcentralcheck
target
#8339 Convert theViewHistory
to an ES6 class, and re-factor it to make it properly asynchronous
โ #8331 Enable running theui_utils
unit-tests on Travis
๐ #8324 Convert the annotation layer builder, presentation mode and rendering queue to ES6 syntax
๐ #8332 Enable theobject-shorthand
ESLint rule insrc/shared
andsrc/display
โ #8345 Bots: disable the default browser test and enable E10s
โช #8346 Restore theURL.createObjectURL
check to thecreateObjectURL
utility function (issue 8344)
#8348 Add the commit hash to theREADME.mozilla
file (issue 8347)
#8309 Allow use versions for pdf.js script (i.e. - pdf.js?2412313)
๐ #8352 Removes builder.build().
#8335 Subtract the X/Y offsets when decoding refinement regions of JBIG2 images (issue 7145, 7308, 7401, 7850, 8270)
๐ #8351 Enable theobject-shorthand
ESLint rule inweb
๐ #8342 Enable theobject-shorthand
ESLint rule insrc/core
โ #8298 Convert the files in the/test/unit
folder to ES6 modules
#8354 [Firefox addon] Replace abind(this)
statement with an arrow function inPdfStreamConverter.jsm
(issue 8343)
๐ #8353 Enable theobject-shorthand
ESLint rule
#8355 Replace unnecessarybind(this)
andvar self = this
statements with arrow functions insrc/core/evaluator.js
#8349 Migratemake.js
togulpfile.js
#8357 Replace unnecessarybind(this)
andvar self = this
statements with arrow functions in remainingsrc/core/
files
#8361 Export LoopbackPort
๐ท #8363 Adds initializeFromPort to the WorkerMessageHandler.
#8364 Adds babel caching for system.js.
#8359 Ignore line-breaks between operator and digit inLexer.getNumber
0๏ธโฃ #8369 Add no-default-browser-check to chrome runner.
#8370 Replace unnecessarybind(this)
andvar self = this
statements with arrow functions in remainingsrc/
files
#8358 Change the signatures of thePartialEvaluator
"constructor" and itsgetOperatorList
/getTextContent
methods to take parameter objects
๐ #8377 Replace unnecessarybind(this)
statements with arrow functions inweb/
files
#8378 Convert the files in the/src/shared
folder to ES6 modules
#8340 Fix char spacing bug in SVG mode
#8368 Enables source maps for webpack generated files.
#8385 Fix typo in LoopbackPort export
#8381 Re-factorPDFDocumentProperties
such that it's properly reset when a new PDF file is opened (issue 8371)
#8387 amends Babel cache (#8364) implementation to also work on Safari
#8390 Upstream changes from: Bug 1319111 - Expose result principal URL ("final channel URL") on LoadInfo, convert current consumers of LOAD_REPLACE
๐ #8393 Replace unnecessaryvar self = this
statements with arrow functions inweb/app.js
#8391 Convert the hand tool, interfaces and secondary toolbar to ES6 syntax
#8350 [api-minor] Fix svg image render
#8397 SimplifyextractText
, and replace unnecessaryvar self = this
statements with arrow functions, inweb/pdf_find_controller.js
โ #8399 Wait untilPDFDocumentLoadingTask.destroy
is resolved before callingdone
in the API unit-tests
โ #8400 Wait for previous pdfDocument(s) to be destroyed before running the next reference test
#8398 Convert theDOMCMapReaderFactory
andDOMCanvasFactory
to ES6 classes
โ #8258 Enable running a subset of the API unit-tests on Travis
๐ #8406 Gracefully ignore transaction failure in plugin-babel-cached
#8411 Replace unnecessaryvar self = this
statements with arrow functions inweb/pdf_page_view.js
andweb/pdf_thumbnail_view.js
๐ #8417 Use eslint-plugin-mozilla and the webextensions environment to avoid defining globals in each file.
#8413 [api-minor] Adds additional parameter so background color of canvas can be set
#8388 Cache JPEG images, just as we do for other image formats, inevaluator.js
(issue 8380)
โช #8420 Revert "Upstream changes from: Bug 1319111 - Expose result principal URL ("final channel URL") on LoadInfo, convert current consumers of LOAD_REPLACE"
#8421 Change theimportl10n
script to use the Nightly channel
๐ #8366 Removes shelljs
๐ #8431 Replace a couple of leftovermake.js
references withgulpfile.js
in docs/comments
#7635 Unify handling of various cursor tools, e.g. the current Hand Tool and a possible future Zoom Tool, in a newPDFCursorTools
module
๐ #8432 Remove the special handling fornameddest
s that look like standard pageNumbers
๐ #8433 Remove the reference tocompatibility.js
from the README, since it's included by default inGENERIC
builds
#8436 Don't map glyphs to the HANGUL FILLER (0x3164) Unicode location (issue 8424)
0๏ธโฃ #8437 Resets canvas 2d context to the default state.
#8442 Add different code-paths to{CMap, ToUnicodeMap}.charCodeOf
depending on length, sinceArray.prototype.indexOf
can be extremely inefficient for very large arrays (issue 8372)
๐จ #8416 Refactor and ES6-ifyPDFLinkService.navigateTo
โก๏ธ #8452 Update webpack.js to support browsers that do not have the Web Workers API
#8450 Convert the overlay manager to ES6 syntax
#8284 Convert the files in the/src/core
folder to ES6 modules
#8455 Convert the page view to ES6 syntax
#8458 Refactor thegetTempCanvas
function inpdf_thumbnail_view.js
to a factory, in preparation for ES6 conversion of the thumbnail related code
๐ #8462 Removes last UMDs from the modules.
๐ #8463 Allow specifying thePDFJS_NEXT
build flag via an environment variable when running the variousgulp
commands
#8396 Adds streams-lib polyfill and exports ReadableStream from shared/util.
#8394 Wraps mozL10n to async calls; splits firefox and generic l10n libs.
0๏ธโฃ #8466 Add a stubcreateL10n
toDefaultExternalServices
in app.js
๐ #8470 Fix inconsistent spacing and trailing commas in objects inextensions/
files, so we can enable thecomma-dangle
andobject-curly-spacing
ESLint rules later on
๐ #8469 Fix inconsistent spacing and trailing commas in objects inweb/
files, so we can enable thecomma-dangle
andobject-curly-spacing
ESLint rules later on
๐ #8477 Fix inconsistent spacing and trailing commas in objects intest/
files, so we can enable thecomma-dangle
andobject-curly-spacing
ESLint rules later on
๐ #8475 Fix inconsistent spacing and trailing commas in objects in remainingsrc/
files, so we can enable thecomma-dangle
andobject-curly-spacing
ESLint rules later on
๐ #8474 Fix inconsistent spacing and trailing commas in objects insrc/core/
files, so we can enable thecomma-dangle
andobject-curly-spacing
ESLint rules later on
๐ #8478 Fix the remaining cases of inconsistent spacing and trailing commas in objects, and enable thecomma-dangle
andobject-curly-spacing
ESLint rules
#8482 Convert the thumbnail view/viewer to ES6 syntax
#8483 Convert the find controller to ES6 syntax
#8467 Bug 1353029 - Pass PdfJs.enabled into child on change.
#8499 Prevent console errors when clicking to change page while in Presentation Mode (issue 8498)
#8430 Adds sendWithStream method in MessageHandler.
#8441 Ensure thatTilingPattern
s have valid (non-zero) /BBox arrays (issue 8330)
๐ท #8508 Fixes duplicate creation of PDFWorker for the same port.
#8510 Prevent the Zoom dropdown from intermittently displaying an incorrect custom scale in Firefox (PR 8394 follow-up)
#8517 Additional check in globalScope detections
๐ฆ #8401 Adds gulp dist-install command; using pdfjs-dist package in examples.
#8519 Preventing from using the same canvas for multiple render()
๐ท #8522 Fixes WeakMap polyfill (and improves PDFWorker port check).
โก๏ธ #8531 RemovePDFPageView.updatePosition
since it's not actually necessary
#8515 Adds special case for origin of blob to the compatibility URL.
๐ #8525 Allow for unbinding of events in web application
#8535 ResetpageRotation
anddownloadComplete
inPDFViewerApplication.close
๐ #8539 Remove a redundantPDFViewer.currentScale
call fromPDFViewerApplication.load
๐จ #8536 RefactorObjectLoader
to useDict
s correctly, rather than abusing their internal properties
#8543 Add getAttributeNS to domstubs for SVG example
#8544 compatibility.js: Rename parameters in JURL
#8537 Convert the toolbar to ES6 syntax
#8540 Reduce memory requirements of pdf2svg.js example to avoid OOM
#8552 Ensure canvas is really hidden when used with pdfjs-dist.
#8556 Stop tracking the rotation inPDFViewerApplication
and directly usePDFViewer.pagesRotation
instead
๐ #8542 Move svg:clipPath generation from clip to endPath
โก๏ธ #8561 Don't use a hidden canvas when constructing thezoomLayer
inPDFPageView.update
#8567 Fix error when using custom CMapReaderFactory
#8488 Streams get text content
0๏ธโฃ #8507 Only special-case OpenType fonts withCFF
data if it's both a composite (i.e. Type0) font and also has a non-default CID to GID map (issue 8480)
0๏ธโฃ #8571 Mention in the "Getting the Code" section of README.md that an ES6 compatible browser is required when using the default viewer withgulp server
#8564 SVG: implement fill and stroke opacity
โก๏ธ #8576 Remove theselectScaleOption
helper function, inToolbar._updateUIState
, and simply inline its code instead
๐ #8574 SVG: move setting the stroke properties to thestroke
method
๐ #8578 ES6-ify the code inweb/ui_utils.js
#8589 Fix missing notdef in expert encoding.
๐ #8582 Convert the text layer builder to ES6 syntax
๐ #8583 ES6-ify the code inweb/app.js
andweb/viewer.js
๐ท #8585 Check that theMessageHandler
isn't already terminated in theonFailure
handler insrc/core/worker.js
(issue 8584)
#8592 Only mask char codes of (3, 0) cmap tables in the range of 0xF000 to 0โฆ
๐ #8594 Changevar
tolet
, and use object destructuring, in a couple of previously class convertedweb/*.js
files
#8580 Fix how we detect and handle missing glyph data.
๐ #8596 Fixes wrong structure of fullReader.read() result.
๐ #8615 Fix a stupid spelling error in theASCII85Decode
name inParser.makeInlineImage
(issue 8613)
#8555 Don't allow setting various properties, such ascurrentPageNumber
/currentScale
/currentScaleValue
/pagesRotation
, before{PDFViewer, PDFThumbnailViewer}.setDocument
has been called
๐ #8621 Bump minimum eslint version to 3.19.0
๐ #8581 Removes error()
#8630 Remove pdfjsdev_webpack , use webpack options
#8643 AddNumber.isNaN
andNumber.isInteger
polyfills in compatibility.js, since the Streams polyfill relies on them
๐ #8646 Fixes pdf.js library source detection.
#8640 Check for undefined
#8609 Ensure thatPDFFindBar._adjustWidth
is called in all situations where the width of the findbar might have changed
โก๏ธ #8634 Update inconsistent names
๐ #8618 Remove the scale-not-initialized hack fromwebViewerResize
(in app.js)
โก๏ธ #8641 Update ESLint (and eslint-plugin-mozilla) to the latest version
#8620 Improve compression of PNG images embedded in generated SVG files
#8649 ConvertPDFLinkService
to an ES6 class
#8651 Fix display_svg_spec tests.
#8636 ConvertPDFViewer
to an ES6 class
๐ป #8653 Add UI for the cursorToolOnLoad pref in the Chrome extension + migration logic
#8678 Fix a typo, in theCatalog.numPages
getter, than prevents shadowing from working correctly
#8638 Insrc/core/jpg.js
, ensure that the Adobe JPEG marker always takes precedence, even when the color transform code is zero
๐ #8684 Remove mostassert()
calls (issue 8506)
๐ #8673 [api-minor] Add support for PageMode in the API and viewer (issue 8657)
โก๏ธ #8689 Update README.md
โ #8692 Add a reduced test-case for issue 7696
#8696 Adds ready capability rejection logic for stream sink.
#8666 Fix TypeError that occurs in colorspace.js on accidentally passing an 'Array' instead of 'TypedArray'
#8698 Add a fallback for non-embedded SegoeUISymbol font (issue 8697)
๐ #8617 Adds Streams API support for networking task of PDF.js project.
#8715 Use streams-lib as polyfill
โ #8611 Add unit-tests for colorspace.js
๐ #8717 Move theXRefMock
in the unit tests to a central location
#8718 Ensure that the loadingBar isn't displayed again when the entire file has already been fetched
#8722 Fix the helloworld example by importing thenetwork.js
file (PR 8617 follow-up)
#8721 Reduces the amount of data send via GetDocRequest.
#8627 Fallback on font widths if CFF data is broken
#8681 Fix several issues with glyph id mappings (issue 8668, bug 1383504)
๐ #8744 Checks Edge support for streams.
๐ท #8738 Delete workerPort to PDFWorker cache after PDFWorker destroy
#8745 Properly cancel streams and guard at getTextContent.
#8747 Fix two cmap related issues.
#8746 More robust getPage() error handling.
๐ #8752 ES6-ify the code inweb/dom_events.js
๐ #8756 Remove leftoverargs[0].code
checks from theOPS.paintXObject
cases in evaluator.js
#8761 Fallback to plain object for globalScope.
๐ #8762 Replace thecoded
property withisType3Font
when building the fontproperties
object inPartialEvaluator.translateFont
#8764 ConvertDownloadManager
to an ES6 class
#8749 Version 1.9