RSS Amplifier

Ash Chronicle · Jul 18, 2025

Ash Chronicle: Issue #22

0
Sign in to vote or save

Zach Daniel · Ash Chronicle

Welcome to Ash Chronicle — your quick, informal digest of what’s new and notable in the world of Ash Framework. Got something cool? Drop it in the #showcase channel on Discord!

Thanks to OSwag, from our dear friend Lars Wikman, and an initial investment from Alembic, you can now acquire an Ash T-Shirt! They are very high quality, and you can also get Nerves and Elixir shirts there 🥳

Christian Alexander, via his youtube channel Code and Stuff, has been exploring various aspects of the Ash ecosystem and his latest video on Reactor is frankly stunning. So well crafted and delivered, can’t wait to see what he does next 😉.

My talk from AlchemyConf about is up! Watch me slightly fumble a very long live demo 🤣

Barnabas (core team member and AI extraordinaire) gave a presentation at Jax.Ex showing his really awesome in-progress discord bot using Ash AI. Super cool stuff, and you get to see a lot of the nitty gritty code behind the scenes 😎

Check out Matt Savvy’s blog post describing how he migrated his existing app to Ash, what went well and what could have gone better. Really great to see practical steps taken and advice like this.

Check out Ken’s article on building a background AI Translator in Ash! With tons of code examples and instruction for how to achieve similar results, its a great entry to the Ash media archive, and its his first article even!

You’ve always been able to define typed structs using `Ash.Type.NewType`, but we’ve introduced a nice compact syntax inspired by other typed_struct packages. This one, however, is built into Ash and uses Ash’s type system, meaning it plays nicely with all the other parts of the Ash ecosystem 🎉

Read actions now support validations, as well as using validations in a `where` option on preparations. Prior to this, you would have to write validations as custom preparation functions, which was verbose and prevented reusing existing elements in your system. Now you can have your cake and eat it too!

hexdocs.pm/usage_rules now includes powerful docs-search tasks, and instructs agents to use them for research. Please, if you are working with LLMs and Elixir, try it out. It helps even when packages haven't written usage-rules files, thanks to the new docs tools!

Be there or be square 😎

  • support where clauses on preparations

  • support `Ash.Query` for most builtin validations

  • support validations on read actions

  • introduce `Ash.TypedStruct` as a simpler struct type

  • set `show_policy_breakdowns?` to `true` in dev/test by default

  • make `mix ash.gen.resource` merge with existing resources

  • allow code_interface default_options to accept a function by scottwoodall

  • show optional code interface inputs in usage rules

  • Add :bypass_all option for read action multitenancy by xantrac

  • add missing types to Ash.load typespec by @barnabasJ

  • allow pure-binary sigils in expr fragments by Frank Dugan III

  • add notifier trace/telemetry span type

  • add typed struct example to usage rules & docs

  • support sub rules in usage rules MCP tool

  • Handle non-tty (i.e agents/scripts) far more gracefully, assuming no tty means --yes

  • Allow many tasks to be run just from the archive, without needing igniter as a dep in the project, including:

    • igniter.install

    • igniter.remove

    • igniter.add

    • igniter.upgrade

    • igniter.apply_upgrades

  • create git repositories when generating new projects by Albin Kocheril Chacko

  • include more granular information on how each item was installed

  • add domain-level pubsub configuration for subscriptions by @barnabasJ

  • add always_include_linkage DSL option to resources by Cyprien Poisson

  • Pass all args to sign_in_with_token action of password strategies by Jinkyou Son

  • Add override options to reset and sign in forms (#641) by @jaeyson

  • make rollbacks safer by using `--to` instead of `-n`

  • Support liveview 1.1-rc

  • support backoff + timeout options by Roberts Guļāns

  • add `create_version_on_destroy?` option

  • Add `to_form/2` in usage rules and improve error message when accessing a form without `to_form/2` by Kenneth Kostrešević

  • update usage rules with info on using `raw_errors`

No posts

Read the original on ashchronicle.substack.com

Comments

Nothing yet. Say the first thing.

    Sign in to join the conversation.