format_parser.ex v0.9.0 released!

We have released a new version of format_parser.ex and are looking forward for your feedback and/or contributions. https://github.com/ahtung/format_parser.ex

AlloyCI v0.3.0 has been released!

A new version of the AlloyCI coordinator has been released. It now includes support for secret variables, only and except constraints for jobs and support for pipelines created from a fork, when a PR is submitted. Read more about it here: https://github.com/AlloyCI/alloy_ci/releases/tag/v0.3.0

Another “why immutability rules” post

A tiny blog-post on why immutability helps not only developers (which is fine,) but also compilers (which is great.) 3 minutes to read, beginners level.

TL;DR: immutability ships an immortal forget-the-invalidation application lifetime cache.

http://rocket-science.ru/hacking/2018/02/20/why-immutability-rules

ElixirWeekly: The Elixir Community Newsletter, covering community news you easily miss, shared on ElixirStatus and the web, in one email every Thursday.

Server Sent Events with Elixir/Plug

Server Sent Events with Elixir/Plug

Server-Sent Events (SSE) is a lightweight and standardized protocol for pushing notifications from an HTTP server to a client. In contrast to WebSocket, which offers bi-directional communication, SSE only allows for one-way communication from the server to the client. If that’s all you need, SSE has the advantages to be much simpler, to rely on HTTP 1.1 only and to offer retry semantics on broken connections by the browser.

https://github.com/mustafaturan/sse

Cachex v3.0.0 released!

The next major version of Cachex has been released, with many new features such as complex streaming and proactive cache warmers, and other improvements such as short-circuiting fallbacks. Check it out!

Learn Elixir Series

A collection of videos to help people get more familiar with the basics of Elixir.

https://elixircasts.io/learn-elixir

Scribe v0.6 Released

scribe

Inspired by hirb, Scribe’s latest release overrides Inspect to print lists of maps as tables. Simply installing the package will enable by default.

https://github.com/codedge-llc/scribe

10 Killer Elixir Tips #7

Check out the Episode 7 on 10 Killer Elixir Tips

https://medium.com/blackode/10-killer-elixir-tips-7-62efc9c5aa14

Happy Coding…

Rexbug 1.0.0 released!

Rexbug, the Elixir wrapper for the :redbug tracing debugger has hit 1.0.0! It now prints the tracing information in pretty Elixir syntax and supports complex matches in function arguments.

Shameless plug: Check out @elixirstatus' other community project:

Credo, a new static code analysis tool that acts as a code linter, but also focusses on teaching coding practices and code consistency.

GenQueue - adapter based job-queues

GenQueue helps create a common API for your background job needs. Switch from Redis to RabbitMQ to GenStage - or use them all. Unified testing support included. link

Current Adapters include:

Hcloud API in Elixir

Cloud Hosting API

Using Hcloud API in Elixir

Published at https://hex.pm

Checkout https://hex.pm/packages/hcloud

Docs are not still available. If you like to contribute check out the package at github .

Fell free to contribute

Thank You.

Git status for Elixir builds

Article discussing a problem and quick solution we developed for adding GIT information to built artefacts.

http://crowdhailer.me/2018-02-18/git-status-for-elixir-builds/

From purely back end OTP app to Phoenix 1.3 app StatWatch Project p4

In this episode we FINISH the Statwatch project!!!

The 3 main improvements we make to it in this video are:

1) We make the profile routes use names instead of IDs 2) We make a plug to authenticate admin users 3) Styling and content

The entire development of Statwatch is screencasted in this playlist

You can see the finished project at http://statwatch.me

Ravenx 2.0.0 released!

Ravenx version 2.0.0 has been released! This major version separates strategies in other packages in order to avoid dependencies of functionality you don’t need to use.

Supported strategies and their packages / repos are described in the README.

https://hex.pm/packages/ravenx

Entity Component Systems in Elixir

Entity Component Systems is a severely underlooked design pattern from the realm of game development. Now implemented in Elixir!

https://yos.io/2016/09/17/entity-component-systems/

What's the deal with module attributes?

I recently learned a bit about how module attributes really work, and what we might use them for. Turns out I was wrong about a few things!

http://devonestes.herokuapp.com/whats-the-deal-with-module-attributes

Property Testing our Base58Check Encoder with an External Oracle

Generating test cases by hand can be slow, tedious, and error prone. Let’s use property testing techniques to test a Base58Check encoder (that we wrote in a previous article) against an external, command line oracle that we know is correct!

Erlang certifi version 2.2.0 has been released

certifi version 2.2.0, a carefully curated collection of Root Certificates for validating the trustworthiness of SSL certificates while verifying the identity of TLS hosts for #Erlang based applications has been released:

https://hex.pm/packages/certifi

This is the latest security update.

The (not so) Magic Tricks of Testing in Elixir (2/2)

Just published the second part of my blog post about testing in Elixir (particularly using Mox). Check it out at: https://medium.com/onfido-tech/the-not-so-magic-tricks-of-testing-in-elixir-2-2-acdd0368572b

Fortifying APIs: timing attacks

Securing your application’s main channel of communication against all kinds of attacks is never in vain.

One of the most important features of an API, besides usability, is resilience. A big aspect of a more resilient API is a restricted amount of information communicated. This is important to keep in mind, since every bit of information you give away, aids in an attack against your API.

So let’s have a look at how we can fortify our APIs against one kind attack: timing attacks.

https://sealas.at/blog/2018-02/fortifying-apis-timing-attacks/