fen
8474b8eb02
Cap attachment filenames at 128 chars server-side
...
CI / test (pull_request) Successful in 20s
CI / docker (pull_request) Skipped
A 250-char multipart filename was accepted and echoed verbatim in
Content-Disposition. SanitizeFilename already truncates; lower the cap
from 255 to 128 so DB rows and header echoes stay bounded (#248 ).
2026-09-17 14:15:05 -05:00
poslop
e81f825ab8
Merge pull request 'Update README.md' ( #252 ) from poslop-adjust-images into main
...
CI / test (push) Successful in 19s
CI / docker (push) Skipped
Reviewed-on: #252
2026-09-17 19:07:11 +00:00
poslop
3d50a264ed
Update README.md
CI / test (pull_request) Successful in 20s
CI / docker (pull_request) Skipped
2026-09-17 19:02:36 +00:00
fen
522e016a29
Merge pull request 'Release v0.4.0: dev -> main' ( #251 ) from dev into main
CI / test (push) Successful in 19s
CI / docker (push) Successful in 36s
v0.4.0
2026-09-17 15:35:20 +00:00
fen
cf6e52bcc5
Merge pull request 'Reserve mine/unlock/guess/f custom slugs' ( #247 ) from fix-reserved-slugs into dev
CI / test (push) Successful in 21s
CI / docker (push) Successful in 48s
CI / test (pull_request) Successful in 19s
CI / docker (pull_request) Skipped
2026-09-17 15:32:17 +00:00
fen
3a8f528693
Merge pull request 'v0.4.0 release prep: README + screenshots (Ref #160 )' ( #246 ) from release-readme-160 into dev
CI / test (push) Successful in 20s
CI / docker (push) Successful in 39s
2026-09-17 15:31:52 +00:00
fen
ed22579bed
#243 pentest follow-up: reserve mine/unlock/guess/f custom slugs
CI / test (pull_request) Successful in 20s
CI / docker (pull_request) Skipped
2026-09-17 10:31:06 -05:00
fen
7ee3ffbfc9
v0.4.0 release prep: README refresh + new wiki screenshots (Ref #160 )
CI / test (pull_request) Successful in 23s
CI / docker (pull_request) Skipped
2026-09-17 10:25:20 -05:00
fen
53e7a97c44
Merge pull request ' #243 fix attempt 2: button capitalization + link button label persistence' ( #245 ) from fix-243-r2 into dev
CI / test (push) Successful in 21s
CI / docker (push) Successful in 46s
2026-09-17 14:50:10 +00:00
fen
e7ecb9789b
#243 fix attempt 2: capitalize action buttons; link button keeps its label after copy feedback
CI / test (pull_request) Successful in 20s
CI / docker (pull_request) Skipped
2026-09-16 15:56:15 -05:00
fen
3c5ccfb787
Merge pull request ' #243 : copy button should copy the link' ( #244 ) from fix-243 into dev
CI / test (push) Successful in 19s
CI / docker (push) Successful in 47s
2026-09-16 20:44:56 +00:00
fen
1f745b6e59
#243 : copy button copies the paste link; content copy kept on separate button
CI / test (pull_request) Successful in 26s
CI / docker (pull_request) Skipped
2026-09-16 15:40:39 -05:00
fen
a9f94ce806
Merge pull request ' #233 : file attachment title takes the file name' ( #236 ) from fix-233 into dev
CI / test (push) Successful in 50s
CI / docker (push) Successful in 44s
2026-09-10 23:39:44 +00:00
fen
dbcdd1b7cd
Merge pull request ' #240 : burn-after-read readable box padding/indent consistency' ( #242 ) from fix-240 into dev
CI / test (push) Successful in 43s
CI / docker (push) Successful in 33s
2026-09-10 23:38:09 +00:00
fen
c89d064eb8
#240 : indent burn-after-read readable box under the option label text and match row padding rhythm
CI / test (pull_request) Successful in 44s
CI / docker (pull_request) Skipped
2026-09-10 18:09:00 -05:00
fen
9c0bd7abb9
Merge pull request ' #240 : burn-after-read submenu padding inconsistent with UI' ( #241 ) from fix-240 into dev
CI / test (push) Successful in 43s
CI / docker (push) Successful in 43s
2026-09-10 23:00:32 +00:00
fen
f25ed8bc5d
#240 : keep submenu padding on burn-after-read row
CI / test (pull_request) Successful in 43s
CI / docker (pull_request) Skipped
2026-09-10 17:58:21 -05:00
fen
9490b8d25a
Merge pull request ' #238 : page 2 shows in pagination window when not adjacent' ( #239 ) from fix-238 into dev
CI / test (push) Successful in 43s
CI / docker (push) Successful in 40s
2026-09-10 22:42:25 +00:00
fen
b840bffeba
#238 : drop hardcoded page 2 from pagination window
CI / test (pull_request) Successful in 44s
CI / docker (pull_request) Skipped
2026-09-10 17:29:28 -05:00
fen
5075374abe
Merge pull request ' #235 : rename Language column to Type; attachments show file extension' ( #237 ) from fix-235 into dev
CI / test (push) Successful in 43s
CI / docker (push) Successful in 37s
2026-09-10 22:14:57 +00:00
fen
0008b8ce0c
#235 : rename Language column to Type; attachment pastes show file extension
...
CI / test (pull_request) Successful in 43s
CI / docker (pull_request) Skipped
- history/mine table column 'Language' -> 'Type' (data-sort key 'type')
- /api/public and /api/mine rows gain a 'type' field: file extension for
attachment pastes, stored language otherwise (default 'text')
- paste page stats label 'Language' -> 'Type'; summary line uses the same
label; get-paste JSON gains 'type'
- store list queries LEFT JOIN attachments to expose the filename
- table.js sorting accepts the 'type' key
2026-09-10 17:13:37 -05:00
fen
1dd8a3b28a
Merge pull request ' #232 : remove duplicate filename under attachment pill, widen pill' ( #234 ) from fix-232 into dev
CI / test (push) Successful in 46s
CI / docker (push) Successful in 41s
2026-09-10 22:06:25 +00:00
fen
9a5eaed00b
#232 : file pill shows filename twice on non-image files; drop duplicate, let long names truncate wider and reveal on hover
CI / test (pull_request) Successful in 44s
CI / docker (pull_request) Skipped
2026-09-10 17:05:18 -05:00
fen
785fafcaf9
#233 : file attachment title takes the file name, fallback date.ext
CI / test (pull_request) Successful in 44s
CI / docker (pull_request) Skipped
2026-09-10 17:05:08 -05:00
fen
ca59c19fa4
fix-232: drop attachment-preview img for non-image files (alt text painted duplicate filename); widen chip name max-width to 560px
CI / test (pull_request) Successful in 42s
CI / docker (pull_request) Skipped
2026-09-10 17:02:54 -05:00
fen
e059ca1554
Merge pull request ' #229 : padding between image and pill body border' ( #230 ) from fix-229 into dev
CI / test (push) Successful in 42s
CI / docker (push) Successful in 52s
2026-09-10 19:55:58 +00:00
fen
86eb821780
#229 : padding between image and pill border, drop corner-clipped inner border
CI / test (pull_request) Successful in 46s
CI / docker (pull_request) Skipped
2026-09-10 14:54:28 -05:00
fen
e589428315
Merge pull request 'Fix #221 follow-up: summary pill size for attachment pastes' ( #228 ) from fix-221-r2 into dev
CI / test (push) Successful in 42s
CI / docker (push) Successful in 42s
2026-09-10 19:33:51 +00:00
fen
d18bbb7064
#221 : summary pill size must come from the attachment blob for file pastes
...
CI / test (pull_request) Successful in 43s
CI / docker (pull_request) Skipped
The merged #224 fix covered the details grid but left the summary
pill using humanSize(len(row.Content)), which reads 0 for attachment
pastes (text content is empty). Use the attachment size there too.
2026-09-10 14:31:56 -05:00
fen
cb58a51bab
Merge pull request 'fix #221 : scale image pastes, clean link pill, raw image view, accurate size' ( #224 ) from fix-221 into dev
CI / test (push) Successful in 41s
CI / docker (push) Successful in 40s
2026-09-10 19:21:22 +00:00
fen
98ea7eefa9
fix #221 : scale image pastes, drop text box, fix raw view and size
...
CI / test (pull_request) Successful in 45s
CI / docker (pull_request) Skipped
- image pastes render the image scaled to fit the viewer box (aspect
ratio preserved, max-height 70vh), no text/code box below it
- link pill moved under the image as a small inline chip
- /raw serves image attachment bytes as an image instead of empty text
- view details size reports the actual attachment file size
2026-09-10 14:19:07 -05:00
fen
44cff7e718
Merge pull request 'Fix details pill border clipped thin at corners' ( #223 ) from fix-222 into dev
CI / test (push) Successful in 44s
CI / docker (push) Successful in 52s
2026-09-10 19:18:27 +00:00
fen
fa702eb8b1
Fix details pill border clipped thin at corners ( #222 )
...
CI / test (pull_request) Successful in 42s
CI / docker (pull_request) Skipped
The details pill drew its own 1px border with a 10px radius inside .float, which draws the real border at 20px radius and clips with overflow:hidden. The parent's looser curve clipped the pill's tighter corner curve, making the border appear thinner/cut at the corners, in both collapsed and expanded states. Drop the pill's own border/radius so .float is the single border surface, matching the other pills on the page.
Ref #222
2026-09-10 14:16:28 -05:00
fen
7c7e60375c
Merge pull request #217 from fen/fix-209
...
CI / test (push) Successful in 41s
CI / docker (push) Successful in 37s
Fix #209 r2: arrows immediately right of the column label text
2026-09-10 13:27:49 -05:00
fen
700b8252f0
Merge pull request 'Fix #209 r2: sort arrows immediately right of label text' ( #218 ) from fix-209 into dev
CI / test (push) Successful in 47s
CI / docker (push) Successful in 41s
2026-09-10 18:17:39 +00:00
fen
89a9c173ca
Fix #209 r2: sort arrows immediately right of label text
CI / test (pull_request) Successful in 43s
CI / docker (pull_request) Skipped
2026-09-10 13:15:06 -05:00
fen
13884ca786
Merge pull request #215 from fix-205
...
CI / test (push) Successful in 46s
CI / docker (push) Successful in 42s
Fix #205 : stop gutter drift from phantom newline rows
2026-09-10 18:15:03 +00:00
fen
7cffd21df9
Fix #209 r2: arrows immediately right of label text, fixed gap
...
CI / test (pull_request) Successful in 44s
CI / docker (pull_request) Skipped
Absolute right:8px pinned arrows to the column edge; inline span after
the label with margin-left:6px keeps a consistent gap from the text.
2026-09-10 13:14:28 -05:00
fen
5034f156ee
Fix #205 : strip whitespace-only text nodes between codeline blocks
...
CI / test (pull_request) Successful in 43s
CI / docker (pull_request) Skipped
paste-lines.js rebuilt the codebody with innerHTML but relied on the
server-side '\n' delimiters disappearing between the per-line blocks.
Under white-space: pre any whitespace-only text node that survives
(cached HTML, template drift) renders as a phantom row and drifts the
gutter numbers off their lines. splitLines() now strips whitespace-only
text nodes after rebuilding, keeping renumber() geometry intact.
2026-09-10 13:12:12 -05:00
fen
6951470bda
Merge pull request 'Fix #207 r2: dark mode toggle left aligned per owner feedback' ( #213 ) from fix-207-r2 into dev
CI / test (push) Successful in 41s
CI / docker (push) Successful in 43s
2026-09-10 18:08:45 +00:00
fen
c320fa03c9
Fix #207 r2: dark mode toggle left aligned per owner feedback
CI / test (pull_request) Successful in 46s
CI / docker (pull_request) Skipped
2026-09-10 13:07:14 -05:00
fen
672288e60b
Merge pull request 'Fix #209 : sort arrows to the right of column labels' ( #212 ) from fix-209 into dev
CI / test (push) Successful in 45s
CI / docker (push) Successful in 49s
2026-09-10 18:02:46 +00:00
fen
5039a76bec
Fix #209 : move sort arrows to the right of the column label
CI / test (pull_request) Successful in 45s
CI / docker (pull_request) Skipped
2026-09-10 13:02:22 -05:00
fen
a49127eff2
Merge pull request 'Fix #210 : saved pastes ID column / delete button overlap' ( #211 ) from fix-210 into dev
CI / test (push) Successful in 40s
CI / docker (push) Successful in 40s
2026-09-10 18:00:42 +00:00
fen
8636a23f49
Fix #210 : declare missing delete-button column in saved pastes table
...
CI / test (pull_request) Successful in 45s
CI / docker (pull_request) Skipped
/mine rows render 7 cells (ID + delete button) but the colgroup and
thead only declared 6 columns, so under table-layout:fixed the delete
button cell overlapped the ID column at narrower widths. Add a
col-del column + empty header th to match the row cells.
2026-09-10 12:56:10 -05:00
fen
348f792c73
Merge pull request 'Fix #169 : persistent full-width divider between dropdown title and body' ( #195 ) from fix-195 into dev
CI / test (push) Successful in 44s
CI / docker (push) Successful in 45s
2026-09-10 12:27:33 -05:00
fen
5c6cd40539
Merge pull request 'Fix #167 r2' from fix-167-r2 into dev
CI / test (push) Successful in 42s
CI / docker (push) Successful in 39s
2026-09-10 12:22:14 -05:00
fen
ec791cc2db
Fix #167 r2: measure-based gutter rows + fix undefined tops ref in renumber
...
CI / test (pull_request) Successful in 42s
CI / docker (pull_request) Skipped
QA of the #167 follow-up found two defects:
1) renumber() referenced an undefined 'tops' variable in the rAF
re-verification pass, so any wrap toggle that reflowed a partially
filled last visual row left stale (non-idempotent) numbering.
2) rows were derived from per-span heights while the code column also
renders newline text nodes between .codeline blocks, so the gutter
could drift from the code column's real visual rows.
renumber() now measures each .codeline's actual offsetTop and places
every number on the visual row its line starts on (a line wrapping to N
rows gets its number on the first of them), pads filler rows in between,
and self-corrects one frame later if reflow moves any line. Wrap-OFF
path stays unchanged ('1
2
3
4'). Verified in headless Chromium:
gutter/code row alignment exact at 1200px and 640px, toggle cycles
stable, no horizontal scroll, no CSP console errors; go build/test pass.
2026-09-10 12:19:44 -05:00
fen
23cf3151c4
Merge pull request 'Fix settings dark mode toggle and center it ( #197 )' ( #199 ) from fix-197 into dev
CI / test (push) Successful in 42s
CI / docker (push) Successful in 50s
2026-09-10 17:16:38 +00:00
fen
f1665f1b31
Merge fix-167 (PR #200 ) into dev
...
CI / test (push) Successful in 38s
CI / docker (push) Successful in 43s
Resolves #167
QA: fen
2026-09-10 12:14:21 -05:00