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

wikimedia / parsoid / 1804 / 1
85%
master: 85%

Build:
DEFAULT BRANCH: master
Ran 23 Feb 2018 04:53PM UTC
Files 85
Run time 3s
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

22 Feb 2018 09:22PM UTC coverage: 86.048% (-0.01%) from 86.058%
1804.1

push

travis-ci

arlolra
<a href="https://github.com/wikimedia/parsoid/commit/8966025e5">Bug fix in Async Token Transform Manager

* In some cases, the async ttm transformTokens loop was dropping
  result tokens on the floor. However, this required a bunch of
  rare events to come together:

  - a token transformer completes synchronously
  - the synchronous call returns more than 1 token
  - the synchronous call sets aborts further processing on the
    returned tokens by setting a rank higher than the aysnc phase&#39;s
    end rank.

* This was extremely rare because:
  - till recently, 2 in 3 tokens would go through the attribute
    transformer which would pretty much immediately bail into the
    async phase.

  - other token transformers in the async phase would also require
    some async work (ex: template, extension, image, dom-fragment
    handling)

  - those that completed synchronously (ex: urllinks, extlinks) and
    returned multiple tokens (ex: urllinks, extlinks) didn&#39;t set
    a high rank on the result tokens.

  - only one scenario (loop detection in templates) set the rank
    of result tokens to phaseEndRank (!)

* Fixes to the attribute transformer (coming in later patches because
  I rebased this above those patches) greatly reduced the # of tokens
  that go through the async phase. Since template expansion uses the
  same codepath, there is no longer a async-break opportunity for the
  template loop detection scenario. It completes synchronously and
  trips on the bug and was failing the &#39;Template infinite loop&#39; bug
  since the error message tokens were being dropped on the floor.

  That failure has now been fixed with this patch.

* Separately, it is worth examining our token tranformers if more
  code paths could set the phaseEndRank rank on their results to
  eliminate wasteful processing.

Change-Id: I</a><a class="double-link" href="https://github.com/wikimedia/parsoid/commit/f36d69a10ebac6aaef18aeeb3b5e... (continued)

8909 of 10952 branches covered (81.35%)

14216 of 16521 relevant lines covered (86.05%)

25719.99 hits per line

Source Files on job 1804.1
  • Tree
  • List 0
  • Changed 29
  • Source Changed 1
  • Coverage Changed 29
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 1
  • Travis Job 1804.1
  • 8966025e on github
  • Prev Job for on master (#1803.1)
  • Next Job for on master (#1805.3)
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