From 4ae3a00464f955a16cf5f00655c4ab603e2bb95f Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 19 Apr 2026 10:55:29 +0300 Subject: [PATCH] chore: remove Electron repro project --- .../printpdf-page-range/index.html | 68 ------------------- .../printpdf-page-range/main.js | 53 --------------- .../printpdf-page-range/package.json | 13 ---- .../printpdf-page-range/print-page.html | 8 --- 4 files changed, 142 deletions(-) delete mode 100644 scripts/electron-repros/printpdf-page-range/index.html delete mode 100644 scripts/electron-repros/printpdf-page-range/main.js delete mode 100644 scripts/electron-repros/printpdf-page-range/package.json delete mode 100644 scripts/electron-repros/printpdf-page-range/print-page.html diff --git a/scripts/electron-repros/printpdf-page-range/index.html b/scripts/electron-repros/printpdf-page-range/index.html deleted file mode 100644 index fcb93cd9e6..0000000000 --- a/scripts/electron-repros/printpdf-page-range/index.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - printToPDF Repro - - - -

Electron printToPDF — Page Range State Corruption Repro

-

Click Run Test Sequence to reproduce the bug. It will:

-
    -
  1. Print with no page range (should succeed)
  2. -
  3. Print with page range "999" (should fail — page doesn't exist)
  4. -
  5. Print with no page range again (does it still work?)
  6. -
- - -
- - - - diff --git a/scripts/electron-repros/printpdf-page-range/main.js b/scripts/electron-repros/printpdf-page-range/main.js deleted file mode 100644 index 7c7a283d88..0000000000 --- a/scripts/electron-repros/printpdf-page-range/main.js +++ /dev/null @@ -1,53 +0,0 @@ -const { app, BrowserWindow, ipcMain } = require("electron"); - -let mainWindow; - -app.whenReady().then(() => { - mainWindow = new BrowserWindow({ - width: 800, - height: 600, - webPreferences: { - nodeIntegration: true, - contextIsolation: false, - }, - }); - mainWindow.loadFile("index.html"); -}); - -ipcMain.handle("print-test", async (_e, { pageRanges, step }) => { - const printWindow = new BrowserWindow({ - show: false, - width: 1, - height: 1, - webPreferences: { offscreen: process.platform !== "linux" }, - }); - - await printWindow.loadFile("print-page.html"); - - // Wait for content to be ready. - await printWindow.webContents.executeJavaScript( - `new Promise(r => requestAnimationFrame(() => requestAnimationFrame(r)))` - ); - - const opts = { - landscape: false, - pageSize: "A4", - scale: 1, - printBackground: true, - // Only include pageRanges if truthy (non-empty string). - ...(pageRanges ? { pageRanges } : {}), - }; - - console.log(`[Step ${step}] printToPDF called with:`, JSON.stringify(opts)); - - try { - const buffer = await printWindow.webContents.printToPDF(opts); - console.log(`[Step ${step}] SUCCESS - buffer size: ${buffer.length}`); - printWindow.destroy(); - return { ok: true, size: buffer.length }; - } catch (err) { - console.error(`[Step ${step}] FAILED: ${err.message}`); - printWindow.destroy(); - return { ok: false, error: err.message }; - } -}); diff --git a/scripts/electron-repros/printpdf-page-range/package.json b/scripts/electron-repros/printpdf-page-range/package.json deleted file mode 100644 index 5c380d9a96..0000000000 --- a/scripts/electron-repros/printpdf-page-range/package.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "electron-printpdf-page-range-repro", - "version": "1.0.0", - "private": true, - "description": "Minimal repro for Electron printToPDF state corruption after an invalid pageRanges failure", - "main": "main.js", - "scripts": { - "start": "electron ." - }, - "devDependencies": { - "electron": "^35.0.0" - } -} diff --git a/scripts/electron-repros/printpdf-page-range/print-page.html b/scripts/electron-repros/printpdf-page-range/print-page.html deleted file mode 100644 index 04eb11623d..0000000000 --- a/scripts/electron-repros/printpdf-page-range/print-page.html +++ /dev/null @@ -1,8 +0,0 @@ - - -Print Test - -

Test Page

-

This is a single-page document used to reproduce the printToPDF bug.

- -