Releases

styled-ppx version works like semver but without major releases. The major version is always 0, like 0.x.x. Each minor version can contain a breaking change.

0.59.1

Published on Tue Jul 23 2024

CHANGES:

0.59.0

  • [BREAKING] Change entry point module CSS (from CssJs) on styled-ppx.melange, styled-ppx.native and styled-ppx.rescript (#490) (@davesnx)
  • [FEATURE] Add support and interpolation for zoom, will-change and user-select properties (#489) (@davesnx)
  • [FEATURE] Support content with interpolation #494 (@davesnx)
  • [FEATURE] Support define CSS variables in global and use CSS variables in properties #492 (@davesnx)
  • [FEATURE] Support overflow with 2 values
  • [FEATURE] Make animation-name abstract (@davesnx)
  • [FIX] Add 100 unsupported properties, which will render properly (#489) (@davesnx)
  • [FIX] Inline all CSS.Var and CSS.Cascading in properties (#495) (@davesnx)
  • [FIX] Color with support for rgba/hsla and others with calc/min and max (#495) (@davesnx)
  • [FIX] Warning of kebab-case on emotion client side (#493) (@davesnx)

0.58.1

  • [BREAKING] FontFamilyName.t is now a string (@davesnx)
  • [FIX] Make unsafe calls from “Cascading” be camelCase to avoid emotion’s warning #488 (@davesnx)
  • [FIX] Keep classname when ampersand is at the end of the selector (@davesnx)
  • [FIX] Fix fontFace in both melange and native (@davesnx)

0.58.0

  • [FEATURE] Initial @container support #476 (@zakybilfagih)
  • [FIX] Make selector nested maintain other selectors #486 (@davesnx)
  • [BREAKING] Remove Css module, styled_label and friends #487 (@davesnx)
  • [BREAKING] Merge styled-ppx.css and styled-ppx.emotion into styled-ppx.melange #487 (@davesnx)
  • [BREAKING] Merge styled-ppx.css-native and styled-ppx.emotion-native into styled-ppx.native #487 (@davesnx)
  • [BREAKING] Merge styled-ppx.css-native and styled-ppx.emotion-native into styled-ppx.native #487 (@davesnx)
  • [BREAKING] Remove PseudoClass and PseudoClassParam #487 (@davesnx)
  • Remove functor from Css_Js_Core #487 (@davesnx)
  • Remove melange.js and melange.belt from styled-ppx.melange #487 (@davesnx)
  • Remove server-reason-react.js and server-reason-react.belt from styled-ppx.native #487 (@davesnx)

0.57.1

  • Remove public_name from alcotest_extra #484 (@davesnx)
  • Fix nesting for selectors (and pseudo) in native #483 (@davesnx)

0.57.0

0.56.0

  • Improvement for locations in both code-gen and error reporting (#456) by @davesnx
  • Support css min and max functions (#411) by @lubegasimon
  • Update docs (#457) by @zakybilfagih
  • Native support for styled.{{tag}} (#461) by @zakybilfagih
  • background-clip: text support by @davesnx
  • Fix linear-gradient and radial-gradient (#464) by @davesnx
  • Rename emotion-hash into murmur2 and remove public testing cli by @davesnx
  • Use server-reason-react from opam by @davesnx

0.59.0

Published on Thu Jul 18 2024

CHANGES:

0.59.0

  • [BREAKING] Change entry point module CSS (from CssJs) on styled-ppx.melange, styled-ppx.native and styled-ppx.rescript (#490) (@davesnx)
  • [FEATURE] Add support and interpolation for zoom, will-change and user-select properties (#489) (@davesnx)
  • [FEATURE] Support content with interpolation #494 (@davesnx)
  • [FEATURE] Support define CSS variables in global and use CSS variables in properties #492 (@davesnx)
  • [FEATURE] Support overflow with 2 values
  • [FEATURE] Make animation-name abstract (@davesnx)
  • [FIX] Add 100 unsupported properties, which will render properly (#489) (@davesnx)
  • [FIX] Inline all CSS.Var and CSS.Cascading in properties (#495) (@davesnx)
  • [FIX] Color with support for rgba/hsla and others with calc/min and max (#495) (@davesnx)
  • [FIX] Warning of kebab-case on emotion client side (#493) (@davesnx)

0.58.1

  • [BREAKING] FontFamilyName.t is now a string (@davesnx)
  • [FIX] Make unsafe calls from “Cascading” be camelCase to avoid emotion’s warning #488 (@davesnx)
  • [FIX] Keep classname when ampersand is at the end of the selector (@davesnx)
  • [FIX] Fix fontFace in both melange and native (@davesnx)

0.58.0

  • [FEATURE] Initial @container support #476 (@zakybilfagih)
  • [FIX] Make selector nested maintain other selectors #486 (@davesnx)
  • [BREAKING] Remove Css module, styled_label and friends #487 (@davesnx)
  • [BREAKING] Merge styled-ppx.css and styled-ppx.emotion into styled-ppx.melange #487 (@davesnx)
  • [BREAKING] Merge styled-ppx.css-native and styled-ppx.emotion-native into styled-ppx.native #487 (@davesnx)
  • [BREAKING] Merge styled-ppx.css-native and styled-ppx.emotion-native into styled-ppx.native #487 (@davesnx)
  • [BREAKING] Remove PseudoClass and PseudoClassParam #487 (@davesnx)
  • Remove functor from Css_Js_Core #487 (@davesnx)
  • Remove melange.js and melange.belt from styled-ppx.melange #487 (@davesnx)
  • Remove server-reason-react.js and server-reason-react.belt from styled-ppx.native #487 (@davesnx)

0.57.1

  • Remove public_name from alcotest_extra #484 (@davesnx)
  • Fix nesting for selectors (and pseudo) in native #483 (@davesnx)

0.57.0

0.56.0

  • Improvement for locations in both code-gen and error reporting (#456) by @davesnx
  • Support css min and max functions (#411) by @lubegasimon
  • Update docs (#457) by @zakybilfagih
  • Native support for styled.{{tag}} (#461) by @zakybilfagih
  • background-clip: text support by @davesnx
  • Fix linear-gradient and radial-gradient (#464) by @davesnx
  • Rename emotion-hash into murmur2 and remove public testing cli by @davesnx
  • Use server-reason-react from opam by @davesnx

0.57.1

Published on Thu Jul 04 2024

CHANGES:

  • Remove public_name from alcotest_extra #484 (@davesnx)
  • Fix nesting for selectors (and pseudo) in native #483 (@davesnx)

0.57.0

Published on Thu Jun 27 2024

CHANGES

0.57.0

Documentation

CSS Parser and generator

Native

Runtime

  • Rename render_style_tag to get_stylesheet (@davesnx)
  • Rename emotion-hash into murmur2 and remove public testing cli by @davesnx

Misc


New contributors:

@ManasJayanth, @pedrobslisboa and @feihong.

Thanks!

v0.56.0

Published on Wed Apr 17 2024

CHANGES:

0.56.0

  • Improvement for locations in both code-gen and error reporting (#456) by @davesnx
  • Support css min and max functions (#411) by @lubegasimon
  • Update docs (#457) by @zakybilfagih
  • Native support for styled.{{tag}} (#461) by @zakybilfagih
  • background-clip: text support by @davesnx
  • Fix linear-gradient and radial-gradient (#464) by @davesnx
  • Rename emotion-hash into murmur2 and remove public testing cli by @davesnx
  • Use server-reason-react from opam by @davesnx

v0.54.1

Published on Mon Mar 18 2024

What’s Changed

New Contributors

Full Changelog: https://github.com/davesnx/styled-ppx/compare/0.54.0…v0.54.1

v0.54 - Melange 3, Support media-queries level 5, styled.global with multiple rules, as prop and support for grid-* properties

Published on Wed Mar 13 2024

What’s Changed

Full Changelog: https://github.com/davesnx/styled-ppx/compare/v0.53.1…0.54

v0.40 - New runtime library: styled-ppx/css and styled-ppx/emotion

Published on Wed Sep 13 2023

This new release of styled-ppx brings one exciting breaking change: deprecation of bs-css and bs-css-emotion in favor of styled-ppx/css and styled-ppx/emotion

The reason for the deprecation are very simple:

  • bs-css is slower to change than a vendored library
  • bs-css currently supports much less CSS features as styled-ppx (https://github.com/search?q=repo%3Adavesnx%2Fstyled-ppx+bs-css+language%3AReason&type=code&l=Reason)
  • We want to make the runtime as minimal as possible (near zero) and with an external library this isn’t possible
  • Want to use array/curried functions as much as possible while bs-css still exposes Css (while styled-ppx only uses CssJs)
  • bs-css doesn’t have an API reference where users can jump into it and solve their doubt

How to migrate

Future releases of styled-ppx will rely on features only shipped on styled-ppx/css and it will break your compilation.

npm install @davesnx/styled-ppx
\{
  "bs-dependencies": [
    "@rescript/react",
-  "bs-css",
-  "bs-css-emotion",
+   "@davesnx/styled-ppx/css",
+   "@davesnx/styled-ppx/emotion"
  ]
\}

What’s Changed

Full Changelog: https://github.com/davesnx/styled-ppx/compare/v0.37.7…0.40.0

v0.36 - ReScript 10 and JSX4 in beta

Published on Fri Mar 31 2023

Features

  • Support JSX4 in ReScript
  • Support for ReScript v10
  • Relax ppxlib constraint

Fix and CSS Support

  • Remove all semi_colons conflicts (#328)
  • Warning on last expression of the sequence when needs to be static (#326)
  • Support more than two selectors by reducing stuff (#329)
  • Support for grid-column/row-gap
  • Support box/text-shadow: none

v0.33 Stability release

Published on Fri Jan 27 2023

Features

  • CSS: linear-gradient()
  • CSS: repeating-linear-gradient()
  • CSS: radial-gradient()
  • CSS: repeating-radial-gradient()
  • CSS: conic-gradient()
  • CSS: hsl/a now are able for interpolation

Fix

  • CSS: text-decoration-line
  • CSS/code-gen: animation-time/transition-time etc
  • CSS: fix min-height/min-width

Infra

  • Add support for consumption in opam
  • Removed reason-native packages (refmterr, rely)
  • Add Parser.Types to code generation
  • Update CI to latest actions

v0.30.3 Support Selectors Level 3 and new website

Published on Mon Aug 01 2022

v0.25 Make interpolation type-safe

Published on Fri Aug 27 2021

Features

This release includes a big change in how the parser treats interpolation, making it possible to have type holes in the CSS values, enabling type-safe variables at runtime with bs-css types.

Most single-value properties are supported and a few shorthands as well. We will enable as more as we found them useful. This will be documented under: https://styled-ppx.vercel.app/usage/interpolation

  • Add interpolation and enforce parser rules for shadow #226
  • Type-safe interpolation, for single-value properties and shorthand properties (margin, padding) #219

Fixes

v0.24 Support for interpolation

Published on Wed Aug 11 2021

  • Support for interpolation within values (at any position).
  • Added a solid syntax: $()
  • Pushed new documentation explaining the array API
  • Added CssJs.label for styled calls.
  • Rename css to cx, and keep cx

v0.20.1 Dynamic components

Published on Sat Jul 18 2020

v0.20 All React props

Published on Tue May 26 2020

v0.19

Published on Tue May 26 2020

v0.18.0

Published on Tue May 26 2020

v0.17.1

Published on Tue May 26 2020

v0.17.0 Support for css

Published on Tue May 26 2020

Release v0.16.0

Published on Tue May 26 2020

Release v0.15.0

Published on Mon May 18 2020

Release 0.14

Published on Mon May 18 2020

Fix:

  • Update package name that fixes the postinstall.

Note: 0.13 it’s broken

Release 0.13

Published on Mon May 18 2020

Feature:

Fix:

  • Support empty definitions
  • Remove inline open on Emotion to avoid shadowing

Release v0.12.0

Published on Tue May 12 2020

Release v0.11.0

Published on Sun May 03 2020

Release v0.10.0

Published on Sun May 03 2020

Release v0.9.0

Published on Tue Apr 21 2020

Release 0.8: Support [%css] function

Published on Fri Apr 17 2020

This adds the possibility to use the ppx inside JSX, meaning that transforms styles as classNames.

<div className=[%css "display: flex"] />

Release v

Published on Fri Apr 17 2020

Release v0.6.0

Published on Fri Mar 20 2020