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

jstedfast / MimeKit / 4.12.0.1624
95%
master: 94%

Build:
Build:
LAST BUILD BRANCH: mime-compliance-violations
DEFAULT BRANCH: master
Ran 03 May 2025 11:24PM UTC
Jobs 1
Files 188
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

03 May 2025 11:12PM UTC coverage: 94.815% (-0.02%) from 94.835%
4.12.0.1624

push

coveralls.net

jstedfast
Update MimeReader to use Span<T> for built-in intrinsics

It's gotten to a point where .NET Core's built-in SIMD optimizations
in Span<T>.IndexOf() have gotten as good or better than my current
optimization for scanning for a '\n' in ScanContent().

It also allows me to now use Span<T>.IndexOf() in all other locations
that were using `while (*inptr != '\n') inptr++`, so we get improved
performance in those locations for free.

As an added benefit, the code is cleaner when using Span<T> instead of
pointers. The Async code, especially, is a lot cleaner not having to
used unsafe/fixed statements everywhere.

The downside is that Span<T>.IndexOf() is *slower* than my current
optimizations on .NET Framework and possibly also even .NET Core where
the platform architecture does not have support for SIMD.

That's why this PR is a Work-In-Progress and not yet merged to master.

32059 of 33812 relevant lines covered (94.82%)

0.95 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
3
99.26
-0.09% D/a/MimeKit/MimeKit/MimeKit/AsyncMimeReader.cs
3
99.01
-0.06% D/a/MimeKit/MimeKit/MimeKit/MimeReader.cs
Jobs
ID Job ID Ran Files Coverage
1 4.12.0.1624.1 03 May 2025 11:24PM UTC 188
94.82
Source Files on build 4.12.0.1624
  • Tree
  • List 188
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 58a925e9 on github
  • Prev Build on master (#4.12.0.1623)
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