Looking for someone senior+
Posts by Zach Daniel
Any #ElixirLang or #AshFramework engineers within driving/commute distance of Summit, New Jersey?
In the latest release of #AshFramework, you can encapsulate sets of changes/preparations/validations as "pipelines". More related features coming, but its already a great way to clean up duplicate actions. You can even use `where` to make the whole set conditional! π #ElixirLang
Fixed in the latest version of Ash.
#AshFramework CVE: Classic atom exhaustion, highly unlikely you'd be affected. This affects those using the `:module` type, and accepting that over a public interface (probably no-one). A malicious actor could send a bunch of random values and exhaust your atom table.
github.com/ash-project/...
Teach me
`Ash.Validation` now supports validating batches of changesets in bulk actions. Most validations should be cheap, but every once in a while you can save some cycles by validating batches at a time. #AshFramework #ElixirLang
The man of two first names heralds a coming of Ash.
We have the pleasure to confirm Zach Daniel returning to the Goatmire stage. May he refrain from untangling the timelines this time.
goatmire.com
#elixirlang #goatmire
See the docs to get started: hexdocs.pm/ash_typescript
#ElixirLang π€ #Typescript like never before π This is *end-to-end type safe Phoenix channels*. The typescript client is *generated for you*. This is on top of a full RPC generated from your actions. Works with any typescript front-end. This is *huge*.
Calculations in #AshFramework are extremely powerful, but something that often happens is you end up adding a whole lot of them, each one taking up a field on the struct. Now you can pass `field? false` to get all the features with no struct field taken! π #ElixirLang
#AshFramework does a lot under the hood, probably more than you realize π§. Did you know we use type inference to cast values in critical areas of SQL queries? Now you can use that same logic to get type inference of your calculations π See the before/after. #ElixirLang
Its in `main` now, but will release soon! π
This is now supported in AshGraphql and AshJsonApi, and soon for AshTypescript π. #AshFramework already makes building secure applications easy with strong controls around data visibility, policies etc. This is icing on the cake, especially powerful for larger apps. #ElixirLang
I should have called you out for credit! I try to do this every time and honestly it slipped my mind this time around. I'll do better next time, sorry @leonqadirie.bsky.social! This is great work π #ElixirLang
Spark, the DSL building tool that backs #AshFramework and many other tools, now supports a functional builder pattern for defining DSLs! Before, you had to hand-roll a bunch of structs. See the before/after shots π #ElixirLang
As of #AshFramework 3.20.0, actions now support the `public?` option, just like fields. It defaults to `true`, but will be flipped in 4.0. This makes it very easy to know and control what actions are available via external interfaces. Support will be rolled out to API extensions soon.
#AshFramework Office Hours happening now! discord.gg/AVhG3s8e?eve...
#ElixirLang
ReqLLM is a lower level tool with a lot of active development and wide support for newer features. Lower level makes it a better "base layer" for tools that want to build on top of it IMO.
Yes, very likely. API key configuration and model configuration are done differently.
Ash AI is not one of those things :)
Just merged a PR to switch to @mikehostetler.bsky.social's ReqLLM for #AshFramework's AshAI package. This is a huge/breaking change (pre-1.0 library, sorry π¬), but should open up a whole host of new possibilities!
github.com/elixir-lang/...
This is lowkey a huge quality of life improvement!
#ElixirLang
I attended (and spoke at) Oredev. While there I tried to find connections to Elixir. It was hard.
www.youtube.com/watch?v=-Nkl...
(for those that struggle with subtext or tone, this is not a serious video)
#elixirlang
π if only.
New #AshFramework extension incoming soon. Something long awaited π
#ElixirLang
This is also excellent for migrating to Ash if you already have a postgres database π