{"id":"6916796badcd0bfee0251fd3","title":"2025 11 02 Issue 70","path":"how-to/committee/release-notes/2025-11-02-issue-70","contentMarkdown":"# 2nd November 2025 — HTML Paste Dialog Enhancements [#70](https://github.com/nbarrett/ngx-ramblers/issues/70)\n## [build 341](https://github.com/nbarrett/ngx-ramblers/actions/runs/19015818904) — [Resolves #70](https://github.com/nbarrett/ngx-ramblers/issues/70) — [commit a2c9348](https://github.com/nbarrett/ngx-ramblers/commit/a2c9348)\n\nEnhanced HTML migration dialog workflow and fixed Puppeteer timeout issues with Fly.io-optimized browser configuration.\n\n**Where to Find It**\n\n- **Dynamic Content → Markdown Editor**: HTML paste dialog\n- **Admin → Migration**: Base URL selection and custom URL management\n\n**Benefits**\n\n- **Better URL Selection**: Proper dropdown replaces datalist, with dedicated custom URL input\n- **Persistent Dialog**: No auto-close when switching windows to copy URLs\n- **Save Custom URLs**: Checkbox option to save custom URLs to migration config\n- **Faster Page Loads**: Changed from 'networkidle2' to 'domcontentloaded' wait strategy\n- **Fly.io Optimized**: Browser flags prevent container memory issues\n- **Longer Timeout**: 60-second timeout accommodates slow Fly.io environments\n- **Better Visual Emphasis**: Dimmed backdrop on processing indicator\n\n**Technical Details**\n\nFrontend Changes:\n- Replace datalist with proper dropdown select for base URL selection\n- Add 'Custom URL...' option triggering dedicated input field\n- Remove overlay click handler (prevents dialog auto-close)\n- Add dimmed backdrop to paste processing indicator\n- Prompt to save custom URLs with checkbox option\n- Auto-save new migration config entries when user opts in\n- Reset all custom URL state on dialog close\n- Remove auto-resize on input (prevents scroll jumping)\n\nBackend Changes:\n- Increase Puppeteer timeout from 30s to 60s for Fly.io\n- Change wait strategy from 'networkidle2' to 'domcontentloaded'\n- Add Fly.io-optimized browser launch flags:\n  - --disable-dev-shm-usage (prevents container memory issues)\n  - --disable-accelerated-2d-canvas (reduces resource usage)\n  - --no-first-run, --no-zygote, --disable-gpu (container optimizations)\n\nUX Improvements:\n- Dropdown displays all existing migration config URLs\n- Custom URL input appears only when 'Custom URL...' selected\n- Checkbox prompts to save for future use\n- Dialog persists when switching windows","contentHtml":"<h1>2nd November 2025 — HTML Paste Dialog Enhancements <a href=\"https://github.com/nbarrett/ngx-ramblers/issues/70\">#70</a></h1>\n<h2><a href=\"https://github.com/nbarrett/ngx-ramblers/actions/runs/19015818904\">build 341</a> — <a href=\"https://github.com/nbarrett/ngx-ramblers/issues/70\">Resolves #70</a> — <a href=\"https://github.com/nbarrett/ngx-ramblers/commit/a2c9348\">commit a2c9348</a></h2>\n<p>Enhanced HTML migration dialog workflow and fixed Puppeteer timeout issues with Fly.io-optimized browser configuration.</p>\n<p><strong>Where to Find It</strong></p>\n<ul>\n<li><strong>Dynamic Content → Markdown Editor</strong>: HTML paste dialog</li>\n<li><strong>Admin → Migration</strong>: Base URL selection and custom URL management</li>\n</ul>\n<p><strong>Benefits</strong></p>\n<ul>\n<li><strong>Better URL Selection</strong>: Proper dropdown replaces datalist, with dedicated custom URL input</li>\n<li><strong>Persistent Dialog</strong>: No auto-close when switching windows to copy URLs</li>\n<li><strong>Save Custom URLs</strong>: Checkbox option to save custom URLs to migration config</li>\n<li><strong>Faster Page Loads</strong>: Changed from &#39;networkidle2&#39; to &#39;domcontentloaded&#39; wait strategy</li>\n<li><strong>Fly.io Optimized</strong>: Browser flags prevent container memory issues</li>\n<li><strong>Longer Timeout</strong>: 60-second timeout accommodates slow Fly.io environments</li>\n<li><strong>Better Visual Emphasis</strong>: Dimmed backdrop on processing indicator</li>\n</ul>\n<p><strong>Technical Details</strong></p>\n<p>Frontend Changes:</p>\n<ul>\n<li>Replace datalist with proper dropdown select for base URL selection</li>\n<li>Add &#39;Custom URL...&#39; option triggering dedicated input field</li>\n<li>Remove overlay click handler (prevents dialog auto-close)</li>\n<li>Add dimmed backdrop to paste processing indicator</li>\n<li>Prompt to save custom URLs with checkbox option</li>\n<li>Auto-save new migration config entries when user opts in</li>\n<li>Reset all custom URL state on dialog close</li>\n<li>Remove auto-resize on input (prevents scroll jumping)</li>\n</ul>\n<p>Backend Changes:</p>\n<ul>\n<li>Increase Puppeteer timeout from 30s to 60s for Fly.io</li>\n<li>Change wait strategy from &#39;networkidle2&#39; to &#39;domcontentloaded&#39;</li>\n<li>Add Fly.io-optimized browser launch flags:<ul>\n<li>--disable-dev-shm-usage (prevents container memory issues)</li>\n<li>--disable-accelerated-2d-canvas (reduces resource usage)</li>\n<li>--no-first-run, --no-zygote, --disable-gpu (container optimizations)</li>\n</ul>\n</li>\n</ul>\n<p>UX Improvements:</p>\n<ul>\n<li>Dropdown displays all existing migration config URLs</li>\n<li>Custom URL input appears only when &#39;Custom URL...&#39; selected</li>\n<li>Checkbox prompts to save for future use</li>\n<li>Dialog persists when switching windows</li>\n</ul>\n"}