Ok, so I just merged the arraymancer backend PR, which includes the PR for 
version v0.2.0.

v0.2.0 was mainly ridgeline plots and scale_*_reverse. Note that due to there 
is currently no recipe for a ridgeline plot. That will be added in the next few 
days. Also they are not as nice as they should be (essentially the top ridge 
doesn't change its height depending on the max values in the ridge if 
overflowing of ridges into one another is allowed).

scale_*_reverse just allows to reverse scales as the name suggests.

Aside from that a few smaller things were added (theme_void) and a few recipes 
that use geom_tile (annotated heatmap and plotting the periodic table).

I'm not entirely happy with the state of version v0.3.0 though, since the 
formula mechanism introduces several breaking changes. Arguably reading 
formulas is now clearer (see the beginning of the README and especially the 
recipes, since they all have to be compliant with the new mechanism!), but it 
still requires code to be changed.

I think the amount of breakage is probably not that large, since not that many 
people will have used formulas for things anyways yet. Also because the DF was 
discouraged before, since it was slow.

Simple formulas e.g. f{"hwy"} remains unchanged anyways, same as f{5} to set 
some constant value to an aesthetic. But for these things formulas were 
previously only required for numbers and not referring to columns, since the 
aes proc took string | FormulaNode. Now also numbers are actually supported, so 
to set some constant value, you can just do aes(width = 0.5) instead of 
aes(width = f{0.5}).

In any case, I wanted to get this PR off my chest, since it was way too large. 
I tried to avoid breaking changes as much as possibly by macro magic, but this 
issue:

[https://github.com/nim-lang/Nim/issues/13913](https://github.com/nim-lang/Nim/issues/13913)

was the nail in the coffin. So I just release it now.

Feel free to open issues, because I broke your code. :)

Reply via email to