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

jhillyerd / enmime
87%
main: 87%

Build:
Build:
LAST BUILD BRANCH: refs/tags/v2.5.0
DEFAULT BRANCH: main
Repo Added 03 Dec 2016 09:21PM UTC
Files 40
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

LAST BUILD ON BRANCH refs/tags/v2.5.0
branch: SELECT
CHANGE BRANCH
x
  • No branch selected
  • 303-eml-attactment-issue
  • 331-bug-getheader-doesnt-add-quote-for-especials
  • TestRandOption-fails
  • add-part-removechild
  • api
  • bugfix/inline-attachments-not-properly-parsed
  • cibadge
  • cte-override
  • cve-fix
  • dc/stacks
  • dependabot/github_actions/actions/checkout-4
  • dependabot/github_actions/actions/checkout-5
  • dependabot/github_actions/actions/checkout-6
  • dependabot/github_actions/actions/checkout-7
  • dependabot/github_actions/actions/setup-go-5
  • dependabot/github_actions/actions/setup-go-6
  • dependabot/github_actions/actions/setup-go-7
  • dependabot/github_actions/golangci/golangci-lint-action-4
  • dependabot/github_actions/golangci/golangci-lint-action-5
  • dependabot/github_actions/golangci/golangci-lint-action-6
  • dependabot/github_actions/golangci/golangci-lint-action-7
  • dependabot/github_actions/golangci/golangci-lint-action-8
  • dependabot/github_actions/golangci/golangci-lint-action-9
  • dependabot/go_modules/golang.org/x/net-0.17.0
  • dependabot/go_modules/golang.org/x/net-0.23.0
  • dependabot/go_modules/golang.org/x/net-0.55.0
  • dependabot/go_modules/gopkg.in/yaml.v3-3.0.0
  • deps
  • dos
  • encoding-options
  • envelope-marshaljson
  • errfmt
  • ex-builder
  • fix-empty-body-header-separator
  • fix-html-part-with-boundary
  • fix-mediatype-substring-param-drop
  • fix/base64cleaner-error-policy
  • fix/issue-109
  • gci1xx
  • gci2xx
  • ghabot
  • go-fix
  • go123
  • godeps
  • golint
  • gover
  • govet
  • lint-fix
  • lintfix
  • lints
  • main
  • mimeheader-294
  • minchardet
  • modv2
  • nixbump
  • nixgo
  • readme
  • refs/tags/v1.0.0
  • refs/tags/v1.0.1
  • refs/tags/v1.1.0
  • refs/tags/v1.2.0
  • refs/tags/v1.3.0
  • refs/tags/v2.0.0
  • refs/tags/v2.1.0
  • refs/tags/v2.2.0
  • refs/tags/v2.3.0
  • refs/tags/v2.4.0
  • refs/tags/v2.4.1
  • refs/tags/v2.5.0
  • release-2.2.0
  • repet
  • revert-298
  • rm-unused-func
  • tp-errors
  • tw10
  • update-linters
  • vet

05 Sep 2026 07:50PM UTC coverage: 86.965% (+0.2%) from 86.742%
33988563721

push

github

web-flow
Add MaxMIMEParts option to cap parsed MIME parts (#413)

* Add MaxMIMEParts option to cap parsed MIME parts

Messages with a huge number of (possibly tiny) sibling parts could consume
excessive CPU and memory while parsing: every part was materialized with no
part-count limit, and appending each child re-walked the sibling chain,
making part insertion quadratic in the number of parts.

- Add the MaxMIMEParts parser option (default 10000, zero or negative
  disables), enforced by a budget shared across nested multipart parsing.
  Exceeding it aborts parsing with a TooManyPartsError, which is always
  fatal even when SkipMalformedParts is enabled, since the part tree would
  be incomplete.
- Track the tail of each child chain in parseParts via the new appendChild
  helper so appends are O(1) instead of walking the sibling list; AddChild
  delegates to it, preserving its public behavior.

* Fix lint

55 of 55 new or added lines in 3 files covered. (100.0%)

3416 of 3928 relevant lines covered (86.97%)

4327.7 hits per line

Relevant lines Covered
Build:
Build:
3928 RELEVANT LINES 3416 COVERED LINES
4327.7 HITS PER LINE
Source Files on main
  • Tree
  • List 40
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
33988563721 refs/tags/v2.5.0 Add MaxMIMEParts option to cap parsed MIME parts (#413) * Add MaxMIMEParts option to cap parsed MIME parts Messages with a huge number of (possibly tiny) sibling parts could consume excessive CPU and memory while parsing: every part was material... push 05 Sep 2026 07:55PM UTC web-flow github
86.97
33988331936 main Add MaxMIMEParts option to cap parsed MIME parts (#413) * Add MaxMIMEParts option to cap parsed MIME parts Messages with a huge number of (possibly tiny) sibling parts could consume excessive CPU and memory while parsing: every part was material... push 05 Sep 2026 07:51PM UTC web-flow github
86.97
33986898861 dos Fix lint Pull #413 05 Sep 2026 07:22PM UTC jhillyerd github
86.97
33986823257 dos Fix lint Pull #413 05 Sep 2026 07:21PM UTC jhillyerd github
86.86
33986100358 dos Add MaxMIMEParts option to cap parsed MIME parts Messages with a huge number of (possibly tiny) sibling parts could consume excessive CPU and memory while parsing: every part was materialized with no part-count limit, and appending each child re-... Pull #413 05 Sep 2026 07:06PM UTC jhillyerd github
86.85
33983401449 main Add MarshalJSON to Envelope and Part (#412) * Add MarshalJSON to Envelope and Part json.Marshal on an Envelope currently fails with "encountered a cycle via *enmime.Part" because each child Part links back to its Parent, and the same parts are a... push 05 Sep 2026 06:14PM UTC web-flow github
86.74
33344193262 envelope-marshaljson Document that Part.MarshalJSON omits child parts Pull #412 31 Aug 2026 12:18AM UTC ChrisJr404 github
86.74
33265715442 main Add Part.DeleteChild to remove a child from the tree (#411) AddChild had no counterpart, so there was no way to drop a child (say an attachment) from a parsed part tree before re-encoding it. DeleteChild relinks the sibling chain around the remov... push 29 Aug 2026 05:29PM UTC web-flow github
86.64
32925986025 envelope-marshaljson Add MarshalJSON to Envelope and Part json.Marshal on an Envelope currently fails with "encountered a cycle via *enmime.Part" because each child Part links back to its Parent, and the same parts are also reachable through Attachments, Inlines and ... Pull #412 26 Aug 2026 03:20AM UTC ChrisJr404 github
86.68
32915583524 add-part-removechild Add Part.DeleteChild to remove a child from the tree AddChild had no counterpart, so there was no way to drop a child (say an attachment) from a parsed part tree before re-encoding it. DeleteChild relinks the sibling chain around the removed chil... Pull #411 26 Aug 2026 12:35AM UTC ChrisJr404 github
86.64
See All Builds (918)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc