222: OTP Update and Deprecating Unless
News includes the release of OTP 27.1 with significant improvements to the Zip module, the upcoming deprecation of the unless keyword in Elixir 1.18, support for Data Channels in Elixir WebRTC, new test-related feature highlighted by ElixirStreams to tackle intermittent failures, a detailed blog from Discord on reducing their websocket traffic by 40%, ElixirConf Lightning talks on YouTube, and more! Show Notes online - http://podcast.thinkingelixir.com/222 Elixir Community News https://erlangforums.com/t/erlang-otp-27-1-released/4006 – OTP 27.1 was released, which is the first maintenance patch for OTP 27. It brings important fixes including upgrades in the Zip module with support for large archives, extended timestamps, UID/GID support, and enhanced directory handling. Several Windows-specific fixes are also included. https://x.com/moomerman/status/1838235643983364206 – unless keyword will be deprecated in upcoming Elixir 1.18. Users are encouraged to use if !condition instead. A mix format --migrate command is available to assist with the transition. https://github.com/elixir-lang/elixir/pull/13851 – Related GitHub pull request regarding the deprecation of unless keyword. https://github.com/elixir-lang/elixir/pull/13841 – Another related GitHub pull request for deprecating the unless keyword in Elixir 1.18. https://github.com/gleam-lang/gleam/releases/tag/v1.5.0-rc2 – Gleam v1.5.0-rc2 was released for testing. https://elixir-webrtc.org/ – Support for Data Channels in Elixir WebRTC was added, enhancing the project with features for sending arbitrary data over P2P connections. https://github.com/elixir-webrtc – GitHub organization for Elixir WebRTC, including recent updates and projects. https://x.com/mickel8v2/status/1838565408711880801 – Twitter announcement about the addition of data channels in Elixir WebRTC. https://blog.swmansion.com/data-channels-in-elixir-webrtc-0853c7d0e256 – Blog post explaining the significance and uses of data channels in Elixir WebRTC. https://www.elixirstreams.com/tips/mix-test-repeat-until-failure – ElixirStreams video tip on using mix test --repeat-until-failure n to run tests until failure, handy for diagnosing intermittent test failures. Mark's favorite seed to use is --seed 0, which runs tests in sequential order, which is helpful during TDD. https://www.elixirstreams.com/tips/mix-test-slowest-modules – New --slowest-modules n flag added to mix test helps identify modules with the slowest tests, complementing the existing --slowest n flag for individual tests. https://discord.com/blog/how-discord-reduced-websocket-traffic-by-40-percent – Discord shared a new blog post detailing how they reduced websocket traffic by 40% by switching from zlib to zstandard for compression and implementing PASSIVE_UPDATE_V2. https://github.com/silviucpp/ezstd – The Erlang library ezstd used by Discord, which they contributed to by adding streaming support. https://www.youtube.com/watch?v=QJCWzN1Vahs – ElixirConf Lightning talks released on YouTube, available as a single hour-long video with chapter timestamps. https://www.youtube.com/playlist?list=PLqj39LCvnOWbW2Zli4LurDGc6lL5ij-9Y – Playlist for ElixirConf Lightning talks on YouTube. https://elixirfriends.transistor.fm/episodes/friend-1-peter-ullrich – A new Elixir podcast called 'Elixir Friends' launched by German Velasco, featuring a casual and relaxed format. The first episode guest is Peter Ullrich. https://www.youtube.com/watch?v=5apHLuFi5JI – The Elixir Friends podcast is also available as a YouTube video with a runtime of 1:22:10. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social