Crystal 1.0.0 is out! đ„ł And Lucky 0.27.0 is fully compatible with it.
We want to first congratulate the Crystal team for their long awaited release of 1.0! đ This is a huge milestone for not only the language, but the whole community. Read the release post here.
Weâre sure the next question on your mind is âWhen will Lucky hit 1.0?â. Donât fret! Weâre working towards that, and with each release we get closer and closer. To set some expectation, the actual answer is âWhen itâs readyâ, but to give a little direction, the next release (or two) for sure wonât be 1.0 for us. We want to ensure we have a solid 1.0 release, and we feel itâs better to take our time, and do it right đȘ
Lucky v0.27 is officially out. Itâs a smaller release, but brings some pretty big steps. We hope youâre as stoked about the progress as we are!
See the UPGRADE_NOTES.
Or you can view the changes using LuckyDiff. This tool helps see what has changed between versions and will be included in upgrade notes from now on.
For the most part, Crystal 1.0 worked with Lucky 0.26 with the exception of cookies. For the Crystal 1.0 release, there were a few changes around cookies:
/
These changes mean that, with Crystal 1.0, cookie values that contain certain characters like
\n
, "
, ;
, and a few others, are no longer valid.
Prior to Lucky 0.27, Lucky session cookies were encoded using Base64.encode
(which adds a newline character).
This was patched in Lucky 0.27.1.
Breeze is a new development dashboard system for Lucky apps. It allows you to get a higher overview of each request you make in your app. See which queries ran for a specific request, as well as which pipes, cookies, sessions, and headers all interacted for that request.
Breeze also allows you to create your own extensions. It comes with a built-in extension for viewing Carbon Email previews. This makes designing your emails a lot easier, and all right in your browser.
We are still working on Breeze, but feel free to watch the repo, and even give it a shot in your app. Let us know what you think!
This was originally called LuckyCli::Task
which existed in the lucky_cli shard.
LuckyCli was required in any shard that included custom tasks. (e.g. Avram, Lucky, Breeze, etcâŠ)
By abstracting this out to a separate shard, we gain about ~17% (or more) speed in compilation time. This is mainly on cold cache, but it means your apps wonât sit in the CI as long as they were!
Who doesnât love a little speed up? đ
The bulk of the updates have been mostly internal. Removing deprecated methods, code organization, fixing some bugs, and making some compile-time errors a bit more user friendly.
As more people use Lucky, we are able to solidify what a Lucky 1.0 will look like. The goal will be with the release of 1.0, we wonât need major breaking changes to how the framework functions.
If you havenât had a chance to try building an app, nowâs the perfect time to do so!
Thank you so much for the support!
If you havenât already, give us a star on GitHub, and be sure to follow us on Twitter.
Learn tips and tricks with LuckyCasts.
For questions, or just to chat, come say hi on Discord.