Thinking Elixir Podcast

204: OTP 27 and Blend for Lib Maintainers


Listen Later

In this episode of the Thinking Elixir podcast, we sit down with Marcelo Dominguez, the driver behind the new "Blend" library, which assists Elixir library developers in testing their projects against multiple versions of dependencies. Marcelo explains the genesis of Blend and the inspiration from the Rubygem "appraisal." He discusses how Blend tackles the common headache of dependency version clashes and integrates smoothly with CI systems to isolate and report specific compatibility issues. We learn how it works under-the-hood and helps library maintainers more easily keep their promises of supporting a library used in diverse environments. We cover the motivations, complexities, and real-world applications of Blend and more!

Show Notes online - http://podcast.thinkingelixir.com/204

Elixir Community News

  • https://www.erlang.org/blog/highlights-otp-27/ – OTP 27 release highlights
  • https://www.erlang.org/news/170 – OTP 27 release news
  • https://github.com/erlang/otp/releases/tag/OTP-27.0 – OTP 27 release on GitHub
  • https://en.wikipedia.org/wiki/OCSP_stapling – OCSP stapling explained
  • https://x.com/chris_mccord/status/1791176778989424850 – Chris McCord shares upcoming Cockroach DB support in Phoenix 1.7
  • https://www.cockroachlabs.com/ – Cockroach Labs business solutions
  • https://github.com/cockroachdb/cockroach – CockroachDB GitHub project
  • https://www.cockroachlabs.com/docs/stable/licensing-faqs.html – Cockroach licensing FAQs
  • https://x.com/josevalim/status/1792642875454259243 – José Valim's tweet on Elixir's 12th birthday celebration
  • https://www.youtube.com/watch?v=epKeT8-hafE – YouTube livestream celebrating Elixir's 12th birthday
  • José teased that an Elixir v1.17 RC might be ready.
  • https://ew.com/pirates-of-the-caribbean-reboot-margot-robbie-movie-exclusive-8651023 – Pirates of the Caribbean reboot discussion... are we that old?
  • https://elixirforum.com/t/ash-framework-3-0/63488 – Ash Framework 3.0 release
  • https://www.reddit.com/r/elixir/s/HMUeyk8Ot3 – LiveToast discussion on Reddit
  • https://github.com/srcrip/live_toast – LiveToast GitHub project
  • https://toast.src.rip – LiveToast demo website
  • https://nerves-project.typeform.com/sotnn-2024
  • Nerves is an open-source platform for building and deploying production embedded systems using Elixir.
  • https://nerves-project.org/ – Nerves project website
  • https://fly.io/phoenix-files/my-favorite-new-liveview-feature/ – Explanation of the useful new LiveView feature JS.toggle_class.
  • ExDoc light mode possibly getting revamped.
  • https://hexdocs.pm/elixir/main/protocols.html – Example of current dark mode on ExDoc even in light mode.
  • https://erick.navarro.io/blog/simple-obs-client-in-elixir/ – Erick Navarro's post on controlling OBS using Elixir and websockets.
  • https://obsproject.com/ – OBS - Open Broadcaster Software
  • Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected]

    Discussion Resources

    • https://github.com/mimiquate/blend
    • https://rubygems.org/gems/appraisal – Blend was inspired by the Rubygem Appraisal
    • https://github.com/mimiquate/blend?tab=readme-ov-file#Motivation – Motivation for creating the Blend library
    • https://github.com/mimiquate/candlex
    • https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs
    • https://github.com/elixir-plug/plug_crypto/tags
    • https://github.com/rack/rack-attack
    • https://www.mimiquate.com/
    • https://github.com/elixir-plug/plug/blob/main/mix.exs#L54-L58 – Example of how multiple lockfiles are solved in Plug
    • https://github.com/surface-ui/surface/blob/main/.github/workflows/ci.yml#L54-L56 – Example of how multiple lockfiles are solved in Surface
    • https://github.com/sorentwo/oban/issues/1041 – Example of Oban issue from underlying dep version change
    • https://github.com/sorentwo/oban/commit/f8d3478c27aea56ab01fcc42f13668f4a3516564 – Example where Oban's Ecto version needed to lock to Ecto v3.10 to support materialized cte
    • Guest Information

      • Marcelo Dominguez
      • https://twitter.com/marpo60 – on Twitter
      • https://github.com/marpo60/ – on Github
      • https://www.mimiquate.com/ – Mimiquate agency that published Blend
      • Find us online

        • Message the show - @ThinkingElixir
        • Message the show on Fediverse - @[email protected]
        • Email the show - [email protected]
        • Mark Ericksen - @brainlid
        • Mark Ericksen on Fediverse - @[email protected]
        • David Bernheisel - @bernheisel
        • David Bernheisel on Fediverse - @[email protected]
        • Sponsored By:

          • Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
          ...more
          View all episodesView all episodes
          Download on the App Store

          Thinking Elixir PodcastBy ThinkingElixir.com

          • 4.9
          • 4.9
          • 4.9
          • 4.9
          • 4.9

          4.9

          32 ratings


          More shows like Thinking Elixir Podcast

          View all
          Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

          Software Engineering Radio - the podcast for professional software developers

          271 Listeners

          The Changelog: Software Development, Open Source by Changelog Media

          The Changelog: Software Development, Open Source

          284 Listeners

          Startups For the Rest of Us by Rob Walling

          Startups For the Rest of Us

          693 Listeners

          Thoughtworks Technology Podcast by Thoughtworks

          Thoughtworks Technology Podcast

          41 Listeners

          Software Engineering Daily by Software Engineering Daily

          Software Engineering Daily

          626 Listeners

          Soft Skills Engineering by Jamison Dance and Dave Smith

          Soft Skills Engineering

          282 Listeners

          Python Bytes by Michael Kennedy and Brian Okken

          Python Bytes

          214 Listeners

          Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

          Syntax - Tasty Web Development Treats

          987 Listeners

          CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

          CoRecursive: Coding Stories

          190 Listeners

          Elixir Wizards by SmartLogic LLC

          Elixir Wizards

          22 Listeners

          The Stack Overflow Podcast by The Stack Overflow Podcast

          The Stack Overflow Podcast

          63 Listeners

          Beam Radio by Lars Wikman

          Beam Radio

          11 Listeners

          Oxide and Friends by Oxide Computer Company

          Oxide and Friends

          58 Listeners

          Elixir Mentor by Jacob Luetzow

          Elixir Mentor

          2 Listeners

          The Pragmatic Engineer by Gergely Orosz

          The Pragmatic Engineer

          62 Listeners