All Versions
Latest Version
Avg Release Cycle
41 days
Latest Release
1137 days ago

Changelog History
Page 5

  • v4.0.0-beta.9 Changes

    September 24, 2018
    • ๐Ÿ›  Fix usage of keyframes with createGlobalStyle, by @probablyup (see #2029)
  • v4.0.0-beta.8 Changes

    September 20, 2018
    • ๐Ÿ’… Inline and optimize the static hoisting functionality to avoid a bundler bug and shed a bit of package weight, by @probablyup (see #2021)
  • v4.0.0-beta.7 Changes

    September 18, 2018
    • ๐Ÿ’… Revise createGlobalStyle HMR back to the original PR code without using componentDidMount, by @probablyup (see #2017)

    • ๐Ÿ’… Some light refactoring to further reduce object allocations, by @probablyup (see #2016)

  • v4.0.0-beta.6 Changes

    September 17, 2018
    • ๐Ÿ›  Fix a bug introduced from some refactoring that went into beta.5 around usage of keyframes with multiple interpolations, by @probablyup (see #2013)

    • ๐Ÿ’… Tweak the styled components base component naming to look nicer in DevTools, by @probablyup (see #2012)

    • ๐Ÿ’… Beef up the error message that sometimes occurs when multiple versions of styled components are used together and the StyleSheet instance can't be found, by @probablyup (see #2012)

  • v4.0.0-beta.5 Changes

    September 14, 2018
    • ๐Ÿ›  Fix issue with createGlobalStyle and hot module reload, by @probablyup (see #2007)

    • โœ‚ Remove keyframes factory function, by @probablyup (see #2006)

  • v4.0.0-beta.4 Changes

    September 12, 2018
    • ๐Ÿ’… Use PureComponent instead of Component for the StyledComponent base class, by @probablyup

    • ๐Ÿ”จ Internal refactoring to simplify the codebase and make it more readily DCE-able, by @probablyup

  • v4.0.0-beta.3 Changes

    September 10, 2018
    • ๐Ÿ›  Fix an issue when streaming with very large amounts of output where sometimes styles might not make it to the client, by @probablyup (see #1996)

    • ๐Ÿ›  Fix the createGlobalStyle multiusage warning having false positives, by @probablyup (see #1993)

  • v4.0.0-beta.2 Changes

    September 09, 2018
    • ๐Ÿ”ฆ Expose ThemeConsumer component, context consumer render prop component from the React.createContext API if people are interested in using it rather than / in addition to the withTheme HOC, by @probablyup

    • โœ‚ Remove "no tags" experiment, by @probablyup (see #1987)

    • ๐Ÿ›  Fixed an issue with createGlobalStyle when the component was composed in multiple places and render of the subsequent component instance happened before unmount of the original; previously we removed styles immediately upon unmount of any instance without checking how many copies were still alive, by @probablyup (see #1989)

  • v4.0.0-beta.11 Changes

    October 08, 2018
    • โž• Add warning when component is not a styled component and cannot be referred via component selector, by @egdbear (see #2070)

    • ๐Ÿ›  Fix how ampersand is handled in self-referential selector combinations, e.g. & + & (see #2071)

    • โž• Add babel macro for full-featured interop with create react app v2+, by @lucleray (see #2032)

    When using CRA v2, import styled components from styled-components/macro instead to gain all the benefits of our babel plugin.

    • โž• Add a warning when wrapping a React component with styled() and the className isn't used (meaning styling isn't applied), by @Fer0x (see #2073)
  • v4.0.0-beta.10 Changes

    October 04, 2018
    • โž• Add support for as to be used with attrs for better polymorphism, by @imbhargav5 (see #2055)

    • ๐Ÿ›  Fix withTheme HOC to use a theme defined in defaultProps of the wrapped component, by @theboyWhoCriedWoolf (see #2033)

    • โž• Add enzymeFind test utility to easily grab instances of a styled-component from enyzme mounted testing scenarios, by @probablyup (see #2049)

    import { mount } from 'enzyme';
    import React from 'react';
    import styled from 'styled-components';
    import { enzymeFind } from 'styled-components/test-utils';
    const Thing = styled.div`
      color: red;
    const wrapper = mount(
        <Thing isCool />
    const thing = enzymeFind(wrapper, Thing);
    // expect(thing.props()).toHaveProperty('isCool') etc