Skip to content

Releases: mozilla/pdf.js

v2.8.335

05 Apr 13:51
228adbf
Compare
Choose a tag to compare

This release features initial support for XFA (in addition to the support for AcroForms). Moreover, it contains lots of improvements related to scripting, text layer positioning, annotations, printing, accessibility and performance.

Changes since v2.7.570:

#12901 Bump versions in pdfjs.config
#12826 JS -- add support for choice widget
#12914 JS - QuickJS sandbox initialization must be the last evaluated string
#12916 Include pdf.sandbox.js when building the pdfjs-dist files
#12911 Fix text layer regression tests in using the correct line-height property
#12910 Add back dir property in spans in text layer
#12903 Improve global image caching for small images (PR 11912 follow-up, issue 12098)
#12924 Fix font data clone error when pdfBug is enabled.
#12922 Ignore globally cached images in PartialEvaluator.getTextContent (PR 11930 follow-up)
#12920 fix(acroforms): pdf path in acroforms example
#12931 Stop showing the fallback bar for "errorFontLoadNative" errors (PR 10539 follow-up)
#12932 Stop including -ms prefixed CSS rules in GENERIC builds
#12933 Stop polyfilling CSS variables in GENERIC builds
#12935 Remove prefixed fullscreen properties/methods from the MOZCENTRAL builds
#12879 XFA - Add a parser for XFA files
#12943 Re-enable the issue6961 test-case (issue 7112)
#12947 Update Puppeteer to version 6 (issue 12945)
#12954 XFA -- Add attributes and children in XFAObject
#12952 Don't focus the PasswordPrompt input-field on load, when the viewer is embedded in e.g. an iframe (issue 12951)
#12956 Update Puppeteer to version 7
#12946 XFA -- Add template object
#12944 XFA -- Update config object
#12941 fix(a11y): resolve sidebar, find, toolbar missing aria-expanded and aria-controls state
#12961 Use optional chaining, where possible, in the web/-folder
#12965 Request all data, rather than throwing, when encountering general errors in ObjectLoader._walk (issue 9462, PR 3289 follow-up)
#12966 Update packages and translations
#12962 Handle errors gracefully, in PartialEvaluator.translateFont, when fetching the font file (issue 9462)
#12970 Split PDFViewerApplication.error into two methods, for PDF document loading/parsing errors vs other errors (PR 11647 follow-up)
#12971 Use DOM hidden property instead of attribute methods
#12975 Remove the contentmenu usage, from PresentationMode, since it's no longer working
#12972 [GENERIC viewer] Skip the iframe-case when checking if the container div, on BaseViewer-instances, is absolutely positioned (PR 12354 follow-up)
#12973 Use Math.hypot, instead of Math.sqrt with manual squaring
#12978 [api-minor] Rename -es5 to -legacy, to reduce confusion over what's actually supported (issue 12976)
#12948 XFA -- Add localset object
#12949 XFA -- Add other objects
#12982 Update the year in the license_header files
#12984 Replace a few new Date().getTime() instances with Date.now()
#12981 Collect the l10n error/warning message lookup, in web/app.js, in a new helper method
#12904 fix initial state of checkboxes in display layer
#12987 Restore window.alert after use in scripting test
#12986 Remove the unused "loading_error_indicator" l10n string (PR 2719 follow-up)
#12988 Remove unneeded instanceof MissingDataException checks
#12896 Modifiy the way to compute baseline to have a better match between canvas and text layer
#12992 Use a more compact format for the fallback EventBus-listeners in PDFViewerApplication_initializeJavaScript
#12991 Stop including unused/unnecessary code in the viewer, for MOZCENTRAL-builds
#12993 [api-minor] Change the dc:subject Metadata field to an Array
#12964 Avoid infinite loop when getting annotation field name
#12995 Stop showing the fallback bar for "errorFontMissing" errors (PR 11218 follow-up)
#12830 JS -- Fix doc.getField and add missing field methods
#12936 XFA - Add a lexer/parser for FormCalc language
#12998 Simplify the default value handling of renderInteractiveForms in the viewer components
#12999 [api-minor] Remove support for synchronous event dispatching in LoopbackPort
#12997 Move the Metadata parsing to the worker-thread
#12979 XFA - Add support for prototypes
#13001 Send the AnnotationStorage-data to the worker-thread as a Map
#13004 Add a this-bound method for InternalRenderTask.cancel
#13007 Update packages and translations
#13005 JS - Fix setting a color on an annotation
#13008 Allow minor and patch versions for the webpack-stream dependency again
#12983 XFA -- Add support for SOM expressions
#13011 Remove extra new line from HTML source.
#13009 Move the opening of PDF file attachments into the DownloadManager-implementations
#13019 Remove the findResultsCount-check from PDFFindBar.updateResultsCount, and unnecessary defaults from the constructor
#13020 Remove the NullL10n default value from viewer components not included in the COMPONENTS-bundle
#13021 Remove the, strictly unnecessary, closure and variable shadowing from createObjectURL
#13014 [api-minor] Support the Content-Disposition filename in the Firefox PDF Viewer (bug 1694556, PR 9379 follow-up)
#13025 Convert code in src/core/function.js to use "normal" classes
#13026 Convert code in src/core/crypto.js to use "normal" classes
#13024 Update Puppeteer to version 8
#13023 Fix integration test with js-colors
#13029 Enable the no-var linting rule in more core files
#13030 Modernize some of the code in src/core/cmap.js by using classes and async/await
#13031 Implement rendering square/circle annotations without appearance stream
#13032 Don't warn about actions that require scripting support in Catalog.parseDestDictionary
#13033 Implement rendering line annotations without appearance stream
#13039 Change the background to ensure that the sidebar is visible/readable when the viewer is narrow (issue 13036)
#13045 Bump pug-code-gen from 2.0.1 to 2.0.3
#13050 Collect all l10n fallback strings, used in the viewer, in one helper function (PR 12981 follow-up)
#13053 Enable scripting by default in the development viewer; remove the standalone acroforms example
#13042 [api-minor] Move the viewer scripting initialization/handling into a new PDFScriptingManager class
#13054 Move handling of the PageOpen/PageClose events into the PDFScriptingManager (PR 13042 follow-up)
#13060 Update packages and translations
#13055 JS - reset correctly radio buttons
#13062 Remove the test/features folder, since it's very out of date (issue 11954)
#13063 Use more optional chaining in the web/-folder (PR 12961 follow-up)
#13018 XFA - Create Form DOM in merging template and data trees
#13015 JS - Avoid a popup to ask for updating Acrobat.
#13078 Disable intermittent unit test "creates pdf doc from non-existent URL"
#13074 Re-factor the PDFScriptingManager._destroyScripting method (PR 13042 follow-up)
#13081 Replace the objectFromEntries helper function with an objectFromMap one instead, and simplify the data lookup in the AnnotationStorage.getValue method
#13085 Ensure that all errors are handled in rasterizeTextLayer/rasterizeAnnotationLayer
#13090 Enable the ESLint no-var rule in gulpfile.js
#13079 Ensure that getDocument handles Node.js Buffers more gracefully (issue 13075)
#13087 Enable the ESLint no-var rule in the examples/ folder
#13084 Enable the ESLint no-var rule in a few font-parsing files, and convert src/core/type1_parser.js to use "standard" classes
#13092 Enable the ESLint no-var rule in the importL10n/ folder
#13091 Enable the ESLint no-var rule globally
#13093 Enable the ESLint no-var rule in the external/builder/ folder
#13097 Enable the ESLint no-var rule in test/add_test.js
#13096 Enable the ESLint no-var rule in the test/stats/ folder
#13095 Enable linting of the external/cmapscompress/ folder
#13098 Enable the ESLint no-var rule in the external/ folder
#13094 Enable the no-var linting rule for src/core/{operator_list, pattern}.js
#13101 print: Remove invalid @supports condition.
#13100 print: Ensure print containers have the right size and don't create overflow.
#13102 print: RFC: Center when printing a PDF with smaller size than the output page.
#13104 Ensure that printing, triggered from scripting, won't accidentally throw in PDFScriptingManager._updateFromSandbox
#13106 Support LineAnnotations with empty /Rect-entries (issue 6564)
#13069 [api-minor]XFA - Add a layer to display XFA forms
#13119 Actually reset the PDFPageProxy._xfaPromise property as intended (PR 13069 follow-up)
#13120 Rotate landscape pages, during printing, by default in the viewer (enablePrintAutoRotate = true)
#13116 Enable scripting by default in the viewer (PR 13053 follow-up)
#13113 Ignore some scripting events which don't make sense in PresentationMode
#13105 Improve memory usage around the BasePdfManager.docBaseUrl parameter (PR 7689 follow-up)
#13118 Add landmark region and aria-label for each page.
#13124 Tweak the pre-processor condition, for Node.js environments, in the animationStarted helper (issue 13057)
#13117 Re-factor the default preferences generation to support build targets (PR 10548)
#13126 Update packages and translations
#13125 Don't provide the enableXfa parameter to the BaseViewer constructor, and avoid the fallback bar with enableXfa = true set (PR 13069 follow-up)
#13135 Fix typo in pdf_history.js
#13128 Re-factor how the BasePreferences.prefs-property is initialized; remove some indirect loops
#13082 XFA - Convert some template properties into CSS ones
#13149 Set CFF header to 4 when writing it because it contains 4 elements
#13140 [GrabToPan] Remove more IE-specific code, and remove unconditional browser sniffing
#13145 print: Improve rendering of oversized pages.
#13144 [GrabToPan] Use Element.matches() rather than prefixed ...matchesSelector versions
#13138 [PDFHistory] Correctly ...

Read more

v2.7.570

24 Jan 17:43
f2c7338
Compare
Choose a tag to compare

This release features improved performance, font rendering, annotation rendering and form rendering/saving/printing (AcroForm). Moreover, it includes initial support for scripting in a sandbox (disabled by default). Finally, support for IE 11 and non-Chromium-based Edge is dropped.

Changes since v2.6.347:

#12323 Bump versions in pdfjs.config
#12326 Revert "Download, rather than opening, PDF attachments in Firefox (bug 1661259, PR 12286 follow-up)"
#12330 Update packages and translations
#12329 Rename the --outline-... CSS variables to --treeitem-... instead (PR 11077 follow-up)
#12328 Remove code-paths only relevant for IE 11/Edge (non-Chromium based) from the web/ folder
#12331 [api-minor] Only support browsers/environments that have basic support for Promise natively
#12336 Remove, manually implemented, DOM polyfills only necessary for IE 11 support
#12269 Add support for missing appearances for hightlights, strikeout, squiggly and underline annotations.
#12339 Support broken /FitH destinations that are missing the "top" value (bug 1663390)
#12343 Remove some code/comments relevant for old (pre-Chromium) versions of Opera
#12344 Save form data in XFA datasets when pdf is a mix of acroforms and xfa
#12345 Don't try to save something for a button which is neither a checkbox nor a radio
#12354 Ensure that the container div, on BaseViewer-instances, is absolutely positioned
#12352 Remove CSS variables feature-testing from PDFSidebarResizer
#12356 Set the modification date to the current day when saving
#12349 Follow-up comments on PR #12344
#12357 PDF names need to be escaped when saving
#12360 Reset cursor position when focus is out of text field
#12362 Let the loadingBar have the same width as the viewerContainer
#12364 Dict keys need to be escaped too when saving
#12365 Ensure that the length property won't be accidentally accessed on a DecodeStream-instance
#12363 canvas: Properly restore all the remaining items in stateStack in endDrawing
#12368 Revert "canvas: Properly restore all the remaining items in stateStack in endDrawing"
#12372 Skip failing FBF tests, when running makeref, in Firefox as well
#12374 Replace \n and \r by \n and \r when saving a string
#12370 Implement resetting of created streams for annotations
#12361 Ensure that all necessary /Font resources are included when saving a WidgetAnnotation-instance (issue 12294)
#12377 Set parent of radio annotation even if there is no 'V' field
#12375 Ensure that the empty dictionary won't be accidentally modified, and slightly improve the "SaveDocument" handler in src/core/worker.js
#12369 canvas: fix restore() with existing SMask groups and re-land #12363.
#12388 Refactor the container/viewer checks in the BaseViewer constructor
#12387 Use the same kind of strings for radio values
#12393 Prevent errors if the InkList property, in InkAnnotations, is missing and/or not an Array (issue 12392)
#12396 Update packages and translations
#12397 Update the webpack-stream dependency (issue 11996)
#12414 Need to reset the streams when printing
#12409 Compute the transformOrigin correctly, for negative values, when rendering AnnotationElements (bug 1627030)
#12417 Remove the PDFPageView.{error, stats} properties, and some related viewer clean-up
#12405 Fixed keydown event handling problem with shadow DOM.
#12423 Update escodegen to version 2.0
#12422 Don't trigger searching, in the GENERIC viewer, when Shift is used together with the regular keyboard shortcut (issue 12421)
#12419 Use the cidToGidMap, if it exists, when building the glyph mapping for non-embedded composite fonts (issue 12418)
#12426 Re-factor how printing is triggered in the default viewer
#12439 Add version/build info at the top of the built web/viewer.js file
#12436 Enable the ESLint no-var rule in the src/shared/ folder
#12333 Add tooltip if any in annotations layer
#12437 Enable the ESLint no-var rule in the src/display/ folder
#12441 Re-factor how the ESLint no-var rule is enabled in the src/ folder
#12442 Upgrade Puppeteer to version 5.3.1
#12444 Update packages and translations
#12445 Upgrade minor/major versions of dependencies that don't require code changes
#12446 [Firefox] Stop logging RenderingCancelledExceptions as errors when printing
#12448 Enable the ESLint no-debugger and no-alert rules
#12450 Fix invalid XUID entries in CFF fonts
#12451 Upgrade acorn to version 8
#12454 Upgrade terser to version 5
#12458 Add local caching of TilingPatterns in PartialEvaluator.getOperatorList (issue 2765 and 8473)
#12470 Upgrade webpack to version 5
#12476 Remove the scope parameter from the "GetOperatorList" handler in src/core/worker.js (PR 11110 follow-up)
#12477 Handle WorkerTasks, and various PDF document properties, correctly in the "SaveDocument" handler in src/core/worker.js
#12429 [api-minor] Add the possibility to collect Javascript actions
#12479 Fix the "should get form info when AcroForm is present" unit-test
#12478 Convert PartialEvaluator.translateFont to an async method
#12486 Stop caching the parsed Font data on its Dict object (PR 7347 follow-up)
#12483 Don't store complex data in PDFDocument.formInfo, and replace the fields object with a hasFields boolean instead
#12481 Get urls if any in AA::D dictionary for pushbuttons
#12485 [api-minor] JS - Add a function in api to get the fields ids in AcroForm::CO
#12489 Add a test for pdfDocument::fieldObjects
#12491 Update packages and translations
#12493 Support adding pages, in addition to regular destinations, to the browser history and use it with thumbnails (issue 12440)
#12515 Enable the unicorn/no-abusive-eslint-disable ESLint plugin rule
#12503 [api-minor] Invalidate an annotation with no quadPoints (when it's required)
#12432 JS - Add the basic architecture to be able to execute embedded js
#12516 Prevent issues, in PDFDocument.fieldObjects, for invalid Annotations
#12526 Improve argument/name handling when parsing TilingPatterns (PR 12458 follow-up)
#12524 A couple of small (viewer) tweaks of tooltip-only Annotations (PR 12333 follow-up)
#12522 Fix a couple of edge-cases in PDFViewerApplication._initializeJavaScript (PR 12432 follow-up)
#12464 Fix getVisibleElements helper in RTL-locales
#12508 Fallback font for buttons must be ZapfDingbats.
#12528 Convert var to const/let in the test/unit folder
#12529 Tweak the pdf.scripting.js bundling, to improve overall consistency
#12527 Remove SystemJS usage from the development viewer and the unit-tests
#12534 Ensure that MurmurHash3_64.update handles ArrayBuffer input correctly, to avoid hash-collisions (issue 12533)
#12532 Modernize, and remove SystemJS usage from, the font-tests
#12540 Ensure that the same version of PDF.js is used in both the API and the Viewer (PR 8959 follow-up)
#12539 Use standard import statements more when running the unit-tests
#12395 Render not displayed annotations in using normal appearance when printing
#12542 Add a MurmurHash3_64.update unit-test for TypedArrays which share the same underlying ArrayBuffer (PR 12534 follow-up)
#12543 Use a Map, rather than an Object, internally in the Catalog.openAction getter (PR 11644 follow-up)
#12551 Fix some errors reported by the ESLint no-useless-escape rule
#12525 [api-minor] Implement API to get MarkInfo from the catalog.
#12552 Miscellaneous (small) improvements in src/core/annotation.js
#12560 Update npm packages
#12561 Fix some static analyzer warnings (issue 11965)
#12562 Try adding a very basic lgtm.yml file, to prevent LGTM complaining about unused variables (issue 11965)
#12555 Replace css color rgb(...) by #...
#12559 Also update the browser history when the user manually change pages using the pageNumber-input (PR 12493 follow-up)
#12505 [api-minor] Split highlight annotation div into multiple divs
#12572 Change the getVisibleElements helper function to take a parameter object
#12568 [api-minor] JS -- Add default value in annotation data
#12583 Add global caching, for /Resources without blend modes, and use it to reduce repeated fetching/parsing in PartialEvaluator.hasBlendModes
#12564 Make sure that Popup is rendered next to trigger for textAnnotation
#12530 JS -- Add 'util' object
#12591 Improve the Pattern-detection in CanvasGraphics.stroke
#12594 Enable the ESLint no-useless-escape rule (PR 12551 follow-up)
#12595 Convert files in the src/display/-folder to use optional chaining where possible
#12598 Fail early, in modern GENERIC builds, if globalThis isn't available (PR 11799 follow-up, issue 12596)
#12546 [api-minor] JS -- Add listener for sandbox events only if there are some actions
#12582 JS -- Implement doc object
#12585 Fix popup for highlights without popup (follow-up of #12505)
#12613 Trigger cleanup, once rendering has finished, in PDFThumbnailView.draw
#12616 Improve the cleanup functionality for thumbnails
#12618 Ensure that rendering of thumbnails work correctly on HiDPI displays (issue 9820)
#12621 Follow-up for #12585: set elements class in render instead of in _createQuadrilaterals
#12622 Some hasJSActions, and general annotation-code, related cleanup in the viewer and API
#12624 Update packages and translations
#12569 JS -- Fix events dispatchment and add tests
#12625 Add a new preference, viewerCssTheme, to allow forcing the use of the light/dark viewer CSS themes (issue 12290)
#12630 Reduce, now unnecessary, asynchronicity in the BasePreferences constructor
#12636 Add an AppOptions.setAll method, and use it in PDFViewerApplication._readPreferences
#12567 [api-minor] JS -- hidden annotations must be built in case a script show them
#12604 JS -- Add a sandbox based on quickjs
#12642 [api-minor] Add "contentLength" to the information returned by the getMetadata method
#...

Read more

v2.6.347

03 Sep 21:34
3be9c65
Compare
Choose a tag to compare

This release features support for form filling (AcroForm) and layers (optional content). Moreover, the default viewer is redesigned to match Firefox's Photon design, TypeScript definitions are shipped and various performance improvements and bugfixes are included.

Changes since v2.5.207:

#11948 Bump versions in pdfjs.config and update the getting started page of the website for the new release
#11958 [api-minor] Remove the deprecated PDFDocumentProxy.getOpenActionDestination method (PR 11644 follow-up)
#11967 Do not transform jpeg RGB components
#11964 Fix pdfjs-dist/webpack causing errors with certain configs
#11953 For #11838: trigger fallback bar after user clicks in pdf
#11972 Change the loadedChunks property, on ChunkedStream instances, from an Array to a Set
#11963 Avoid calling Math.pow if possible.
#11974 A couple of small image caching/sending improvements
#11976 Remove unused methods from NetworkManager, in src/display/network.js
#11978 Improve unit test coverage for primitives
#11977 Convert the RefSet primitive to a proper class and use a Set internally
#11985 Convert some Objects to Maps in ChunkedStreamManager, and move the isEmptyObj helper function to the test utils
#11987 Update SVGGraphics to account for globally cached images (PR 11912 follow-up)
#11992 Prevent the (old) preprocessor from appending trailing whitespace when removing closing HTML comments
#11993 Change the dependencies property, on OperatorList instances, from an Object to a Set
#11969 For #11961: collect telemetry on all unique unsupported features that…
#11997 Add basic support for the nullish coalescing operator ??
#11999 Update packages and translations
#12000 Ensure that PDFImage.buildImage won't accidentally swallow errors, e.g. from ColorSpace parsing (issue 6707, PR 11601 follow-up)
#12001 Add local caching of ColorSpaces, by name, in PartialEvaluator.getOperatorList (issue 2504)
#12002 Small improvements in CFFCompiler.encodeNumber and CFFCompiler.encodeFloat
#12004 Convert the code in src/core/worker.js to use ES6 classes
#12005 Convert the code in src/core/cff_parser.js to use ES6 classes
#12017 Convert the PDFPageProxy.intentStates property from an Object to a Map
#12016 Tweak the QueueOptimizer to recognize OPS.paintImageMaskXObject operators as repeated when the "skew" transformation matrix elements are non-zero (issue 8078)
#12021 Move the fetchBuiltInCMap method to the PartialEvaluator.prototype
#12012 Improve (local) caching of parsed ColorSpaces (PR 12001 follow-up)
#12024 Update Needle to 2.5.0 or greater.
#12028 Attempt to detect inline images which contain "EI" sequence in the actual image data (issue 11124)
#12032 Update packages and translations
#12041 Replace Mozilla Labs by just Mozilla
#12049 Enable the no-promise-executor-return ESLint rule
#12036 Add at least some test-coverage for the RenderTask.onContinue functionality
#12043 Add a reduced test-case for issue 4260 (PR 4521 follow-up)
#12044 Adjust the heuristics used when dealing with rectangles, i.e. re operators, with zero width/height (issue 12010)
#12040 Replace non-inclusive "whitelist" term with "allowlist"
#12039 [api-minor] Use the NodeCanvasFactory/NodeCMapReaderFactory classes as defaults in Node.js environments (issue 11900)
#12034 Add local caching of Functions, by reference, in the PDFFunctionFactory (issue 2541)
#12057 Allow BaseLocalCache to, optionally, only allocate storage for caching of references (PR 12034 follow-up)
#12059 Convert the code in src/core/image.js to use ES6 classes
#12060 Convert the code in src/core/evaluator.js to use standard classes
#12072 Bump npm from 6.14.5 to 6.14.6
#12056 Refactor/simplify the "delayedFallback" handling in the default viewer
#12070 Re-factor the idFactory functionality, used in the core/-code, and move the fontID generation into it
#12083 Remove the IR (internal representation) part of the ColorSpace parsing
#12063 Tweak the heuristic, in src/core/jpg.js, that handles JPEG images with a wildly incorrect SOF (Start of Frame) scanLines parameter (issue 10989)
#12092 Update packages and translations
#12090 Stop special-casing the (very unlikely) "no /XObject found"-scenario, when parsing OPS.paintXObject operators, in PartialEvaluator.{getOperatorList, getTextContent}
#12099 Use a RefSet, rather than a plain Object, for tracking already processed nodes in PartialEvaluator.hasBlendModes
#12085 Make the detection of Node.js environments on Electron strict.
#12089 Convert RefSetCache to a proper class and to use a Map internally
#12087 Add local caching of "simple" Graphics State (ExtGState) data in PartialEvaluator.{getOperatorList, getTextContent} (issue 2813)
#12101 Add a new size getter and getRawValues method, to Dict instances, to simplify some code
#12023 Fix auto-rotate for printing landscape PDFs where the first page is also landscape
#12114 Remove a couple of unnecessary PDFJSDev checks from the viewer
#12106 [api-minor] Add an annotation storage in order to save annotation data in acroforms
#12122 Update packages and translations
#12124 Include the browser name when printing unit-test results
#12126 Attempt to reduce intermittent failures in the "cleans up document resources during rendering of page" unit-test
#12125 Improve test bot stability
#12127 Improve how Type3-fonts with dependencies are handled
#12135 [src/core/worker.js] Remove a useless Promise handler from the pdfManagerReady function
#12136 Ignore fetch() errors, in PDFFetchStreamRangeReader, once the request has been aborted
#12107 Add support for checkboxes printing
#12143 Fix hanging reference test (PR 12107 follow-up)
#12141 Populate the find field with the search query when URL has #search hash
#12147 [api-minor] Fix the AnnotationStorage usage properly in the viewer/tests (PR 12107 and 12143 follow-up)
#12144 Prevent Uncaught (in promise) AbortException when running the unit-tests
#12148 Revert "Populate the find field with the search query when URL has #search hash"
#12131 [api-minor] Allow loading pdf fonts into another document.
#12151 Revert "[api-minor] Allow loading pdf fonts into another document."
#12153 Unit test improvements
#12108 Add support for radios printing
#12102 Add types annotations
#12162 Tweak for the type of PageViewportParameters.viewBox (PR 12102 follow-up)
#12161 Add types to functions exported as API in src/pdf.js (PR 12102 follow-up)
#12157 Fix the type of SVGGraphics (PR 12102 follow-up)
#12160 Use typedef to define the type of GlobalWorkerOptions (PR 12102 follow-up)
#12095 Add support for optional marked content.
#12156 Improve the types generation and API documentation (PR 12102 follow-up)
#12163 Re-factor the dispatching of "attachmentsloaded" events, when the PDF document contains no "regular" attachments
#12171 Attempt to reduce intermittent failures in the "multiple render() on the same canvas" unit-test
#12168 Fix the gulp types task to run on Windows, and place the TypeScript definitions correctly in pdfjs-dist
#12172 Fix the type definition of TypedArray. (PR 12156 follow-up)
#12174 Do the AppOptions.get("printResolution") lookup once in web/app.js , when initializing PDFPrintServiceFactory-instances, rather than for every printed page
#12173 [api-minor] Fix the annotationStorage parameter in PDFPageProxy.render
#12179 Add support for Object.fromEntries
#12169 Extract common methods from PDFOutlineViewer/PDFAttachmentViewer into a new abstract BaseTreeViewer class
#12175 Support textfield and choice widgets for printing
#12182 Fix the type of PDFDocumentLoadingTask.destroy.
#12154 [api-minor] Allow loading pdf fonts into another document.
#12187 Add a test-case for issue 4398
#12188 Update packages and translations
#12176 Support multiline textfields for printing
#12177 Support comb textfields for printing
#12186 Fix bad truetype loca tables.
#12192 A couple of (small) tweaks of the AnnotationStorage (PR 12173 follow-up)
#12193 Set direction: ltr; on the canvases used during printing (bug 1335712)
#12191 Remove the disableCreateObjectURL option from web/app_options.js
#12137 Add support for saving forms
#12201 Enable renderInteractiveForms by default.
#12211 Wait until saving has finished before resetting PDFViewerApplication._saveInProgress (PR 12137 follow-up)
#12212 Bug 1643508 - Disable touch-based pinch zooming on pdf.js.
#12210 Keep the original class/function names when minifying code (issue 12209)
#12203 Bug 1392361 - Fix zooming sensitivity on macOS
#12219 Add (basic) support for transfer functions to Images (issue 6931, bug 1149713)
#12227 Include image_decoders-es5/minified-es5 in the pdfjs-dist library (issue 12220)
#12229 Dispatch event when annotations have finished rendering.
#12230 Implement reference testing for printing
#12250 Update the zoom dropdown width calculation to work better in locales with long zoom-strings (PR 11077 follow-up)
#12251 Return the query with the findcontrolstate
#12241 confirm if leaving a modified form without saving
#12248 Support file save triggered from the Firefox integrated version.
#12247 Improve the field value parsing for choice widgets to handle null values
#12256 #12241 followup - move event listener to PDFViewerApplication.load
#12244 fix webpack config problem caused by breaking changes of worker-loader
#12260 Replace menu dropdown icon
#12261 Also enable renderInteractiveForms by default in the viewer components (PR 12201 follow-up)
#12265 Don't warn when navigating away from a modified form, if printing has occurred (issue 12262)
#12267 Update packages and translations
#12263 Fix AcroForm printing/saving edge cases
#12268 Reduce the leading padding for the numPages span (PR 11077 follow-up)
#12270 Accent positioning in...

Read more

v2.5.207

01 Jun 10:33
0974d60
Compare
Choose a tag to compare

This release features performance improvements thanks to improved image caching and JPEG decoding.

Changes since v2.4.456:

#11717 Bump versions in pdfjs.config and update the getting started page of the website for the new release
#11719 Remove the unused wideChars property on Font instances
#11720 Update the eslint-plugin-no-unsanitized package to the latest version
#11721 Don't let Travis run npm update during setup
#11728 Remove unnecessary checks from the PDFDocumentProperties constructor
#11724 Only build the necessary web/ files during the gulp default_preferences task
#11723 Remove variable shadowing from the JavaScript files in the src/display/ folder
#11725 Re-factor PDFViewerApplication.load such that {PDFViewer, PDFThumbnailViewer}.setDocument happens slightly earlier
#11734 Remove old API methods which were previously converted to throwing (PR 11219 follow-up)
#11736 Add passive: false to the wheel event listener used in PDFPresentationMode (issue 11735, PR 10765 follow-up)
#11742 Remove variable shadowing from the JavaScript files in the test/unit/ folder
#11738 Remove variable shadowing from the JavaScript files in the src/core/ folder
#11707 Always prefer the PDF.js JPEG decoder for very large images, in order to reduce peak memory usage (issue 11694)
#11744 The first glyph in CFF CIDFonts must be named 0 instead of ".notdef"
#11646 Ensure that automatic printing still works when the viewer and/or its pages are hidden (bug 1618621, bug 1618955)
#11747 Add passive: false when removing wheel listeners
#11745 Enable the ESLint no-shadow rule
#11755 Remove the unused sizes and encoding properties on Font instances
#11767 Replace the RTL images with CSS transforms of the standard images (issue 11766)
#11655 [api-minor] Remove the getGlobalEventBus viewer functionality, and the eventBusDispatchToDOM option/preference (PR 11631 follow-up)
#11771 Fail early, in modern GENERIC builds, if certain required browser functionality is missing (issue 11762)
#11772 Update packages and translations
#11769 Ensure that Font.charToGlyph won't fail because String.fromCodePoint is given an invalid code point (issue 11768)
#11781 Update the "gulp jsdoc" task to account for API changes in the mkdirp package (PR 11772 follow-up)
#11780 Move the initialization of "page labels"/"metadata"/"auto print" out of PDFViewerApplication.load
#11773 [api-minor] Change Font.exportData to use an explicit white-list of exportable properties, and stop exporting internal/unused properties
#11777 [api-minor] Change Font.exportData to, by default, stop exporting properties which are completely unused on the main-thread and/or in the API (PR 11773 follow-up)
#11746 Create the glyph mapping correctly for composite Type1, i.e. CIDFontType0, fonts (issue 11740)
#11727 Add a heuristic to scale even single-char text, when the horizontal/vertical scaling differs significantly (issue 11713)
#11789 Add a new pdfjs.enablePermissions preference, off by default, to allow the PDF documents to disable copying in the viewer (bug 792816)
#11797 Don't bundle the fallback grab/grabbing cursor images when running gulp mozcentral
#11799 Fail early, in modern GENERIC builds, if certain required browser functionality is missing (PR 11771 follow-up)
#11800 Remove any mention of Gitpod from the README (issue 11732)
#11809 Update Prettier to version 2.0
#11806 [api-minor] Fix the return value of PDFDocumentProxy.getViewerPreferences when no viewer preferences are present (PR 10738 follow-up)
#11810 A couple of small String.fromCodePoint improvements (PR 11698 and 11769 follow-up)
#11805 Always skip over any additional, unexpected, RSTx (restart) markers in corrupt JPEG images (issue 11794)
#11813 Suppress browser autofill on page number
#11821 docs: Fix simple typo, occurences -> occurrences
#11819 [src/core/jpg.js] Remove redundant marker validation at the end of the decodeScan function (PR 11805 follow-up)
#11818 Enable the dot-notation ESLint rule
#11814 Support the vertical writing mode with SVG backend.
#11822 Update packages and translations
#11826 Change the "download" keyboard shortcut (Ctrl+S) handling, in GENERIC/CHROME builds, to utilize the EventBus (issue 11657); add a new "openfile" keyboard shortcut (Ctrl+O), in GENERIC builds
#11823 [src/core/fonts.js] Improve the validateOS2Table function and other code
#11825 Avoid reading the "disablePreferences"/"locale" options, when initializing the viewer, in extension builds
#11831 Use Node LTS releases to fix Travis CI builds (issue 10790)
#11835 [api-minor] Change PageViewport to throw when the rotation is not a multiple of 90 degrees
#11837 Always attempt to dispatch the "webviewerloaded" event at the embedding document (PR 10318 follow-up, issue 11829)
#11844 [api-minor] Immediately release the font.data property once the font been attached to the DOM (PR 11777 follow-up)
#11845 Use the native URL.createObjectURL method more in the web/ folder
#11847 Move the maybeValidDimensions check, used with JPEG images, to occur earlier (PR 11523 follow-up)
#11807 Introduce Puppeteer for handling browsers during tests
#11853 Include the name for interactive form elements
#11834 Preserve error types during translation
#11864 Remove the create-react-app example (issue 11729)
#11868 Update packages and translations
#11869 Various smaller clean-up in gulpfile.js
#11863 Add more categories of unsupported features.
#11872 Gracefully handle annotation parsing errors in Page.getOperatorList (issue 11871)
#11879 Enable the ESLint grouped-accessor-pairs rule
#11873 Use the ESLint no-restricted-syntax rule to ensure that assert is always called with two arguments
#11880 Attempt to respect the "zoom" hash parameter, even when the "nameddest" parameter is present (issue 11875)
#11889 Handle errors individually for each annotation in the _parsedAnnotations getter
#11890 Update ESLint to version 7
#11892 Add a minified-es5 gulp task (issue 11858)
#11905 Reduce the usage of require statements in code-paths not protected by pre-processor and/or run-time checks
#11910 Update packages and translations
#11911 Remove the SystemJS dependency from the web/preferences.js file
#11917 [Firefox] Allow PDF attachments to, once again, be opened directly in the browser (bug 1632644)
#11914 Convert the src/pdf.js and src/pdf.worker.js files to use standard import/export statements
#11919 Reduce usage of SystemJS, in the development viewer, even further
#11912 Attempt to cache repeated images at the document, rather than the page, level (issue 11878)
#11924 Avoid hanging the worker-thread for CMap data with ridiculously large ranges (issue 11922)
#11926 Allow GlobalImageCache.clear to, optionally, only remove the actual data (PR 11912 follow-up)
#11601 [api-minor] Decode all JPEG images with the built-in PDF.js decoder in src/core/jpg.js
#11927 Implement fill opacity for shading patterns in the SVG back-end
#11939 Update Acorn to version 7
#11940 Add comments to the export list in the src/pdf.js file (PR 11914 follow-up)
#11930 Improve the local image caching in PartialEvaluator.getOperatorList
#11943 Remove unused code from the external/builder/builder.js file
#11945 Update packages and translations
#11947 Ensure that that we don't attempt to cache inline images in the GlobalImageCache (PR 11912 follow-up)

v2.4.456

19 Mar 21:55
228a591
Compare
Choose a tag to compare

From now on we produce a non-translated/non-polyfilled build for modern browsers by default. However, we also provide the translated/polyfilled build for older browsers in a separate bundle (with the -es5-dist.zip suffix).

Changes since v2.3.200:

#11202 Bump versions in pdfjs.config
#11198 [PDFSidebarResizer] Add a couple of (small) readability improvements in the code
#11212 [MessageHandler] Some additional (small) clean-up of the code
#11213 Update the gulp importl10n command to fetch the active language codes
#11186 Improve the heuristics, in PartialEvaluator._buildSimpleFontToUnicode, for glyphNames of the Cdd{d}/cdd{d} format (issue 9655)
#11209 Use square brackets for optional properties in the JSDoc comments of src/display/api.js
#11222 Remove locales which are unmaintained and/or not shipping in Nightly (PR 11213 follow-up)
#11219 [api-minor] Replace all deprecated calls with throwing of actual Errors
#11218 Attempt to fallback to a default font, for non-available ones, in PartialEvaluator.loadFont
#11220 Added create react app example with typescript and basic usage
#11228 Enable the ESLint rule accessor-pairs for Classes
#11232 Cache processed 'ExtGState's in PartialEvaluator.hasBlendModes to avoid unnecessary parsing/lookups
#11234 Convert a number of reference tests, for documents with corrupt XRef tables, from load to eq
#11237 Update src/shared/compatibility.js to only run with SKIP_BABEL = false set
#11235 Improve the JSDoc comments
#11246 Tweak the isIOS check, in web/viewer_compatibility, to attempt to support newer Safari versions (issue 11245)
#11247 Change variable assignment
#11253 Avoid handling keyboard shortcuts for contentEditable DOM elements (issue 7156)
#11250 Silence the Autoprefixer message being printed with all build logs
#11256 [Firefox] Remove unused addon l10n files (PR 9566 follow-up)
#11257 Remove/update skipPages annotations from test/test_manifest.json
#11231 Allow over-writing entries, in XRef.indexObjects, only when the generation number matches (issues 11230, 11139, 9552, 9129, 7303)
#11260 Update npm packages
#11243 Add a fallback for non-embedded composite Verdana fonts (issue 11242)
#11261 Re-factor sending of various Exceptions from the worker to the API
#11262 Re-add the en-US chrome.properties l10n file, to avoid it being removed at mozilla-central (PR 11256 follow-up)
#11263 Attempt to reduce resource usage, by not eagerly fetching all pages, for long/large documents
#11268 refactor: viewer.css refactored, duplications removed
#11271 Re-factor StatTimer usage, in src/display/api.js, and remove DummyStatTimer
#11273 [api-minor] Support custom offsetX/offsetY values in PDFPageProxy.getViewport and PageViewport.clone
#11282 Update l10n files
#11281 Support Blend Modes which are specified in an Array of Names (issue 11279)
#11283 Ensure that PartialEvaluator.hasBlendModes handles Blend Modes in Arrays (PR 11281 follow-up)
#11284 Make the ObjectLoader use more efficient methods when determining if data needs to be loaded
#11294 Remove some unused require statements, used when loading fake workers, in non-PRODUCTION mode
#11290 [MessageHandler] Re-factor and convert the code to a proper class
#11301 Ensure that the peekByte methods, on the various Streams, handles end of data correctly (PR 5286 follow-up)
#11296 Allow skipping of errors when parsing broken/unsupported ColorSpaces (issue 6707, issue 11287)
#11302 Slightly re-factor setting of the link target in addLinkAttributes
#11304 Re-factor the ObjectLoader._walk method to be properly asynchronous
#11307 Support UTF-16 little-endian strings in the stringToPDFString helper function (bug 1593902)
#11308 Prevent browser exceptions from incorrectly triggering the assert in PDFPageProxy._abortOperatorList (PR 11069 follow-up)
#11312 Convert Catalog.getPageDict to an async method
#11314 Revert "Convert Catalog.getPageDict to an async method"
#11313 Ensure that Popup annotations, where the parent annotation is a polyline, will always be possible to open/close (issue 11122)
#11305 Fix nodejs core module : ignore url module for web browser
#11315 Include a reduced test case for annotations without a Border/BS entry (PR 6180 follow-up)
#11300 Simplifies code contributions by automating the dev setup
#11316 Convert globalScope and isNodeJS to proper modules
#11318 [PDFHistory] Move the IE11 pushState/replaceState work-around to src/shared/compatibility.js (PR 10461 follow-up)
#11317 Update npm packages
#11334 Use getBytes, rather than looping over getByte, in FlateStream.prototype.readBlock
#11335 Subtract stream.start when getting the startXRef property for documents with a Linearization dictionary (issue 11330)
#11346 Ensure that attempting to print with disableAutoFetch set will fail gracefully (issue 11339)
#11338 Reduce duplication when registering event listeners for the Toolbar buttons, and other small clean-up
#11350 Convert {BaseViewer, PDFThumbnailViewer}._pagesRequests from an Array to a WeakMap
#11353 Remove document.attachEvent code from web/pdf_print_service.js since it's only necessary for old IE versions
#11325 Added custom file transform function
#11354 Enable the getter-return, no-dupe-else-if, and no-setter-return ESLint rules
#11356 Remove outdated, and misleading, JSDoc comment from the PDFDocument class
#11363 Remove the Number.isInteger checks from XRef.fetchUncompressed (PR 8857 follow-up)
#11370 Stop caching Streams in XRef.fetchCompressed
#11373 Slightly simplify the XRef cache lookup in XRef.fetch
#11374 Set the first pdfPage immediately in {BaseViewer, PDFThumbnailViewer}.setDocument
#11382 Fix an incorrect condition in BaseViewer.isPageVisible (PR 10217 follow-up)
#11388 Remove the viewer option from the PDFPresentationMode constructor
#11390 Ensure that PDFDocument.checkFirstPage waits for cleanup to complete (PR 10392 follow-up)
#11391 [api-minor] Replace globalScope with the standard globalThis property instead
#11387 Handle corrupt ASCII85Decode inline images with truncated EOD markers (issue 11385)
#11398 Attempt to improve the PDFDocument error message for empty files (issue 5887)
#11404 [api-minor] Move the ReadableStream polyfill to the global scope
#11407 Bump npm from 6.13.0 to 6.13.4
#11406 Re-factor the find helper function, in src/core/document.js, to search through the raw bytes rather than a string
#11380 Add a reset method to the PDFHistory implementation
#11413 Re-factor the npm test command, used by Travis, to avoid running the 'default_preferences' tasks concurrently (issue 10732)
#11415 Update npm packages and l10n files
#11418 [api-minor] Simplify the fallback fake worker loader code in src/display/api.js
#11422 Use the strict mode assert in the pdf2png Node.js example (issue 10768)
#11425 Use const in viewer_compatibility.js
#11426 Use const in viewer.js
#11427 Use const in view_history.js
#11428 Use const in ui_utils.js
#11429 Use const in toolbar.js
#11436 Update webpack-stream to fix vulnerabiliy reported by npm and dedupe Webpack
#11440 Tweak the "gets page stats after rendering page, with pdfBug set" unit-test to remove an intermittent failure on Travis
#11437 Extract & use createHeaders helper
#11431 Use const in secondary_toolbar.js
#11430 Use const in text_layer_builder.js
#11433 Use const in pdf_thumbnail_viewer.js
#11432 Use const in preferences.js
#11423 Ignore Metadata entries with incorrectly encoded characters, when setting the viewer title (bug 1605526)
#11443 Support OpenAction dictionaries without Type entries when parsing Print actions (issue 11442)
#11446 Enable auto-formatting of the entire code-base using Prettier (issue 11444)
#11445 Include a unit test for OpenAction dictionaries without Type entries (PR 11443 follow-up)
#11449 Move the regular expression, used with auto printing in the viewer, to web/ui_utils.js and also use it in the API unit-tests
#11450 Enable the ESLint prefer-const rule in the web/ directory
#11454 Move the SegoeUISymbol font to the getNonStdFontMap (PR 8698 follow-up)
#11455 Update npm packages and l10n files
#11447 Convert all non-RGBA colors to RGBA colors
#11463 [Firefox] Ensure that telemetry will be correctly recorded even when the PDF header is missing (bug 1606566)
#11472 Update the year in the license_header files
#11466 [Firefox] Slightly simplify how the generator is determined, when sending telemetry data from the viewer
#11474 [api-minor] Remove the Webpack-only npm dependencies from pdfjs-dist (PR 11418 follow-up)
#11465 Ensure that all import and require statements, in the entire code-base, have a .js file extension
#11488 Enable the no-nested-ternary ESLint rule in the web/ directory
#11505 Enable the ESLint no-unneeded-ternary rule
#11504 Add direction: ltr; to the canvases used in examples/learning, to ensure correct text rendering (issue 11457)
#11503 Remove the unused id properties from page and thumbnail canvas/image DOM elements (issue 11499)
#11520 Update the GlobalWorkerOptions.workerSrc JSDoc comment
#11521 Remove the supportsDocumentColors warning in MOZCENTRAL builds (bug 844349 follow-up)
#11519 Enable import/extensions of ESlint plugin to enforce all import have a .js file extension.
#11522 Ensure that the viewer telemetry reporting, and fallback code, runs in development mode and GENERIC builds
#11510 Skip failing FBF tests in Google Chrome when running makeref on the bots
#11529 Display the CSS tab in the interactive examples (issue 11506 follow-up)
#11502 Fix a couple of cases where Prettier broke existing formatting (PR 11446 follow-up)
#11511 Enable the no-nested-ternary ESLint rule (PR 11488 follow-up)
#11497 Add support for `Promise.allSett...

Read more

v2.3.200

03 Oct 21:16
4ae3f9f
Compare
Choose a tag to compare

Changes since v2.2.228:

#10960 Bump versions in pdfjs.config
#10963 Ensure that PDFViewerApplication.{zoomIn, zoomOut} won't run when PesentationMode is active (PR 10652 follow-up)
#10959 Remove the data-pdfjsprinting attribute on the <body> when destroying FirefoxPrintService/PDFPrintService instances (issue 10948)
#10962 Prevent "Uncaught promise" messages in the console when cancelling TextLayer tasks (PR 10601 follow-up)
#10964 Bump lodash from 4.17.10 to 4.17.14
#10958 Remove the intentState.receivingOperatorList boolean since it's redundant
#10850 Scale stroking line width when using a tiling pattern.
#10851 Apply bounding box before using shading patterns.
#10950 Fixed testing webserver to handle paths correctly on Windows
#10966 Add timestamp to the page rendered event.
#10968 Remove useless wrapReason calls in the MessageHandler class
#10970 Simplify, and inline, the finalize function in the MessageHandler class
#10969 Add an API unit-test for the stopAtErrors option (PRs 8240 and 8922 follow-up)
#10974 Simplify the PDFDocument.fingerprint method slightly
#10820 Annotations - Added parsing of IRT, RT, State and StateModel
#10987 Bump js-yaml from 3.12.0 to 3.13.1
#10990 Refactor the onBeforeDraw/onAfterDraw functionality used in BaseViewer and PDFPageView
#10979 [Firefox] Re-factor the 'zoomreset' message handling in the viewer (PR 10652 follow-up)
#10986 Attempt to significantly reduce the number of ChunkedStream.{ensureByte, ensureRange} calls by inlining the this.progressiveDataLength checks at the call-sites
#10993 Add the docBaseUrl API parameter to AppOptions in the viewer
#10995 Remove an unnecessary PDFDocumentProperties.setFileSize call, relevant for the Firefox built-in viewer, and use the "normal" code-path in PDFViewerApplication.open instead
#11001 Inline the isCmd check in the Parser.shift method
#10996 Avoid creating a PDFFindBar instance, in the Firefox built-in viewer, when not actually necessary
#11003 Ensure that setting the zoomDisabledTimeout isn't skipped, regardless of the supported zoom keys, when handling mouse wheel events (PR 7097 follow-up)
#11012 Reduce the number of function calls in EvaluatorPreprocessor.read
#11019 Decode URL encoded filenames from content disposition headers
#11020 Add a work-around, in glyphlist.js, for bad PDF generators which use a non-standard /f_f string in the Encoding dictionary when referring to the ff ligature (issue 11016)
#11033 Ensure that the loading indicator, in the pageNumber input, is hidden when the viewer is closed
#11029 [api-minor] Update telemetry to use 'categorical' histograms.
#11034 Ensure that ReadableStreams are cancelled with actual Errors
#11038 [api-minor] Fix completely broken getStats method by returning stats in Objects, rather than in Arrays (PR 11029 follow-up)
#11013 [api-minor] Implement quadpoints for annotations in the core layer
#11048 Use more compact keys in PDFLinkService._pagesRefCache
#11049 Add page rendered timestamp to telemetry.
#11047 Support corrupt PDF files with invalid/non-existent Group /CS entries (issue 11045)
#11051 Actually compare the cropBox and mediaBox correctly in the Page.view getter
#11057 Handle some corrupt/truncated JPEG images that are missing the EOI (End of Image) marker (issue 11052)
#11059 Fallback gracefully when encountering corrupt PDF files with empty /MediaBox and /CropBox entries
#11062 Miscellaneous small clean-up of code in the web/ folder
#11064 Convert the src/shared/util.js file to ES6 syntax
#11070 Inline the isString check in the Parser.getObj method
#11073 Move polyfill for codePointAt to String prototype.
#11076 Replace the XRef.cache Array with a Map instead
#11081 added in information about pdfjs/webpack
#11079 [TextLayer] Only cache the current textDiv style when enhanceTextSelection is enabled and use template strings in expandTextDivs
#11087 Add a way to disable external links.
#11086 [TextLayer] Only cache the originalTransform when enhanceTextSelection is enabled
#11091 [TextLayer] Only handle positive padding values in expandTextDivs
#11090 [TextLayer] Use an Array to build the total transform, rather than concatenating Strings, in expandTextDivs
#11093 Shorthand afterPrint signature in app.js
#11092 [TextLayer] Use an Array to build the total padding, rather than concatenating Strings, in expandTextDivs
#11069 Use streams for OperatorList chunking (issue 10023)
#11096 Update translations/packages and upgrade to eslint version 6
#11095 Include a reduced, non-linked PDF file for the attachments API unit test
#11097 [TextLayer] Only measure the width of the text, in _layoutText, for multi-char text divs
#11102 Bump mixin-deep from 1.3.1 to 1.3.2
#11104 [TextLayer] Avoid unnecessary font updates in _layoutText and remove setAttribute usage in appendText
#11107 Various MessageHandler improvements when using Streams
#11110 Remove support for the scope parameter in the MessageHandler.on method
#11111 Inline the resolveCall helper function at its call-sites in MessageHandler
#11112 Remove the API/Worker version warning message in TESTING mode
#11108 Use more ES6 syntax in the annotation code
#11115 Ensure that Errors are handled correctly when using postMessage with Streams in MessageHandler
#11123 [api-minor] Remove the postMessageTransfers parameter, and thus the ability to manually disable transferring of data, from the API
#11118 Transfer, rather than copy, CMap data to the worker-thread
#11127 Update the eslint-plugin-mozilla to the latest version (PR 10905 follow-up)
#11129 Prevent "offsetParent is not set -- cannot scroll" errors when the viewer loads in e.g. a hidden <iframe>
#11133 Enable the no-async-promise-executor ESLint rule
#11130 Don't enqueue unused properties when sending 'GetOperatorList' data from the worker-thread (PR 11069 follow-up)
#11138 [CRX] Ignore auto-generated from Chrome
#11134 Ensure that addLinkAttributes is always called with a valid url parameter
#11142 Stop dispatching a "localized" event from the webL10n library, since it's unused and may clash with the default viewer
#11106 Abort, with a small delay, getOperatorList on the worker-thread when rendering is cancelled (PR 11069 follow-up)
#11145 Update translations and packages
#11155 Miscellaneous (small) clean-up of the MessageHandler code
#11159 For Type1 fonts, replace missing font dictionary /Widths entries with ones from the font data (issue 11150)
#11158 Avoid floating point inaccuracy in gradient color stops
#11163 Fix the link in the doc website
#11146 Replace our URL polyfill with the one from core-js
#11165 Enable a couple of return related ESLint rules
#11168 Remove unmaintained localizations and update translations and packages
#11171 Fix the inconsistent return types for Dict.{get, getAsync}
#11173 Replace the bundled ReadableStream polyfill with the web-streams-polyfill npm package (issue 11157)
#11169 Reduce the number of function calls in the Dict class
#11185 Convert the various ...Exceptions to proper classes, to reduce code duplication
#11182 Forbid sending of Dicts and Streams, with postMessage, when workers are disabled
#11187 Convert the various image decoder ...Errors to classes extending BaseException (PR 11185 follow-up)

v2.2.228

10 Jul 20:15
d7afb74
Compare
Choose a tag to compare

#10557 Bump versions in pdfjs.config
#10556 [api-minor] Expose the existence of a Collection dictionary via the getMetadata API method (issue 10555)
#10554 Simplify the updatetextlayermatches event handling in TextLayerBuilder
#10548 Generate the default_preferences.json file from AppOptions
#10558 Re-factor the PDFDataRangeTransport unit-tests and enable them in Node.js/Travis
#10560 Update translations and packages
#10579 Re-factor the PDFSidebar constructor to simplify its call-site (PR 10123 follow-up)
#10578 Try to temporarily hack around the __non_webpack_require__ bug, and update Webpack to the latest stable version (issue 10177)
#10577 Move worker-thread only functions from src/shared/util.js and into a new src/core/core_utils.js file
#10582 Use Promise.prototype.finally in the PDFRenderingQueue.renderView method
#10589 Run the custom_spec unit-tests in Node.js/Travis (PR 10537 follow-up)
#10585 Load built-in CMap files using the Fetch API when possible
#10573 Avoid truncating/breaking some Type3 glyphs in compileType3Glyph (bug 1245391, issue 10568)
#10599 Update Webpack to the latest stable version (4.29.6)
#10597 Ensure that the temporary canvas created in CanvasGraphics.isFontSubpixelAAEnabled will be cleared
#10595 Zero the width/height of the temporary canvas used during JpegDecode (issue 10594)
#10591 Add unique glyph names for CFF fonts.
#10601 Zero the width/height of the temporary canvas used during TextLayer rendering
#10604 Put the string name of the glyph in the charset array.
#10606 Update translations and packages
#10590 Fix missing moveTos in SVG paths
#10608 Reduce usage of Date.now() in src/core/worker.js
#10610 Add type validation to the default_preferences generation (PR 10548 follow-up)
#10605 Convert let to const if possible in, and improve unit test coverage for, src/display/display_utils.js
#10615 Handle corrupt ASCII85Decode inline images with whitespace "inside" of the EOD marker (issue 10614)
#10621 Don't scale SVG stroke width by text matrix
#10634 Move NativeImageDecoder into a separate file, and convert it to a class
#10633 Convert MurmurHash3_64 to an ES6 class
#10628 Try to improve text-selection for Type3 fonts that utilize a non-default /FontMatrix (bug 1513120)
#10636 Small clean-up of the PDFDocumentProxy.destroy method and related code
#10647 Actually transfer eligible ImageMask data, rather than always copying it
#10644 Ensure that blob: URLs will be revoked when pages are cleaned-up/destroyed (JPEG memory usage)
#10646 Implement linear-gradient, radial-gradient and dummy-pattern in SVGGraphics.
#10635 Convert src/core/parser.js to ES6 syntax and write more unit tests for the lexer and the parser
#10657 Update test case description
#10652 Prepare the MOZCENTRAL viewer for receiving zoom events from the browser UI (bug 786674, bug 1177385)
#10668 Remove the Firefox-specific 'read with streaming' unit-test
#10681 fix: electron enviroment detection
#10685 Take the FirstChar/LastChar properties into account when computing the hash in PartialEvaluator.preEvaluateFont (issue 10665)
#10683 Use CMap in Type0 fonts when CFF is not a CID font
#10692 Add Mozilla Code of Conduct
#10698 Update translations/packages and include the code of conduct for pdfjs-dist too
#10706 Add missing hasChildNodes polyfill to domstubs.js (PR 10022 follow-up)
#10675 [Firefox regression] Fix disableRange=true bug in PDFDataTransportStream
#10713 Remove src/core/annotation.js from the gulp jsdoc build target
#10678 Remove moz-chunked-arraybuffer support, and related code, from src/display/network.js
#10709 [api-minor] Add basic support for PageLayout in the API and the viewer
#10714 [Firefox] Ensure that loading progress is reported, and the loadingBar updated, when disableRange=true is set
#10674 Convert src/display/svg.js to ES6 syntax and implement setRenderingIntent and setFlatness for the SVG backend
#10715 Add test for fetch_stream
#10725 Attempt to clarify the l10n section of CONTRIBUTING.md
#10723 [api-minor] Implement caret annotations
#10728 Annotations - _preparePopup method replaced with MarkupAnnotation
#10696 Update ChunkedStream.makeSubStream to actually check if (some) data exists when the length parameter is undefined
#10694 Avoid dispatching range requests to fetch PDF data that's already loaded with streaming (PR 10675 follow-up)
#10733 Update translations and packages
#10735 [api-minor] Implement free text annotations
#10742 [Firefox] Avoid displaying the indeterminate loadingBar when disableStream=true is set (PR 10714 follow-up)
#10746 Add links to PDF.js homepage and API reference in README.md
#10727 Support (rare) Type3 fonts which contains image resources (issue 10717)
#10754 Add a getDocId method to the idFactory, in Page instances, to avoid passing around PDFManager instances unnecessarily (PR 7941 follow-up)
#10738 [api-minor] Add support for ViewerPreferences in the API (issue 10736)
#10765 Add passive: false to the wheel event listener, to work-around broken default behaviour in Chrome 73 and above (issue 10761)
#10784 Ensure that the OperatorList constructor actually initializes a NullOptimizer when intended (PR 9089 follow-up)
#10756 Attempt to handle corrupt PDF documents that contains path operators inside of text object (issue 10542)
#10789 Change PartialEvaluator.handleColorN to throw when no valid pattern is found
#10771 [api-minor] Implement creation/modification date for annotations
#10795 Update the canvas npm package to fix Travis CI builds (issue 10790)
#10805 Enable the consistent-return ESLint rule
#10794 Fix glyph at index zero in CIDFontType2 that has a CIDToGIDMap stream
#10826 Remove unused ref property from the parameters object used when creating annotations in AnnotationFactory._create
#10827 Convert the (remaining) network streams to ES6 classes
#10854 make print resolution configurable via AppOptions
#10833 [api-minor] Implement contents and creation date for the correct annotation types
#10859 Update translations and packages
#10862 Add caching to reduce the number of Ref objects
#10863 Ensure that the Cmd/Name/Ref caches are cleared when running other cleanup code
#10869 Restore referrer preserving functionality in Chrome 72+
#10867 Don't clip if path is undefined in SVG back-end
#10872 Re-use, rather than re-creating, some Arrays when resetting them in src/display/api.js
#10873 Ensure that the Cmd/Name/Ref caches are cleared when terminating the worker (PR 10863 follow-up)
#10877 Ignore Annotations with too large border widths, to prevent the annotationLayer from rendering it over the surrounding document (bug 1552113)
#10879 [api-minor] Attempt to reduce memory usage during printing, by always running cleanup once rendering has finished
#10890 Add support for outline items, in the default viewer, which default to collapsed when the outline is built
#10897 Remove a superfluous linkService.isPageVisible check from PDFFindController (PR 10217 follow-up)
#10898 Allow experimenting with the printResolution AppOption when printing with the built-in Firefox version
#10905 Pin the version of eslint-plugin-mozilla to prevent failures on Travis (issue 10901)
#10903 Move PDFWorkerStream and related code to its own file
#10926 Change the signature of the Parser constructor to take a parameter object
#10925 Enable the eslint-plugin-no-unsanitized ESLint plugin to disallow unsafe usage of e.g. innerHTML
#10902 Implement tiling patterns for the SVG back-end
#10936 Update translations and packages
#10938 Reduce the number of isCmd calls slightly in the XRef class
#10937 Restore the header size limit of 80 KB
#10947 Make the find helper function, in src/core/document.js, more efficient by using peekBytes rather reading the stream one byte at a time
#10949 Delay initialization of searching, in the viewer, until the first page has rendered

v2.1.266

16 Feb 18:03
81f5835
Compare
Choose a tag to compare

Changes since v2.0.943:

#10187 Bump versions in pdfjs.config
#10188 Hide the beta version button on the website if there is only a stable version
#10162 Normalize BBox of form XObjects in SVG back-end
#10185 Reduce the number of redundant text normalization operations in PDFFindController
#10182 Small clean-up of the search related methods in TextLayerBuilder
#10184 Ensure that matches are not scrolled into after the findbar has been closed (PR 10100 follow-up)
#10196 [Regression] Ensure that "Highlight All" is propagated to all pages for 'findagain' events where the findbar was previously closed (PR 10100 follow-up)
#10190 Add a helper method for _getVisiblePages, in BaseViewer, for the case where only a single page is displayed in the viewer
#10201 Reduce the number of redundant updatetextlayermatches events dispatched when calculating matches in PDFFindController
#10203 Change canvasInRendering to a WeakSet instead of a WeakMap
#10096 Remove the attachDOMEventsToEventBus functionality, since EventBus instances are able to re-dispatch events to the DOM (PR 10019, bug 1492849 follow-up)
#10202 Attempt to clean-up/restore pending rendering operations on RenderTask.cancel (issue 10200)
#10217 For repeated 'findagain' operations, attempt to reset the search position if the user has e.g. scrolled in the document (issue 4141)
#10219 Convert src/core/ps_parser.js to use ES6 classes
#10228 Don't detect nw.js as node.js
#10233 [api-minor] Convert PDFObjects, in src/display/api.js, to an ES6 class
#10238 Move the interface definitions out of src/core/worker.js and into their own file
#10245 Update BaseViewer.scrollPageIntoView to always validate the pageNumber parameter
#10223 When the search query changes, regardless of the search command, always re-calculate matches (bug 1030622)
#10220 Only scroll search results into view as a result of an actual find operation, and not when the user scrolls/zooms/rotates the document (bug 1237076, issue 6746)
#10231 Stop scrolling the document when "Highlight All" is toggled in the findbar (issue 5561)
#10244 Fix webpack example
#10255 Avoid unnecessary PDFFindController.scrollMatchIntoView calls in TextLayerBuilder._renderMatches when highlightAll is set (PR 10201 follow-up)
#10256 Attempt to tweak the error messages, in BaseViewer, for invalid pageNumbers/pageLabels (bug 1505824)
#10264 Update translations and packages
#10197 Use span instead of div in the text layer
#10246 Convert the remaining code in src/display/api.js to use ES6 classes
#10274 Fallback to an exhaustive search, in corrupt PDF files, for NameTrees/NumberTrees that are not correctly ordered (issue 10272)
#10294 Add ESLint plugin import to be warned against invalid paths
#10292 Replace uglify-es with Terser
#10293 Upgrade to Babel 7
#10275 Fix NameOrNumberTree.get to actually perform a binary search to find the requested key
#10299 Update packages and translations
#10300 Include forgotten changes after Wintersmith update
#10318 In GENERIC builds, dispatch a "webviewerloaded" event (from the webViewerLoad function) before initializing the viewer
#10322 Remove unuseful variable
#10323 Test the code as-is, in Node.js/Travis, rather than its Babel translated version
#10340 Tweak the PDFHistory._tryPushCurrentPosition method to work better with the different Scroll/Spread viewer modes
#10330 Handle line width of zero in SVG
#10304 Add protection against directory traversal attacks
#10295 Update eslint-plugin-mozilla to ^1.0.1
#10337 Turn on ESLint in examples
#10351 Attempt to ignore mouse wheel zooming during tab switches (bug 1503412)
#10350 Ignore the fieldValue for Signature annotations, since they're currently unsupported (issue 10374)
#10354 Disable source-map generation when running tests
#10356 Use high DPI icons on semi-high DPI screens.
#10358 Add keyboard shortcut to toggle sidebar (F4, same as Adobe Reader).
#10266 Upgrade to Gulp 4
#10363 Fix small visual quirk in thumbnail viewer
#10346 [api-minor] Add support, in getMetadata, for custom information dictionary entries (issue 5970, issue 10344)
#10369 [api-minor] Change the getViewport method, on PDFPageProxy, to take a parameter object rather than a bunch of (randomly) ordered parameters
#10375 Update translations and packages
#10334 [api-minor] Add support for OpenAction destinations (issue 10332)
#10378 Update remaining examples, and docs, to utilize current API functionality (issue 10377)
#10376 Convert src/core/chunked_stream.js to ES6 syntax
#10392 Check that the first page can be successfully loaded, to try and ascertain the validity of the XRef table (issue 7496, issue 10326)
#10394 Optimize the Ref class in src/core/primitives.js
#10393 Convert src/core/document.js to ES6 syntax
#10396 Optimizations to avoid intermediate string creation
#10397 Ensure that AnnotationBorderStyle.setWidth is able to handle the input being a Name, to correctly deal with corrupt PDF documents (issue 10385)
#10398 Prevent errors in various methods in SimpleDOMNode when the childNodes property is not defined (issue 10395)
#10277 Repair CFF fonts if stem hints are in wrong order
#10404 Remove the for ... of loop from the PDFDocument.fingerprint getter (issue 10401)
#10399 migrate to canvas 2.x api
#10411 Adjust how AnnotationBorderStyle.setWidth handles the input being a Name (issue 10385)
#10408 Prevent errors, because of incorrect scope, in the XMLParserBase._resolveEntities method (issue 10407)
#10412 Prevent errors, in SimpleXMLParser.onEndElement, when the stack has already been completely parsed (issue 10410)
#10417 Fix reading number of HTMX metrics.
#10420 Update translations/packages and improve documentation
#10421 Switch to HTTPS for the license link on the website
#10422 Convert more files in src/core to ES6 syntax
#10424 Accept non-matching document fingerprints, in PDFHistory, when the viewer is reloaded (issue 6847)
#10423 Add support for updating the document hash, off by default, when the browser history is updated (issue 5753)
#10441 Handle more cases of corrupt PDF files with missing 'endobj' operators, where the "obj" string is immediately followed by the dictionary (PR 9288 follow-up)
#10436 Avoid truncating inline images, where the data and the "EI" marker is glued together (issue 10388)
#10425 Write more unit tests for the find controller
#10444 Remove left-over console log from the find controller unit tests
#10447 Handle malformed URIs as bad requests in the development webserver
#10443 Prevent TypeError: views[index] is undefined being throw in getVisibleElements when the viewer, or all pages, are hidden
#10462 Tweak the DOMTokenList.toggle polyfill (issue 10460)
#10461 Avoid setting incorrect document URLs, in IE 11, when the browser history is updated (PR 10423 follow-up)
#10457 When parsing Metadata, attempt to remove "junk" before the first tag (PR 10398 follow-up)
#10466 Move/refactor the code in the BaseViewer.update method to reduce duplication in the extending classes
#10467 Convert some usage of indexOf to startsWith/includes where applicable
#10471 Implement a unit test for metadata parsing to ensure that it's not vulnerable to the billion laughs attack
#10470 Try to, completely, avoid loading the ReadableStream polyfill in MOZCENTRAL builds
#10473 Add an Array.from polyfill, using core-js, and remove some compatibility hacks from the src/display/content_disposition.js file
#10474 Update translations and packages
#10480 [Regression] Fix the FontInspector in the PDFBug debugging tools
#10483 Update the mobile-viewer example to use the new PDFHistory.initialize format (PR 10423 follow-up)
#10484 Stop bundling the ReadableStream polyfill in MOZCENTRAL builds (PR 10470 follow-up)
#10492 Ensure that XRef.indexObjects can handle object numbers with zero-padding (issue 10491)
#10482 Implement Decode entry in Indexed images
#10494 Reduce unnecessary duplication of the isDefaultDecode methods on ColorSpace instances
#10489 Move more code/methods into BaseViewer, and simplify the PDFSinglePageViewer._scrollIntoView method slightly
#10501 In getVisibleElements, check firstVisibleElementInd rather than numViews before backtracking (PR 10443 follow-up)
#10499 Attempt to clean-up/restore pending rendering operations when errors occurs while a RenderTask runs (PR 10202 follow-up)
#10504 Enable the no-useless-catch ESLint rule
#10508 Do the final text scaling correctly in flushTextContentItem (issue 8276)
#10515 Add a settled property, tracking the fulfilled/rejected stated of the Promise, to createPromiseCapability
#10517 [api-minor] Remove the document.currentScript polyfill
#10502 Modify a number of the viewer preferences, whose current default value is 0, such that they behave as expected with the view history
#10525 Convert more code to use classList.toggle with the force parameter
#10527 Add a polyfill for classList.{add, remove} with more than one parameter
#10532 Bump base version and version prefix in pdfjs.config
#10533 Bump the version number in pdfjs.config
#10534 Try to hack-around the broken pdfjs-dist links, such that they will point to the main library releases (issue 10391)
#10530 Fix copying on supplementary plane characters
#10545 Undo the pdfjs.config version bumps
#10537 Improve unit test coverage
#10540 [Chrome extension] Add missing "type" entry for the viewOnLoad preference in the preferences_schema.json file (PR 10502 follow-up)
#10539 [api-minor] Fallback to the built-in font renderer when font loading fails

v2.0.943

27 Oct 14:46
dc98bf7
Compare
Choose a tag to compare

Changes since v1.10.100:

#9730 Ignore the rest of the image when encountering an EOI (End of Image) marker while parsing Scan data (issue 9679)
#9740 Use Dict.getArray, instead of Dict.get, when getting the 'Size' in constructSampled in src/core/function.js
#9771 Remove the gulp extension build target
#9773 Fix multibyte decoding in content_disposition.js
#9769 Reduce the amount of errors logged, primarily in Node.js/Travis, when running the unit-tests
#9774 Use fs.unlinkSync instead of fs.unlink when removing files in the font tests
#9741 Build improvements
#9779 Remove dead code in the gh-pages-prepare task in the Gulpfile
#9777 Various PageViewport and MessageHandler cleanup
#9781 Miscellaneous API clean-up
#9792 Import translations
#9660 Support running the tests headlessly.
#9794 Implement drag-and-drop support in the viewer for local files
#9793 Remove Util.appendToArray and Util.prependToArray
#9689 Fixed critical unhandled promise that prevented error catching using API
#9796 Disable (drag-and-drop) file opening if Presentation Mode is active (PR 9794 follow-up)
#9801 Replace deprecated new Buffer(string, 'base64') constructor with Buffer.from(string, 'base64')
#9815 Remove the disableFullscreen hack for embedded IE 11 (issue 9585)
#9816 Fix regression causing the pages to be offset horizontally in Presentation Mode (PR 8993 follow-up)
#9595 Disable ftp support in Chrome 59+, add file chooser at file
#9819 Fix regression affecting the horizontal viewerContainer offset for small window widths (PR 9816 follow-up)
#9809 Allow FontFaceObject.getPathGenerator to ignore non-embedded fonts during rendering
#9802 Update ColorSpace and PDFImage to use Uint8ClampedArrays and remove manual clamping/rounding
#9821 Set the correct document title when opening a new file in the GENERIC default viewer
#9795 Replace Util.extendObj by Object.assign
#9827 Fix various corrupt PDF files (issue 9252, issue 9418)
#9830 Removed safari compatibility check (issue #9824)
#9835 Clean-up the PDFDocumentProxy.loadingParams method in the API, and the locale viewer option
#9832 Fix a number of regressions/inefficiencies introduced by adding Scroll/Spread modes to the viewer (PR 9208 follow-up)
#9839 Add unit-tests for PDFPageProxy.stats (PR 9245 follow-up)
#9729 Add a gulp image_decoders command to package the image decoders (i.e. jpg.js, jpx.js, jbig2.js) separately, and publish them in pdfjs-dist
#9841 Various (small) cleanup related to setting the initial document position on load
#9849 Replace the cloneObj helper function, in the viewer, with native Object.assign (PR 9795 follow-up)
#9838 Error, rather than warn, once a number of invalid path operators are encountered in EvaluatorPreprocessor.read (bug 1443140)
#9852 Proper Error Handling for Build Numbers of Downloaded Sources (Non-Git repositories).
#9853 Fix re-rendering, using the same canvas, when rendering was previously cancelled (PR 8519 follow-up)
#9859 Update translations and packages
#9860 Update the localization README to indicate that the translations are imported from the Nightly channel
#9858 Additional Scroll/Spread mode clean-up (PR 9832 follow-up)
#9861 Refactor PDFFindController to use the 'pagesinit' event, dispatched on the eventBus, to resolve the _firstPagePromise
#9866 Prevent the development viewer, started with gulp server, from breaking completely in Private Browsing mode
#9879 Correct the instructions in the README file for examples/mobile-viewer
#9880 Remove the jp-JP-mac locale
#9877 Hide the Scroll/Spread mode buttons if the viewer is a PDFSinglePageViewer instance (PR 9858 follow-up)
#9868 Stop exposing the URL polyfill in the global scope
#9837 Replace NotImplementedException with unreachable
#9881 Replace the remaining occurences of instanceof Array with Array.isArray()
#9887 Convert more code in the /src folder to use ES6 classes, such that Util.inherit can be removed
#9886 Prevent errors in sanitizeTTProgram, during parsing of CALL functions, when encountering invalid functions stack deltas (bug 1473809)
#9898 Change waitOnEventOrTimeout, in web/ui_utils.js, to return a regular Promise and remove the createPromiseCapability import
#9900 Prevent Metadata/XML parsing from breaking PDFDocumentProxy.getMetadata when no XML root document is found (issue 8884)
#9904 Modified Examples to work without systemjs
#9913 Provide custom messages for the no-restricted-globals ESLint rule, and refactor the .eslintrc files (PR 9868 follow-up)
#9917 Add a BasePreferences.getAll method and use it to fetch all Preferences at once in PDFViewerApplication._readPreferences; ensure that the externalLinkTarget option is correctly set when the viewer is embedded
#9924 fix(browser): zlib is not available in browser
#9933 README.md: suggest usage of https instead of git protocol
#9935 [Regression] Convert Catalog.builtInCMapCache into a Map, instead of an Object, to ensure that it's correctly reset (PR 8064 follow-up)
#9936 Validate the Preferences when fetching them from storage
#9925 Attempt to estimate the minimum required buffer length when initializing StreamsSequenceStream instances
#9931 Refactor getPage (in the worker), and attempt to use the Linearization dictionary to lookup the first Page
#9920 [api-minor] Add an IsLinearized property to the PDFDocument.documentInfo getter, to allow accessing the linearization status through the API (via PDFDocumentProxy.getMetadata)
#9897 Prefer the Width/Height of the image data, rather than the image dictionary, for JPEG 2000 images (issue 9650)
#9938 Ensure that Type0, i.e. composite, OpenType fonts with CFF tables are not treated as CFF fonts if their glyph mapping is non-default (issue 9915)
#9946 Removed Extraneous Matrix Check in CalRGB Conversion
#9948 Add (basic) unit-tests for the non-global URL constructor (PR 9868 follow-up)
#9954 Stop warning for non-Name /Filter entries in the PDFImage constructor (PR 9897 follow-up)
#9874 [api-minor] Include export value for checkboxes
#9956 Allow loaded progress of 0 in unit tests.
#9960 Fail when MD5 of test files fails on bots.
#9959 Utility script to add a reference test.
#9961 Parse the font file to determine the correct type/subtype, rather than relying on the (often incorrect) data in the font dictionary
#9958 Always fallback to system font on font failure.
#9965 Update translations and packages
#9964 Attempt to throw MissingPDFException when applicable in node_stream.js (issue 9791)
#9968 Tweak the MMType1 font detection in getFontFileType to improve font telemetry (PR 9961 follow-up)
#9822 [api-minor] Refactor the annotation code to be asynchronous
#9975 Re-factor destinations/getDestination to reduce unnecessary duplication, and reject non-string inputs
#9980 Ensure that Uint8ClampedArray is used for image data transfered by getTransfers (PR 9802 follow-up)
#9988 Remove the unused PDFDocument.mainXRefEntriesOffset method
#9989 Update translations and packages
#9987 [api-minor] Remove the obsolete createBlob helper function
#9991 Remove the deprecated ways, in BaseViewer, of setting the Scroll/Spread modes (PR 9858 follow-up)
#9977 Add support for async/await using Babel
#10000 Remove the unused defaultColor property on ColorSpace instances
#10008 Update translations/packages and fix duplicated function name in the Esprima fixtures
#9990 Convert the Catalog class, in src/core/obj.js, to ES6 syntax
#10007 Convert the code in src/core/colorspace.js to use ES6 classes
#10015 Adding chunkname to async loaded code
#10020 Ensure that the built PdfJsDefaultPreferences.jsm file won't be affected/touched during tree-wide ESLint rule changes in mozilla-central (PR 9571 follow-up)
#10022 Implement text rendering modes in SVG backend
#10010 Attempt to find truncated endstream commands, in the fallback code-path, in Parser.makeStream (issue 10004)
#10019 Add general support for re-dispatching events, on EventBus instances, to the DOM
#9986 Attempt to combine separate beginText/endText sequences in getTextContent (issue 9984)
#10032 Replace broken link for pr8808.pdf.link
#10031 Add a new parameter to JpegImage.getData to indicate the source of the image data (issue 9513)
#10033 [api-minor] Implement a permissions API
#10041 Revert "Attempt to combine separate beginText/endText sequences in getTextContent (issue 9984)"
#10049 Fix font-string variable name typo
#9340 Map all glyphs to the private use area and duplicate the first glyph.
#9995 Refactor code in the web/ folder to use async/await
#10053 Simplify the "spaced-comment" ESLint rule
#10034 Remove getSinglePixelWidth workaround
#10054 Update translations/packages and use HTTPS for links in README.md
#10052 Display the index of the currently active search result in the matches counter of the findbar (issue 6993, bug 1062025)
#10055 Translate the new find match count strings to Dutch
#10028 Add initial support for "Whole words" searching in the viewer
#10056 [Regression] Ensure that PDFFindBar.updateResultsCount doesn't throw when the viewer is closed, by providing proper default values
#10060 Ensure that PDFFindController._requestMatchesCount won't return broken data when searching starts (PR 10052 follow-up)
#10061 Implement unit tests for the isSameOrigin and createValidAbsoluteUrl utility functions and use the const keyword for constants in src/shared/util.js
#10063 Slightly improve the isSourcePDF parameter handling in JpegImage (PR 10031 follow-up)
#10070 Attempt to support plural forms in the matches counter of the findbar (issue 10067)
#10066 Refactor the find controller
#10071 Enable forwarding, in FirefoxCom, of the matchesCount to the browser findbar (bug 1062025)
#10078 Improve plural support for t...

Read more

v1.10.100

06 Jun 00:09
Compare
Choose a tag to compare

#9659 Remove createFromIR from PDFFunctionFactory; forgive invalid Dict values.
#9573 New XML parser
#9759 Fix webpack exclude path on windows.