• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / secrets / 20263688094
83%

Build:
DEFAULT BRANCH: master
Ran 16 Dec 2025 09:53AM UTC
Jobs 1
Files 12
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Dec 2025 09:52AM UTC coverage: 87.263% (+0.8%) from 86.444%
20263688094

push

github

web-flow
feat: add encrypted file upload and download support (#88)

* feat: add encrypted file upload and download support

- add MakeFileMessage and file parsing helpers to messager
- handle multipart uploads in generateLinkCtrl
- direct file download with Content-Disposition header
- tab switching between text/file modes in UI
- drag-drop file upload with client-side size validation
- --files.enabled and --files.max-size CLI options

* style(ui): polish file upload interface and fix layout issues

- redesign mode toggle as compact segmented control in card header
- simplify copy button using onclick instead of htmx to fix blink
- implement sticky footer that stays at viewport bottom
- ensure consistent form height between text and file modes

* fix(files): address code review findings for file upload

- change file delimiter from ~ to !! to avoid filename conflicts
- add filename validation rejecting !! and newline characters
- add X-Content-Type-Options: nosniff header for file downloads
- fix SizeLimit middleware to use MaxFileSize when files enabled
- remove redundant MaxFileSize default checks (CLI provides defaults)
- simplify ParseFileHeader by removing splitHeader wrapper
- add comprehensive tests for file upload/download handlers

* fix(files): resolve file download form submission and error handling

- fix form data encoding: use URLSearchParams instead of FormData to send
  application/x-www-form-urlencoded (server's ParseForm expects this format)
- add proper error handling for both wrong PIN and message expired cases
- fix button hover text visibility by adding explicit color: white

* fix(files): encrypt file metadata in storage

filename and content-type were previously visible in plaintext.
now only !!FILE!! prefix is unencrypted, all metadata encrypted with file data.

* refactor: address code review findings

- fix IsFile() timing issue in handleLoadMessageError (check before LoadMessage)
- add null byte and control char validation to filen... (continued)

324 of 355 new or added lines in 5 files covered. (91.27%)

1151 of 1319 relevant lines covered (87.26%)

21.13 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
3
0.0
0.0% app/main.go
5
97.3
app/messager/messager.go
23
87.94
-0.26% app/server/web.go
Jobs
ID Job ID Ran Files Coverage
1 20263688094.1 16 Dec 2025 09:53AM UTC 12
87.26
GitHub Action Run
Source Files on build 20263688094
  • Tree
  • List 12
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • fd9fb211 on github
  • Prev Build on master (#20248521065)
  • Next Build on master (#20280533275)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc