Cloak 1.0.0 Alpha Released!

December 31, 2018
elixir cloak

It’s been a long journey for my Elixir encryption library, Cloak, but we’re finally getting close to a full 1.0.0 release! Since I first published the library on Hex in 2015, both I myself and the community have added:

  • Support for a wide variety of data types
  • Local configuration through Vaults
  • Stronger encryption with AES.GCM support
  • A fully functional key rotation task, using cursors
  • Guides and documentation
  • A 200% performance increase!

With this release, the final puzzle piece falls into place: extracting the Ecto components of the library to a separate package, cloak_ecto. You can read more about the rationale elsewhere, but basically, it makes Cloak easier to use without Ecto and makes it possible to develop integrations with other ORMs if need be.

I’d love it if you could help me test this release. You can pick up both packages on Hex, and be sure to check out the upgrade guide!

def deps do
    {:cloak, "1.0.0-alpha.0"},
    {:cloak_ecto, "1.0.0-alpha.0"}


I’m on an old version of Cloak, how do I upgrade?

I recommend that you either follow the latest cloak_ecto installation guide, or follow Cloak’s upgrading guide step-by-step from your current version.

Why did you change _____ since x.x.x?

The rationale for each breaking change is explained in the relevant pull requests. Check out the changelog for links to each PR.

It took some time to design the API correctly, which is why I released the initial version in the 0.y.z version space, to give it time to evolve. See semantic versioning rule 4:

Major version zero (0.y.z) is for initial development. Anything may change at any time. The public API should not be considered stable.

The good news is that we’re almost at 1.0.0, and the breaking changes will cease until version 2.0.0, if we ever get there.

When do we get the full 1.0.0 release?

Provided the testing goes well, I expect to release 1.0.0 in Q1 of 2019.

Do you have any plans for version 2.0.0?

No. As the community continues to find the library useful, I expect to see more encryption algorithms supported, and more data types added to cloak_ecto, but I have no plans for breaking changes that would require a 2.0.0 release.

Special Thanks

I want to extend special thanks to all the community members who helped make Cloak what it is today. Check out their open source and give them a hand!

comments powered by Disqus