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

Khan / aphrodite
0%
master: 0%

Build:
Build:
LAST BUILD BRANCH: clearer-error-message
DEFAULT BRANCH: master
Repo Added 10 Mar 2017 10:58PM UTC
Files 8
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 code-splitting
branch: code-splitting
CHANGE BRANCH
x
Reset
  • code-splitting
  • Set
  • coverage
  • flow
  • flushtostyletag
  • hash-length-perf
  • jsdom
  • keyframes-test
  • mapobj
  • master
  • media-queries
  • optimize-generateCSSRuleset
  • rollup
  • server-test-minification
  • some-optimizations
  • update-deps
  • v1.2.1
  • v1.2.2
  • v1.2.3
  • v1.2.4
  • v1.2.5
  • v2.0.0
  • v2.1.0
  • v2.1.1
  • v2.2.0
  • v2.2.1
  • v2.2.2
  • v2.2.3

pending completion
516

push

travis-ci

lencioni
Use code splitting for default and no-important builds

If two copies of Aphrodite end up being run at the same time, you can
easily encounter issues due to state stored by Aphrodite not being
shared between the multiple copies (e.g. `isBuffering`).

Since v2, when we started using rollup to build Aphrodite, this was
pretty easy to accidentally do if you weren't careful about when you
imported from `aphrodite` or `aphrodite/no-important`. This has resulted
in some issues, particularly around
react-with-styles-interface-amp-aphrodite and hypernova-amp not being
super careful about which version of aphrodite they import. One of the
recent fixes for this can be seen here:

  https://github.com/airbnb/react-with-styles-interface-amp-aphrodite/pull/8

In an effort to make this safer, I am making a small change to how we
build this library. Rollup offers an experimental code splitting mode
that allows us to keep the separate entry points and automatically
dedupe all of the shared code into a single chunk that each entry point
imports. As a result, we can provide the same API we currently do to
consumers, and avoid this issue to some extent.

The result of running this build on the es directory looks like the
following:

- chunk-957f2f88.js
- index.js
- no-important.js

and es/index.js ends up looking like:

```js
import { a as makeExports } from './chunk-957f2f88.js';
import 'string-hash';
import 'inline-style-prefixer/static/plugins/calc';
import 'inline-style-prefixer/static/plugins/crossFade';
import 'inline-style-prefixer/static/plugins/cursor';
import 'inline-style-prefixer/static/plugins/filter';
import 'inline-style-prefixer/static/plugins/flex';
import 'inline-style-prefixer/static/plugins/flexboxIE';
import 'inline-style-prefixer/static/plugins/flexboxOld';
import 'inline-style-prefixer/static/plugins/gradient';
import 'inline-style-prefixer/static/plugins/imageSet';
import 'inline-style-prefixer/static/plugins/position';
import 'inline-style-prefi... (continued)

0 of 0 relevant lines covered (NaN%)

0.0 hits per line

Relevant lines Covered
Build:
Build:
0 RELEVANT LINES 0 COVERED LINES
0.0 HITS PER LINE
Source Files on code-splitting
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
516 code-splitting Use code splitting for default and no-important builds If two copies of Aphrodite end up being run at the same time, you can easily encounter issues due to state stored by Aphrodite not being shared between the multiple copies (e.g. `isBuffering`... push 11 May 2018 05:12PM UTC lencioni travis-ci pending completion  
See All Builds (187)
  • Repo on GitHub
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