Tim van der Meij
0fdecb353d
Update dependencies to the most recent versions
2024-04-19 14:56:57 +02:00
Tim van der Meij
13afff48f8
Remove the mkdirp
dependency in favor of the built-in Node.js fs.mkdirSync
...
In Node.js 10.12.0 the `recursive` option was added to `fs.mkdirSync`.
This option allows us to create a directory and all its parent
directories if they do not exist, making it a drop-in replacement for
the `mkdirp` dependency we use.
Given that PDF.js now requires Node.js 18+ we can be sure that this
option is available, so we can safely remove `mkdirp` and reduce the
number of project dependencies.
Co-authored-by: Wojciech Maj <kontakt@wojtekmaj.pl>
2024-04-12 15:06:48 +02:00
Tim van der Meij
5db84e7930
Fix vulnerabilities in dependency versions
...
This patch is generated automatically using `npm audit fix`.
2024-04-11 19:48:31 +02:00
Tim van der Meij
b379b0e999
Upgrade eslint-plugin-unicorn
to version 52.0.0
...
This is a major version bump, but the changelog at
https://github.com/sindresorhus/eslint-plugin-unicorn/releases/tag/v52.0.0
doesn't indicate any breaking changes that should impact us.
2024-04-11 19:48:31 +02:00
Tim van der Meij
28962da91b
Update dependencies to the most recent versions
2024-04-11 19:48:31 +02:00
Tim van der Meij
97f40807c7
Update dependencies to the most recent versions
2024-04-03 14:42:19 +02:00
Tim van der Meij
2ca65e860a
Fix vulnerabilities in dependency versions
...
This patch is generated automatically using `npm audit fix`.
2024-03-26 16:32:24 +01:00
Tim van der Meij
98ef8a1be3
Upgrade gulp-cli
to version 3.0.0
...
This is a major version bump, but the changelog at
https://github.com/gulpjs/gulp-cli/releases/tag/v3.0.0 doesn't
indicate any breaking changes that should impact us.
2024-03-26 16:29:24 +01:00
Tim van der Meij
8f3deedafa
Upgrade globals
to version 15.0.0
...
This is a major version bump, but the changelog at
https://github.com/sindresorhus/globals/releases/tag/v15.0.0 doesn't
indicate any breaking changes that should impact us.
2024-03-26 16:29:20 +01:00
Tim van der Meij
3f7ea67f68
Update dependencies to the most recent versions
2024-03-26 16:26:24 +01:00
Jonas Jenwald
90dfe52a76
Merge pull request #17830 from Snuffleupagus/path2d-new-polyfill
...
Update the `Path2D` polyfill for Node.js environments
2024-03-25 14:58:08 +01:00
Jonas Jenwald
dc0df0a3c2
Update the Path2D
polyfill for Node.js environments
...
The polyfill that we use was recently split into two packages, and it now consists of a "core" package and a browser-specific package that build upon the former.
Hence we need to update to use the "core" package, and slightly tweak the code that loads/initializes the polyfill; see also https://www.npmjs.com/package/path2d
This patch was tested successfully with the [pdf2png example](https://github.com/mozilla/pdf.js/tree/master/examples/node/pdf2png ), after running `gulp dist-install` locally, using [this PDF document](https://bug810214.bmoattachments.org/attachment.cgi?id=9254990 ) which contains Type3-fonts that render using `Path2D`.
2024-03-24 12:09:21 +01:00
Calixte Denizet
b7f3c78d01
Update puppeteer to 22.6.0
2024-03-23 16:22:51 +01:00
Jonas Jenwald
93c09b0502
Update npm packages
2024-03-17 13:50:21 +01:00
dependabot[bot]
a26fe9a902
Bump follow-redirects from 1.15.4 to 1.15.6
...
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects ) from 1.15.4 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases )
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6 )
---
updated-dependencies:
- dependency-name: follow-redirects
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-16 23:00:41 +00:00
Calixte Denizet
5e7941afbf
Update puppeteer to 22.3.0
2024-02-27 12:19:54 +01:00
Jonas Jenwald
091e861531
Run minification directly during Webpack building
...
Rather than first building the library and then use Terser "manually" to minify the files, we can utilize a Webpack plugin to combine these steps which helps to simplify the gulpfile.
2024-02-17 18:51:34 +01:00
Tim van der Meij
6baa439e15
Update dependencies to the most recent versions
2024-02-17 16:00:18 +01:00
Tim van der Meij
28418598e5
Update puppeteer
to version 22.0.0
...
This is a major version bump that requires two changes on our side:
- The new headless mode is now the default, so we can remove our
transformation code (see https://github.com/puppeteer/puppeteer/pull/11815 ).
- The `page.waitForTimeout` API is removed. Sadly we still used it in
the integration tests (but fortunately much less than before we worked
on fixing intermittent failures), so until we remove the final
occurrences we provide an implementation ourselves (see
https://github.com/puppeteer/puppeteer/pull/11780 ).
The full changelog can be found here:
https://github.com/puppeteer/puppeteer/releases/tag/puppeteer-core-v22.0.0
2024-02-10 19:05:36 +01:00
Tim van der Meij
4feab0c1fa
Update gulp-postcss
to version 10.0.0
...
This is a major version bump, but the breaking changes don't affect us;
please see https://github.com/postcss/gulp-postcss/releases/tag/10.0.0 .
2024-02-10 19:05:28 +01:00
Tim van der Meij
29a665981a
Update eslint-plugin-unicorn
to version 51.0.1
...
This is a major version bump, but the breaking changes don't affect us;
please see https://github.com/sindresorhus/eslint-plugin-unicorn/releases .
2024-02-10 19:04:54 +01:00
Tim van der Meij
913c2caf37
Update globals
to version 14.0.0
...
This is a major version bump, but the breaking changes don't affect us;
please see https://github.com/sindresorhus/globals/releases/tag/v14.0.0 .
2024-02-10 19:04:50 +01:00
Tim van der Meij
7da6f94ca3
Update dependencies to the most recent versions
2024-02-10 19:04:48 +01:00
Tim van der Meij
f855a6dae8
Update dependencies to the most recent versions
2024-01-27 19:12:59 +01:00
Nicolò Ribaudo
f724ae98a1
Replace the webpack+acorn transform with a Babel plugin
...
This commit converts the pdfjsdev-loader transform into a Babel plugin,
to skip a AST->string->AST round-trip.
Before this commit, the webpack build process was:
1. Babel parses the code
2. Babel transforms the AST
3. Babel generates the code
4. Acorn parses the code
5. pdfjsdev-loader transforms the AST
6. @javascript-obfuscator/escodegen generates the code
7. Webpack parses the file
8. Webpack concatenates the files
After this commit, it is reduced to:
1. Babel parses the code
2. Babel transforms the AST
3. babel-plugin-pdfjs-preprocessor transforms the AST
4. Babel generates the code
5. Webpack parses the file
6. Webpack concatenates the files
This change improves the build time by ~25% (tested on MacBook Air M2):
- `gulp lib`: 3.4s to 2.6s
- `gulp dist`: 36s to 29s
- `gulp generic`: 5.5s to 4.0s
- `gulp mozcentral`: 4.7s to 3.2s
The new Babel plugin doesn't support the `saveComments` option of
pdfjsdev-loader, and it just always discards comments. Even though
pdfjsdev-loader supported multiple values for that option, it was
effectively ignored due to `acorn` dropping comments by default.
2024-01-23 16:00:59 +01:00
Calixte Denizet
99ee308f3d
Avoid to have focused tests in using eslint-plugin-jasmine
2024-01-20 22:10:42 +01:00
Jonas Jenwald
a5a9357e15
Update npm packages
2024-01-20 09:52:57 +01:00
Tim van der Meij
704747b143
Merge pull request #17489 from nicolo-ribaudo/gulp-cli-dep
...
Update `gulp-cli` to 2.3.0 and explicitly add it as a dependency
2024-01-14 16:18:26 +01:00
dependabot[bot]
7d15d23147
Bump follow-redirects from 1.15.3 to 1.15.4
...
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects ) from 1.15.3 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases )
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.4 )
---
updated-dependencies:
- dependency-name: follow-redirects
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-01-11 04:54:43 +00:00
Nicolò Ribaudo
d2a5210475
Update gulp-cli
to 2.3.0 and explicitly add it as a dependency
2024-01-10 14:59:32 +01:00
Jonas Jenwald
c5a69544af
Update npm packages
2024-01-06 10:09:12 +01:00
Calixte Denizet
e5ccb70efb
Update Puppeteer to version 21.7.0
2024-01-04 16:11:09 +01:00
Jonas Jenwald
3793a56116
Update npm packages
2023-12-23 12:29:51 +01:00
Henrik Skupin
a067d38ce3
Update Puppeteer to version 21.6.0 and force "CDP" protocol
2023-12-08 12:27:44 +01:00
manunio
8bb8070116
fuzz: initial integration
...
- Adds initial fuzz_target for image decoders.
- Adds jazzer.js as dev-dependency.
- Adds a .eslintrc rule to ignore import/no-unresolved error.
2023-12-03 18:52:48 +05:30
Tim van der Meij
7381515e20
Update dependencies to the most recent versions
2023-11-25 17:25:35 +01:00
Calixte Denizet
53101b379b
Restore the option to set light/dark mode for chromium and generic builds
2023-11-18 21:32:25 +01:00
Tim van der Meij
8e2c9a30d7
Update dependencies to the most recent versions
2023-11-11 15:57:28 +01:00
Jonas Jenwald
e0898a7ee3
Update npm packages
...
The new major version of `gulp-zip` shouldn't be a problem, given the changes listed in https://github.com/sindresorhus/gulp-zip/releases/tag/v6.0.0
2023-11-04 09:47:31 +01:00
Tim van der Meij
ecba5b7c6d
Update dependencies to the most recent versions
2023-10-29 14:22:30 +01:00
Calixte Denizet
66982a2a11
[api-minor] Move to Fluent for the localization (bug 1858715)
...
- For the generic viewer we use @fluent/dom and @fluent/bundle
- For the builtin pdf viewer in Firefox, we set a localization url
and then we rely on document.l10n which is a DOMLocalization object.
2023-10-19 11:20:41 +02:00
Tim van der Meij
4c17f99fab
Fix dependency vulnerabilities with npm audit fix
2023-10-14 13:50:24 +02:00
Tim van der Meij
e1307fdba8
Update dependencies to the most recent versions
2023-10-14 13:50:19 +02:00
Jonas Jenwald
5e986cb514
Use native import maps
in development mode
...
This patch seem to work fine locally now, and `mozregression` points to it being fixed in bug https://bugzilla.mozilla.org/show_bug.cgi?id=1803984 which landed in Firefox 116.
By using the native `import maps` functionality, we can remove a development dependency. Please find the specification at https://wicg.github.io/import-maps/
2023-10-13 20:35:34 +02:00
Jonas Jenwald
38245500fd
Output JavaScript modules for the LIB
build-target (PR 17055 follow-up)
...
This *finally* allows us to mark the entire PDF.js library as a "module", which should thus conclude the (multi-year) effort to re-factor and improve how we import files/resources in the code-base.
This also means that the `gulp ci-test` target, which is what's run in GitHub Actions, now uses JavaScript modules since that's supported in modern Node.js versions.
2023-10-13 18:54:33 +02:00
dependabot[bot]
67b5c69d15
Bump postcss from 8.4.30 to 8.4.31
...
Bumps [postcss](https://github.com/postcss/postcss ) from 8.4.30 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases )
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/postcss/postcss/compare/8.4.30...8.4.31 )
---
updated-dependencies:
- dependency-name: postcss
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-10-08 04:06:58 +00:00
Jonas Jenwald
790b480bbc
Update Puppeteer to the latest version
...
This also required updating the `postinstall`-step to account for recent changes in Puppeteer.
2023-09-28 17:21:07 +02:00
Jonas Jenwald
7413546e16
Remove comments from the *built* CSS files
...
The old pre-processor used for CSS, and HTML, files leaves comments intact which unnecessarily contributes to the overall size of the *built* CSS files (note that the built JavaScript files don't include comments).
Rather than trying to "hack" comment removal into the pre-processor it seems easier to use a PostCSS plugin instead. The one potential issue is that it also affects *some* whitespaces, and it's not clear to me if this'll work with the various CSS-related tests that run in mozilla-central.
Please refer to https://www.npmjs.com/package/postcss-discard-comments for additional information.
2023-09-26 13:38:26 +02:00
Jonas Jenwald
1b95ab7cfa
Update npm packages
2023-09-24 11:03:19 +02:00
Tim van der Meij
6c5d5f3cb9
Update Puppeteer to version 21.2.1
...
This release fixes the upstream bug that caused old Firefox revisions to
not be removed from the cache.
Fixes #16904 .
2023-09-16 14:05:26 +02:00