Releases: martysama0134/DiffyViewer
Releases · martysama0134/DiffyViewer
v2.0.0
v2.0.0
Features
- GitHub Gist URL support — paste a
gist.github.com/user/idURL to load diffs directly from GitHub Gists (single-file, with truncation handling) - URL hash size warning — diffs too large to share via URL now show a warning instead of silently creating broken links
Improvements
- SRI integrity hashes on dynamically loaded highlight.js theme CSS (closes the last CDN integrity gap)
- Clipboard fallback (
execCommand) for tutorial copy buttons and share URL copy on non-HTTPS contexts - Specific error message for GitHub API rate limit (403) responses
- Extracted
groupHunkSteps()helper deduplicating ~70 lines of parallel tutorial step generation logic - Tutorial state fully reset when navigating home
Fixes
- Fix
j/knavigation skipping hidden files when file filter is active - Fix tutorial state (flags, event listener, export menu) not resetting on home navigation
v1.9.0
v1.9.0
Features
- File search filter — filter input in sidebar filters files by path in real-time, hiding non-matching files in both the sidebar tree and the diff/tutorial view
- Filtered exports — all exports (HTML, Markdown, BBCode, Plain Text) respect the active file filter, with a yellow "Showing X of Y files (filtered)" notice in HTML exports
- File index TOC in diff HTML export — non-tutorial HTML exports now include a clickable file tree index, matching the tutorial export
- Context-aware export filenames — HTML exports use
diff.html/tutorial.html, ordiff-filtered.html/tutorial-filtered.htmlwhen a filter is active - Footer — links to the GitHub repository
Improvements
- URL examples shown below textarea (GitHub commit, PR,
.patch/.difflinks) - File filter preserved across whitespace and view mode toggles, reset on new diff
- Stats bar shows "X of Y files (filtered)" when filter is active
- Sample diff now includes a commit header with description
- Keyboard shortcut
ffocuses the file filter,Escclears it - Extracted shared helpers (
resolveFilePath,buildCommitHeaderHtml,buildFileIndexHtml,rerenderWithFilter) reducing ~70 lines of duplication - Normalized
vartolet/constin filter-related functions - Removed unused variable in export handler
v1.8.0
v1.8.0
Features
- URL loader — load diffs from remote URLs via
#@<url>in the hash or by pasting a URL into the textarea - GitHub URL rewriting — GitHub commit and PR URLs (including
.patch/.difflinks) are automatically routed throughapi.github.comto bypass CORS restrictions - Commit metadata in diff view — author, date, subject, and body from
git log -p/git format-patchoutput now shown at the top of the diff view (previously tutorial-only)
Improvements
- Loading spinner and error UI for URL fetches (CORS, timeout, HTTP errors)
- Cache-busting now uses version tag (
?v=1.8.0) - Commit metadata CSS included in all HTML exports, not just tutorial exports
Fixes
- Fix
j/kkeyboard navigation not working in tutorial mode (wrong selector) - Fix
Diff2Html.parse()crash on malformed input showing blank screen (now shows error with Go Back button)
v1.7.0
v1.7.0
Features
- Colored
+X-Xstats in the tutorial export file tree index
Improvements
- SRI integrity hashes on all CDN scripts and diff2html CSS
- Cache-busting on
app.js(app.js?v=3) - Extracted shared
downloadBlobandexportTutorialAshelpers, removing duplicated export code
Fixes
- Fix
btoastack overflow on large diffs (chunked 8KB conversion) - Fix deleted files showing as
/dev/nullin sidebar tree, tutorial view, and text exports - Fix sidebar tree not scrolling to files when in tutorial mode
v1.6.0
v1.6.0
Improvements
- Plain text export: consistent
===heading bars above and below file names - Plain text export: added spacing between Find/Replace code blocks for readability
- Plain text export: wider step separators for better visibility
- Plain text export: replaced unicode box-drawing separator with pure ASCII
- Plain text export: single closing separator at end of document instead of between each file
- Updated README with tutorial view, export formats, and correct repo URL
v1.5.0
v1.5.0
Features
- Export dropdown — single
⬇ Export ▾button replaces individual download buttons, with conditional menu items - Markdown tutorial export — fenced code blocks, headings, horizontal rule separators between steps
- BBCode tutorial export —
[code],[b],[size],[hr]tags for forum posting - Plain text tutorial export — no markup, works anywhere (notepad, Discord, DMs)
Changes
- Reordered toolbar: Tutorial before export buttons
- Download buttons now show
⬇emoji prefix
v1.4.0
Changes
- Removed "New Diff" button (use logo click or Esc to go home)
- Renamed "HTML" button to "Export HTML" and moved it to last position in toolbar
- In-app WebView detection (Telegram, Instagram, Facebook, etc.) — shows "Open in browser" hint on download buttons
Fixes
- Fix "Find:" label showing grey instead of yellow in tutorial view (missing
--yellowCSS variable) - Fix mobile downloads not triggering (anchor element now appended to DOM before click)
- Fix tutorial export copy button on non-HTTPS contexts (fallback to
execCommand) - Fix WebView warning button text not restoring after double-click
v1.3.0
v1.3.0
Features
- Syntax highlighting in tutorial view — code blocks are highlighted via highlight.js based on file extension
- Commit metadata in tutorial view — displays author, date, subject, and description when available (supports
git log -pandgit format-patchoutput)
Fixes
- Fix script loading race on hard-refresh by deferring app.js
v1.2.0
v1.2.0
Features
- Tutorial view — converts diffs into human-readable find/replace instructions (Find → Replace with, Find → Add below, Remove, New file, Delete file)
- Per-block copy buttons in tutorial view for easy forum pasting
- Tutorial HTML export with clickable file tree index and inline copy buttons
v1.1.0
v1.1.0
Improvements
- Default to unified view and hidden sidebar on mobile for better usability
- Mobile sidebar is now a full-height drawer overlay with backdrop dismiss
- Tapping a file in the tree auto-closes the sidebar on mobile