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

nette / mail / 30280377988
89%

Build:
DEFAULT BRANCH: master
Ran 27 Jul 2026 03:31PM UTC
Jobs 1
Files 17
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

27 Jul 2026 03:28PM UTC coverage: 89.164% (+9.7%) from 79.487%
30280377988

push

github

dg
CssInliner: resolves declarations by the CSS cascade

Rules were applied in the order they appeared, so the last one to mention a
property won. A browser does not work that way: p.intro { color: red } followed
by p { color: blue } paints the intro red, while the inliner painted it blue.
The inlined mail therefore looked different from the page the CSS was written
for, and the more carefully the stylesheet was written, the more it diverged.

Declarations now compete the way they do in an author stylesheet: !important
first, then an existing inline style, then specificity, ties going to the later
rule. Each selector in a comma-separated list carries its own specificity, and
one part the DOM engine rejects (::marker) no longer discards the whole rule.
The argument of an ordinary functional pseudo-class is a keyword or an An+B
expression, not a selector, so the idents in :nth-child(odd) or :nth-child(-n+3)
do not count as type selectors; counting them would inflate specificity enough
to flip a winner.

Only the winner of each property is written out, so a property appears in the
style attribute once rather than several times with the earlier values trailing.
HTML attributes generated for Outlook (bgcolor, width) drop the !important
marker, which has no meaning in an attribute.

A '}' inside a style attribute would close the block the attribute is wrapped in
for parsing and turn the remainder into rules of its own, read back as the
element's inline declarations. Such an attribute is not a plain declaration list
and is kept verbatim.

683 of 766 relevant lines covered (89.16%)

0.89 hits per line

Coverage Regressions

Lines Coverage ∆ File
25
83.63
50.61% src/Mail/SmtpMailer.php
10
0.0
0.0% src/Bridges/MailTracy/MailPanel.php
6
94.74
1.57% src/Mail/MimePart.php
5
96.09
2.18% src/Mail/Message.php
4
95.0
0.17% src/Mail/DkimSigner.php
2
86.96
1.96% src/Mail/FallbackMailer.php
Jobs
ID Job ID Ran Files Coverage
1 30280377988.1 27 Jul 2026 03:31PM UTC 17
89.16
GitHub Action Run
Source Files on build 30280377988
  • Tree
  • List 17
  • Changed 8
  • Source Changed 0
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 6dd1042f on github
  • Prev Build on master (#29303012688)
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