Stateful Genservers in Elixir
http://gladecki.pl/2017/08/19/stateful-genservers-in-elixir/
hi, i made this funny little app to learn how GenServers work in Elixir, so i explained it later on in a blog post. It is a pretty cool base to go any further without digging into Supervisors and such. I’d love to see it on the Elixir Weekly! (which i love btw - great job!)
IntelliJ Elixir v6.1.1
Thanks
-
For reporting the need to install intellij-erlang to get icons to resolve
- Dmitriy Molodtsov (@sintro)
-
For reporting formatter didn’t indent first line of a new
do … end
block - For reporting still unhelpful errors from beam decoder
Changelog
v6.1.1
Bug Fixes
-
When #754 made
intellij-erlang
a soft-dependency, it broke the debugger’s icons that referencedErlangIcons
, but it turns out all the icon constants were aliases toAllIcons.Debugger
constants, so by using theAllIcons.Debugger
icons directly, the dependency onErlangIcons
can be removed without the need to copy the image files intointellij-elixir
. -
When
do … end
template is inserted, it did not have a previous child whose attributes to use, so it used the default, which left the cursor unindented. To get the cursor indented by default, When theElementType
isDO
, apply thestabChildrenIndent
rules: indent normal and determine whether to indent relative to direct parent using code style setting. -
Include
VirtualFile
path in Beam read errors
Installation
Understanding the concept of a context in Phoenix
The usage of contexts is a major new concept introduced in Phoenix 1.3 which helps us to write more maintainable and reusable code …
https://samueltthomas.com/understanding-the-concept-of-a-context-in-phoenix
Introducing Nebulex
A fast, flexible and powerful caching library for Elixir
Continue reading here: http://cabol.github.io/posts/2017/08/14/introducing-nebulex/
GenStage by Example: episodes 1-5
My first set of screencasts on GenStage. Episodes 1-5 focus only on the basics and how things work.
ElixirScript 0.30.0 Released
ElixirScript 0.30.0 has been released and contains lots of exciting changes.
https://elixirscript.github.io/post/elixirscript-0.30.0-released/
Sentry.io inside Docker with Elixir
How to use sentry.io with Elixir inside a Docker container?
https://blog.lelonek.me/how-to-use-sentry-io-with-elixir-in-docker-8374e695f706
Recurring tasks in Elixir: Solution #2
In my blog post, I consider a solution based on a timeout which can be defined for a GenServer process.
https://nesteryuk.info/2017/08/13/recurring-tasks-in-elixir-solution-2.html
OPQ: A simple, in-memory queue with worker pooling and rate limiting
A simple, in-memory queue with worker pooling and rate limiting in Elixir. OPQ leverages Erlang’s queue module and Elixir’s GenStage. Originally built to support Crawler.
Check it out: https://github.com/fredwu/opq
Simple impersonation with Guardian
Manage multiple sessions and impersonate as other users with Guardian
http://undefinedmethod.com/blog/simple-impersonation-with-guardian/
First impressions of property testing with StreamData
I haven’t done any property based testing before, so this is obviously quite basic. But I spent half of yesterday playing with the new StreamData library and thought I’d post a little write-up on that.
IntelliJ Elixir v6.0.0
- Formatter
- Parallel test reporting
- OTP 20 support for AtU8 chunk decompilation
- Nix and NixOS support on Mac and Linux
- Mix path quoting fix on Windows
- Reference caching for performance improvements
Hulaaki v0.1.0 released - an #MQTT protocol library for #Elixir
An Elixir library (driver) for clients communicating with MQTT brokers(via the MQTT 3.1.1 protocol). - https://github.com/suvash/hulaaki/
View the complete changelog at https://github.com/suvash/hulaaki/blob/master/CHANGELOG.md
[0.1.0] - 2017-08-12
Added
- Added link to CHANGELOG in the README
- Add instructions on using Makefile for running tests.
-
Handle
gen_tcp
connection failures instead of crashing - Add automatic ping to server (based on keep alive) and expect ping response with callbacks
- Handle packet ids internally (for control packets with variable header)
- Adds TLS/SSL support for the library
- Implement chunked message receiving so as to parse packets sent together
Fixed
- Replaces all occurences of 65_536 to 65_535 (max limit for 2 bytes)
ParallelTask: easily run functions in parallel and capture the results
A library for easily parallelizing slow tasks such as API requests, database queries and the like.
https://github.com/Fabianlindfors/parallel_task
Inspired by Ryan Sydnor’s article Reducing Elixir Backend Time From 120ms to 20ms With Parallelization.
Using GenServer :via
I have two GenServers that use the same handle_* interface so I figured out how to use :via to talk to either through the same means.
ReceiptDecoder: Decode iOS App receipt
ReceiptDecoder is a tool to decode iOS App receipt in Elixir. You can do some validation before sending receipt to remote server.
Benchmarking in Elixir
Ready to measure the performance of two pieces of code w/ the same output? Check out the latest episode: Benchmarking with Benchee https://elixircasts.io/benchmarking-with-benchee
What if Elixir were Homoiconic?
This article explores the misconception that Elixir is homoiconic, dives into what “homoiconic” actually means, and envisions what Elixir would look like if it truly were a homoiconic language.