Tim van der Meij
657eba4139
Update GitHub workflow actions to the most recent versions
...
Moreover, we indicate the exact version that belongs to each commit
hash. This not only makes it easier to compare the hash against the
release tags in the actions repositories, but hopefully also makes it
easier for e.g. Dependabot to keep the comments up-to-date since not all
of them were correct and varying comment styles were in use. This commit
aligns all of them to a single `v{major}.{minor}.{patch}` style.
2026-04-18 19:01:51 +02:00
Tim van der Meij
7c2ef03202
Merge pull request #21117 from timvandermeij/updates
...
Update dependencies to the most recent versions
2026-04-18 18:15:54 +02:00
Tim van der Meij
a058acb34d
Fix vulnerability in the basic-ftp dependency
...
This patch is generated with `npm audit fix` and fixes
GHSA-rp42-5vxx-qpwr.
2026-04-18 16:09:56 +02:00
Tim van der Meij
ba2cc9c1e2
Update dependencies to the most recent versions
2026-04-18 16:07:10 +02:00
Tim van der Meij
c2a050432d
Merge pull request #21116 from Snuffleupagus/extractFontProgram-privateData-Map
...
Store the Type1 program `privateData` in a Map, rather than an Object
2026-04-18 13:53:47 +02:00
Jonas Jenwald
c155a86733
Store the Type1 program privateData in a Map, rather than an Object
...
This is nicer when checking if fields exist in `Type1Font.prototype.wrap`, and a couple of loops in that method are also "modernized" slightly.
2026-04-18 12:32:22 +02:00
calixteman
df863ae9c4
Merge pull request #21111 from calixteman/improve_reftest_perfs
...
Improve reftest runner performance
2026-04-17 08:54:07 +02:00
calixteman
1108c6088b
Merge pull request #21114 from mozilla/update-locales
...
l10n: Update locale files
2026-04-17 08:52:18 +02:00
github-actions[bot]
eb50166333
l10n: Update locale files
2026-04-17 00:39:40 +00:00
Calixte Denizet
b6fac76429
Improve reftest runner performance
...
- Replace base64/JSON POST image submission with binary WebSocket frames,
avoiding base64 overhead and per-request HTTP costs; quit is also sent
over the same WS channel to guarantee ordering
- Prefetch the next task's PDF in the worker while the current task is
still rendering
- Use `getImageData` instead of `toBlob` for partial-test baseline
comparison (synchronous, no encoding); only encode to PNG in master mode
- Disable bounce tracking protection in Firefox to prevent EBUSY errors
from Puppeteer's profile cleanup on Windows
2026-04-16 22:58:50 +02:00
Jonas Jenwald
302b4cb008
Merge pull request #21112 from Snuffleupagus/createNameTable-TypedArray
...
Use TypedArrays in the `createNameTable` function
2026-04-16 22:48:52 +02:00
calixteman
7c5f7876e9
Merge pull request #21108 from calixteman/parallelize_browser_tests
...
Add an option -j XX for browser tests in order to set the number of jobs
2026-04-16 21:30:45 +02:00
Tim van der Meij
5ec6ab1ab8
Merge pull request #21104 from calixteman/fix_focus
...
Fix integration tests failing because the focus isn't on the right element
2026-04-16 20:02:50 +02:00
Jonas Jenwald
92a0a91046
Pre-compute the length of more intermediate tables in createCmapTable (PR 21103 follow-up)
...
With the exception of `glyphsIds` the length of the other segments can be trivially determined upfront, which is obvious in hindsight. This way unnecessary allocations can be avoided when building the "cmap" table.
2026-04-16 11:46:59 +02:00
Jonas Jenwald
0a4e8d024d
Use TypedArrays in the createNameTable function
2026-04-16 11:46:57 +02:00
Jonas Jenwald
445cb9abf9
Merge pull request #21103 from Snuffleupagus/TrueTypeTableBuilder-2
...
Use TypedArrays in the `createCmapTable` function
2026-04-16 11:44:14 +02:00
calixteman
9159afd633
Merge pull request #21107 from supermar1010/fix-savedocument-jsdoc
...
Fix saveDocument JSDoc return type
2026-04-15 22:14:39 +02:00
Jonas Jenwald
17a397ad63
Merge pull request #20958 from Snuffleupagus/rm-sumPrecise-polyfill
...
Remove the basic `Math.sumPrecise` polyfill
2026-04-15 19:57:06 +02:00
Jonas Jenwald
aced833344
Remove the basic Math.sumPrecise polyfill
...
This is already polyfilled properly via core-js in `legacy` builds, and the only reason that it wasn't already removed is that the tests (on the bots) use the "modern" builds and Chrome didn't support `Math.sumPrecise` until now; see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/sumPrecise#browser_compatibility
2026-04-15 16:32:13 +02:00
Calixte Denizet
863b5d346e
Add an option -j XX for browser tests in order to set the number of jobs
...
One browser per job is opened and will run a subset of the tests.
The goal is to make the tests significantly faster on machines with a good number of cpus.
2026-04-15 15:01:55 +02:00
Mario
9dd30474c2
Fix saveDocument JSDoc return type
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 14:51:39 +02:00
Calixte Denizet
733a9b55a6
Fix integration tests failing because the focus isn't on the right element
2026-04-14 21:31:13 +02:00
calixteman
59908ccad3
Merge pull request #21101 from calixteman/improve_smask
...
Improve SMask compositing by pre-baking backdrop and filter
2026-04-14 20:57:08 +02:00
Jonas Jenwald
b2cc9ae6d5
Move the string32 helper to the src/display/font_loader.js file
...
After the previous patches the `string32` helper function is now only used in the `FontLoader.prototype._prepareFontLoadEvent` method, which is stubbed out in the Firefox PDF Viewer, hence move it there instead to avoid bundling dead code.
2026-04-14 20:36:34 +02:00
Jonas Jenwald
cb935c35d3
Use TypedArrays in the createCmapTable function
2026-04-14 20:36:34 +02:00
Jonas Jenwald
f9ecebe63c
Add a helper class for building TrueType font tables
...
This helps reduce the amount of boilerplate code needed in multiple spots throughout the font code, and more importantly it'll help when building TrueType tables whose final size is non-trivial to compute upfront.
2026-04-14 20:36:34 +02:00
Jonas Jenwald
7f7ac949ff
Merge pull request #21100 from Snuffleupagus/createTables-TypedArray
...
Use TypedArrays when building even more TrueType tables
2026-04-14 20:35:22 +02:00
Calixte Denizet
22a4bd79af
Improve SMask compositing by pre-baking backdrop and filter
...
remove as much as possible some intermediate canvases and avoid to use SVG filter
at each composition.
Rendering all the pages of issue17784.pdf takes 2x less time now.
2026-04-14 20:18:03 +02:00
calixteman
ee72d8d460
Merge pull request #21102 from nicolo-ribaudo/fix-pattern-fill-deps-tracking
...
Fix dependency tracking in pattern fill
2026-04-14 18:04:45 +02:00
Nicolò Ribaudo
2ad6b88850
Fix dependency tracking in pattern fill
...
1. Record `fill` dependencies even if we early return due to `isPatternFill``
2. Isolate the `drawPattern` inner `executeOperationList` in a
`CanvasNestedDependencyTracker` so that it does not consume pending
dependencies from the outer list.
2026-04-14 14:16:26 +01:00
Jonas Jenwald
634ce3c163
Convert the return value in createCmapTable and createNameTable to a TypedArray
...
Compared to the other TrueType table building functions, see previous patches, these ones are not trivial to convert to use TypedArrays properly.
However, in order to simplify the `OpenTypeFileBuilder` implementation a little bit we can at least have these functions return TypedArray data.
2026-04-14 12:28:45 +02:00
Jonas Jenwald
e8ed6c6e24
Use a TypedArray in the createOS2Table function
2026-04-14 10:43:42 +02:00
Jonas Jenwald
aa0bc24e95
Use a TypedArray in the createPostTable function
2026-04-14 10:43:42 +02:00
calixteman
419c2652c3
Merge pull request #21094 from calixteman/issue17784
...
Correctly sync the transform on the scratch canvas
2026-04-13 23:58:20 +02:00
calixteman
1025af059f
Merge pull request #21099 from calixteman/no_gpu
...
Use the gpu for drawing meshes only when it has more than 16 triangles (bug 2030745)
2026-04-13 23:55:52 +02:00
calixteman
865b48893a
Correctly sync the transform on the scratch canvas
...
It fixes #17784 .
2026-04-13 23:54:53 +02:00
calixteman
d1ef620541
Merge pull request #21096 from calixteman/issue13520
...
Fix blending issues while compositing
2026-04-13 22:40:12 +02:00
Calixte Denizet
a2c57ee69e
Use the gpu for drawing meshes only when it has more than 16 triangles (bug 2030745)
...
And in order to slightly improve performances, move the figure creation in the worker.
2026-04-13 22:23:03 +02:00
calixteman
22bcaf5a8a
Fix blending issues while compositing
...
It fixes #13520 .
And remove dead code.
2026-04-13 22:12:04 +02:00
calixteman
b82ceda22b
Merge pull request #21060 from calixteman/implement_merge
...
Add the UI for merging PDFs (bug 2028071)
2026-04-13 21:37:02 +02:00
calixteman
2417d9aecb
Merge pull request #21098 from calixteman/rm_workaround_1820511
...
Remove the workaround for bug 1820511
2026-04-13 21:28:49 +02:00
Tim van der Meij
7aca886f2b
Merge pull request #21097 from Snuffleupagus/convert-tables-TypedArray
...
Use TypedArrays when building more TrueType tables
2026-04-13 21:07:07 +02:00
Calixte Denizet
8c9b819b4e
Add the UI for merging PDFs (bug 2028071)
2026-04-13 19:38:56 +02:00
Calixte Denizet
ec35057b46
Remove the workaround for bug 1820511
2026-04-13 16:49:07 +02:00
calixteman
96debf0c81
Merge pull request #21095 from calixteman/issue19634
...
Take into account CharProcs keys when computing the type3 hash
2026-04-13 16:09:21 +02:00
calixteman
052e29cc56
Take into account CharProcs keys when computing the type3 hash
...
It fixes #19634 .
2026-04-13 14:49:39 +02:00
Jonas Jenwald
2437f5f961
Use a TypedArray when building the "head" TrueType table
2026-04-13 12:41:41 +02:00
Jonas Jenwald
5096982cfc
Use a TypedArray when building the "hhea" TrueType table
2026-04-13 12:41:41 +02:00
Jonas Jenwald
0c789ecc97
Use a TypedArray when building the "maxp" TrueType table
2026-04-13 12:41:41 +02:00
Jonas Jenwald
aaaf143156
Use a DataView when building the "hmtx" TrueType table (PR 21072 follow-up)
2026-04-13 12:41:38 +02:00