{"id":21378,"name":"image","ecosystem":"hex","repository_url":"https://github.com/kipcole9/image","issues_count":65,"created_at":"2025-06-07T02:27:32.542Z","updated_at":"2025-06-07T02:27:32.542Z","purl":"pkg:hex/image","metadata":{"id":4347967,"name":"image","ecosystem":"hex","description":"An approachable image processing library primarily based upon Vix and libvips that\nis NIF-based, fast, multi-threaded, pipelined and has a low memory\nfootprint.","homepage":"https://github.com/kipcole9/image/blob/v0.59.3/CHANGELOG.md","licenses":"https://github.com/kipcole9/image","normalized_licenses":["Other"],"repository_url":"https://github.com/kipcole9/image","keywords_array":[],"namespace":null,"versions_count":98,"first_release_published_at":"2022-05-04T09:58:19.556Z","latest_release_published_at":"2025-04-27T01:45:05.154Z","latest_release_number":"0.59.3","last_synced_at":"2025-05-09T12:04:40.943Z","created_at":"2022-05-04T10:00:42.000Z","updated_at":"2025-05-09T12:04:41.299Z","registry_url":"https://hex.pm/packages/image/","install_command":"mix hex.package fetch image ","documentation_url":"http://hexdocs.pm/image/","metadata":{},"repo_metadata":{"id":38123880,"uuid":"480152162","full_name":"elixir-image/image","owner":"elixir-image","description":"Image processing for Elixir","archived":false,"fork":false,"pushed_at":"2024-09-13T23:24:10.000Z","size":61706,"stargazers_count":364,"open_issues_count":1,"forks_count":42,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-09-14T13:44:48.863Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/elixir-image.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-10T22:10:07.000Z","updated_at":"2024-09-13T23:24:14.000Z","dependencies_parsed_at":"2023-09-27T19:54:18.425Z","dependency_job_id":"24e56bd8-791a-40f8-aa59-e5a6c629484b","html_url":"https://github.com/elixir-image/image","commit_stats":null,"previous_names":["kipcole9/image"],"tags_count":70,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elixir-image","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219853215,"owners_count":16553488,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"elixir-image","name":"Elixir Image","uuid":"122721355","kind":"organization","description":"Image processing libraries for Elixir including intelligent image serving for Plug-based apps, heex components and color management.","email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/122721355?v=4","repositories_count":3,"last_synced_at":"2023-04-11T11:40:42.320Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/elixir-image","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-20T04:18:07.878Z","updated_at":"2023-04-11T11:40:42.334Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elixir-image","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elixir-image/repositories"},"tags":[{"name":"v0.54.3","sha":"c15c92f3046b04886bd43b601bf9a42e39c132ce","kind":"commit","published_at":"2024-09-05T22:39:59.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.54.3","html_url":"https://github.com/elixir-image/image/releases/tag/v0.54.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.54.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.54.3/manifests"},{"name":"v0.54.2","sha":"fb7bd03940fce3d57974388c80176742d9fc909d","kind":"commit","published_at":"2024-08-31T21:03:32.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.54.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.54.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.54.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.54.2/manifests"},{"name":"v0.54.1","sha":"adbe636a4326b49eb6f6de0c6b80ebfeea37ee46","kind":"commit","published_at":"2024-08-20T00:54:20.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.54.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.54.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.54.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.54.1/manifests"},{"name":"v0.52.3","sha":"3b65c6a6981ec73b69907e6e6e2ea776be91ef1b","kind":"commit","published_at":"2024-07-12T15:13:48.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.52.3","html_url":"https://github.com/elixir-image/image/releases/tag/v0.52.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.3/manifests"},{"name":"v0.52.2","sha":"578f90b74feb5b0467062cd0aca31eb8d66a97c0","kind":"commit","published_at":"2024-07-08T18:01:31.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.52.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.52.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.2/manifests"},{"name":"v0.52.1","sha":"990b029b502ef14468bb8548846cee165641bd32","kind":"commit","published_at":"2024-07-03T10:59:59.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.52.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.52.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.1/manifests"},{"name":"v0.52.0","sha":"39789c9d7104fb7e06510e6927f409728db61059","kind":"commit","published_at":"2024-07-03T09:01:25.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.52.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.52.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.52.0/manifests"},{"name":"v0.51.0","sha":"0bea236907d403cec61aa6eca3de4461c08c9d03","kind":"commit","published_at":"2024-06-28T22:25:15.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.51.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.51.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.51.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.51.0/manifests"},{"name":"v0.50.0","sha":"7a86fbc9fe7ed40c54bb6eab620c456c98d7fe28","kind":"commit","published_at":"2024-06-28T03:48:47.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.50.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.50.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.50.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.50.0/manifests"},{"name":"v0.48.0","sha":"f6c96cca71981efcbcc33f46448c3fb84dd83324","kind":"commit","published_at":"2024-05-29T20:35:01.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.48.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.48.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.48.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.48.0/manifests"},{"name":"0.47.0","sha":"43802991bf3a20768e3a566232afc78a1acc786a","kind":"commit","published_at":"2024-05-13T17:35:16.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/0.47.0","html_url":"https://github.com/elixir-image/image/releases/tag/0.47.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/0.47.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/0.47.0/manifests"},{"name":"v0.46.0","sha":"d1d3e3de90298b5700b155d0f41f18a684ad20d2","kind":"commit","published_at":"2024-05-10T23:09:30.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.46.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.46.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.46.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.46.0/manifests"},{"name":"v0.45.0","sha":"4313f664edacfaef067b62e25c37a07621d980bb","kind":"commit","published_at":"2024-05-06T00:34:00.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.45.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.45.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.45.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.45.0/manifests"},{"name":"v0.44.0","sha":"1159ae7552733ce5adfbb34a58a2f05429f92184","kind":"commit","published_at":"2024-04-09T08:19:49.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.44.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.44.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.44.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.44.0/manifests"},{"name":"v0.43.2","sha":"36634c59f0e26aaf1f0c31a8a0268bc5d807d81f","kind":"commit","published_at":"2024-04-02T06:03:20.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.43.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.43.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.43.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.43.2/manifests"},{"name":"v0.43.1","sha":"9accf47c88f4594f20ed370dcfb15683ac7c3b46","kind":"commit","published_at":"2024-03-21T22:08:07.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.43.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.43.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.43.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.43.1/manifests"},{"name":"v0.43.0","sha":"799065ab9ed8b060b481052286094e5f873e4ecf","kind":"commit","published_at":"2024-02-27T12:53:44.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.43.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.43.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.43.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.43.0/manifests"},{"name":"v0.42.0","sha":"18924b622befc8a7b4ed96b990925aa9dd3143d7","kind":"commit","published_at":"2024-01-23T07:22:34.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.42.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.42.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.42.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.42.0/manifests"},{"name":"v0.41.0","sha":"2eb310e410b96cf85a39ccf4004c20c5c70cefba","kind":"commit","published_at":"2024-01-18T00:46:01.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.41.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.41.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.41.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.41.0/manifests"},{"name":"v0.40.0","sha":"b31ec5634d7ca63c99f343ec55062e03a627047e","kind":"commit","published_at":"2024-01-06T03:06:29.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.40.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.40.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.40.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.40.0/manifests"},{"name":"v0.39.3","sha":"c69e190f8152b59d4389d91bc6fb1eb0af29d22d","kind":"commit","published_at":"2024-01-03T23:22:56.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.39.3","html_url":"https://github.com/elixir-image/image/releases/tag/v0.39.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.39.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.39.3/manifests"},{"name":"v0.39.2","sha":"6a5cda8400b6e933fb155f4f2955b88dcd25776d","kind":"commit","published_at":"2024-01-01T18:43:51.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.39.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.39.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.39.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.39.2/manifests"},{"name":"v0.39.1","sha":"ad10fa83c1241d8db1938598b28614374a33c76a","kind":"commit","published_at":"2023-12-27T19:18:22.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.39.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.39.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.39.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.39.1/manifests"},{"name":"v0.38.3","sha":"0d235579fa1a2b4055ae26d3f641b2d41dfd564c","kind":"commit","published_at":"2023-10-16T19:26:08.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.38.3","html_url":"https://github.com/elixir-image/image/releases/tag/v0.38.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.3/manifests"},{"name":"v0.38.2","sha":"7dbef1df848a0e192a8cb884a81b1d1088bd5a35","kind":"commit","published_at":"2023-09-27T14:03:37.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.38.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.38.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.2/manifests"},{"name":"v0.38.1","sha":"0b141af3916e992854993c00452173e00082a587","kind":"commit","published_at":"2023-09-23T14:26:21.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.38.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.38.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.1/manifests"},{"name":"v0.38.0","sha":"fea4ffdbbbe940b949608490b0a2df6306f35721","kind":"commit","published_at":"2023-09-10T21:43:59.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.38.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.38.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.38.0/manifests"},{"name":"v0.37.0","sha":"c4ca065b72b1708d346630121205a58f823cffd2","kind":"commit","published_at":"2023-08-17T09:57:43.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.37.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.37.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.37.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.37.0/manifests"},{"name":"v0.36.2","sha":"2de6bce66340e2c219fe141e4983230fd8f78ed5","kind":"commit","published_at":"2023-07-24T00:10:37.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.36.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.36.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.36.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.36.2/manifests"},{"name":"v0.36.1","sha":"295a03d739bfd2cabc5df7bad1eddcb1968154cc","kind":"commit","published_at":"2023-07-23T07:12:02.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.36.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.36.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.36.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.36.1/manifests"},{"name":"v0.35.0","sha":"ddf6fe00d2e392121578b4dba6e14d2750004178","kind":"commit","published_at":"2023-07-03T21:06:35.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.35.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.35.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.35.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.35.0/manifests"},{"name":"v0.34.0","sha":"1dec0e7bee8b646408d80e2c80b3c0a66dd52259","kind":"commit","published_at":"2023-06-24T01:39:43.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.34.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.34.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.34.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.34.0/manifests"},{"name":"v0.33.0","sha":"7ef49cddd5092e1bf4d1c68d599c9751b4525798","kind":"commit","published_at":"2023-06-01T17:03:07.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.33.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.33.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.33.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.33.0/manifests"},{"name":"v0.32.0","sha":"ea8cf860287877b79615131bac2f08a8565d354e","kind":"commit","published_at":"2023-05-25T04:16:39.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.32.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.32.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.32.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.32.0/manifests"},{"name":"v0.31.1","sha":"4a8f8ff0b82dad926e7a8d2b3085122d81dce104","kind":"commit","published_at":"2023-05-10T06:24:10.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.31.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.31.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.31.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.31.1/manifests"},{"name":"v0.31.0","sha":"d315ae444a57c5c22268b3f236121cbb775f9798","kind":"commit","published_at":"2023-05-07T03:51:23.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.31.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.31.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.31.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.31.0/manifests"},{"name":"v0.29.0","sha":"ea0f9e885ae2797e01b0f02e87a77530e0d8475c","kind":"commit","published_at":"2023-04-14T10:22:21.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.29.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.29.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.29.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.29.0/manifests"},{"name":"v0.28.2","sha":"eb8514ccd6a29bc947a6ed17eab56954af0585a7","kind":"commit","published_at":"2023-04-13T05:59:50.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.28.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.28.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.28.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.28.2/manifests"},{"name":"v0.28.1","sha":"ee79ccaa36f16a580c545549bf5a34b682f531dd","kind":"commit","published_at":"2023-04-06T23:10:56.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.28.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.28.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.28.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.28.1/manifests"},{"name":"v0.28.0","sha":"7464d7c75c3165b82ccb8aa94edc1ce3ce6f7f99","kind":"commit","published_at":"2023-04-06T05:02:33.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.28.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.28.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.28.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.28.0/manifests"},{"name":"v0.27.0","sha":"49000fb4637151aab32d5a835ab03a5284bd0325","kind":"commit","published_at":"2023-03-20T02:57:54.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.27.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.27.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.27.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.27.0/manifests"},{"name":"v0.26.0","sha":"5fe64f21d0a014409617b2dffe11f69eca605ce0","kind":"commit","published_at":"2023-03-12T10:04:14.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.26.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.26.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.26.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.26.0/manifests"},{"name":"v0.25.1","sha":"aea3a7e9e51d5c7d06e331d4693e20c5c65fc490","kind":"commit","published_at":"2023-03-01T15:50:51.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.25.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.25.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.25.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.25.1/manifests"},{"name":"v0.25.0","sha":"b923779e5534f854bd5ee99d680aa337b34b9c5c","kind":"commit","published_at":"2023-03-01T03:49:58.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.25.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.25.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.25.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.25.0/manifests"},{"name":"v0.24.1","sha":"553a1316f6808aebbb320b01940523e92aaff46a","kind":"commit","published_at":"2023-02-14T16:35:50.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.24.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.24.1/manifests"},{"name":"v0.24.0","sha":"4f3ba1327fae26477289dde68228206270b42c7c","kind":"commit","published_at":"2023-02-06T10:13:43.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.24.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.24.0/manifests"},{"name":"v0.23.2","sha":"539eafd0c32c1aced91299cfc1360788d6888bb1","kind":"commit","published_at":"2023-01-31T14:51:32.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.23.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.23.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.23.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.23.2/manifests"},{"name":"v0.23.0","sha":"dbf6ed46700a47d3a12ae8175e417c29c14c8402","kind":"commit","published_at":"2023-01-29T14:22:06.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.23.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.23.0/manifests"},{"name":"v0.22.1","sha":"1c8a8eb59cbe53ac25182b400053d1bf751f2e3b","kind":"commit","published_at":"2023-01-09T08:52:16.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.22.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.22.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.22.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.22.1/manifests"},{"name":"v0.22.0","sha":"d52cbbb617781a8a763ef6a78ad424d41fea3246","kind":"commit","published_at":"2023-01-09T05:57:02.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.22.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.22.0/manifests"},{"name":"v0.21.0","sha":"64bfd6c5a3c0c2d62e16c43fb5b0e8057b508b22","kind":"commit","published_at":"2023-01-08T08:53:19.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.21.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.21.0/manifests"},{"name":"v0.20.0","sha":"bd9d239bcdf57e0039fcf6a8a69c90c9a1ea4553","kind":"commit","published_at":"2023-01-08T05:35:03.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.20.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.20.0/manifests"},{"name":"v0.19.0","sha":"0cd3aa147a8a7b94e026e60d8bbf9589d98e7d80","kind":"commit","published_at":"2022-12-23T22:45:49.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.19.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.19.0/manifests"},{"name":"v0.18.1","sha":"9bdf2c18717f76f92d1bb08d583cb73287f66fde","kind":"commit","published_at":"2022-12-20T19:50:55.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.18.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.18.1/manifests"},{"name":"v0.18.0","sha":"fdc1f9ffadb51f58d8eaafb81af6773f8e91a88e","kind":"commit","published_at":"2022-12-19T18:01:53.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.18.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.18.0/manifests"},{"name":"v0.16.0","sha":"d4ad679172f93488127681d8ce219883c28bf95c","kind":"commit","published_at":"2022-12-17T19:09:26.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.16.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.16.0/manifests"},{"name":"v0.15.0","sha":"106c784a84896eafe41ce953190a6699549bcb61","kind":"commit","published_at":"2022-12-04T07:31:10.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.15.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"9342d02b73bbf1cbf4aa15956438af242770cd8f","kind":"commit","published_at":"2022-11-13T16:50:50.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.14.2","html_url":"https://github.com/elixir-image/image/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"7af81c90af442a4031f04667587b345d864fa8aa","kind":"commit","published_at":"2022-11-11T09:18:51.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.14.1","html_url":"https://github.com/elixir-image/image/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.14.1/manifests"},{"name":"v0.13.0","sha":"c38b92a1166f1c1b59e50ba0f7f6623b178f2a8f","kind":"commit","published_at":"2022-10-22T23:47:59.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.13.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.13.0/manifests"},{"name":"v0.11.0","sha":"6f5c5b633b48b7913bad5262cf40967dd241540c","kind":"commit","published_at":"2022-10-08T05:06:47.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.11.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.11.0/manifests"},{"name":"v0.10.0","sha":"ef8cde5fb42bed5887bc4954572ffb7133d75856","kind":"commit","published_at":"2022-10-04T21:36:56.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.10.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.10.0/manifests"},{"name":"v0.9.0","sha":"eb29c9c95da78cf9742158ebeefa2db050a9bd4e","kind":"commit","published_at":"2022-10-01T06:49:07.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.9.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.9.0/manifests"},{"name":"v0.8.0","sha":"24d7086a85e1735d16087beb49a9ff990c29ae37","kind":"commit","published_at":"2022-09-30T09:04:56.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.8.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.8.0/manifests"},{"name":"v0.6.0","sha":"47f053b15f6ae2983536d617cbaa2d641d68eabd","kind":"commit","published_at":"2022-07-19T12:07:22.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.6.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.6.0/manifests"},{"name":"v0.5.0","sha":"d643b484da1188c2392072483ab659274039a1e1","kind":"commit","published_at":"2022-06-24T11:11:14.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.5.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"dd5816676b1bf19b5eb1061d61994d67f0677ec4","kind":"commit","published_at":"2022-06-23T17:58:36.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.4.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"fd6729bb1a4f7912050066575922b8332a0dcb51","kind":"commit","published_at":"2022-06-04T08:21:33.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.3.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.3.0/manifests"},{"name":"v0.2.0","sha":"d99e4ae833c24adc6e20d4f8444623c0382061a6","kind":"commit","published_at":"2022-05-18T11:09:38.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.2.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"6819ff179a53b3d69baeb97dff0ca77d695dc62d","kind":"commit","published_at":"2022-05-04T10:23:40.000Z","download_url":"https://codeload.github.com/elixir-image/image/tar.gz/v0.1.0","html_url":"https://github.com/elixir-image/image/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-image%2Fimage/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-09-19T05:08:49.063Z","dependent_packages_count":5,"downloads":468700,"downloads_period":"total","dependent_repos_count":5,"rankings":{"downloads":11.202005541628184,"dependent_repos_count":8.642871280596424,"dependent_packages_count":4.2818499703107475,"stargazers_count":3.32497690988257,"forks_count":5.251352421163742,"docker_downloads_count":null,"average":6.540611224716334},"purl":"pkg:hex/image","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/hex/image","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/hex/image","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/hex/image/dependencies","status":null,"funding_links":[],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/packages/image/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/packages/image/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/packages/image/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/packages/image/related_packages","maintainers":[{"uuid":"kipcole9","login":"kipcole9","name":null,"email":"kipcole9@gmail.com","url":null,"packages_count":54,"html_url":"https://hex.pm/users/kipcole9","role":null,"created_at":"2022-11-08T15:19:14.712Z","updated_at":"2022-11-08T15:19:14.712Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/maintainers/kipcole9/packages"}],"registry":{"name":"hex.pm","url":"https://hex.pm","ecosystem":"hex","default":true,"packages_count":18023,"maintainers_count":6818,"namespaces_count":0,"keywords_count":6092,"github":"hexpm","metadata":{"funded_packages_count":1266},"icon_url":"https://github.com/hexpm.png","created_at":"2022-04-04T15:19:23.014Z","updated_at":"2025-06-07T05:39:04.497Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/hex.pm/namespaces"}},"unique_repositories_count":23,"unique_repositories_count_past_30_days":2,"recent_issues":[{"uuid":"4600816412","node_id":"PR_kwDOQRTVLs7jTNc5","number":55,"state":"open","title":"mix(deps): bump image from 0.67.0 to 0.68.0","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-05T23:23:11.000Z","updated_at":"2026-06-05T23:23:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"mix(deps)","packages":[{"name":"image","old_version":"0.67.0","new_version":"0.68.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.67.0 to 0.68.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.68.0\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.68.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.68.0 released on May 31st, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/ff902fa0392814057929c8db065783fa6787ada6\"\u003e\u003ccode\u003eff902fa\u003c/code\u003e\u003c/a\u003e Remove color migration guide from the package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3149f2ae645830327e95b5ba6ae0c43cf579a7df\"\u003e\u003ccode\u003e3149f2a\u003c/code\u003e\u003c/a\u003e Remove unneeded color migration guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b7b36aa47c92b4c4cb7f3c9fcc7cf632c919b2f1\"\u003e\u003ccode\u003eb7b36aa\u003c/code\u003e\u003c/a\u003e Update nx/exla to ~\u0026gt; 0.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/fe440f0b1f15c8b22f763f65886e6ef08cee3fe8\"\u003e\u003ccode\u003efe440f0\u003c/code\u003e\u003c/a\u003e Update changelog, bump verion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d6cef74cf42054ea66f31e9abcf8d1fbd63bfe3\"\u003e\u003ccode\u003e6d6cef7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e from hlindset/fix-xmp-removal-via-atom-selector\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1f525d651e6b894e909bf1115cb4c3b3c087a7fb\"\u003e\u003ccode\u003e1f525d6\u003c/code\u003e\u003c/a\u003e fix xmp header name in \u003ccode\u003e@metadata_fields\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b065465ffe6946c7c418e2168aea00ecaf80bbfd\"\u003e\u003ccode\u003eb065465\u003c/code\u003e\u003c/a\u003e add failing remove_metadata/2 test\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.67.0...v0.68.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.67.0\u0026new-version=0.68.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/agentjido/llmdb_xyz/pull/55","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentjido%2Fllmdb_xyz/issues/55","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/55/packages"},{"uuid":"4559685290","node_id":"PR_kwDOH2dmWs7hMEQF","number":708,"state":"open","title":"chore(bot): bump image from 0.63.0 to 0.68.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-01T01:25:46.000Z","updated_at":"2026-06-01T01:34:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(bot)","packages":[{"name":"image","old_version":"0.63.0","new_version":"0.68.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.63.0 to 0.68.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.68.0\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.67.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.66.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRelax Nx support to allow \u003ccode\u003e~\u0026gt; 0.10\u003c/code\u003e (not ~\u0026gt; 0.11). This allows Bumblebee to be configured in \u003ccode\u003eimage_vision\u003c/code\u003e since Bumblebee only supports Nx \u003ccode\u003e~\u0026gt; 0.9.0 or ~\u0026gt; 0.10.0\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.65.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.68.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.68.0 released on May 31st, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.67.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.67.0 released on May 3rd, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/ff902fa0392814057929c8db065783fa6787ada6\"\u003e\u003ccode\u003eff902fa\u003c/code\u003e\u003c/a\u003e Remove color migration guide from the package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3149f2ae645830327e95b5ba6ae0c43cf579a7df\"\u003e\u003ccode\u003e3149f2a\u003c/code\u003e\u003c/a\u003e Remove unneeded color migration guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b7b36aa47c92b4c4cb7f3c9fcc7cf632c919b2f1\"\u003e\u003ccode\u003eb7b36aa\u003c/code\u003e\u003c/a\u003e Update nx/exla to ~\u0026gt; 0.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/fe440f0b1f15c8b22f763f65886e6ef08cee3fe8\"\u003e\u003ccode\u003efe440f0\u003c/code\u003e\u003c/a\u003e Update changelog, bump verion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d6cef74cf42054ea66f31e9abcf8d1fbd63bfe3\"\u003e\u003ccode\u003e6d6cef7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e from hlindset/fix-xmp-removal-via-atom-selector\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1f525d651e6b894e909bf1115cb4c3b3c087a7fb\"\u003e\u003ccode\u003e1f525d6\u003c/code\u003e\u003c/a\u003e fix xmp header name in \u003ccode\u003e@metadata_fields\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b065465ffe6946c7c418e2168aea00ecaf80bbfd\"\u003e\u003ccode\u003eb065465\u003c/code\u003e\u003c/a\u003e add failing remove_metadata/2 test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/110f437f1962b44adfae9087f57ab78ff69a8b35\"\u003e\u003ccode\u003e110f437\u003c/code\u003e\u003c/a\u003e Proper release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/bfa581ce2c788ede808618b8e698bc625a8c10da\"\u003e\u003ccode\u003ebfa581c\u003c/code\u003e\u003c/a\u003e Update changelog release date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2c13c6dfb89063e6defdc1484ff9a249df648754\"\u003e\u003ccode\u003e2c13c6d\u003c/code\u003e\u003c/a\u003e Fix Image.resize/3 false-pattern dialyzer warning; harden Image.exif/1 agains...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.63.0...v0.68.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.63.0\u0026new-version=0.68.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/martide/literature/pull/708","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/martide%2Fliterature/issues/708","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/708/packages"},{"uuid":"4506086428","node_id":"PR_kwDOQRTVLs7ehNxH","number":53,"state":"closed","title":"mix(deps): bump image from 0.65.0 to 0.67.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-24T12:35:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-22T23:25:34.000Z","updated_at":"2026-05-24T12:35:50.000Z","time_to_close":133813,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"mix(deps)","packages":[{"name":"image","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.65.0 to 0.67.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.67.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.66.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRelax Nx support to allow \u003ccode\u003e~\u0026gt; 0.10\u003c/code\u003e (not ~\u0026gt; 0.11). This allows Bumblebee to be configured in \u003ccode\u003eimage_vision\u003c/code\u003e since Bumblebee only supports Nx \u003ccode\u003e~\u0026gt; 0.9.0 or ~\u0026gt; 0.10.0\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.67.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.67.0 released on May 3rd, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.66.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.66.0 released on April 25th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRelax Nx support to allow \u003ccode\u003e~\u0026gt; 0.10\u003c/code\u003e (not ~\u0026gt; 0.11). This allows Bumblebee to be configured in \u003ccode\u003eimage_vision\u003c/code\u003e since Bumblebee only supports Nx \u003ccode\u003e~\u0026gt; 0.9.0 or ~\u0026gt; 0.10.0\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/110f437f1962b44adfae9087f57ab78ff69a8b35\"\u003e\u003ccode\u003e110f437\u003c/code\u003e\u003c/a\u003e Proper release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/bfa581ce2c788ede808618b8e698bc625a8c10da\"\u003e\u003ccode\u003ebfa581c\u003c/code\u003e\u003c/a\u003e Update changelog release date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2c13c6dfb89063e6defdc1484ff9a249df648754\"\u003e\u003ccode\u003e2c13c6d\u003c/code\u003e\u003c/a\u003e Fix Image.resize/3 false-pattern dialyzer warning; harden Image.exif/1 agains...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e6a7330acf4b0125da3f9c57430175d63d5fb9d5\"\u003e\u003ccode\u003ee6a7330\u003c/code\u003e\u003c/a\u003e Remove Jason\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/86f9028de996af412ceecb68ed69e0ebd37ff965\"\u003e\u003ccode\u003e86f9028\u003c/code\u003e\u003c/a\u003e Add json_polyfill when required\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7c36ecf1cb8d82f2d4771de5101013ab96db7ce8\"\u003e\u003ccode\u003e7c36ecf\u003c/code\u003e\u003c/a\u003e Add Image.enhance/2 (luminance equalisation + saturation + sharpen)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/9a5f5452f8dd7ba3e09f1608962fae3af01ddd74\"\u003e\u003ccode\u003e9a5f545\u003c/code\u003e\u003c/a\u003e Add Image.tint/2, fade/2, drop_shadow/2; extend minimize_metadata/2 with :keep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d4aa131fa653a41ebfcce2b4c9234f3aa43e2f2b\"\u003e\u003ccode\u003ed4aa131\u003c/code\u003e\u003c/a\u003e Add gamma/sepia/posterize/opacity/set_orientation; fix add_alpha :opaque/:tra...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/fef5505e503e2fe80e9ee0977d1a1a467ddd4250\"\u003e\u003ccode\u003efef5505\u003c/code\u003e\u003c/a\u003e Add Image.Palette.extract/2 (Oklab K-means + Color.Palette.Cluster pipeline)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/22c80db61ab1aa4a3687d08369610919b9bcfee3\"\u003e\u003ccode\u003e22c80db\u003c/code\u003e\u003c/a\u003e Update Image.vignette/2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.65.0...v0.67.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.65.0\u0026new-version=0.67.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/agentjido/llmdb_xyz/pull/53","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentjido%2Fllmdb_xyz/issues/53","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/53/packages"},{"uuid":"4251420411","node_id":"PR_kwDORoJx4M7R3wxk","number":20,"state":"closed","title":"chore(deps): bump image from 0.63.0 to 0.65.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-27T05:14:53.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T05:09:58.000Z","updated_at":"2026-04-27T05:14:54.000Z","time_to_close":1209895,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"image","old_version":"0.63.0","new_version":"0.65.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.63.0 to 0.65.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.65.0\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse the updated colorspace names in Color 0.4.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.64.0\u003c/h2\u003e\n\u003cp\u003eThe primary intent of this release is to stablise the code in readiness for a 1.0 release. Deprecated code has been removed, a standardised color model introduced (via the new library \u003ca href=\"https://hex.pm/packages/color\"\u003ecolor\u003c/a\u003e) and objective classification and detection has been removed to a new \u003ccode\u003eimage_detection\u003c/code\u003e library.\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFive long-deprecated functions have been removed:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.interpretation/1\u003c/code\u003e — use \u003ccode\u003eImage.colorspace/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.type/1\u003c/code\u003e (was \u003ccode\u003eformat/1\u003c/code\u003e) — use \u003ccode\u003eImage.band_format/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask!/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask!/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.map_pages/2\u003c/code\u003e — use \u003ccode\u003eImage.map_join_pages/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Color\u003c/code\u003e has been removed. Color handling now lives in two new modules and one new dependency:\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Classification\u003c/code\u003e and \u003ccode\u003eImage.Generation\u003c/code\u003e have moved to a new sibling package, \u003ca href=\"https://hex.pm/packages/image_detection\"\u003e\u003ccode\u003e:image_detection\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:bumblebee\u003c/code\u003e is no longer a dependency of \u003ccode\u003e:image\u003c/code\u003e. It is configured in the new library \u003ccode\u003eimage_detection\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video\u003c/code\u003e is now backed by \u003ca href=\"https://hex.pm/packages/xav\"\u003eXav\u003c/a\u003e (a thin Elixir wrapper around FFmpeg) instead of \u003ccode\u003e:evision\u003c/code\u003e / OpenCV. The public API surface is largely unchanged but the underlying type, options, and a few semantic details have moved:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe video struct is now \u003ccode\u003e%Image.Video{}\u003c/code\u003e (with fields \u003ccode\u003e:reader\u003c/code\u003e, \u003ccode\u003e:source\u003c/code\u003e, \u003ccode\u003e:fps\u003c/code\u003e, \u003ccode\u003e:duration_seconds\u003c/code\u003e, \u003ccode\u003e:frame_count\u003c/code\u003e, \u003ccode\u003e:width\u003c/code\u003e, \u003ccode\u003e:height\u003c/code\u003e) rather than \u003ccode\u003e%Evision.VideoCapture{}\u003c/code\u003e. Pattern-match on the new struct module if your code does so.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.open/2\u003c/code\u003e's \u003ccode\u003e:backend\u003c/code\u003e option has been removed. FFmpeg picks the demuxer automatically and there is no concept of pluggable backends in Xav.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.known_backends/0\u003c/code\u003e, \u003ccode\u003eavailable_backends/0\u003c/code\u003e, \u003ccode\u003eknown_backend?/1\u003c/code\u003e, \u003ccode\u003eknown_backend_values/0\u003c/code\u003e, and \u003ccode\u003eavailable_backend?/1\u003c/code\u003e have been removed for the same reason. \u003ccode\u003eImage.Options.Video\u003c/code\u003e (the module that owned the backend table) has been deleted.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCamera input is now opened via a platform-specific device path. \u003ccode\u003e:default_camera\u003c/code\u003e resolves to \u003ccode\u003e/dev/video0\u003c/code\u003e on Linux, \u003ccode\u003e\u0026quot;0\u0026quot;\u003c/code\u003e (AVFoundation device 0) on macOS, and \u003ccode\u003e\u0026quot;video=0\u0026quot;\u003c/code\u003e on Windows. An integer camera index is mapped to the corresponding \u003ccode\u003e/dev/videoN\u003c/code\u003e (or platform equivalent). For non-default cameras you can also pass an explicit FFmpeg device string.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFrame-based seeking (\u003ccode\u003eImage.Video.seek/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e, and \u003ccode\u003eImage.Video.image_from_video/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e) is now implemented as a time-based seek to \u003ccode\u003en / fps\u003c/code\u003e followed by zero or more \u003ccode\u003enext_frame\u003c/code\u003e calls. For most files this lands on the requested frame; for very inter-frame-compressed files FFmpeg may snap to the nearest preceding keyframe.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.close/1\u003c/code\u003e is now a no-op that returns \u003ccode\u003e{:ok, %Image.Video{reader: nil}}\u003c/code\u003e. Xav garbage-collects the underlying FFmpeg context, so explicit close is no longer necessary. The function is retained for source compatibility; subsequent operations on the closed struct return \u003ccode\u003e{:error, %Image.Error{reason: :video_closed}}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImage and audio frames are decoded by FFmpeg + libswscale rather than by OpenCV's videoio backend. Pixel-exact comparisons against fixtures generated by the previous version will not match; the test fixture \u003ccode\u003etest/support/validate/video/video_sample_frame_0.png\u003c/code\u003e has been regenerated.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:xav\u003c/code\u003e is now an optional dependency. It requires FFmpeg ≥ 6.0 to be installed on the system. Add it to your \u003ccode\u003emix.exs\u003c/code\u003e if you use \u003ccode\u003eImage.Video\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e{:xav, \u0026quot;~\u0026gt; 0.10\u0026quot;, optional: true}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:evision\u003c/code\u003e is no longer needed for \u003ccode\u003eImage.Video\u003c/code\u003e. It is still required for \u003ccode\u003eImage.QRcode\u003c/code\u003e and for the \u003ccode\u003eImage.to_evision/2\u003c/code\u003e / \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers, which are unchanged. The README's optional-dependency table reflects the new split.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Error\u003c/code\u003e is now a structured public exception. It carries \u003ccode\u003e:reason\u003c/code\u003e (atom or \u003ccode\u003e{atom, value}\u003c/code\u003e tuple), \u003ccode\u003e:operation\u003c/code\u003e, \u003ccode\u003e:path\u003c/code\u003e, \u003ccode\u003e:value\u003c/code\u003e, and a derived \u003ccode\u003e:message\u003c/code\u003e. Every fallible function in the library now returns \u003ccode\u003e{:ok, value}\u003c/code\u003e or \u003ccode\u003e{:error, %Image.Error{}}\u003c/code\u003e — bare-string error tuples have been eliminated. Bang variants raise the same struct. The new \u003ccode\u003eImage.Error.wrap/2\u003c/code\u003e helper attaches structured context to a raw libvips or \u003ccode\u003eFile.*\u003c/code\u003e error. Pattern-match on \u003ccode\u003e:reason\u003c/code\u003e instead of scraping \u003ccode\u003e:message\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003ecase Image.open(path) do\r\n  {:ok, image} -\u0026gt; ...\r\n  {:error, %Image.Error{reason: :enoent}} -\u0026gt; not_found_handler()\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.65.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.65.0 released on April 9th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse the updated colorspace names in Color 0.4.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.64.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.64.0 released on April 9th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe primary intent of this release is to stablise the code in readiness for a 1.0 release. Deprecated code has been removed, a standardised color model introduced (via the new library \u003ca href=\"https://hex.pm/packages/color\"\u003ecolor\u003c/a\u003e) and objective classification and detection has been removed to a new \u003ccode\u003eimage_detection\u003c/code\u003e library.\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFive long-deprecated functions have been removed:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.interpretation/1\u003c/code\u003e — use \u003ccode\u003eImage.colorspace/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.type/1\u003c/code\u003e (was \u003ccode\u003eformat/1\u003c/code\u003e) — use \u003ccode\u003eImage.band_format/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask!/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask!/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.map_pages/2\u003c/code\u003e — use \u003ccode\u003eImage.map_join_pages/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Color\u003c/code\u003e has been removed. Color handling now lives in two new modules and one new dependency:\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Classification\u003c/code\u003e and \u003ccode\u003eImage.Generation\u003c/code\u003e have moved to a new sibling package, \u003ca href=\"https://hex.pm/packages/image_detection\"\u003e\u003ccode\u003e:image_detection\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:bumblebee\u003c/code\u003e is no longer a dependency of \u003ccode\u003e:image\u003c/code\u003e. It is configured in the new library \u003ccode\u003eimage_detection\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video\u003c/code\u003e is now backed by \u003ca href=\"https://hex.pm/packages/xav\"\u003eXav\u003c/a\u003e (a thin Elixir wrapper around FFmpeg) instead of \u003ccode\u003e:evision\u003c/code\u003e / OpenCV. The public API surface is largely unchanged but the underlying type, options, and a few semantic details have moved:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe video struct is now \u003ccode\u003e%Image.Video{}\u003c/code\u003e (with fields \u003ccode\u003e:reader\u003c/code\u003e, \u003ccode\u003e:source\u003c/code\u003e, \u003ccode\u003e:fps\u003c/code\u003e, \u003ccode\u003e:duration_seconds\u003c/code\u003e, \u003ccode\u003e:frame_count\u003c/code\u003e, \u003ccode\u003e:width\u003c/code\u003e, \u003ccode\u003e:height\u003c/code\u003e) rather than \u003ccode\u003e%Evision.VideoCapture{}\u003c/code\u003e. Pattern-match on the new struct module if your code does so.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.open/2\u003c/code\u003e's \u003ccode\u003e:backend\u003c/code\u003e option has been removed. FFmpeg picks the demuxer automatically and there is no concept of pluggable backends in Xav.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.known_backends/0\u003c/code\u003e, \u003ccode\u003eavailable_backends/0\u003c/code\u003e, \u003ccode\u003eknown_backend?/1\u003c/code\u003e, \u003ccode\u003eknown_backend_values/0\u003c/code\u003e, and \u003ccode\u003eavailable_backend?/1\u003c/code\u003e have been removed for the same reason. \u003ccode\u003eImage.Options.Video\u003c/code\u003e (the module that owned the backend table) has been deleted.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCamera input is now opened via a platform-specific device path. \u003ccode\u003e:default_camera\u003c/code\u003e resolves to \u003ccode\u003e/dev/video0\u003c/code\u003e on Linux, \u003ccode\u003e\u0026quot;0\u0026quot;\u003c/code\u003e (AVFoundation device 0) on macOS, and \u003ccode\u003e\u0026quot;video=0\u0026quot;\u003c/code\u003e on Windows. An integer camera index is mapped to the corresponding \u003ccode\u003e/dev/videoN\u003c/code\u003e (or platform equivalent). For non-default cameras you can also pass an explicit FFmpeg device string.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFrame-based seeking (\u003ccode\u003eImage.Video.seek/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e, and \u003ccode\u003eImage.Video.image_from_video/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e) is now implemented as a time-based seek to \u003ccode\u003en / fps\u003c/code\u003e followed by zero or more \u003ccode\u003enext_frame\u003c/code\u003e calls. For most files this lands on the requested frame; for very inter-frame-compressed files FFmpeg may snap to the nearest preceding keyframe.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.close/1\u003c/code\u003e is now a no-op that returns \u003ccode\u003e{:ok, %Image.Video{reader: nil}}\u003c/code\u003e. Xav garbage-collects the underlying FFmpeg context, so explicit close is no longer necessary. The function is retained for source compatibility; subsequent operations on the closed struct return \u003ccode\u003e{:error, %Image.Error{reason: :video_closed}}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImage and audio frames are decoded by FFmpeg + libswscale rather than by OpenCV's videoio backend. Pixel-exact comparisons against fixtures generated by the previous version will not match; the test fixture \u003ccode\u003etest/support/validate/video/video_sample_frame_0.png\u003c/code\u003e has been regenerated.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:xav\u003c/code\u003e is now an optional dependency. It requires FFmpeg ≥ 6.0 to be installed on the system. Add it to your \u003ccode\u003emix.exs\u003c/code\u003e if you use \u003ccode\u003eImage.Video\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e{:xav, \u0026quot;~\u0026gt; 0.10\u0026quot;, optional: true}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:evision\u003c/code\u003e is no longer needed for \u003ccode\u003eImage.Video\u003c/code\u003e. It is still required for \u003ccode\u003eImage.QRcode\u003c/code\u003e and for the \u003ccode\u003eImage.to_evision/2\u003c/code\u003e / \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers, which are unchanged. The README's optional-dependency table reflects the new split.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7b0042b441f55305227c28e584341c6e571ea652\"\u003e\u003ccode\u003e7b0042b\u003c/code\u003e\u003c/a\u003e Use the updated colorspace names in Color 0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/a09746de5bc2f8d373af3526ecfc1fb505934670\"\u003e\u003ccode\u003ea09746d\u003c/code\u003e\u003c/a\u003e Edit changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/dbb76c127d69c7b29ee8d830b6af4d60d3ab598d\"\u003e\u003ccode\u003edbb76c1\u003c/code\u003e\u003c/a\u003e update readme and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3662acb25298b2c46698eca89a4b479b3e90c381\"\u003e\u003ccode\u003e3662acb\u003c/code\u003e\u003c/a\u003e Make sure all optional deps are code fenced\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d5f13d9f4b1d9516525115332a2760c2795b97d\"\u003e\u003ccode\u003e6d5f13d\u003c/code\u003e\u003c/a\u003e Ensure optional deps are code fenced\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/923e94a29c8f0b69d197359abef769d4f72f9ef9\"\u003e\u003ccode\u003e923e94a\u003c/code\u003e\u003c/a\u003e Correct xav dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1f840c91cb42cf94bf8ba20d71641d9d9ee45f36\"\u003e\u003ccode\u003e1f840c9\u003c/code\u003e\u003c/a\u003e ffmpeg, not fffmpeg\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/89b7a597739ed0388f732550b7c70ff124fff05e\"\u003e\u003ccode\u003e89b7a59\u003c/code\u003e\u003c/a\u003e Add ffmpeg to install requirements in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/800c6865546021abcc5ba4391cbe4f8cb3926dfa\"\u003e\u003ccode\u003e800c686\u003c/code\u003e\u003c/a\u003e Update changelog and reset version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/025c3d56d3143b0fa26af0fde4b11478ef262a3b\"\u003e\u003ccode\u003e025c3d5\u003c/code\u003e\u003c/a\u003e Remove image detection and related deps to image_detection lib\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.63.0...v0.65.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.63.0\u0026new-version=0.65.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/livingmission/blockchain-explorer/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/livingmission%2Fblockchain-explorer/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"},{"uuid":"4005823359","node_id":"PR_kwDOH2dmWs7HDrGt","number":661,"state":"open","title":"chore(bot): bump image from 0.62.1 to 0.63.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-01T00:43:23.000Z","updated_at":"2026-03-01T00:55:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(bot)","packages":[{"name":"image","old_version":"0.62.1","new_version":"0.63.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.62.1 to 0.63.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.63.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.63.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.63.0 released on January 19th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3d2d2facc27105a3375911f8e0c2cd7b7674f9f7\"\u003e\u003ccode\u003e3d2d2fa\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/972d38dd5ff69926990739bfdc6d9cb029215bc3\"\u003e\u003ccode\u003e972d38d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e from akoutmos/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2480133a8bd365e0f8c44b162ef14dd768c20bbe\"\u003e\u003ccode\u003e2480133\u003c/code\u003e\u003c/a\u003e Fixing hex conversion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e9f68267a3f75ae36c2b766a04a8010125309ac0\"\u003e\u003ccode\u003ee9f6826\u003c/code\u003e\u003c/a\u003e Support only Elixir 1.16 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/36acab4187a06bafa1bf4db717de1891597df987\"\u003e\u003ccode\u003e36acab4\u003c/code\u003e\u003c/a\u003e Update CI matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7412c6dead52b3d6dcf9108f471494755cd66173\"\u003e\u003ccode\u003e7412c6d\u003c/code\u003e\u003c/a\u003e Fix compiler warnings for Elixir 1.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/4106f8a1c9a94aa04d94e30344f0a281619dce65\"\u003e\u003ccode\u003e4106f8a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/195\"\u003e#195\u003c/a\u003e from stwf/fix-spec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f3461ab966e94b027a910d33a2db2649d85cc354\"\u003e\u003ccode\u003ef3461ab\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of \u003ca href=\"https://github.com/elixir-image/image\"\u003ehttps://github.com/elixir-image/image\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7a31fbd3f14ae9c172c73edf455d74cae4546243\"\u003e\u003ccode\u003e7a31fbd\u003c/code\u003e\u003c/a\u003e Update CI to use latest Elixir; run apt-get update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6c0ca806b8ddcdcd6ecb0e8a00c9216f439cbe71\"\u003e\u003ccode\u003e6c0ca80\u003c/code\u003e\u003c/a\u003e add error result to spec\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.62.1...v0.63.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.62.1\u0026new-version=0.63.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/martide/literature/pull/661","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/martide%2Fliterature/issues/661","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/661/packages"},{"uuid":"3915062731","node_id":"PR_kwDOGGqrTc7CadNa","number":152,"state":"closed","title":"Bump the production-dependencies group with 5 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-02T08:10:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-09T08:14:40.000Z","updated_at":"2026-03-02T08:10:58.000Z","time_to_close":1814177,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":5,"packages":[{"name":"hammer","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/ExHammer/hammer"},{"name":"image","old_version":"0.62.1","new_version":"0.63.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.5","new_version":"1.8.6","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix_live_view","old_version":"1.1.19","new_version":"1.1.22","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"plug_cowboy","old_version":"2.7.5","new_version":"2.8.0","repository_url":"https://github.com/elixir-plug/plug_cowboy"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 5 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hammer](https://github.com/ExHammer/hammer) | `7.1.0` | `7.2.0` |\n| [image](https://github.com/kipcole9/image) | `0.62.1` | `0.63.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.5` | `1.8.6` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.19` | `1.1.22` |\n| [plug_cowboy](https://github.com/elixir-plug/plug_cowboy) | `2.7.5` | `2.8.0` |\n\nUpdates `hammer` from 7.1.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ExHammer/hammer/blob/master/CHANGELOG.md\"\u003ehammer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.2.0 - 2026-02-03\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race condition in \u003ccode\u003eTokenBucket\u003c/code\u003e and \u003ccode\u003eLeakyBucket\u003c/code\u003e atomics backends by using compare-and-swap (CAS) with packed 64-bit values (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop Elixir 1.14 support (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Elixir 1.19 / OTP 28 support (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRename internal \u003ccode\u003e:algorithm\u003c/code\u003e option to \u003ccode\u003e:algorithm_module\u003c/code\u003e in Atomic backend for clarity (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/a112a2eb7460965809e2ba6c6a1588fc6f773fda\"\u003e\u003ccode\u003ea112a2e\u003c/code\u003e\u003c/a\u003e Bump version to 7.2.0 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/171\"\u003e#171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/32ff71917624c3f950ba516717728547ea87a521\"\u003e\u003ccode\u003e32ff719\u003c/code\u003e\u003c/a\u003e Clean up docs and internal naming (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/f09cb1a73728a02ebdf531f3fedd7f323339466d\"\u003e\u003ccode\u003ef09cb1a\u003c/code\u003e\u003c/a\u003e Bump actions/cache from 4 to 5 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/c9c9325153b2ecd91ea8f49309fbdfe300d150ce\"\u003e\u003ccode\u003ec9c9325\u003c/code\u003e\u003c/a\u003e Bump dialyxir from 1.4.6 to 1.4.7 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/3255d0abf90c9c0294b14f64ea36d969b8da1b6f\"\u003e\u003ccode\u003e3255d0a\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.39.1 to 0.40.1 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/473dd10a6b1eb1b7a7dfe81cc35d8b0d4b70a71e\"\u003e\u003ccode\u003e473dd10\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.13 to 1.7.16 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/4c1a1407ae9bc39f015158a5317f59fc3ea13a24\"\u003e\u003ccode\u003e4c1a140\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/0380556e4d17d0495b920d33c95fc5ef55844d4f\"\u003e\u003ccode\u003e0380556\u003c/code\u003e\u003c/a\u003e Fix race condition in TokenBucket and LeakyBucket atomics backends (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/86d67bd8ad626f5a3e1cd438371e4aac99abf5dc\"\u003e\u003ccode\u003e86d67bd\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.12 to 1.7.13 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/152\"\u003e#152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/ea5ec60bee7e25aa7b0112fbe64f05279ef00f09\"\u003e\u003ccode\u003eea5ec60\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.38.3 to 0.39.1 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ExHammer/hammer/compare/7.1.0...7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.62.1 to 0.63.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.63.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.63.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.63.0 released on January 19th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3d2d2facc27105a3375911f8e0c2cd7b7674f9f7\"\u003e\u003ccode\u003e3d2d2fa\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/972d38dd5ff69926990739bfdc6d9cb029215bc3\"\u003e\u003ccode\u003e972d38d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e from akoutmos/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2480133a8bd365e0f8c44b162ef14dd768c20bbe\"\u003e\u003ccode\u003e2480133\u003c/code\u003e\u003c/a\u003e Fixing hex conversion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e9f68267a3f75ae36c2b766a04a8010125309ac0\"\u003e\u003ccode\u003ee9f6826\u003c/code\u003e\u003c/a\u003e Support only Elixir 1.16 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/36acab4187a06bafa1bf4db717de1891597df987\"\u003e\u003ccode\u003e36acab4\u003c/code\u003e\u003c/a\u003e Update CI matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7412c6dead52b3d6dcf9108f471494755cd66173\"\u003e\u003ccode\u003e7412c6d\u003c/code\u003e\u003c/a\u003e Fix compiler warnings for Elixir 1.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/4106f8a1c9a94aa04d94e30344f0a281619dce65\"\u003e\u003ccode\u003e4106f8a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/195\"\u003e#195\u003c/a\u003e from stwf/fix-spec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f3461ab966e94b027a910d33a2db2649d85cc354\"\u003e\u003ccode\u003ef3461ab\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of \u003ca href=\"https://github.com/elixir-image/image\"\u003ehttps://github.com/elixir-image/image\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7a31fbd3f14ae9c172c73edf455d74cae4546243\"\u003e\u003ccode\u003e7a31fbd\u003c/code\u003e\u003c/a\u003e Update CI to use latest Elixir; run apt-get update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6c0ca806b8ddcdcd6ecb0e8a00c9216f439cbe71\"\u003e\u003ccode\u003e6c0ca80\u003c/code\u003e\u003c/a\u003e add error result to spec\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.62.1...v0.63.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6 Coverage 92%\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix typos and update workflow, docs, and aliases by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/123\"\u003ezhongwencool/observer_cli#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded state formating with erlfmt and rendering with less by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/119\"\u003ezhongwencool/observer_cli#119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved recon from included_applications by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/124\"\u003ezhongwencool/observer_cli#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved test/ compilation by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/125\"\u003ezhongwencool/observer_cli#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed mix compilation by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/126\"\u003ezhongwencool/observer_cli#126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ev1.8.6 by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/128\"\u003ezhongwencool/observer_cli#128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/119\"\u003ezhongwencool/observer_cli#119\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.5...1.8.6\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/blob/main/docs/CHANGELOG.md\"\u003eobserver_cli's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cul\u003e\n\u003cli\u003e1.8.6\n\u003cul\u003e\n\u003cli\u003eAdd external formatter support (dynamic loading/app env) and docs; formatter callback now receives pid.\u003c/li\u003e\n\u003cli\u003eImprove State view rendering by fixing redraw timers and infinite-loop edge cases.\u003c/li\u003e\n\u003cli\u003eImprove less_client/less_server navigation and status output (F/B commands, last line, row fetching).\u003c/li\u003e\n\u003cli\u003eAuto update net_ticktime.\u003c/li\u003e\n\u003cli\u003eFix mix compilation and avoid compiling test/ in release builds.\u003c/li\u003e\n\u003cli\u003eRemove recon from included_applications.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/75da6fa966430d3fe1270688e8b3c119161e113a\"\u003e\u003ccode\u003e75da6fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/128\"\u003e#128\u003c/a\u003e from zhongwencool/fix-typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3c18c88eb6b8dd2ee8b85cd174b898318076ba65\"\u003e\u003ccode\u003e3c18c88\u003c/code\u003e\u003c/a\u003e Fixed mix compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/765b9cd2e7566194c0eef2e72cb96352ab749205\"\u003e\u003ccode\u003e765b9cd\u003c/code\u003e\u003c/a\u003e Removed test/ compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f79fdeee78e47c3e07d7f8f13451289fa5bbebdb\"\u003e\u003ccode\u003ef79fdee\u003c/code\u003e\u003c/a\u003e Removed recon from included_applications\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b5706a6cecef87abbce18d16d618b2177e9df2\"\u003e\u003ccode\u003ef5b5706\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/119\"\u003e#119\u003c/a\u003e from okayno14/main_less\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/af2fa22d535426089ba145d397abfc3d7612ba6b\"\u003e\u003ccode\u003eaf2fa22\u003c/code\u003e\u003c/a\u003e Added pid to observer_cli_formatter behaviour\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/04f7b0b1f91f6060cf3c6751defb31c8811bbad6\"\u003e\u003ccode\u003e04f7b0b\u003c/code\u003e\u003c/a\u003e Fixed redraw-timer management for State-view\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/c32b0be2df12cfd936aabeb7cdf7bafac628ec43\"\u003e\u003ccode\u003ec32b0be\u003c/code\u003e\u003c/a\u003e Fixed wrong timer matching in observer_cli_process:next_draw_view_2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/627339605871d1f6d87eb41b3deb9d8f62182317\"\u003e\u003ccode\u003e6273396\u003c/code\u003e\u003c/a\u003e Fixed infinity loop in state-render-process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/424f7b98aff4cd9fc5f412fd1ad4e663e9a85fde\"\u003e\u003ccode\u003e424f7b9\u003c/code\u003e\u003c/a\u003e Added formatter.md documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.19 to 1.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.22/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.22 (2026-01-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix live component container patch throwing a JavaScript error when container is locked (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4088\"\u003e#4088\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.21 (2026-01-27)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix stream reset and deletes not working if stream is teleported using \u003ccode\u003ePhoenix.Component.portal/1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4121\"\u003e#4121\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMark LiveView template code as generated to prevent warnings on Elixir 1.20\u003c/li\u003e\n\u003cli\u003eAllow unused function warnings for function components to be emitted\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePhoenix.LiveView.TagEngine.compile/2\u003c/code\u003e as an official entrypoint for compiling templates in favor of relying on the \u003ccode\u003eEEx.Engine\u003c/code\u003e behaviour\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.20 (2026-01-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eredirect\u003c/code\u003e in \u003ccode\u003ehandle_params\u003c/code\u003e for client-initiated patches causing a JS exception (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4094\"\u003e#4094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix events initiated from elements teleported outside of a LiveComponent being sent to the LiveView instead of the LiveComponent (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4101\"\u003e#4101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003eHooksOptions\u003c/code\u003e accepts non-default typed hooks (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4099\"\u003e#4099\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent portal content from disappearing in rare cases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4095\"\u003e#4095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e\u0026lt;form\u0026gt;\u003c/code\u003e submission to a controller from inside a portal not working (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4107\"\u003e#4107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JS crash when debouncing inputs attached to a form with the \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4102\"\u003e#4102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eUploadClient\u003c/code\u003e (from LiveViewTest) crashing when receiving a \u003ccode\u003e:socket_close\u003c/code\u003e message (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4079\"\u003e#4079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003elive_file_input\u003c/code\u003e to update attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4078\"\u003e#4078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix invalid HTML when setting LiveView \u003ccode\u003e:container\u003c/code\u003e option to \u003ccode\u003e:body\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3932\"\u003e#3932\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/748f193d627ba85fb9d889b3fd298f45e83d6de8\"\u003e\u003ccode\u003e748f193\u003c/code\u003e\u003c/a\u003e Release v1.1.22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/dc2753a9db2cc9fdb2a3796c1f8330270f5756cd\"\u003e\u003ccode\u003edc2753a\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/241962782a0b97506274aab2618f2ebab910ac4d\"\u003e\u003ccode\u003e2419627\u003c/code\u003e\u003c/a\u003e fix patching locked livecomponent container (closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4088\"\u003e#4088\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4134\"\u003e#4134\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/d1c7f6413b99d38a3c1aed4b8c8b74c25cb08c4e\"\u003e\u003ccode\u003ed1c7f64\u003c/code\u003e\u003c/a\u003e Release v1.1.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a5005507bfaaaad15f4bd9cf371608b6355cb541\"\u003e\u003ccode\u003ea500550\u003c/code\u003e\u003c/a\u003e Mark LiveView code as generated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/4e13579086c0917354b40685b60eda51402f26c7\"\u003e\u003ccode\u003e4e13579\u003c/code\u003e\u003c/a\u003e Update docs clarify window.location timing in hook callbacks (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4120\"\u003e#4120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/085086feb90518ccbf72d508ad68428f58addf3f\"\u003e\u003ccode\u003e085086f\u003c/code\u003e\u003c/a\u003e add compile function to Phoenix.LiveView.TagEngine (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4123\"\u003e#4123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/92c5e95f90ec9a0cf1451d9c4d9387eed46c5b97\"\u003e\u003ccode\u003e92c5e95\u003c/code\u003e\u003c/a\u003e fix reset and delete for teleported streams (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4122\"\u003e#4122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/182b1f1db147a9d9f9d91153d52c0b15995ce5a4\"\u003e\u003ccode\u003e182b1f1\u003c/code\u003e\u003c/a\u003e Add test for unused components\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ad10421291b12df3dc623db14845f4f1e2e858ea\"\u003e\u003ccode\u003ead10421\u003c/code\u003e\u003c/a\u003e Emit unused function warnings for function components\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.19...v1.1.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `plug_cowboy` from 2.7.5 to 2.8.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-plug/plug_cowboy/blob/master/CHANGELOG.md\"\u003eplug_cowboy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.8.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove supported for deprecated \u003ccode\u003enext_protocols_advertised\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-plug/plug_cowboy/commit/5a4771c4b5deba2b0ec3e44d2afc96ca874d95d3\"\u003e\u003ccode\u003e5a4771c\u003c/code\u003e\u003c/a\u003e Release v2.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-plug/plug_cowboy/commit/33095a992506026e35233b678ece831a85e41467\"\u003e\u003ccode\u003e33095a9\u003c/code\u003e\u003c/a\u003e Remove deprecated :next_protocols_advertised from ranch_ssl socket_opts (\u003ca href=\"https://redirect.github.com/elixir-plug/plug_cowboy/issues/111\"\u003e#111\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/elixir-plug/plug_cowboy/compare/v2.7.5...v2.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/152","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/152","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/152/packages"},{"uuid":"3755509775","node_id":"PR_kwDOGkLNDM66O53M","number":854,"state":"closed","title":"chore(deps): bump the production-dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T04:07:25.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-22T23:11:23.000Z","updated_at":"2026-01-13T04:07:26.000Z","time_to_close":1832162,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":16,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.3","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.2","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.7.0","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.10.0","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.7.0","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.19","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.3","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.2.0","repository_url":"https://github.com/edgurgel/solid"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.3` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.2` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.7.0` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.1` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.10.0` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.7.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.19` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.3` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.2.0` |\n\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.3 (2025-12-08)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sql] Tag generated functions as \u003ccode\u003e:generated\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e[sql] Add \u003ccode\u003e:wrap_in_transaction\u003c/code\u003e option to explain\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[mysql] Fix \u003ccode\u003estructure_load/2\u003c/code\u003e for MySQL 9.4+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/912cb3489bec72f4a961d4fdf58df68c2b6dc647\"\u003e\u003ccode\u003e912cb34\u003c/code\u003e\u003c/a\u003e Release v3.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/5d6d82b1beb502762c46bc15fa3ae97100ee504c\"\u003e\u003ccode\u003e5d6d82b\u003c/code\u003e\u003c/a\u003e Add generated option to quote in SQL adapter (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/700\"\u003e#700\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/bddc7bcc949fdd2ffd772967e8c224becdb9c45a\"\u003e\u003ccode\u003ebddc7bc\u003c/code\u003e\u003c/a\u003e chore(docs): Update Safe Ecto Migrations link (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/689\"\u003e#689\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/074a2718fd3d3e536de05b4b4b9483335f19d248\"\u003e\u003ccode\u003e074a271\u003c/code\u003e\u003c/a\u003e Improve sandbox docs (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/687\"\u003e#687\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/e223a377c407c6886eb4d1fe72778e2e03f987ab\"\u003e\u003ccode\u003ee223a37\u003c/code\u003e\u003c/a\u003e Fix structure_load/2 for MySQL 9.4+ (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/685\"\u003e#685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/69954cb7596403d5127bb2f06d7f2ef414988e9e\"\u003e\u003ccode\u003e69954cb\u003c/code\u003e\u003c/a\u003e Updated myxql to 0.8 (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/683\"\u003e#683\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/4752ad25666584846e83c1b44dc297c2a6ed3525\"\u003e\u003ccode\u003e4752ad2\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:wrap_in_transaction\u003c/code\u003e option to explain (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/682\"\u003e#682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly skip manifest removal on Elixir v1.19.3+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.1 (retired)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove unnecessary cleaning of Elixir manifests\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003ch2\u003ePrevious versions\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/blob/v1.0.0/CHANGELOG.md\"\u003eSee the CHANGELOG for versions before v1.0\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e3180f138bda49c7607b709ec74133c47c24c81d\"\u003e\u003ccode\u003ee3180f1\u003c/code\u003e\u003c/a\u003e Release v1.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/ec2f9c1b3d7d03dbd3d8a9d21e3442f26efbeef6\"\u003e\u003ccode\u003eec2f9c1\u003c/code\u003e\u003c/a\u003e Erase manifest unless on upcoming Elixir (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/4960e492813b829f2d44c2a47723379850de2117\"\u003e\u003ccode\u003e4960e49\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/8844a323145936a2bff328fabb25bddc98c09987\"\u003e\u003ccode\u003e8844a32\u003c/code\u003e\u003c/a\u003e Trim CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7fe2dc75a7f86b6fbb2329a14d520e7131c10c3f\"\u003e\u003ccode\u003e7fe2dc7\u003c/code\u003e\u003c/a\u003e Release v1.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/30bf87de18890cd545b25c6a9e2dc3f5f01d3e05\"\u003e\u003ccode\u003e30bf87d\u003c/code\u003e\u003c/a\u003e Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d33d7452b20281cf7b1aaba299955e5c92719669\"\u003e\u003ccode\u003ed33d745\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7443953e4c40ec8eb498ec244aae967bdfc200ed\"\u003e\u003ccode\u003e7443953\u003c/code\u003e\u003c/a\u003e Use ubuntu-latest in the publish-to-hex.yml workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.7.0\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.30...v0.7.0\"\u003ev0.7.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/e41f7e0deafab17cef469633aa1060901b53ad55\"\u003e\u003ccode\u003ee41f7e0\u003c/code\u003e\u003c/a\u003e chore: release version v0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/1cb6f21cd8f1270ca9d9275783b27c97474ef4ea\"\u003e\u003ccode\u003e1cb6f21\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump the dev-dependencies group with 3 updates (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/4930cd457edcb540e5e6318a295ad1187512b7a4\"\u003e\u003ccode\u003e4930cd4\u003c/code\u003e\u003c/a\u003e Fix: \u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/bd2b582cab7316f4084749fc20cc9eda22e0c960\"\u003e\u003ccode\u003ebd2b582\u003c/code\u003e\u003c/a\u003e doc: fix type link (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/d90eb60efa42b79c1b344ddd673dad0ca13bbeca\"\u003e\u003ccode\u003ed90eb60\u003c/code\u003e\u003c/a\u003e docs: Update docs to indicate behavior of List.map/2, add tests (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/5c43202f2a3b47ac9d8d3a3dbd7bfaf6024edf1e\"\u003e\u003ccode\u003e5c43202\u003c/code\u003e\u003c/a\u003e docs: Clarify Elixir version requirements (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/344\"\u003e#344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/6153ea02e91f55f4539158a03dc7a9a3eebbbec0\"\u003e\u003ccode\u003e6153ea0\u003c/code\u003e\u003c/a\u003e feat: Add support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/435cde1d385be900207373341d97e6ecb852f0e5\"\u003e\u003ccode\u003e435cde1\u003c/code\u003e\u003c/a\u003e chore: Fix REUSE license attribution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/0127832814c6727c4655545c9a668d3b604aaba0\"\u003e\u003ccode\u003e0127832\u003c/code\u003e\u003c/a\u003e build(deps): bump rewrite in the production-dependencies group (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/a866ab58baa664f7d9110ce7c39646caeb91143e\"\u003e\u003ccode\u003ea866ab5\u003c/code\u003e\u003c/a\u003e chore: Fix failing test (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/340\"\u003e#340\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0\u003c/h2\u003e\n\u003ch2\u003e0.10.0 - 2025-11-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move \u003ccode\u003e:ignore_setext\u003c/code\u003e from render to parse options\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.48.0 with breaking changes:\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.CodeBlock\u003c/code\u003e (indicates if code block was explicitly closed)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.Heading\u003c/code\u003e (indicates if ATX heading had closing hashes)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003etexts\u003c/code\u003e field to \u003ccode\u003eMDEx.FootnoteReference\u003c/code\u003e (stores original text elements with positions)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eMDEx.Table\u003c/code\u003e \u003ccode\u003enum_rows\u003c/code\u003e calculation: now includes the header row in the count\u003c/li\u003e\n\u003cli\u003eNUL byte handling changed: no longer translated to replacement character during parsing\u003c/li\u003e\n\u003cli\u003eNo virtual newline appended at EOF when missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eOverall performance optimizations in parsing and syntax highlighting\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:highlight\u003c/code\u003e for ==highlighted text== (renders as \u003ccode\u003e\u0026lt;mark\u0026gt;\u003c/code\u003e tags)\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:inline_footnotes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:subtext\u003c/code\u003e for Discord-style subtext\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:tasklist_in_table\u003c/code\u003e for tasklist items in table cells\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:leave_footnote_definitions\u003c/code\u003e to keep footnotes inline\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:escaped_char_spans\u003c/code\u003e for tracking escaped characters with source positions\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003ea7cdccb6a15c37e2d55fe2a8610747e2526eaa1b5314c8f41a6aa7398badd145  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nffff1e5aca7b367b456fda2e60946106b72d99e45f3940ac70f9f727dc4f203e  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\n1fa8c10e675df83065ff6e1e9ad6b5d0ff9795d3abc9b74f3886b624baa2fe65  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\n6ad4a58f6125014db559a2173f6b7faac1c35fee52fecba1f05f6bf17cb8b250  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\n0b6fb89eb23b492450c1c48c665ad6d992f3a23dec7e5703e18710544e182a95  libcomrak_nif-v0.10.0-nif-2.15-aarch64-apple-darwin.so.tar.gz\n3d9a9c45bd804138f9748b7e7aaf39d8db31f6023e4bd460e08c6eea642694af  libcomrak_nif-v0.10.0-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n65b01567c624db5d7ef71cdaa48c63128e32b05be5636a4b1bc8c9c433d7700c  libcomrak_nif-v0.10.0-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n83d4686a0dee320a2b0570fd5e3968eacb90f5166360509e9d9c3a5d0026dd7b  libcomrak_nif-v0.10.0-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\n0bc4213594b304fc1f86fdc70d431639b143a2d6a5873cf5e1bbf3e27b706a09  libcomrak_nif-v0.10.0-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\nbef95c822b5375b9beeddec99c56efd4d19345e024bc69325cf5533fc9a0b813  libcomrak_nif-v0.10.0-nif-2.15-x86_64-apple-darwin.so.tar.gz\n2e46153ac60ce16c9422030f482d1aa16ea6d2eb1f1bcacdff6e3c26d4eb0cd0  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-freebsd--legacy_cpu.so.tar.gz\ndf678f69a467ff7b18b0024611ca5328a9bbc256cd2cb805135cd53e22e0d22e  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-freebsd.so.tar.gz\n3d04f9e53cc161e626cbe3ad0c961e36c8355b7a898ca0051e4484e4a90f2900  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-linux-gnu--legacy_cpu.so.tar.gz\n45e40f3b511dcb511be1f9aeb9da0f16ec6972293ce3c6dfd18a41907c285b06  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-linux-gnu.so.tar.gz\n4ef1d72117e4d69a90655af190ec4e88a09cec31bae0ba21354f46afc5a9c44b  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-linux-musl.so.tar.gz\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.9.4\u003c/h2\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.10.0 - 2025-11-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move \u003ccode\u003e:ignore_setext\u003c/code\u003e from render to parse options\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.48.0 with breaking changes:\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.CodeBlock\u003c/code\u003e (indicates if code block was explicitly closed)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.Heading\u003c/code\u003e (indicates if ATX heading had closing hashes)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003etexts\u003c/code\u003e field to \u003ccode\u003eMDEx.FootnoteReference\u003c/code\u003e (stores original text elements with positions)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eMDEx.Table\u003c/code\u003e \u003ccode\u003enum_rows\u003c/code\u003e calculation: now includes the header row in the count\u003c/li\u003e\n\u003cli\u003eNUL byte handling changed: no longer translated to replacement character during parsing\u003c/li\u003e\n\u003cli\u003eNo virtual newline appended at EOF when missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eOverall performance optimizations in parsing and syntax highlighting\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:highlight\u003c/code\u003e for ==highlighted text== (renders as \u003ccode\u003e\u0026lt;mark\u0026gt;\u003c/code\u003e tags)\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:inline_footnotes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:subtext\u003c/code\u003e for Discord-style subtext\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:tasklist_in_table\u003c/code\u003e for tasklist items in table cells\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:leave_footnote_definitions\u003c/code\u003e to keep footnotes inline\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:escaped_char_spans\u003c/code\u003e for tracking escaped characters with source positions\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.2 - 2025-10-02\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.put_markdown/3\u003c/code\u003e to append or prepend markdown chunks to document buffer\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Introduce buffering to accumulate markdown chunks before parsing\u003c/li\u003e\n\u003cli\u003eFixed pipeline execution when \u003ccode\u003e:markdown\u003c/code\u003e is passed in \u003ccode\u003eMDEx.new/1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e and \u003ccode\u003eMDEx.Document.parse_markdown!/2\u003c/code\u003e in favor of \u003ccode\u003eMDEx.parse_document/2\u003c/code\u003e or \u003ccode\u003eMDEx.Document.put_markdown/1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/4b24cee2ff63a6a91cb7909cdfbb0b6cf08902b3\"\u003e\u003ccode\u003e4b24cee\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/243df6e2aa851a7620220f4d0182445305d2ed68\"\u003e\u003ccode\u003e243df6e\u003c/code\u003e\u003c/a\u003e fix(ci): force build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/22959d2e9b3bad6cbf86529fa0f96e6e49f29e67\"\u003e\u003ccode\u003e22959d2\u003c/code\u003e\u003c/a\u003e fix(ci): force build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/c8971442c08e6e6b193624682292aa3ebff4e8ef\"\u003e\u003ccode\u003ec897144\u003c/code\u003e\u003c/a\u003e v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/1b73b1990573b416f868f15cce5fb3a28a42b94a\"\u003e\u003ccode\u003e1b73b19\u003c/code\u003e\u003c/a\u003e chore: update autumnus v0.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/2a4c97c7a24399064434a333d4ac11fcf0d4b3c1\"\u003e\u003ccode\u003e2a4c97c\u003c/code\u003e\u003c/a\u003e chore: update comrak v0.48.0 (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/272\"\u003e#272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/3bdb4170a11238e74ed1463380cce080104d21e9\"\u003e\u003ccode\u003e3bdb417\u003c/code\u003e\u003c/a\u003e chore(deps): bump autumnus from 0.7.6 to 0.7.7 in /native/comrak_nif (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/270\"\u003e#270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/66e8d8e3c06a7a5b57affd0118af4dc41b6d1422\"\u003e\u003ccode\u003e66e8d8e\u003c/code\u003e\u003c/a\u003e fix: workflow typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/b62632b0ac07708cb4b9c91cf971d8a823c707bb\"\u003e\u003ccode\u003eb62632b\u003c/code\u003e\u003c/a\u003e chore: update action name (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/268\"\u003e#268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/68cf53d7e0440b99cbb6f36c85d96d9bec254d44\"\u003e\u003ccode\u003e68cf53d\u003c/code\u003e\u003c/a\u003e chore: update comrak v0.46.0 (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/267\"\u003e#267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.7.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/v4.7.0/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eDisable migration lock when checking for pending migrations to avoid slow downs\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eKeep backwards compatibility on sandbox API\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/73a83afeaaf8ed5a6f545e530cc4a92602106cb9\"\u003e\u003ccode\u003e73a83af\u003c/code\u003e\u003c/a\u003e Release v4.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/35fcd9eb8326643940102f9bb335c651e3e58732\"\u003e\u003ccode\u003e35fcd9e\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/a0012c266558113a59aa8c1c52af6798c938cc0b\"\u003e\u003ccode\u003ea0012c2\u003c/code\u003e\u003c/a\u003e Release 4.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/6705443afaf84d70ab0b7a728d55762155d70c70\"\u003e\u003ccode\u003e6705443\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/3cb505384bfc6a7b1ed3b790c5b772fe682a1bee\"\u003e\u003ccode\u003e3cb5053\u003c/code\u003e\u003c/a\u003e Maintain backwards compatibility on sandbox API, closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/197\"\u003e#197\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/95fde935bcc9fce41c9ae1ccb6cc55c13fa51b5a\"\u003e\u003ccode\u003e95fde93\u003c/code\u003e\u003c/a\u003e Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.19\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.19/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.19 (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure stale token redirect uses the correct URL (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4068\"\u003e#4068\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIgnore events from elements that are not connected to the DOM (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4066\"\u003e#4066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip \u003ccode\u003ephx-click-away\u003c/code\u003e if clicked element is hidden (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4070\"\u003e#4070\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow disabling symlink warning for colocated js (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4057\"\u003e#4057\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.18 (2025-11-25)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix boolean attributes not being properly ignored when using \u003ccode\u003eJS.ignore_attributes\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4049\"\u003e#4049\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Phoenix.Component.assign/2] allow passing a function as second argument assign(socket, fn _existing_assigns -\u0026gt; %{this_gets: \u0026quot;merged\u0026quot;} end) (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4051\"\u003e#4051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAnnotate \u003ccode\u003ephx-drop-target\u003c/code\u003e elements with the \u003ccode\u003ephx-drop-target-active\u003c/code\u003e class when items are being dropped (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4012\"\u003e#4012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eonDocumentPatch\u003c/code\u003e dom callback and allow specifying the event dispatch phase (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4043\"\u003e#4043\u003c/a\u003e)\nThis allows users to use view transitions, see \u003ca href=\"https://gist.github.com/SteffenDE/cf7cdb91ba037b08cdc583763e4ffc69\"\u003ethe linked gist in the PR\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eWarn in \u003ccode\u003ecreateHook\u003c/code\u003e if passed element has no ID (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4010\"\u003e#4010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003ePhoenix.Component.portal/1\u003c/code\u003e to be nested (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4048\"\u003e#4048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ephx-viewport-overrun-target\u003c/code\u003e to make infinitely scrolled tables easier to implement (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4053\"\u003e#4053\u003c/a\u003e) (\u003ca href=\"https://gist.github.com/SteffenDE/613125993362e30443e58558aa3c8ba0\"\u003eExample\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow to disable the symlink warning for colocated js (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4057\"\u003e#4057\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.17 (2025-11-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enoop in empty live reloader config\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.16 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ephx-disable-with\u003c/code\u003e restoring whitespace improperly (regression in 1.1.15)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.15 (2025-10-21)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not sending elements with \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute when using Firefox (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix keyed comprehension merging in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4027\"\u003e#4027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003etextContent\u003c/code\u003e instead of \u003ccode\u003einnerText\u003c/code\u003e when restoring \u003ccode\u003ephx-disable-with\u003c/code\u003e text to avoid issues with CSS transforms (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4015\"\u003e#4015\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/d37acf13b3b217756fb4dd83a2b5248059a1fc10\"\u003e\u003ccode\u003ed37acf1\u003c/code\u003e\u003c/a\u003e release v1.1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f8922e3b6a1fef18b528fde7e873d83f739e8923\"\u003e\u003ccode\u003ef8922e3\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/85d74d8b28d0c020142211abad92277f368f18ac\"\u003e\u003ccode\u003e85d74d8\u003c/code\u003e\u003c/a\u003e Skip phx-click-away if clicked target is hidden (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4077\"\u003e#4077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/29c2af8507e06780803c3b2d20418fc56922c12c\"\u003e\u003ccode\u003e29c2af8\u003c/code\u003e\u003c/a\u003e ignore events for elements that are not connected (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4074\"\u003e#4074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/b9307d2cc2277590801e22154c46b0d51431413a\"\u003e\u003ccode\u003eb9307d2\u003c/code\u003e\u003c/a\u003e use main view for stale redirect (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4069\"\u003e#4069\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/b3a145e5dca66137c66b970d0c44ec3871cd6f37\"\u003e\u003ccode\u003eb3a145e\u003c/code\u003e\u003c/a\u003e Raise if JS.dispatch detail is not a map (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4062\"\u003e#4062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/5bf52e60ca4558a0a328ff1f9e207b459e1a3d6d\"\u003e\u003ccode\u003e5bf52e6\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ephx-no-format\u003c/code\u003e and \u003ccode\u003ephx-no-curly-interpolation\u003c/code\u003e to cheatsheet (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4065\"\u003e#4065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/7ab8e7df93220214e82c1a36541603bd7b54bf53\"\u003e\u003ccode\u003e7ab8e7d\u003c/code\u003e\u003c/a\u003e allow disabling symlink warning for colocated js (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4057\"\u003e#4057\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a8541d7502ae1ed68f76823d73581e3ac8a0d903\"\u003e\u003ccode\u003ea8541d7\u003c/code\u003e\u003c/a\u003e format for 1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f821d9c7a34032dc44448acd44e278ae103f919b\"\u003e\u003ccode\u003ef821d9c\u003c/code\u003e\u003c/a\u003e release v1.1.18\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.19\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_pubsub` from 2.1.3 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/blob/main/CHANGELOG.md\"\u003ephoenix_pubsub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.2.0 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow the registry size to be set separate from pool size\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003e:broadcast_pool_size\u003c/code\u003e option to allow safe pool size migration\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOnly restart shards if they terminate unexpectedly\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.4 (2024-09-27)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e:permdown_on_shutdown\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/086e0af0af9306580ee59025c85931936a849ab5\"\u003e\u003ccode\u003e086e0af\u003c/code\u003e\u003c/a\u003e Release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/f442cb184a91a32aeb3439a8c160107a590f776f\"\u003e\u003ccode\u003ef442cb1\u003c/code\u003e\u003c/a\u003e Remove unused require\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/0176ce6cd603af6c4ddd622ccabb8f84f0ce5c73\"\u003e\u003ccode\u003e0176ce6\u003c/code\u003e\u003c/a\u003e Fix dialyzer Shard module warning (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/201\"\u003e#201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/fff23f8296c7c1b04ee4a2f06c285058d713cfc6\"\u003e\u003ccode\u003efff23f8\u003c/code\u003e\u003c/a\u003e Separate Registry pool size configuration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/198\"\u003e#198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95b4ad2d32310a80c9a13183da9568a141108c45\"\u003e\u003ccode\u003e95b4ad2\u003c/code\u003e\u003c/a\u003e Introduce broadcast_pool_size option to allow safe pool size migration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/197\"\u003e#197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/420a87aab32dd25b1ab906ba099fda217c16d98d\"\u003e\u003ccode\u003e420a87a\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/2c466f3a82e91530a9b97a4b688fb28f8f1c638d\"\u003e\u003ccode\u003e2c466f3\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings on latest Elixir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95eb7cca82477b1cd4f7f73b00f5a96690a26500\"\u003e\u003ccode\u003e95eb7cc\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/4f0b4bacaffd6008ff8e16076180a5ab1a261d6b\"\u003e\u003ccode\u003e4f0b4ba\u003c/code\u003e\u003c/a\u003e mix format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/148ae108d5713aa420a4beade69b44939c283a12\"\u003e\u003ccode\u003e148ae10\u003c/code\u003e\u003c/a\u003e Only restart shards if they terminate unexpectedly (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/195\"\u003e#195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/compare/v2.1.3...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca ...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/854","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/854","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/854/packages"},{"uuid":"3610117772","node_id":"PR_kwDOGkLNDM6ypLbf","number":848,"state":"open","title":"chore(deps): bump the production-dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-10T23:50:34.000Z","updated_at":"2025-12-02T01:50:24.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":16,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.2","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.2","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.7.0","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.9.4","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.7.0","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.17","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.3","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.1.1","repository_url":"https://github.com/edgurgel/solid"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.2` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.2` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.7.0` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.1` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.9.4` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.7.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.17` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.3` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.1.1` |\n\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/701c99e97f61a0e6d3bc372f5f10da4e1b3898df\"\u003e\u003ccode\u003e701c99e\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/677\"\u003e#677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/79590224dcc36a412614c18bd507b4d5e9a906ad\"\u003e\u003ccode\u003e7959022\u003c/code\u003e\u003c/a\u003e Allow passing through opts in Ecto.Adapters.SQL.Sandbox.allow/4 calls (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/678\"\u003e#678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/22c71121b758115876db51fc449b6b5b6547898f\"\u003e\u003ccode\u003e22c7112\u003c/code\u003e\u003c/a\u003e Release v3.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/35e27985ece612c21fe65b2732587b29b25d7095\"\u003e\u003ccode\u003e35e2798\u003c/code\u003e\u003c/a\u003e Fix nested array generated columns (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/955f0fbf8f00d32efbb08bd2fb26ed74fdaa5f34\"\u003e\u003ccode\u003e955f0fb\u003c/code\u003e\u003c/a\u003e Release v3.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/aa9a3291f785522d24d9f1571d2aa79acbe0d2e5\"\u003e\u003ccode\u003eaa9a329\u003c/code\u003e\u003c/a\u003e Remove unused argument from private helper (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/3084d7150d208fde33bd9bb591cc35a5d481ade3\"\u003e\u003ccode\u003e3084d71\u003c/code\u003e\u003c/a\u003e Better docs for Repos that use \u003ccode\u003eEcto.Adapters.SQL.Adapter\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/671\"\u003e#671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly skip manifest removal on Elixir v1.19.3+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.1 (retired)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove unnecessary cleaning of Elixir manifests\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003ch2\u003ePrevious versions\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/blob/v1.0.0/CHANGELOG.md\"\u003eSee the CHANGELOG for versions before v1.0\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e3180f138bda49c7607b709ec74133c47c24c81d\"\u003e\u003ccode\u003ee3180f1\u003c/code\u003e\u003c/a\u003e Release v1.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/ec2f9c1b3d7d03dbd3d8a9d21e3442f26efbeef6\"\u003e\u003ccode\u003eec2f9c1\u003c/code\u003e\u003c/a\u003e Erase manifest unless on upcoming Elixir (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/4960e492813b829f2d44c2a47723379850de2117\"\u003e\u003ccode\u003e4960e49\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/8844a323145936a2bff328fabb25bddc98c09987\"\u003e\u003ccode\u003e8844a32\u003c/code\u003e\u003c/a\u003e Trim CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7fe2dc75a7f86b6fbb2329a14d520e7131c10c3f\"\u003e\u003ccode\u003e7fe2dc7\u003c/code\u003e\u003c/a\u003e Release v1.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/30bf87de18890cd545b25c6a9e2dc3f5f01d3e05\"\u003e\u003ccode\u003e30bf87d\u003c/code\u003e\u003c/a\u003e Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d33d7452b20281cf7b1aaba299955e5c92719669\"\u003e\u003ccode\u003ed33d745\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7443953e4c40ec8eb498ec244aae967bdfc200ed\"\u003e\u003ccode\u003e7443953\u003c/code\u003e\u003c/a\u003e Use ubuntu-latest in the publish-to-hex.yml workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.7.0\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.30...v0.7.0\"\u003ev0.7.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/e41f7e0deafab17cef469633aa1060901b53ad55\"\u003e\u003ccode\u003ee41f7e0\u003c/code\u003e\u003c/a\u003e chore: release version v0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/1cb6f21cd8f1270ca9d9275783b27c97474ef4ea\"\u003e\u003ccode\u003e1cb6f21\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump the dev-dependencies group with 3 updates (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/4930cd457edcb540e5e6318a295ad1187512b7a4\"\u003e\u003ccode\u003e4930cd4\u003c/code\u003e\u003c/a\u003e Fix: \u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/bd2b582cab7316f4084749fc20cc9eda22e0c960\"\u003e\u003ccode\u003ebd2b582\u003c/code\u003e\u003c/a\u003e doc: fix type link (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/d90eb60efa42b79c1b344ddd673dad0ca13bbeca\"\u003e\u003ccode\u003ed90eb60\u003c/code\u003e\u003c/a\u003e docs: Update docs to indicate behavior of List.map/2, add tests (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/5c43202f2a3b47ac9d8d3a3dbd7bfaf6024edf1e\"\u003e\u003ccode\u003e5c43202\u003c/code\u003e\u003c/a\u003e docs: Clarify Elixir version requirements (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/344\"\u003e#344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/6153ea02e91f55f4539158a03dc7a9a3eebbbec0\"\u003e\u003ccode\u003e6153ea0\u003c/code\u003e\u003c/a\u003e feat: Add support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/435cde1d385be900207373341d97e6ecb852f0e5\"\u003e\u003ccode\u003e435cde1\u003c/code\u003e\u003c/a\u003e chore: Fix REUSE license attribution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/0127832814c6727c4655545c9a668d3b604aaba0\"\u003e\u003ccode\u003e0127832\u003c/code\u003e\u003c/a\u003e build(deps): bump rewrite in the production-dependencies group (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/a866ab58baa664f7d9110ce7c39646caeb91143e\"\u003e\u003ccode\u003ea866ab5\u003c/code\u003e\u003c/a\u003e chore: Fix failing test (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/340\"\u003e#340\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.4\u003c/h2\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003efee2bab68b24e77ffb7ea39dbb602cc9c8dc0010b7ea25500df8b39179a3747f  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb9cb63ffd3532a5f96050f1de877f5a1a1a3d8558b8dd25c2b27c18d57689307  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\n29c0bf07e081baf5cdad847e38ec9b00177b0b93cfb8c34255d4d26d10646e25  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\n46f8e1d96ff1f752a2b2d1e7d34453c0d46002fef5099400502de90966e70032  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\nabc6659f1f28c0aa869fc601d7852c6cc02201a96cea0fd0b0ebda2925ab7f6f  libcomrak_nif-v0.9.4-nif-2.15-aarch64-apple-darwin.so.tar.gz\naef0fa4f7d9226ddca0ec2f2ad3f2842ab885489a4c8d055c9e428bb6b0f8c8b  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n5a599ebcfa0f770b4696d126b0d93f70c8c4d64e5bc8f6ae3cc5449747616cbe  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n3a86a95f1db8f5d2c078f5d900ac6600356e058366d8a0d53b5f7481bf455f90  libcomrak_nif-v0.9.4-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\neaa85c5d594ee961f48083bf7a53cd6eefc2b75ad83a7263b3598dc773bd4649  libcomrak_nif-v0.9.4-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n56b449a1328e7360db8ec99a3b1bbcc876009a68dd41c030c7ca27e6e40c7afd  libcomrak_nif-v0.9.4-nif-2.15-x86_64-apple-darwin.so.tar.gz\n468790e76237c7bc6a3ff1a1d87ad327e64d7eb20a9a24d97c5d08a297629de7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd--legacy_cpu.so.tar.gz\n0aa1a3d3110fd2b3fb6c24d5165a42ea83909fa04fcda183c33fdae3ba0d3390  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd.so.tar.gz\n6ec8b1b9ddeeb3ff588344a21ad16b1884363e1d79b1cbd8fccf927e58033306  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu--legacy_cpu.so.tar.gz\n60cf6c28721b1e2fb801292438bb77af2379b9c51682ce044959079c7deec4d7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu.so.tar.gz\n86035a079bfcf67858e780e43c7b3295a18046bd7fa1b4eec8d4ce8c552907c2  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-musl.so.tar.gz\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.9.3\u003c/h2\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003e67c14ddd10fa6c86224fe1ba64f867d6c015036e663e9ff093d7f7f6c6a2d6af  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb4fbe7c943407fed0e56331861d54bc85ae5bddf36d27d773a28c3c1ec80062e  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\nce9be9bd400bd5bb17911172709443cf6094ae274bcd2d242fe1f412739a8de1  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\nf5ab9d67c03c834c95492e604d80c560824eec7207392499edfe4a1203a46992  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\n78ed9e5348ed98cc2f13d414d86232b1a6c335f941f0fc3c3cf8e86d796f2dc1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-apple-darwin.so.tar.gz\n143217c24b6ddebbe4d3d27dc5e2985ba31fbb62bf4ee0238793cf8dc7dbcda9  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n2d9b56c5a1875d1638f3a91f24b38340563294ac65ff09c41da989a88144fdd1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n1790b2c4aab4d43cc3dac1d1c9c0f0faf5429d07051f6dcfdc4e90cf17c65f79  libcomrak_nif-v0.9.3-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\n130b53a8707cabbb56e1a8bae5b8f3f2fca6e18294a722a063a3feb50c94308f  libcomrak_nif-v0.9.3-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.2 - 2025-10-02\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.put_markdown/3\u003c/code\u003e to append or prepend markdown chunks to document buffer\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Introduce buffering to accumulate markdown chunks before parsing\u003c/li\u003e\n\u003cli\u003eFixed pipeline execution when \u003ccode\u003e:markdown\u003c/code\u003e is passed in \u003ccode\u003eMDEx.new/1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e and \u003ccode\u003eMDEx.Document.parse_markdown!/2\u003c/code\u003e in favor of \u003ccode\u003eMDEx.parse_document/2\u003c/code\u003e or \u003ccode\u003eMDEx.Document.put_markdown/1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003ch2\u003e0.9.1 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Sigil] Support assigns in \u003ccode\u003eMD\u003c/code\u003e sigil modifier\u003c/li\u003e\n\u003cli\u003e[Docs] Document assigns support in \u003ccode\u003eHTML\u003c/code\u003e and \u003ccode\u003eMD\u003c/code\u003e modifiers\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.42.0\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.4\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumn\u003c/code\u003e to v0.5.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/807a73e4f9be51d20d48afdc9edcbe9781d27140\"\u003e\u003ccode\u003e807a73e\u003c/code\u003e\u003c/a\u003e fix: package usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/d3466743dff54bc6ce97311d0b2cd9c18f9170a1\"\u003e\u003ccode\u003ed346674\u003c/code\u003e\u003c/a\u003e v0.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/168d10ee139177477376b32708989d281ecf2e9a\"\u003e\u003ccode\u003e168d10e\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/df6705e45c8dc540acde25126395fde3eb38008b\"\u003e\u003ccode\u003edf6705e\u003c/code\u003e\u003c/a\u003e chore: update deps (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/259\"\u003e#259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/0ea36744fceee59a40f57726e6afbc64b07a091d\"\u003e\u003ccode\u003e0ea3674\u003c/code\u003e\u003c/a\u003e feat: add usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/f710d660443fe813feb9ad337e520db5a5eba09b\"\u003e\u003ccode\u003ef710d66\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/1ab4a32a06d5aa0ff336431d4d7107acff6b5aa6\"\u003e\u003ccode\u003e1ab4a32\u003c/code\u003e\u003c/a\u003e v0.9.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/a764c69f7c4cd753938cbe70cff6e30f767f5425\"\u003e\u003ccode\u003ea764c69\u003c/code\u003e\u003c/a\u003e Fix formatting and update examples in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/166d0acdae9730410144cba63c4f70191f49d87a\"\u003e\u003ccode\u003e166d0ac\u003c/code\u003e\u003c/a\u003e feat: streaming (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/257\"\u003e#257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/9b1c011e0f53fcc42302d0c68b175a9e588be061\"\u003e\u003ccode\u003e9b1c011\u003c/code\u003e\u003c/a\u003e chore: remove unused asset\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.7.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/v4.7.0/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eDisable migration lock when checking for pending migrations to avoid slow downs\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eKeep backwards compatibility on sandbox API\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/73a83afeaaf8ed5a6f545e530cc4a92602106cb9\"\u003e\u003ccode\u003e73a83af\u003c/code\u003e\u003c/a\u003e Release v4.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/35fcd9eb8326643940102f9bb335c651e3e58732\"\u003e\u003ccode\u003e35fcd9e\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/a0012c266558113a59aa8c1c52af6798c938cc0b\"\u003e\u003ccode\u003ea0012c2\u003c/code\u003e\u003c/a\u003e Release 4.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/6705443afaf84d70ab0b7a728d55762155d70c70\"\u003e\u003ccode\u003e6705443\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/3cb505384bfc6a7b1ed3b790c5b772fe682a1bee\"\u003e\u003ccode\u003e3cb5053\u003c/code\u003e\u003c/a\u003e Maintain backwards compatibility on sandbox API, closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/197\"\u003e#197\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/95fde935bcc9fce41c9ae1ccb6cc55c13fa51b5a\"\u003e\u003ccode\u003e95fde93\u003c/code\u003e\u003c/a\u003e Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.17\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.17/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.17 (2025-11-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enoop in empty live reloader config\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.16 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ephx-disable-with\u003c/code\u003e restoring whitespace improperly (regression in 1.1.15)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.15 (2025-10-21)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not sending elements with \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute when using Firefox (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix keyed comprehension merging in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4027\"\u003e#4027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003etextContent\u003c/code\u003e instead of \u003ccode\u003einnerText\u003c/code\u003e when restoring \u003ccode\u003ephx-disable-with\u003c/code\u003e text to avoid issues with CSS transforms (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4015\"\u003e#4015\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow attaching \u003ccode\u003ehandle_async\u003c/code\u003e hooks on LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4018\"\u003e#4018\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.14 (2025-10-07)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not working when form is teleported (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4009\"\u003e#4009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ehandle_event\u003c/code\u003e hook not being able to return \u003ccode\u003e{:halt, reply, socket}\u003c/code\u003e in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4006\"\u003e#4006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOnly set title to default when it is set to empty by the main view, not by nested or sticky views (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4003\"\u003e#4003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically update esbuild version when using Igniter upgrader from 1.0 to 1.1 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4011\"\u003e#4011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unused require warnings on Elixir 1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/8632ec219162f2537a1d230e3bd73a4b2dff87cb\"\u003e\u003ccode\u003e8632ec2\u003c/code\u003e\u003c/a\u003e Release 1.1.17\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/251229d9d6c6f9a96bb7e48532e19e6de24b5bc5\"\u003e\u003ccode\u003e251229d\u003c/code\u003e\u003c/a\u003e noop in empty live reloader config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2a1b860dbaf20ca1b855d5da1dad53e8769dea0c\"\u003e\u003ccode\u003e2a1b860\u003c/code\u003e\u003c/a\u003e release v1.1.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2055315e1b3c599f6e831233b6fa37399c1137ca\"\u003e\u003ccode\u003e2055315\u003c/code\u003e\u003c/a\u003e fix test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/6b2b6acb9c6a3c261ba52731b7fa4104efc348e3\"\u003e\u003ccode\u003e6b2b6ac\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/77655446b868664edcb5d3fa30e0a3f04a4b2299\"\u003e\u003ccode\u003e7765544\u003c/code\u003e\u003c/a\u003e fix phx-disable-with restore to properly use textContent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/8dba70cfb29e5791eb9a7702551a24f1050090bd\"\u003e\u003ccode\u003e8dba70c\u003c/code\u003e\u003c/a\u003e add missing function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f775adc81a2ef6955cf20cd57c9031f3996f7d0b\"\u003e\u003ccode\u003ef775adc\u003c/code\u003e\u003c/a\u003e release v1.1.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/dc672d7025b0f8a6fe8b76240ae7c043e5fbb3d1\"\u003e\u003ccode\u003edc672d7\u003c/code\u003e\u003c/a\u003e use npm trusted publishing (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fc598e177798401d868b466041d955074ab7c65c\"\u003e\u003ccode\u003efc598e1\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.17\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_pubsub` from 2.1.3 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/blob/main/CHANGELOG.md\"\u003ephoenix_pubsub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.2.0 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow the registry size to be set separate from pool size\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003e:broadcast_pool_size\u003c/code\u003e option to allow safe pool size migration\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOnly restart shards if they terminate unexpectedly\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.4 (2024-09-27)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e:permdown_on_shutdown\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/086e0af0af9306580ee59025c85931936a849ab5\"\u003e\u003ccode\u003e086e0af\u003c/code\u003e\u003c/a\u003e Release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/f442cb184a91a32aeb3439a8c160107a590f776f\"\u003e\u003ccode\u003ef442cb1\u003c/code\u003e\u003c/a\u003e Remove unused require\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/0176ce6cd603af6c4ddd622ccabb8f84f0ce5c73\"\u003e\u003ccode\u003e0176ce6\u003c/code\u003e\u003c/a\u003e Fix dialyzer Shard module warning (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/201\"\u003e#201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/fff23f8296c7c1b04ee4a2f06c285058d713cfc6\"\u003e\u003ccode\u003efff23f8\u003c/code\u003e\u003c/a\u003e Separate Registry pool size configuration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/198\"\u003e#198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95b4ad2d32310a80c9a13183da9568a141108c45\"\u003e\u003ccode\u003e95b4ad2\u003c/code\u003e\u003c/a\u003e Introduce broadcast_pool_size option to allow safe pool size migration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/197\"\u003e#197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/420a87aab32dd25b1ab906ba099fda217c16d98d\"\u003e\u003ccode\u003e420a87a\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/2c466f3a82e91530a9b97a4b688fb28f8f1c638d\"\u003e\u003ccode\u003e2c466f3\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings on latest Elixir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95eb7cca82477b1cd4f7f73b00f5a96690a26500\"\u003e\u003ccode\u003e95eb7cc\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/4f0b4bacaffd6008ff8e16076180a5ab1a261d6b\"\u003e\u003ccode\u003e4f0b4ba\u003c/code\u003e\u003c/a\u003e mix format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/148ae108d5713aa420a4beade69b44939c283a12\"\u003e\u003ccode\u003e148ae10\u003c/code\u003e\u003c/a\u003e Only restart shards if they terminate unexpectedly (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/195\"\u003e#195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/compare/v2.1.3...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/3bb2ee2bb0219027c00acb7c8a67ebdc97558fd1\"\u003e\u003ccode\u003e3bb2ee2\u003c/code\u003e\u003c/a\u003e Add example with ANY() (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/f7f9a4e3a2bdea68f6072c5a7c9960bed6bfb500\"\u003e\u003ccode\u003ef7f9a4e\u003c/code\u003e\u003c/a\u003e Add ltxtquery support (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/735\"\u003e#735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/postgrex/compare/v0.20.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `req_embed` from 0.2.1 to 0.3.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/req_embed/blob/main/CHANGELOG.md\"\u003ereq_embed's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.3 - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.2 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded providers: Audius, ElevenLabs, GOOD FOR JOB.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.1 - 2025-08-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ca href=\"https://elixircasts.io/reqembed\"\u003ehttps://elixircasts.io/reqembed\u003c/a\u003e in documentation\u003c/li\u003e\n\u003cli\u003eImprove documentation in overall\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.0 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd providers Beta QuellenSuche, Carbon, Everwall, Filestage, Form-Data, GW2 Fashions, Kubit, Naver Clip, QuellenSuche, SOOP,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Remove provider afreecaTV\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Require minimum Elixir 1.15\u003c/li\u003e\n\u003cli\u003eUpdate providers: Medienarchiv, Supercut, Webcrumbs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.3 - 2025-05-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnite provider support\u003c/li\u003e\n\u003cli\u003emarimo provider support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompilation error on Elixir 1.18.14 and OTP 28\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.2 - 2025-04-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInstallation without \u003ccode\u003e:phoenix_live_view\u003c/code\u003e dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/138d9509bf816cf8811e24e1a6f21a74bab5a149\"\u003e\u003ccode\u003e138d950\u003c/code\u003e\u003c/a\u003e v0.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/7bc46cd5cc707083a4f374247c259f237eff08ff\"\u003e\u003ccode\u003e7bc46cd\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/d22e4dbc0ffc330536433dfaa2b14a45237e6c3e\"\u003e\u003ccode\u003ed22e4db\u003c/code\u003e\u003c/a\u003e Add ElixirCasts episode link to usage rules\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/848","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/848","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/848/packages"},{"uuid":"3559124469","node_id":"PR_kwDOGkLNDM6wBMyS","number":845,"state":"closed","title":"chore(deps): bump the production-dependencies group with 16 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-11-10T23:13:55.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-27T23:46:15.000Z","updated_at":"2025-11-10T23:13:56.000Z","time_to_close":1207660,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":16,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.2","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.6.30","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.9.4","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.6.5","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_html","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/phoenixframework/phoenix_html"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.16","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"phoenix_pubsub","old_version":"2.1.3","new_version":"2.2.0","repository_url":"https://github.com/phoenixframework/phoenix_pubsub"},{"name":"postgrex","old_version":"0.20.0","new_version":"0.21.1","repository_url":"https://github.com/elixir-ecto/postgrex"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.3","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.1.1","repository_url":"https://github.com/edgurgel/solid"},{"name":"vix","old_version":"0.33.0","new_version":"0.35.0","repository_url":"https://github.com/akash-akya/vix"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 16 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.2` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.6.30` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.1` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.9.4` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.6.5` |\n| [phoenix_html](https://github.com/phoenixframework/phoenix_html) | `4.2.1` | `4.3.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.16` |\n| [phoenix_pubsub](https://github.com/phoenixframework/phoenix_pubsub) | `2.1.3` | `2.2.0` |\n| [postgrex](https://github.com/elixir-ecto/postgrex) | `0.20.0` | `0.21.1` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.3` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.1.1` |\n| [vix](https://github.com/akash-akya/vix) | `0.33.0` | `0.35.0` |\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/701c99e97f61a0e6d3bc372f5f10da4e1b3898df\"\u003e\u003ccode\u003e701c99e\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/677\"\u003e#677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/79590224dcc36a412614c18bd507b4d5e9a906ad\"\u003e\u003ccode\u003e7959022\u003c/code\u003e\u003c/a\u003e Allow passing through opts in Ecto.Adapters.SQL.Sandbox.allow/4 calls (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/678\"\u003e#678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/22c71121b758115876db51fc449b6b5b6547898f\"\u003e\u003ccode\u003e22c7112\u003c/code\u003e\u003c/a\u003e Release v3.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/35e27985ece612c21fe65b2732587b29b25d7095\"\u003e\u003ccode\u003e35e2798\u003c/code\u003e\u003c/a\u003e Fix nested array generated columns (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/955f0fbf8f00d32efbb08bd2fb26ed74fdaa5f34\"\u003e\u003ccode\u003e955f0fb\u003c/code\u003e\u003c/a\u003e Release v3.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/aa9a3291f785522d24d9f1571d2aa79acbe0d2e5\"\u003e\u003ccode\u003eaa9a329\u003c/code\u003e\u003c/a\u003e Remove unused argument from private helper (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/3084d7150d208fde33bd9bb591cc35a5d481ade3\"\u003e\u003ccode\u003e3084d71\u003c/code\u003e\u003c/a\u003e Better docs for Repos that use \u003ccode\u003eEcto.Adapters.SQL.Adapter\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/671\"\u003e#671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.6.30\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove case where we iterate a rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.22\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehandle \u003ccode\u003e:error\u003c/code\u003e coming from alias updater by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd :error case clause in modify_existing_alias by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.21\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003euse appropriate function name \u003ccode\u003efunction\u003c/code\u003e -\u0026gt; \u003ccode\u003efunction?\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/326\"\u003e#326\u003c/a\u003e) by Ciarán Walsh\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e) by Erik André Jakobsen\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.26...v0.6.27\"\u003ev0.6.27\u003c/a\u003e (2025-08-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereleasing a new version to handle locally published version with IO.inspects left in 🤦‍♂️\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.25...v0.6.26\"\u003ev0.6.26\u003c/a\u003e (2025-07-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/928f586e1e63636de3dc335a4ed7ce4ff0da27d0\"\u003e\u003ccode\u003e928f586\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/78c00b15a9a33da006a2f373ae5f92a799198c86\"\u003e\u003ccode\u003e78c00b1\u003c/code\u003e\u003c/a\u003e fix: don't silently ignore certain errors during spinners\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/7508897dc5a2d12c8d4bf87980245bb570db2049\"\u003e\u003ccode\u003e7508897\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/69ba2ac9f658ea999412193a0836b4a50bd32811\"\u003e\u003ccode\u003e69ba2ac\u003c/code\u003e\u003c/a\u003e chore: remove beacon from projects list for now\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/04bae76892fb3d502483427219c349b4d3e21ca3\"\u003e\u003ccode\u003e04bae76\u003c/code\u003e\u003c/a\u003e improvement: add \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/c3f201124303518b4f68b5ba8e4c86cb6bf935c6\"\u003e\u003ccode\u003ec3f2011\u003c/code\u003e\u003c/a\u003e fix: prevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/961b6656bf54067dba40585d83430c3738b24305\"\u003e\u003ccode\u003e961b665\u003c/code\u003e\u003c/a\u003e chore: update igniter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/32340634fc61b53d80ef511c3a0ca9afd0f35bd1\"\u003e\u003ccode\u003e3234063\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/924a724ab3146e65270d6bf325757e10940932ed\"\u003e\u003ccode\u003e924a724\u003c/code\u003e\u003c/a\u003e improvement: \u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/ff45e81bcf811076e9d7ad9ec91aa28bcebe675d\"\u003e\u003ccode\u003eff45e81\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.6.30\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.4\u003c/h2\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003efee2bab68b24e77ffb7ea39dbb602cc9c8dc0010b7ea25500df8b39179a3747f  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb9cb63ffd3532a5f96050f1de877f5a1a1a3d8558b8dd25c2b27c18d57689307  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\n29c0bf07e081baf5cdad847e38ec9b00177b0b93cfb8c34255d4d26d10646e25  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\n46f8e1d96ff1f752a2b2d1e7d34453c0d46002fef5099400502de90966e70032  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\nabc6659f1f28c0aa869fc601d7852c6cc02201a96cea0fd0b0ebda2925ab7f6f  libcomrak_nif-v0.9.4-nif-2.15-aarch64-apple-darwin.so.tar.gz\naef0fa4f7d9226ddca0ec2f2ad3f2842ab885489a4c8d055c9e428bb6b0f8c8b  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n5a599ebcfa0f770b4696d126b0d93f70c8c4d64e5bc8f6ae3cc5449747616cbe  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n3a86a95f1db8f5d2c078f5d900ac6600356e058366d8a0d53b5f7481bf455f90  libcomrak_nif-v0.9.4-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\neaa85c5d594ee961f48083bf7a53cd6eefc2b75ad83a7263b3598dc773bd4649  libcomrak_nif-v0.9.4-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n56b449a1328e7360db8ec99a3b1bbcc876009a68dd41c030c7ca27e6e40c7afd  libcomrak_nif-v0.9.4-nif-2.15-x86_64-apple-darwin.so.tar.gz\n468790e76237c7bc6a3ff1a1d87ad327e64d7eb20a9a24d97c5d08a297629de7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd--legacy_cpu.so.tar.gz\n0aa1a3d3110fd2b3fb6c24d5165a42ea83909fa04fcda183c33fdae3ba0d3390  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd.so.tar.gz\n6ec8b1b9ddeeb3ff588344a21ad16b1884363e1d79b1cbd8fccf927e58033306  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu--legacy_cpu.so.tar.gz\n60cf6c28721b1e2fb801292438bb77af2379b9c51682ce044959079c7deec4d7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu.so.tar.gz\n86035a079bfcf67858e780e43c7b3295a18046bd7fa1b4eec8d4ce8c552907c2  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-musl.so.tar.gz\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.9.3\u003c/h2\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003e67c14ddd10fa6c86224fe1ba64f867d6c015036e663e9ff093d7f7f6c6a2d6af  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb4fbe7c943407fed0e56331861d54bc85ae5bddf36d27d773a28c3c1ec80062e  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\nce9be9bd400bd5bb17911172709443cf6094ae274bcd2d242fe1f412739a8de1  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\nf5ab9d67c03c834c95492e604d80c560824eec7207392499edfe4a1203a46992  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\n78ed9e5348ed98cc2f13d414d86232b1a6c335f941f0fc3c3cf8e86d796f2dc1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-apple-darwin.so.tar.gz\n143217c24b6ddebbe4d3d27dc5e2985ba31fbb62bf4ee0238793cf8dc7dbcda9  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n2d9b56c5a1875d1638f3a91f24b38340563294ac65ff09c41da989a88144fdd1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n1790b2c4aab4d43cc3dac1d1c9c0f0faf5429d07051f6dcfdc4e90cf17c65f79  libcomrak_nif-v0.9.3-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\n130b53a8707cabbb56e1a8bae5b8f3f2fca6e18294a722a063a3feb50c94308f  libcomrak_nif-v0.9.3-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.2 - 2025-10-02\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.put_markdown/3\u003c/code\u003e to append or prepend markdown chunks to document buffer\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Introduce buffering to accumulate markdown chunks before parsing\u003c/li\u003e\n\u003cli\u003eFixed pipeline execution when \u003ccode\u003e:markdown\u003c/code\u003e is passed in \u003ccode\u003eMDEx.new/1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e and \u003ccode\u003eMDEx.Document.parse_markdown!/2\u003c/code\u003e in favor of \u003ccode\u003eMDEx.parse_document/2\u003c/code\u003e or \u003ccode\u003eMDEx.Document.put_markdown/1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003ch2\u003e0.9.1 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Sigil] Support assigns in \u003ccode\u003eMD\u003c/code\u003e sigil modifier\u003c/li\u003e\n\u003cli\u003e[Docs] Document assigns support in \u003ccode\u003eHTML\u003c/code\u003e and \u003ccode\u003eMD\u003c/code\u003e modifiers\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.42.0\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.4\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumn\u003c/code\u003e to v0.5.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/807a73e4f9be51d20d48afdc9edcbe9781d27140\"\u003e\u003ccode\u003e807a73e\u003c/code\u003e\u003c/a\u003e fix: package usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/d3466743dff54bc6ce97311d0b2cd9c18f9170a1\"\u003e\u003ccode\u003ed346674\u003c/code\u003e\u003c/a\u003e v0.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/168d10ee139177477376b32708989d281ecf2e9a\"\u003e\u003ccode\u003e168d10e\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/df6705e45c8dc540acde25126395fde3eb38008b\"\u003e\u003ccode\u003edf6705e\u003c/code\u003e\u003c/a\u003e chore: update deps (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/259\"\u003e#259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/0ea36744fceee59a40f57726e6afbc64b07a091d\"\u003e\u003ccode\u003e0ea3674\u003c/code\u003e\u003c/a\u003e feat: add usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/f710d660443fe813feb9ad337e520db5a5eba09b\"\u003e\u003ccode\u003ef710d66\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/1ab4a32a06d5aa0ff336431d4d7107acff6b5aa6\"\u003e\u003ccode\u003e1ab4a32\u003c/code\u003e\u003c/a\u003e v0.9.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/a764c69f7c4cd753938cbe70cff6e30f767f5425\"\u003e\u003ccode\u003ea764c69\u003c/code\u003e\u003c/a\u003e Fix formatting and update examples in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/166d0acdae9730410144cba63c4f70191f49d87a\"\u003e\u003ccode\u003e166d0ac\u003c/code\u003e\u003c/a\u003e feat: streaming (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/257\"\u003e#257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/9b1c011e0f53fcc42302d0c68b175a9e588be061\"\u003e\u003ccode\u003e9b1c011\u003c/code\u003e\u003c/a\u003e chore: remove unused asset\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.6.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/main/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/d6870457660bb20a7716d42a180bd97777ca8702\"\u003e\u003ccode\u003ed687045\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ebab9d16b579fa9629438759ad246871fadbf6e9\"\u003e\u003ccode\u003eebab9d1\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ca36795469026f814f0b0983d8446a3ac4285fce\"\u003e\u003ccode\u003eca36795\u003c/code\u003e\u003c/a\u003e Wrap errors with Plug.Conn.Wrapper error to support live reload  (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/7329d30882b52f9acfbd706c3d3f83a6ec7facd8\"\u003e\u003ccode\u003e7329d30\u003c/code\u003e\u003c/a\u003e Update sandbox.ex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ee5f9b3de924eef8e13a06e2427f3ae375ecfec8\"\u003e\u003ccode\u003eee5f9b3\u003c/code\u003e\u003c/a\u003e Fix docs: Preserve phoenix_ecto_sandbox assign (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/189\"\u003e#189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/76e5b7f8286c6212db5cabb68934c0ee3758d667\"\u003e\u003ccode\u003e76e5b7f\u003c/code\u003e\u003c/a\u003e Update Ecto Sandbox doc for when \u003ccode\u003eon_mount\u003c/code\u003e hooks on \u003ccode\u003elive_session\u003c/code\u003e are prese...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.6.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.16\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.16/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.16 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ephx-disable-with\u003c/code\u003e restoring whitespace improperly (regression in 1.1.15)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.15 (2025-10-21)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not sending elements with \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute when using Firefox (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix keyed comprehension merging in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4027\"\u003e#4027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003etextContent\u003c/code\u003e instead of \u003ccode\u003einnerText\u003c/code\u003e when restoring \u003ccode\u003ephx-disable-with\u003c/code\u003e text to avoid issues with CSS transforms (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4015\"\u003e#4015\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow attaching \u003ccode\u003ehandle_async\u003c/code\u003e hooks on LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4018\"\u003e#4018\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.14 (2025-10-07)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not working when form is teleported (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4009\"\u003e#4009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ehandle_event\u003c/code\u003e hook not being able to return \u003ccode\u003e{:halt, reply, socket}\u003c/code\u003e in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4006\"\u003e#4006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOnly set title to default when it is set to empty by the main view, not by nested or sticky views (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4003\"\u003e#4003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically update esbuild version when using Igniter upgrader from 1.0 to 1.1 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4011\"\u003e#4011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unused require warnings on Elixir 1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2a1b860dbaf20ca1b855d5da1dad53e8769dea0c\"\u003e\u003ccode\u003e2a1b860\u003c/code\u003e\u003c/a\u003e release v1.1.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2055315e1b3c599f6e831233b6fa37399c1137ca\"\u003e\u003ccode\u003e2055315\u003c/code\u003e\u003c/a\u003e fix test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/6b2b6acb9c6a3c261ba52731b7fa4104efc348e3\"\u003e\u003ccode\u003e6b2b6ac\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/77655446b868664edcb5d3fa30e0a3f04a4b2299\"\u003e\u003ccode\u003e7765544\u003c/code\u003e\u003c/a\u003e fix phx-disable-with restore to properly use textContent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/8dba70cfb29e5791eb9a7702551a24f1050090bd\"\u003e\u003ccode\u003e8dba70c\u003c/code\u003e\u003c/a\u003e add missing function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f775adc81a2ef6955cf20cd57c9031f3996f7d0b\"\u003e\u003ccode\u003ef775adc\u003c/code\u003e\u003c/a\u003e release v1.1.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/dc672d7025b0f8a6fe8b76240ae7c043e5fbb3d1\"\u003e\u003ccode\u003edc672d7\u003c/code\u003e\u003c/a\u003e use npm trusted publishing (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fc598e177798401d868b466041d955074ab7c65c\"\u003e\u003ccode\u003efc598e1\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/3a7957571d92b3701cbeaa55281bdc578f138604\"\u003e\u003ccode\u003e3a79575\u003c/code\u003e\u003c/a\u003e Fix form recovery in firefox for external inputs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4031\"\u003e#4031\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fad74aa8d0ee333aead94c0e7bfe6794a7b51559\"\u003e\u003ccode\u003efad74aa\u003c/code\u003e\u003c/a\u003e update playwright and elixir+otp (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4029\"\u003e#4029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.16\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_pubsub` from 2.1.3 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/blob/main/CHANGELOG.md\"\u003ephoenix_pubsub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.2.0 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow the registry size to be set separate from pool size\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003e:broadcast_pool_size\u003c/code\u003e option to allow safe pool size migration\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOnly restart shards if they terminate unexpectedly\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.4 (2024-09-27)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e:permdown_on_shutdown\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/086e0af0af9306580ee59025c85931936a849ab5\"\u003e\u003ccode\u003e086e0af\u003c/code\u003e\u003c/a\u003e Release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/f442cb184a91a32aeb3439a8c160107a590f776f\"\u003e\u003ccode\u003ef442cb1\u003c/code\u003e\u003c/a\u003e Remove unused require\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/0176ce6cd603af6c4ddd622ccabb8f84f0ce5c73\"\u003e\u003ccode\u003e0176ce6\u003c/code\u003e\u003c/a\u003e Fix dialyzer Shard module warning (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/201\"\u003e#201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/fff23f8296c7c1b04ee4a2f06c285058d713cfc6\"\u003e\u003ccode\u003efff23f8\u003c/code\u003e\u003c/a\u003e Separate Registry pool size configuration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/198\"\u003e#198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95b4ad2d32310a80c9a13183da9568a141108c45\"\u003e\u003ccode\u003e95b4ad2\u003c/code\u003e\u003c/a\u003e Introduce broadcast_pool_size option to allow safe pool size migration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/197\"\u003e#197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/420a87aab32dd25b1ab906ba099fda217c16d98d\"\u003e\u003ccode\u003e420a87a\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/2c466f3a82e91530a9b97a4b688fb28f8f1c638d\"\u003e\u003ccode\u003e2c466f3\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings on latest Elixir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95eb7cca82477b1cd4f7f73b00f5a96690a26500\"\u003e\u003ccode\u003e95eb7cc\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/4f0b4bacaffd6008ff8e16076180a5ab1a261d6b\"\u003e\u003ccode\u003e4f0b4ba\u003c/code\u003e\u003c/a\u003e mix format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/148ae108d5713aa420a4beade69b44939c283a12\"\u003e\u003ccode\u003e148ae10\u003c/code\u003e\u003c/a\u003e Only restart shards if they terminate unexpectedly (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/195\"\u003e#195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/compare/v2.1.3...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/3bb2ee2bb0219027c00acb7c8a67ebdc97558fd1\"\u003e\u003ccode\u003e3bb2ee2\u003c/code\u003e\u003c/a\u003e Add example with ANY() (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/f7f9a4e3a2bdea68f6072c5a7c9960bed6bfb500\"\u003e\u003ccode\u003ef7f9a4e\u003c/code\u003e\u003c/a\u003e Add ltxtquery support (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/735\"\u003e#735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/postgrex/compare/v0.20.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `req_embed` from 0.2.1 to 0.3.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/req_embed/blob/main/CHANGELOG.md\"\u003ereq_embed's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.3 - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.2 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded providers: Audius, ElevenLabs, GOOD FOR JOB.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.1 - 2025-08-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ca href=\"https://elixircasts.io/reqembed\"\u003ehttps://elixircasts.io/reqembed\u003c/a\u003e in documentation\u003c/li\u003e\n\u003cli\u003eImprove documentation in overall\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.0 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd providers Beta QuellenSuche, Carbon, Everwall, Filestage, Form-Data, GW2 Fashions, Kubit, Naver Clip, QuellenSuche, SOOP,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Remove provider afreecaTV\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Require minimum Elixir 1.15\u003c/li\u003e\n\u003cli\u003eUpdate providers: Medienarchiv, Supercut, Webcrumbs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.3 - 2025-05-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnite provider support\u003c/li\u003e\n\u003cli\u003emarimo provider support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompilation error on Elixir 1.18.14 and OTP 28\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.2 - 2025-04-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInstallation without \u003ccode\u003e:phoenix_live_view\u003c/code\u003e dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/138d9509bf816cf8811e24e1a6f21a74bab5a149\"\u003e\u003ccode\u003e138d950\u003c/code\u003e\u003c/a\u003e v0.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/7bc46cd5cc707083a4f374247c259f237eff08ff\"\u003e\u003ccode\u003e7bc46cd\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/d22e4dbc0ffc330536433dfaa2b14a45237e6c3e\"\u003e\u003ccode\u003ed22e4db\u003c/code\u003e\u003c/a\u003e Add ElixirCasts episode link to usage rules\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/49b657ca496d49116c5bb1b55d71df1977784bfa\"\u003e\u003ccode\u003e49b657c\u003c/code\u003e\u003c/a\u003e small fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/f940586b572a7fd75b6861c5c585e2198ead2d7a\"\u003e\u003ccode\u003ef940586\u003c/code\u003e\u003c/a\u003e usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/e285fd881b3b327682f27c27449160762e1b3507\"\u003e\u003ccode\u003ee285fd8\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/27fed3c88eb322867fad02f426363066cc5d0d29\"\u003e\u003ccode\u003e27fed3c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/leandrocp/req_embed/issues/27\"\u003e#27\u003c/a\u003e from leandrocp/dependabot/hex/production-dependencies-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/845","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/845","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/845/packages"},{"uuid":"3546396168","node_id":"PR_kwDONT3nos6vWvSJ","number":24,"state":"open","title":"Bump image from 0.59.3 to 0.62.1","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-10-23T20:14:10.000Z","updated_at":"2026-02-06T22:01:13.054Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.59.3","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.3 to 0.62.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.3...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.3\u0026new-version=0.62.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/mmilk23/image_unmirrorer/pull/24","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmilk23%2Fimage_unmirrorer/issues/24","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/24/packages"},{"uuid":"2889226698","node_id":"PR_kwDOGGqrTc6sNhnK","number":137,"state":"open","title":"Bump the production-dependencies group with 9 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-10-06T08:15:28.000Z","updated_at":"2025-10-06T08:15:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":9,"packages":[{"name":"exqlite","old_version":"0.33.0","new_version":"0.33.1","repository_url":"https://github.com/elixir-sqlite/exqlite"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.3","new_version":"1.8.4","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix","old_version":"1.7.21","new_version":"1.8.1","repository_url":"https://github.com/phoenixframework/phoenix"},{"name":"phoenix_html","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/phoenixframework/phoenix_html"},{"name":"phoenix_live_view","old_version":"1.1.2","new_version":"1.1.13","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"sentry","old_version":"11.0.2","new_version":"11.0.4","repository_url":"https://github.com/getsentry/sentry-elixir"},{"name":"tailwind","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/phoenixframework/tailwind"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 9 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [exqlite](https://github.com/elixir-sqlite/exqlite) | `0.33.0` | `0.33.1` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [image](https://github.com/kipcole9/image) | `0.61.1` | `0.62.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.3` | `1.8.4` |\n| [phoenix](https://github.com/phoenixframework/phoenix) | `1.7.21` | `1.8.1` |\n| [phoenix_html](https://github.com/phoenixframework/phoenix_html) | `4.2.1` | `4.3.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.2` | `1.1.13` |\n| [sentry](https://github.com/getsentry/sentry-elixir) | `11.0.2` | `11.0.4` |\n| [tailwind](https://github.com/phoenixframework/tailwind) | `0.3.1` | `0.4.0` |\n\nUpdates `exqlite` from 0.33.0 to 0.33.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-sqlite/exqlite/releases\"\u003eexqlite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.33.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Add \u003ccode\u003eserialized\u003c/code\u003e as an option to connect. by \u003ca href=\"https://github.com/mpope9\"\u003e\u003ccode\u003e@​mpope9\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/337\"\u003eelixir-sqlite/exqlite#337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd SunOS to *BSD flags case by \u003ca href=\"https://github.com/kenichi\"\u003e\u003ccode\u003e@​kenichi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/338\"\u003eelixir-sqlite/exqlite#338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mpope9\"\u003e\u003ccode\u003e@​mpope9\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/337\"\u003eelixir-sqlite/exqlite#337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kenichi\"\u003e\u003ccode\u003e@​kenichi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/338\"\u003eelixir-sqlite/exqlite#338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/elixir-sqlite/exqlite/compare/v0.33.0...v0.33.1\"\u003ehttps://github.com/elixir-sqlite/exqlite/compare/v0.33.0...v0.33.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-sqlite/exqlite/blob/main/CHANGELOG.md\"\u003eexqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.33.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadded: Allow SunOS builds in Makefile\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-sqlite/exqlite/commit/e7828d55546226e0a448e020f7d5861ef7b44e10\"\u003e\u003ccode\u003ee7828d5\u003c/code\u003e\u003c/a\u003e Bump to v0.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-sqlite/exqlite/commit/dfd7e102dce29db2c1fcd725bce6ecec9da2fa36\"\u003e\u003ccode\u003edfd7e10\u003c/code\u003e\u003c/a\u003e add SunOS to *BSD flags case (\u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/issues/338\"\u003e#338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-sqlite/exqlite/commit/3aad0e9aa30d4ac1d658a2e8731834caf644f7b9\"\u003e\u003ccode\u003e3aad0e9\u003c/code\u003e\u003c/a\u003e feat: Add \u003ccode\u003eserialized\u003c/code\u003e as an option to connect. (\u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/issues/337\"\u003e#337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/elixir-sqlite/exqlite/compare/v0.33.0...v0.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.61.1 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.3 to 1.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: extend plugin behaviour to customize the view of body's items by \u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOtp 28 build by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/116\"\u003ezhongwencool/observer_cli#116\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/63a6668cdf304ed05ca04f3e2657df4abfbddb4d\"\u003e\u003ccode\u003e63a6668\u003c/code\u003e\u003c/a\u003e chore: update changelog for version 1.8.4 with OTP 28 fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/be8c67221cd56a5b21efeef474aafd459a8d6aee\"\u003e\u003ccode\u003ebe8c672\u003c/code\u003e\u003c/a\u003e chore: ignore unexported function erlang:processes_next/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/02592f3f89ca70f0dca411005f34b284c5c79ed7\"\u003e\u003ccode\u003e02592f3\u003c/code\u003e\u003c/a\u003e chore: add fail-fast false option for ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/4b5fd4b66dcb78ac1eaf4459f76140322fbe292c\"\u003e\u003ccode\u003e4b5fd4b\u003c/code\u003e\u003c/a\u003e chore: fix dialyzer warning for otp 28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3340e6495528aab1fb6e6ce4fa4208c4eeef180e\"\u003e\u003ccode\u003e3340e64\u003c/code\u003e\u003c/a\u003e chore: ci support otp28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/8b49833f7685d6bdd2b22976d8cefd21dc3f0bb1\"\u003e\u003ccode\u003e8b49833\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/117\"\u003e#117\u003c/a\u003e from imtutta/feature/extend_plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/b90c7ceb4f8593ec8d4058233dc57fe9487de9dc\"\u003e\u003ccode\u003eb90c7ce\u003c/code\u003e\u003c/a\u003e feat: extend plugin behaviour to customize the view of body's items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b98f15e25dcfda672787ab71fc0871ffd97848\"\u003e\u003ccode\u003ef5b98f1\u003c/code\u003e\u003c/a\u003e chore: delete unuse travis.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/652972a4e47bd7cb54e9323f7a8865ce0a3ece2e\"\u003e\u003ccode\u003e652972a\u003c/code\u003e\u003c/a\u003e chore: correct the hex doc url\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix` from 1.7.21 to 1.8.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix/blob/main/CHANGELOG.md\"\u003ephoenix's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.1 (2025-08-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Fix AGENTS.md failing to include CSS and JavaScript sections\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Don't include node_modules override in generated \u003ccode\u003etsconfig.json\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live|html|json] - Make context argument optional. Defaults to the plural name.\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003emix precommit\u003c/code\u003e alias\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eAGENTS.md\u003c/code\u003e generation compatible with \u003ca href=\"https://hexdocs.pm/usage_rules/\"\u003e\u003ccode\u003eusage_rules\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eusage_rules\u003c/code\u003e folder to installer, allowing to sync generic Phoenix rules into new projects\u003c/li\u003e\n\u003cli\u003e[phx.new] Use LiveView 1.1 release in generated code\u003c/li\u003e\n\u003cli\u003e[phx.new] Ensure theme selector and flash closing works without LiveView\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.4 (2025-07-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix phx.gen.presence PubSub server name for umbrella apps\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ephx.gen.live\u003c/code\u003e subscribing to pubsub in disconnected mounts\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Initialize initial git repo when git is installed\u003c/li\u003e\n\u003cli\u003e[phx.new] Opt-in to HEEx \u003ccode\u003e:debug_tags_location\u003c/code\u003e in development\u003c/li\u003e\n\u003cli\u003e[phx.gen.live|html|json|context] Make context name optional and inflect based on schema when missing\u003c/li\u003e\n\u003cli\u003e[phx.gen.*] Use new Ecto 3.13 \u003ccode\u003eRepo.transact/2\u003c/code\u003e in generators\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Warn when using \u003ccode\u003ephx.gen.auth\u003c/code\u003e without esbuild as features assume \u003ccode\u003ephoenix_html.js\u003c/code\u003e in bundle\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003esecurity.md\u003c/code\u003e guide for security best practices\u003c/li\u003e\n\u003cli\u003e[phoenix.js] - Add fetch() support to LongPoll when XMLHTTPRequest is not available\u003c/li\u003e\n\u003cli\u003eOptimize parameter scrubbing by precompiling patterns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.3 (2025-05-07)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.auth] Allow configuring the scope's assign key in phx.gen.auth\u003c/li\u003e\n\u003cli\u003e[phx.new] Do not override theme in root layout if explicitly set\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.2 (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live] Only subscribe to pubsub if connected\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Remove unused current_password field\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Use context_app for scopes to fix generated scopes in umbrella apps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.1 (2025-04-16)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/675e924f73da1a594e07ba22fcbda6636790ce4a\"\u003e\u003ccode\u003e675e924\u003c/code\u003e\u003c/a\u003e Release 1.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/21ee2610ab20557a9ad1fd8f7599f5b5fe5d9b5d\"\u003e\u003ccode\u003e21ee261\u003c/code\u003e\u003c/a\u003e Bump eslint from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6440\"\u003e#6440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a280eedf8a9850e45076977e368c7397c310db2a\"\u003e\u003ccode\u003ea280eed\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​eslint/js\u003c/code\u003e from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6439\"\u003e#6439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/c3d2fa919eb4cd19fa5fef95e97a36c71f936247\"\u003e\u003ccode\u003ec3d2fa9\u003c/code\u003e\u003c/a\u003e Touchup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/8502ed0107f0420498f1e3fac235bc80c86c6912\"\u003e\u003ccode\u003e8502ed0\u003c/code\u003e\u003c/a\u003e Clarify timestamp further. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/820b0badf4ad6eebdcafa88c3bcd67259dd9b9ee\"\u003e\u003ccode\u003e820b0ba\u003c/code\u003e\u003c/a\u003e Clarify timestamp. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a64dd8c698785e6593c0a707a7f20190bc02a279\"\u003e\u003ccode\u003ea64dd8c\u003c/code\u003e\u003c/a\u003e Run mix compile before assets.build in generated aliases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6407\"\u003e#6407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/b0fe7ecd788ecc0d8c0bfbe6eb67b4fd4de57bb4\"\u003e\u003ccode\u003eb0fe7ec\u003c/code\u003e\u003c/a\u003e Update controllers documentation (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6416\"\u003e#6416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a5646dfcf099e09d031081516efcc60835c73bef\"\u003e\u003ccode\u003ea5646df\u003c/code\u003e\u003c/a\u003e Fix some typos (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6386\"\u003e#6386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/14faee2ebebca4151572e9f3f1677fcac29a6c9d\"\u003e\u003ccode\u003e14faee2\u003c/code\u003e\u003c/a\u003e Fix controller.ex documentation typo (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6417\"\u003e#6417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix/compare/v1.7.21...v1.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.2 to 1.1.13\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.13/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.11 (2025-09-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponents being destroyed when their DOM ID changes, even though they are still rendered (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3981\"\u003e#3981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix warning when an empty comprehension is rendered in LiveViewTest\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up duplicate ID check in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3962\"\u003e#3962\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.10 (2025-09-03)\u003c/h2\u003e\n\u003ch3\u003eBug fixxes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRegression in v1.1.9 - fix \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e crashing when using keywords lists and not properly handling atom keys (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3975\"\u003e#3975\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.9 (2025-09-02)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix moved comprehension diff crashing LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3963\"\u003e#3963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003epush_patch\u003c/code\u003e works during form recovery (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix diff crash in LiveViewTest when rendering structs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3970\"\u003e#3970\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude form values from DOM in \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e to mimic browser behavior (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3885\"\u003e#3885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow assigning generic hooks to type \u003ccode\u003eHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3955\"\u003e#3955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow typing hook element when using TypeScript (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd more metadata to \u003ccode\u003ephx:page-loading-start\u003c/code\u003e event in case of errors (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3910\"\u003e#3910\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/975bc91a8f1348bac0d6b718432e3c9c067773dd\"\u003e\u003ccode\u003e975bc91\u003c/code\u003e\u003c/a\u003e release v1.1.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/c1f1de9abf5f9ea7120b12c78d1ba575be776111\"\u003e\u003ccode\u003ec1f1de9\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ff403bb5c2f239c18ba8a27c68c93b2ca4866fcd\"\u003e\u003ccode\u003eff403bb\u003c/code\u003e\u003c/a\u003e prevent crash when passing * to ignore_attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3997\"\u003e#3997\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/67a3bc071aeef9065dce071ccc691f976f479856\"\u003e\u003ccode\u003e67a3bc0\u003c/code\u003e\u003c/a\u003e Fix extra spaces being continually added when formatting nested inline tags (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/68619fb6e0b5d404f8e9e9eba733102f0eb96803\"\u003e\u003ccode\u003e68619fb\u003c/code\u003e\u003c/a\u003e fix merging of streams in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3994\"\u003e#3994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e898d68f5b998b75536d419d7bbe9f50f105fbfb\"\u003e\u003ccode\u003ee898d68\u003c/code\u003e\u003c/a\u003e Serialize error reason as JSON (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/72189f63b784e0b2dec44d41810beb8d37a694b2\"\u003e\u003ccode\u003e72189f6\u003c/code\u003e\u003c/a\u003e release v1.1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f6c87c4f76e6415eb8d8938fe50adf814e03ddcb\"\u003e\u003ccode\u003ef6c87c4\u003c/code\u003e\u003c/a\u003e allow auto-symlinking node_modules for ColocatedJS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a60512c4f258c52bf3bab7919710b1eeb3ac6c49\"\u003e\u003ccode\u003ea60512c\u003c/code\u003e\u003c/a\u003e Prevent pattern in \u003ccode\u003e:let\u003c/code\u003e from leading to uncovered line (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/05191936285dd96b59a3e4da7b4ebb0b190866bc\"\u003e\u003ccode\u003e0519193\u003c/code\u003e\u003c/a\u003e Fix heading in CHANGELOG (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3986\"\u003e#3986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.2...v1.1.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry` from 11.0.2 to 11.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/releases\"\u003esentry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/blob/master/CHANGELOG.md\"\u003esentry's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5f5dc03f013b1933863ccfb08d48b8640008485b\"\u003e\u003ccode\u003e5f5dc03\u003c/code\u003e\u003c/a\u003e release: 11.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78bf227541918ed2d1fe8502e1f77ce5daab8103\"\u003e\u003ccode\u003e78bf227\u003c/code\u003e\u003c/a\u003e Fix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5bf38d6dddbd265b0f478f6cf0c09d45373bdcd5\"\u003e\u003ccode\u003e5bf38d6\u003c/code\u003e\u003c/a\u003e Update pull_request_template.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/941\"\u003e#941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0de7beb4482bd75181890a7be0d5bad05971be76\"\u003e\u003ccode\u003e0de7beb\u003c/code\u003e\u003c/a\u003e meta: add pull request template (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/be4721751d0a4f13455c1becd141bc05f9b357c8\"\u003e\u003ccode\u003ebe47217\u003c/code\u003e\u003c/a\u003e Update SDK version in the README.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/930\"\u003e#930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78b7f5aed691495e3b510a806e43367ddc738c15\"\u003e\u003ccode\u003e78b7f5a\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/14b95fd900af075f99b0c9b7451049fc4ad74e93\"\u003e\u003ccode\u003e14b95fd\u003c/code\u003e\u003c/a\u003e release: 11.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0f1c3dd95718c2c56e46c551dc368b9203c57ced\"\u003e\u003ccode\u003e0f1c3dd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md for 11.0.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/935\"\u003e#935\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/913ecff4b4847c3318b356885d2b60c2bdef9666\"\u003e\u003ccode\u003e913ecff\u003c/code\u003e\u003c/a\u003e Relax version reqs on opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/f83b5080aec61e0618b01efe14de28fce5e914b3\"\u003e\u003ccode\u003ef83b508\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.2'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/sentry-elixir/compare/11.0.2...11.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/tailwind/blob/main/CHANGELOG.md\"\u003etailwind's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0 (2025-09-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eNo longer copy assets in \u003ccode\u003emix tailwind.install\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDiscard empty proxy env vars\u003c/li\u003e\n\u003cli\u003eEnsure watcher picks up rule changes on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e8e289195534780a342c5bb24912eab8b4e318a3\"\u003e\u003ccode\u003ee8e2891\u003c/code\u003e\u003c/a\u003e Release v0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/d09a32b421bbaa37ee575b916d09361e8518a5a6\"\u003e\u003ccode\u003ed09a32b\u003c/code\u003e\u003c/a\u003e Add comments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/3e495133fad3aeee3cd23954566ef9f1c5692707\"\u003e\u003ccode\u003e3e49513\u003c/code\u003e\u003c/a\u003e Normalize windows driver\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/5f8a6b9b18e4bb25960df9e08b77c6e00d05148a\"\u003e\u003ccode\u003e5f8a6b9\u003c/code\u003e\u003c/a\u003e Update versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e9887900add55b5b3a245098699a0c52fdd5d540\"\u003e\u003ccode\u003ee988790\u003c/code\u003e\u003c/a\u003e Sanitize empty strings when getting Proxy Environment variables (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/92\"\u003e#92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/2bf28d7cd8c0f81a74931dbc48c87c62b8b766bc\"\u003e\u003ccode\u003e2bf28d7\u003c/code\u003e\u003c/a\u003e Revert config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/327cef38cd5e439b6d71bb6b05856e18e494b741\"\u003e\u003ccode\u003e327cef3\u003c/code\u003e\u003c/a\u003e Remove outdated docs, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/102\"\u003e#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/21c4b7689f0026fcb1e4c9c54b4aa62788d60713\"\u003e\u003ccode\u003e21c4b76\u003c/code\u003e\u003c/a\u003e Fix path in message, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/126\"\u003e#126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/be2c7b6ad0131050edf077bd8137072d218ca708\"\u003e\u003ccode\u003ebe2c7b6\u003c/code\u003e\u003c/a\u003e Update tests, readme, and simplify install\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/f7e3037a29fb68368501dc4e711c4bcf5999cea5\"\u003e\u003ccode\u003ef7e3037\u003c/code\u003e\u003c/a\u003e Update README.md (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/132\"\u003e#132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/tailwind/compare/v0.3.1...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/137","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/137","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/137/packages"},{"uuid":"2872616064","node_id":"PR_kwDOGkLNDM6rOKSA","number":842,"state":"open","title":"chore(deps): bump the production-dependencies group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-30T02:01:41.000Z","updated_at":"2025-09-30T02:01:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":15,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.2","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.6.30","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.9.0","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.6.5","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.13","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.1","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.1.1","repository_url":"https://github.com/edgurgel/solid"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.2` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.6.30` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.0` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.9.0` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.6.5` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.13` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.1` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.1.1` |\n\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/701c99e97f61a0e6d3bc372f5f10da4e1b3898df\"\u003e\u003ccode\u003e701c99e\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/677\"\u003e#677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/79590224dcc36a412614c18bd507b4d5e9a906ad\"\u003e\u003ccode\u003e7959022\u003c/code\u003e\u003c/a\u003e Allow passing through opts in Ecto.Adapters.SQL.Sandbox.allow/4 calls (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/678\"\u003e#678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/22c71121b758115876db51fc449b6b5b6547898f\"\u003e\u003ccode\u003e22c7112\u003c/code\u003e\u003c/a\u003e Release v3.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/35e27985ece612c21fe65b2732587b29b25d7095\"\u003e\u003ccode\u003e35e2798\u003c/code\u003e\u003c/a\u003e Fix nested array generated columns (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/955f0fbf8f00d32efbb08bd2fb26ed74fdaa5f34\"\u003e\u003ccode\u003e955f0fb\u003c/code\u003e\u003c/a\u003e Release v3.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/aa9a3291f785522d24d9f1571d2aa79acbe0d2e5\"\u003e\u003ccode\u003eaa9a329\u003c/code\u003e\u003c/a\u003e Remove unused argument from private helper (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/3084d7150d208fde33bd9bb591cc35a5d481ade3\"\u003e\u003ccode\u003e3084d71\u003c/code\u003e\u003c/a\u003e Better docs for Repos that use \u003ccode\u003eEcto.Adapters.SQL.Adapter\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/671\"\u003e#671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.6.30\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove case where we iterate a rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.22\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehandle \u003ccode\u003e:error\u003c/code\u003e coming from alias updater by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd :error case clause in modify_existing_alias by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.21\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003euse appropriate function name \u003ccode\u003efunction\u003c/code\u003e -\u0026gt; \u003ccode\u003efunction?\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/326\"\u003e#326\u003c/a\u003e) by Ciarán Walsh\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e) by Erik André Jakobsen\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.26...v0.6.27\"\u003ev0.6.27\u003c/a\u003e (2025-08-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereleasing a new version to handle locally published version with IO.inspects left in 🤦‍♂️\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.25...v0.6.26\"\u003ev0.6.26\u003c/a\u003e (2025-07-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/928f586e1e63636de3dc335a4ed7ce4ff0da27d0\"\u003e\u003ccode\u003e928f586\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/78c00b15a9a33da006a2f373ae5f92a799198c86\"\u003e\u003ccode\u003e78c00b1\u003c/code\u003e\u003c/a\u003e fix: don't silently ignore certain errors during spinners\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/7508897dc5a2d12c8d4bf87980245bb570db2049\"\u003e\u003ccode\u003e7508897\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/69ba2ac9f658ea999412193a0836b4a50bd32811\"\u003e\u003ccode\u003e69ba2ac\u003c/code\u003e\u003c/a\u003e chore: remove beacon from projects list for now\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/04bae76892fb3d502483427219c349b4d3e21ca3\"\u003e\u003ccode\u003e04bae76\u003c/code\u003e\u003c/a\u003e improvement: add \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/c3f201124303518b4f68b5ba8e4c86cb6bf935c6\"\u003e\u003ccode\u003ec3f2011\u003c/code\u003e\u003c/a\u003e fix: prevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/961b6656bf54067dba40585d83430c3738b24305\"\u003e\u003ccode\u003e961b665\u003c/code\u003e\u003c/a\u003e chore: update igniter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/32340634fc61b53d80ef511c3a0ca9afd0f35bd1\"\u003e\u003ccode\u003e3234063\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/924a724ab3146e65270d6bf325757e10940932ed\"\u003e\u003ccode\u003e924a724\u003c/code\u003e\u003c/a\u003e improvement: \u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/ff45e81bcf811076e9d7ad9ec91aa28bcebe675d\"\u003e\u003ccode\u003eff45e81\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.6.30\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.59.3\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.0\u003c/h2\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eThe \u003ccode\u003eMDEx.Document\u003c/code\u003e module now provides an unified API to create, manipulate, and render Markdown documents.\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- %MDEx.Pipe{} = pipe = MDEx.new()\n- MDEx.Pipe.run(pipe)\n+ %MDEx.Document{} = document = MDEx.new()\n+ MDEx.Document.run(document)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee examples \u003ca href=\"https://redirect.github.com/leandrocp/mdex_gfm/pull/7/files\"\u003eleandrocp/mdex_gfm#7\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/leandrocp/mdex_mermaid/pull/13/files\"\u003eleandrocp/mdex_mermaid#13\u003c/a\u003e\u003c/p\u003e\n\u003col start=\"2\"\u003e\n\u003cli\u003eMove types from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- @spec my_function(MDEx.options()) :: any()\n+ @spec my_function(MDEx.Document.options()) :: any()\n\u003c/code\u003e\u003c/pre\u003e\n\u003col start=\"3\"\u003e\n\u003cli\u003eReplace the \u003ccode\u003e:features\u003c/code\u003e option with explicit \u003ccode\u003e:syntax_highlight\u003c/code\u003e and \u003ccode\u003e:sanitize\u003c/code\u003e options\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- MDEx.new(features: [syntax_highlight_theme: \u0026quot;github_light\u0026quot;, sanitize: true])\n+ MDEx.new(\n+   syntax_highlight: [formatter: {:html_inline, theme: \u0026quot;github_light\u0026quot;}],\n+   sanitize: MDEx.Document.default_sanitize_options()\n+ )\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.default_options/0\u003c/code\u003e to get all default options\u003c/li\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e to replace \u003ccode\u003eMDEx.Document\u003c/code\u003e with new Markdown content\u003c/li\u003e\n\u003cli\u003e[Document] Add extra fields in \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e to store options, private data, and pipeline state. Use functions in \u003ccode\u003eMDEx.Document\u003c/code\u003e to manipulate these fields.\u003c/li\u003e\n\u003cli\u003e[Document] Add config \u003ccode\u003eApplication.put_env(:mdex, :inspect_format, :struct)\u003c/code\u003e to enable inspecting the raw \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e struct\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Require \u003ccode\u003eautumnus \u0026gt;= 0.5.4\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Remove \u003ccode\u003eMDEx.Pipe\u003c/code\u003e in favour of unifying all functionality in \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Return \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e in \u003ccode\u003eMDEx.new/1\u003c/code\u003e instead of \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move type definitions from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e (\u003ccode\u003eextension_options\u003c/code\u003e, \u003ccode\u003eparse_options\u003c/code\u003e, \u003ccode\u003erender_options\u003c/code\u003e, \u003ccode\u003esyntax_highlight_options\u003c/code\u003e, \u003ccode\u003esanitize_options\u003c/code\u003e, \u003ccode\u003eoptions\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eThe \u003ccode\u003eMDEx.Document\u003c/code\u003e module now provides an unified API to create, manipulate, and render Markdown documents.\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- %MDEx.Pipe{} = pipe = MDEx.new()\n- MDEx.Pipe.run(pipe)\n+ %MDEx.Document{} = document = MDEx.new()\n+ MDEx.Document.run(document)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee examples \u003ca href=\"https://redirect.github.com/leandrocp/mdex_gfm/pull/7/files\"\u003eleandrocp/mdex_gfm#7\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/leandrocp/mdex_mermaid/pull/13/files\"\u003eleandrocp/mdex_mermaid#13\u003c/a\u003e\u003c/p\u003e\n\u003col start=\"2\"\u003e\n\u003cli\u003eMove types from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- @spec my_function(MDEx.options()) :: any()\n+ @spec my_function(MDEx.Document.options()) :: any()\n\u003c/code\u003e\u003c/pre\u003e\n\u003col start=\"3\"\u003e\n\u003cli\u003eReplace the \u003ccode\u003e:features\u003c/code\u003e option with explicit \u003ccode\u003e:syntax_highlight\u003c/code\u003e and \u003ccode\u003e:sanitize\u003c/code\u003e options\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- MDEx.new(features: [syntax_highlight_theme: \u0026quot;github_light\u0026quot;, sanitize: true])\n+ MDEx.new(\n+   syntax_highlight: [formatter: {:html_inline, theme: \u0026quot;github_light\u0026quot;}],\n+   sanitize: MDEx.Document.default_sanitize_options()\n+ )\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.default_options/0\u003c/code\u003e to get all default options\u003c/li\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e to replace \u003ccode\u003eMDEx.Document\u003c/code\u003e with new Markdown content\u003c/li\u003e\n\u003cli\u003e[Document] Add extra fields in \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e to store options, private data, and pipeline state. Use functions in \u003ccode\u003eMDEx.Document\u003c/code\u003e to manipulate these fields.\u003c/li\u003e\n\u003cli\u003e[Document] Add config \u003ccode\u003eApplication.put_env(:mdex, :inspect_format, :struct)\u003c/code\u003e to enable inspecting the raw \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e struct\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Require \u003ccode\u003eautumnus \u0026gt;= 0.5.4\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Remove \u003ccode\u003eMDEx.Pipe\u003c/code\u003e in favour of unifying all functionality in \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Return \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e in \u003ccode\u003eMDEx.new/1\u003c/code\u003e instead of \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move type definitions from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e (\u003ccode\u003eextension_options\u003c/code\u003e, \u003ccode\u003eparse_options\u003c/code\u003e, \u003ccode\u003erender_options\u003c/code\u003e, \u003ccode\u003esyntax_highlight_options\u003c/code\u003e, \u003ccode\u003esanitize_options\u003c/code\u003e, \u003ccode\u003eoptions\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Remove the \u003ccode\u003e:features\u003c/code\u003e option and support only explicit \u003ccode\u003e:syntax_highlight\u003c/code\u003e / \u003ccode\u003e:sanitize\u003c/code\u003e entries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/147272b2605549e92ba5c68fa94731caa9102ef9\"\u003e\u003ccode\u003e147272b\u003c/code\u003e\u003c/a\u003e v0.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/c721f3016aa987de1b2213aa780a9d204cf11625\"\u003e\u003ccode\u003ec721f30\u003c/code\u003e\u003c/a\u003e impr test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/462e4ebdcb6fc1fa43bafb0db8849f1a9fac8009\"\u003e\u003ccode\u003e462e4eb\u003c/code\u003e\u003c/a\u003e chore(deps): bump anyhow from 1.0.99 to 1.0.100 in /native/comrak_nif (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/16b7fb71fd1793ac73b56019a62cbea2460ffcab\"\u003e\u003ccode\u003e16b7fb7\u003c/code\u003e\u003c/a\u003e chore(deps): bump serde from 1.0.223 to 1.0.226 in /native/comrak_nif (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/3dee5f29636bab96a9200c920273425f906e8cbf\"\u003e\u003ccode\u003e3dee5f2\u003c/code\u003e\u003c/a\u003e fix(inspect): env :struct (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/249\"\u003e#249\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/996d5d54992d35b70b11d0b7a542c7d66285748f\"\u003e\u003ccode\u003e996d5d5\u003c/code\u003e\u003c/a\u003e feat: config inspect (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/246\"\u003e#246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/34a4de686ce7d46ef8491fbf6d4dfb68c9560cda\"\u003e\u003ccode\u003e34a4de6\u003c/code\u003e\u003c/a\u003e Unify MDEx.Document as the core engine (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/245\"\u003e#245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/848ee20b88b57dbcbbbaf58628579349f7744ed5\"\u003e\u003ccode\u003e848ee20\u003c/code\u003e\u003c/a\u003e v0.8.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/c899cff040a9e7d29178794644822d644f6cc881\"\u003e\u003ccode\u003ec899cff\u003c/code\u003e\u003c/a\u003e fix: syntax highlight options (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/07cea77f28d113c821b46eea8e0ec3cb163ff3b6\"\u003e\u003ccode\u003e07cea77\u003c/code\u003e\u003c/a\u003e v0.8.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.6.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/main/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/d6870457660bb20a7716d42a180bd97777ca8702\"\u003e\u003ccode\u003ed687045\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ebab9d16b579fa9629438759ad246871fadbf6e9\"\u003e\u003ccode\u003eebab9d1\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ca36795469026f814f0b0983d8446a3ac4285fce\"\u003e\u003ccode\u003eca36795\u003c/code\u003e\u003c/a\u003e Wrap errors with Plug.Conn.Wrapper error to support live reload  (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/7329d30882b52f9acfbd706c3d3f83a6ec7facd8\"\u003e\u003ccode\u003e7329d30\u003c/code\u003e\u003c/a\u003e Update sandbox.ex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ee5f9b3de924eef8e13a06e2427f3ae375ecfec8\"\u003e\u003ccode\u003eee5f9b3\u003c/code\u003e\u003c/a\u003e Fix docs: Preserve phoenix_ecto_sandbox assign (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/189\"\u003e#189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/76e5b7f8286c6212db5cabb68934c0ee3758d667\"\u003e\u003ccode\u003e76e5b7f\u003c/code\u003e\u003c/a\u003e Update Ecto Sandbox doc for when \u003ccode\u003eon_mount\u003c/code\u003e hooks on \u003ccode\u003elive_session\u003c/code\u003e are prese...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.6.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.13\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.13/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.11 (2025-09-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponents being destroyed when their DOM ID changes, even though they are still rendered (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3981\"\u003e#3981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix warning when an empty comprehension is rendered in LiveViewTest\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up duplicate ID check in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3962\"\u003e#3962\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.10 (2025-09-03)\u003c/h2\u003e\n\u003ch3\u003eBug fixxes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRegression in v1.1.9 - fix \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e crashing when using keywords lists and not properly handling atom keys (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3975\"\u003e#3975\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.9 (2025-09-02)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix moved comprehension diff crashing LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3963\"\u003e#3963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003epush_patch\u003c/code\u003e works during form recovery (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix diff crash in LiveViewTest when rendering structs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3970\"\u003e#3970\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude form values from DOM in \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e to mimic browser behavior (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3885\"\u003e#3885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow assigning generic hooks to type \u003ccode\u003eHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3955\"\u003e#3955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow typing hook element when using TypeScript (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd more metadata to \u003ccode\u003ephx:page-loading-start\u003c/code\u003e event in case of errors (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3910\"\u003e#3910\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/975bc91a8f1348bac0d6b718432e3c9c067773dd\"\u003e\u003ccode\u003e975bc91\u003c/code\u003e\u003c/a\u003e release v1.1.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/c1f1de9abf5f9ea7120b12c78d1ba575be776111\"\u003e\u003ccode\u003ec1f1de9\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ff403bb5c2f239c18ba8a27c68c93b2ca4866fcd\"\u003e\u003ccode\u003eff403bb\u003c/code\u003e\u003c/a\u003e prevent crash when passing * to ignore_attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3997\"\u003e#3997\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/67a3bc071aeef9065dce071ccc691f976f479856\"\u003e\u003ccode\u003e67a3bc0\u003c/code\u003e\u003c/a\u003e Fix extra spaces being continually added when formatting nested inline tags (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/68619fb6e0b5d404f8e9e9eba733102f0eb96803\"\u003e\u003ccode\u003e68619fb\u003c/code\u003e\u003c/a\u003e fix merging of streams in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3994\"\u003e#3994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e898d68f5b998b75536d419d7bbe9f50f105fbfb\"\u003e\u003ccode\u003ee898d68\u003c/code\u003e\u003c/a\u003e Serialize error reason as JSON (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/72189f63b784e0b2dec44d41810beb8d37a694b2\"\u003e\u003ccode\u003e72189f6\u003c/code\u003e\u003c/a\u003e release v1.1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f6c87c4f76e6415eb8d8938fe50adf814e03ddcb\"\u003e\u003ccode\u003ef6c87c4\u003c/code\u003e\u003c/a\u003e allow auto-symlinking node_modules for ColocatedJS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a60512c4f258c52bf3bab7919710b1eeb3ac6c49\"\u003e\u003ccode\u003ea60512c\u003c/code\u003e\u003c/a\u003e Prevent pattern in \u003ccode\u003e:let\u003c/code\u003e from leading to uncovered line (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/05191936285dd96b59a3e4da7b4ebb0b190866bc\"\u003e\u003ccode\u003e0519193\u003c/code\u003e\u003c/a\u003e Fix heading in CHANGELOG (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3986\"\u003e#3986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/3bb2ee2bb0219027c00acb7c8a67ebdc97558fd1\"\u003e\u003ccode\u003e3bb2ee2\u003c/code\u003e\u003c/a\u003e Add example with ANY() (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/f7f9a4e3a2bdea68f6072c5a7c9960bed6bfb500\"\u003e\u003ccode\u003ef7f9a4e\u003c/code\u003e\u003c/a\u003e Add ltxtquery support (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/735\"\u003e#735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/postgrex/compare/v0.20.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `req_embed` from 0.2.1 to 0.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/req_embed/blob/main/CHANGELOG.md\"\u003ereq_embed's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.3.1] - 2025-08-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ca href=\"https://elixircasts.io/reqembed\"\u003ehttps://elixircasts.io/reqembed\u003c/a\u003e in documentation\u003c/li\u003e\n\u003cli\u003eImprove documentation in overall\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.3.0] - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd providers Beta QuellenSuche, Carbon, Everwall, Filestage, Form-Data, GW2 Fashions, Kubit, Naver Clip, QuellenSuche, SOOP,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Remove provider afreecaTV\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Require minimum Elixir 1.15\u003c/li\u003e\n\u003cli\u003eUpdate providers: Medienarchiv, Supercut, Webcrumbs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.2.3] - 2025-05-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnite provider support\u003c/li\u003e\n\u003cli\u003emarimo provider support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompilation error on Elixir 1.18.14 and OTP 28\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.2.2] - 2025-04-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInstallation without \u003ccode\u003e:phoenix_live_view\u003c/code\u003e dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/ee8bd526b1fb785bd4f8d211bce5d4a1acbc1b41\"\u003e\u003ccode\u003eee8bd52\u003c/code\u003e\u003c/a\u003e v0.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/7bf4fb95c8334f5f724ca0fc6c661eb243465723\"\u003e\u003ccode\u003e7bf4fb9\u003c/code\u003e\u003c/a\u003e docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/089b5015e819b842893c2b9dc1055060f635458e\"\u003e\u003ccode\u003e089b501\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/0e0be444f105f7d3f050e374538d078c0c1a4bea\"\u003e\u003ccode\u003e0e0be44\u003c/code\u003e\u003c/a\u003e docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/c6050c57b4476373a52040c04b2db8ddb7f28247\"\u003e\u003ccode\u003ec6050c5\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/230d035ad795eb94611238ad942f0297b5bbdf0d\"\u003e\u003ccode\u003e230d035\u003c/code\u003e\u003c/a\u003e v0.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/b46197f0bb359d2969a33b1ac1e7f019931362cf\"\u003e\u003ccode\u003eb46197f\u003c/code\u003e\u003c/a\u003e chore: tests and docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/59e295b2c6790c1dadd035f562714fa5f26a0e96\"\u003e\u003ccode\u003e59e295b\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/fcdaa5e4262bdaab04ff717b9bf5641a28563103\"\u003e\u003ccode\u003efcdaa5e\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/4b73335d108719a20f1bcb36e80678a369a77f4a\"\u003e\u003ccode\u003e4b73335\u003c/code\u003e\u003c/a\u003e chore: dependabot\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/req_embed/compare/v0.2.1...v0.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `solid` from 0.18.0 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/edgurgel/solid/releases\"\u003esolid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSolid 1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix replace_first filter for nil argument by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/174\"\u003eedgurgel/solid#174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Handle non-list inputs in sort_natural filter by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/175\"\u003eedgurgel/solid#175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: \u003ccode\u003ereplace_last\u003c/code\u003e filter bug with duplicate substrings by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/176\"\u003eedgurgel/solid#176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(filter): Handle nil argument for replace_last by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/177\"\u003eedgurgel/solid#177\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(strip_html): handle multiline comments by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/178\"\u003eedgurgel/solid#178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Return error when both strict variables and filters are enabled by \u003ca href=\"https://github.com/Cervajz\"\u003e\u003ccode\u003e@​Cervajz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/179\"\u003eedgurgel/solid#179\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove UndefinedVariableError and UndefinedFilterError error messages by \u003ca href=\"https://github.com/Cervajz\"\u003e\u003ccode\u003e@​Cervajz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/180\"\u003eedgurgel/solid#180\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Cervajz\"\u003e\u003ccode\u003e@​Cervajz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/179\"\u003eedgurgel/solid#179\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/edgurgel/solid/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/edgurgel/solid/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSolid 1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: render loop should not access parentloop by \u003ca href=\"https://github.com/edgurgel\"\u003e\u003ccode\u003e@​edgurgel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/170\"\u003eedgurgel/solid#170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix incorrect typespec in If/Unless tag by \u003ca hr...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/842","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/842","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/842/packages"},{"uuid":"2848403220","node_id":"PR_kwDOGGqrTc6pxy8U","number":136,"state":"closed","title":"Bump the production-dependencies group with 7 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-09-29T08:15:05.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-22T08:28:05.000Z","updated_at":"2025-09-29T08:15:05.000Z","time_to_close":604020,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":7,"packages":[{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.3","new_version":"1.8.4","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix","old_version":"1.7.21","new_version":"1.8.1","repository_url":"https://github.com/phoenixframework/phoenix"},{"name":"phoenix_live_view","old_version":"1.1.2","new_version":"1.1.13","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"sentry","old_version":"11.0.2","new_version":"11.0.4","repository_url":"https://github.com/getsentry/sentry-elixir"},{"name":"tailwind","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/phoenixframework/tailwind"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 7 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [image](https://github.com/kipcole9/image) | `0.61.1` | `0.62.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.3` | `1.8.4` |\n| [phoenix](https://github.com/phoenixframework/phoenix) | `1.7.21` | `1.8.1` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.2` | `1.1.13` |\n| [sentry](https://github.com/getsentry/sentry-elixir) | `11.0.2` | `11.0.4` |\n| [tailwind](https://github.com/phoenixframework/tailwind) | `0.3.1` | `0.4.0` |\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.61.1 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.3 to 1.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: extend plugin behaviour to customize the view of body's items by \u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOtp 28 build by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/116\"\u003ezhongwencool/observer_cli#116\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/63a6668cdf304ed05ca04f3e2657df4abfbddb4d\"\u003e\u003ccode\u003e63a6668\u003c/code\u003e\u003c/a\u003e chore: update changelog for version 1.8.4 with OTP 28 fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/be8c67221cd56a5b21efeef474aafd459a8d6aee\"\u003e\u003ccode\u003ebe8c672\u003c/code\u003e\u003c/a\u003e chore: ignore unexported function erlang:processes_next/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/02592f3f89ca70f0dca411005f34b284c5c79ed7\"\u003e\u003ccode\u003e02592f3\u003c/code\u003e\u003c/a\u003e chore: add fail-fast false option for ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/4b5fd4b66dcb78ac1eaf4459f76140322fbe292c\"\u003e\u003ccode\u003e4b5fd4b\u003c/code\u003e\u003c/a\u003e chore: fix dialyzer warning for otp 28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3340e6495528aab1fb6e6ce4fa4208c4eeef180e\"\u003e\u003ccode\u003e3340e64\u003c/code\u003e\u003c/a\u003e chore: ci support otp28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/8b49833f7685d6bdd2b22976d8cefd21dc3f0bb1\"\u003e\u003ccode\u003e8b49833\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/117\"\u003e#117\u003c/a\u003e from imtutta/feature/extend_plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/b90c7ceb4f8593ec8d4058233dc57fe9487de9dc\"\u003e\u003ccode\u003eb90c7ce\u003c/code\u003e\u003c/a\u003e feat: extend plugin behaviour to customize the view of body's items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b98f15e25dcfda672787ab71fc0871ffd97848\"\u003e\u003ccode\u003ef5b98f1\u003c/code\u003e\u003c/a\u003e chore: delete unuse travis.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/652972a4e47bd7cb54e9323f7a8865ce0a3ece2e\"\u003e\u003ccode\u003e652972a\u003c/code\u003e\u003c/a\u003e chore: correct the hex doc url\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix` from 1.7.21 to 1.8.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix/blob/main/CHANGELOG.md\"\u003ephoenix's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.1 (2025-08-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Fix AGENTS.md failing to include CSS and JavaScript sections\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Don't include node_modules override in generated \u003ccode\u003etsconfig.json\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live|html|json] - Make context argument optional. Defaults to the plural name.\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003emix precommit\u003c/code\u003e alias\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eAGENTS.md\u003c/code\u003e generation compatible with \u003ca href=\"https://hexdocs.pm/usage_rules/\"\u003e\u003ccode\u003eusage_rules\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eusage_rules\u003c/code\u003e folder to installer, allowing to sync generic Phoenix rules into new projects\u003c/li\u003e\n\u003cli\u003e[phx.new] Use LiveView 1.1 release in generated code\u003c/li\u003e\n\u003cli\u003e[phx.new] Ensure theme selector and flash closing works without LiveView\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.4 (2025-07-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix phx.gen.presence PubSub server name for umbrella apps\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ephx.gen.live\u003c/code\u003e subscribing to pubsub in disconnected mounts\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Initialize initial git repo when git is installed\u003c/li\u003e\n\u003cli\u003e[phx.new] Opt-in to HEEx \u003ccode\u003e:debug_tags_location\u003c/code\u003e in development\u003c/li\u003e\n\u003cli\u003e[phx.gen.live|html|json|context] Make context name optional and inflect based on schema when missing\u003c/li\u003e\n\u003cli\u003e[phx.gen.*] Use new Ecto 3.13 \u003ccode\u003eRepo.transact/2\u003c/code\u003e in generators\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Warn when using \u003ccode\u003ephx.gen.auth\u003c/code\u003e without esbuild as features assume \u003ccode\u003ephoenix_html.js\u003c/code\u003e in bundle\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003esecurity.md\u003c/code\u003e guide for security best practices\u003c/li\u003e\n\u003cli\u003e[phoenix.js] - Add fetch() support to LongPoll when XMLHTTPRequest is not available\u003c/li\u003e\n\u003cli\u003eOptimize parameter scrubbing by precompiling patterns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.3 (2025-05-07)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.auth] Allow configuring the scope's assign key in phx.gen.auth\u003c/li\u003e\n\u003cli\u003e[phx.new] Do not override theme in root layout if explicitly set\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.2 (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live] Only subscribe to pubsub if connected\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Remove unused current_password field\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Use context_app for scopes to fix generated scopes in umbrella apps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.1 (2025-04-16)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/675e924f73da1a594e07ba22fcbda6636790ce4a\"\u003e\u003ccode\u003e675e924\u003c/code\u003e\u003c/a\u003e Release 1.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/21ee2610ab20557a9ad1fd8f7599f5b5fe5d9b5d\"\u003e\u003ccode\u003e21ee261\u003c/code\u003e\u003c/a\u003e Bump eslint from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6440\"\u003e#6440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a280eedf8a9850e45076977e368c7397c310db2a\"\u003e\u003ccode\u003ea280eed\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​eslint/js\u003c/code\u003e from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6439\"\u003e#6439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/c3d2fa919eb4cd19fa5fef95e97a36c71f936247\"\u003e\u003ccode\u003ec3d2fa9\u003c/code\u003e\u003c/a\u003e Touchup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/8502ed0107f0420498f1e3fac235bc80c86c6912\"\u003e\u003ccode\u003e8502ed0\u003c/code\u003e\u003c/a\u003e Clarify timestamp further. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/820b0badf4ad6eebdcafa88c3bcd67259dd9b9ee\"\u003e\u003ccode\u003e820b0ba\u003c/code\u003e\u003c/a\u003e Clarify timestamp. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a64dd8c698785e6593c0a707a7f20190bc02a279\"\u003e\u003ccode\u003ea64dd8c\u003c/code\u003e\u003c/a\u003e Run mix compile before assets.build in generated aliases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6407\"\u003e#6407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/b0fe7ecd788ecc0d8c0bfbe6eb67b4fd4de57bb4\"\u003e\u003ccode\u003eb0fe7ec\u003c/code\u003e\u003c/a\u003e Update controllers documentation (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6416\"\u003e#6416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a5646dfcf099e09d031081516efcc60835c73bef\"\u003e\u003ccode\u003ea5646df\u003c/code\u003e\u003c/a\u003e Fix some typos (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6386\"\u003e#6386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/14faee2ebebca4151572e9f3f1677fcac29a6c9d\"\u003e\u003ccode\u003e14faee2\u003c/code\u003e\u003c/a\u003e Fix controller.ex documentation typo (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6417\"\u003e#6417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix/compare/v1.7.21...v1.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.2 to 1.1.13\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.13/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.11 (2025-09-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponents being destroyed when their DOM ID changes, even though they are still rendered (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3981\"\u003e#3981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix warning when an empty comprehension is rendered in LiveViewTest\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up duplicate ID check in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3962\"\u003e#3962\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.10 (2025-09-03)\u003c/h2\u003e\n\u003ch3\u003eBug fixxes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRegression in v1.1.9 - fix \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e crashing when using keywords lists and not properly handling atom keys (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3975\"\u003e#3975\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.9 (2025-09-02)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix moved comprehension diff crashing LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3963\"\u003e#3963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003epush_patch\u003c/code\u003e works during form recovery (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix diff crash in LiveViewTest when rendering structs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3970\"\u003e#3970\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude form values from DOM in \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e to mimic browser behavior (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3885\"\u003e#3885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow assigning generic hooks to type \u003ccode\u003eHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3955\"\u003e#3955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow typing hook element when using TypeScript (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd more metadata to \u003ccode\u003ephx:page-loading-start\u003c/code\u003e event in case of errors (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3910\"\u003e#3910\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/975bc91a8f1348bac0d6b718432e3c9c067773dd\"\u003e\u003ccode\u003e975bc91\u003c/code\u003e\u003c/a\u003e release v1.1.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/c1f1de9abf5f9ea7120b12c78d1ba575be776111\"\u003e\u003ccode\u003ec1f1de9\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ff403bb5c2f239c18ba8a27c68c93b2ca4866fcd\"\u003e\u003ccode\u003eff403bb\u003c/code\u003e\u003c/a\u003e prevent crash when passing * to ignore_attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3997\"\u003e#3997\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/67a3bc071aeef9065dce071ccc691f976f479856\"\u003e\u003ccode\u003e67a3bc0\u003c/code\u003e\u003c/a\u003e Fix extra spaces being continually added when formatting nested inline tags (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/68619fb6e0b5d404f8e9e9eba733102f0eb96803\"\u003e\u003ccode\u003e68619fb\u003c/code\u003e\u003c/a\u003e fix merging of streams in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3994\"\u003e#3994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e898d68f5b998b75536d419d7bbe9f50f105fbfb\"\u003e\u003ccode\u003ee898d68\u003c/code\u003e\u003c/a\u003e Serialize error reason as JSON (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/72189f63b784e0b2dec44d41810beb8d37a694b2\"\u003e\u003ccode\u003e72189f6\u003c/code\u003e\u003c/a\u003e release v1.1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f6c87c4f76e6415eb8d8938fe50adf814e03ddcb\"\u003e\u003ccode\u003ef6c87c4\u003c/code\u003e\u003c/a\u003e allow auto-symlinking node_modules for ColocatedJS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a60512c4f258c52bf3bab7919710b1eeb3ac6c49\"\u003e\u003ccode\u003ea60512c\u003c/code\u003e\u003c/a\u003e Prevent pattern in \u003ccode\u003e:let\u003c/code\u003e from leading to uncovered line (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/05191936285dd96b59a3e4da7b4ebb0b190866bc\"\u003e\u003ccode\u003e0519193\u003c/code\u003e\u003c/a\u003e Fix heading in CHANGELOG (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3986\"\u003e#3986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.2...v1.1.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry` from 11.0.2 to 11.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/releases\"\u003esentry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/blob/master/CHANGELOG.md\"\u003esentry's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5f5dc03f013b1933863ccfb08d48b8640008485b\"\u003e\u003ccode\u003e5f5dc03\u003c/code\u003e\u003c/a\u003e release: 11.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78bf227541918ed2d1fe8502e1f77ce5daab8103\"\u003e\u003ccode\u003e78bf227\u003c/code\u003e\u003c/a\u003e Fix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5bf38d6dddbd265b0f478f6cf0c09d45373bdcd5\"\u003e\u003ccode\u003e5bf38d6\u003c/code\u003e\u003c/a\u003e Update pull_request_template.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/941\"\u003e#941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0de7beb4482bd75181890a7be0d5bad05971be76\"\u003e\u003ccode\u003e0de7beb\u003c/code\u003e\u003c/a\u003e meta: add pull request template (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/be4721751d0a4f13455c1becd141bc05f9b357c8\"\u003e\u003ccode\u003ebe47217\u003c/code\u003e\u003c/a\u003e Update SDK version in the README.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/930\"\u003e#930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78b7f5aed691495e3b510a806e43367ddc738c15\"\u003e\u003ccode\u003e78b7f5a\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/14b95fd900af075f99b0c9b7451049fc4ad74e93\"\u003e\u003ccode\u003e14b95fd\u003c/code\u003e\u003c/a\u003e release: 11.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0f1c3dd95718c2c56e46c551dc368b9203c57ced\"\u003e\u003ccode\u003e0f1c3dd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md for 11.0.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/935\"\u003e#935\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/913ecff4b4847c3318b356885d2b60c2bdef9666\"\u003e\u003ccode\u003e913ecff\u003c/code\u003e\u003c/a\u003e Relax version reqs on opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/f83b5080aec61e0618b01efe14de28fce5e914b3\"\u003e\u003ccode\u003ef83b508\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.2'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/sentry-elixir/compare/11.0.2...11.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/tailwind/blob/main/CHANGELOG.md\"\u003etailwind's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0 (2025-09-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eNo longer copy assets in \u003ccode\u003emix tailwind.install\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDiscard empty proxy env vars\u003c/li\u003e\n\u003cli\u003eEnsure watcher picks up rule changes on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e8e289195534780a342c5bb24912eab8b4e318a3\"\u003e\u003ccode\u003ee8e2891\u003c/code\u003e\u003c/a\u003e Release v0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/d09a32b421bbaa37ee575b916d09361e8518a5a6\"\u003e\u003ccode\u003ed09a32b\u003c/code\u003e\u003c/a\u003e Add comments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/3e495133fad3aeee3cd23954566ef9f1c5692707\"\u003e\u003ccode\u003e3e49513\u003c/code\u003e\u003c/a\u003e Normalize windows driver\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/5f8a6b9b18e4bb25960df9e08b77c6e00d05148a\"\u003e\u003ccode\u003e5f8a6b9\u003c/code\u003e\u003c/a\u003e Update versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e9887900add55b5b3a245098699a0c52fdd5d540\"\u003e\u003ccode\u003ee988790\u003c/code\u003e\u003c/a\u003e Sanitize empty strings when getting Proxy Environment variables (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/92\"\u003e#92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/2bf28d7cd8c0f81a74931dbc48c87c62b8b766bc\"\u003e\u003ccode\u003e2bf28d7\u003c/code\u003e\u003c/a\u003e Revert config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/327cef38cd5e439b6d71bb6b05856e18e494b741\"\u003e\u003ccode\u003e327cef3\u003c/code\u003e\u003c/a\u003e Remove outdated docs, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/102\"\u003e#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/21c4b7689f0026fcb1e4c9c54b4aa62788d60713\"\u003e\u003ccode\u003e21c4b76\u003c/code\u003e\u003c/a\u003e Fix path in message, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/126\"\u003e#126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/be2c7b6ad0131050edf077bd8137072d218ca708\"\u003e\u003ccode\u003ebe2c7b6\u003c/code\u003e\u003c/a\u003e Update tests, readme, and simplify install\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/f7e3037a29fb68368501dc4e711c4bcf5999cea5\"\u003e\u003ccode\u003ef7e3037\u003c/code\u003e\u003c/a\u003e Update README.md (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/132\"\u003e#132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/tailwind/compare/v0.3.1...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/136","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/136","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/136/packages"},{"uuid":"2790776801","node_id":"PR_kwDOGGqrTc6mV9_h","number":134,"state":"open","title":"Bump the production-dependencies group across 1 directory with 5 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-01T21:34:14.000Z","updated_at":"2025-09-01T21:34:15.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":5,"packages":[{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.3","new_version":"1.8.4","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix","old_version":"1.7.21","new_version":"1.8.1","repository_url":"https://github.com/phoenixframework/phoenix"},{"name":"phoenix_live_view","old_version":"1.1.2","new_version":"1.1.8","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"sentry","old_version":"11.0.2","new_version":"11.0.3","repository_url":"https://github.com/getsentry/sentry-elixir"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 5 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [image](https://github.com/kipcole9/image) | `0.61.1` | `0.62.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.3` | `1.8.4` |\n| [phoenix](https://github.com/phoenixframework/phoenix) | `1.7.21` | `1.8.1` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.2` | `1.1.8` |\n| [sentry](https://github.com/getsentry/sentry-elixir) | `11.0.2` | `11.0.3` |\n\n\nUpdates `image` from 0.61.1 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.3 to 1.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: extend plugin behaviour to customize the view of body's items by \u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOtp 28 build by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/116\"\u003ezhongwencool/observer_cli#116\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/63a6668cdf304ed05ca04f3e2657df4abfbddb4d\"\u003e\u003ccode\u003e63a6668\u003c/code\u003e\u003c/a\u003e chore: update changelog for version 1.8.4 with OTP 28 fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/be8c67221cd56a5b21efeef474aafd459a8d6aee\"\u003e\u003ccode\u003ebe8c672\u003c/code\u003e\u003c/a\u003e chore: ignore unexported function erlang:processes_next/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/02592f3f89ca70f0dca411005f34b284c5c79ed7\"\u003e\u003ccode\u003e02592f3\u003c/code\u003e\u003c/a\u003e chore: add fail-fast false option for ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/4b5fd4b66dcb78ac1eaf4459f76140322fbe292c\"\u003e\u003ccode\u003e4b5fd4b\u003c/code\u003e\u003c/a\u003e chore: fix dialyzer warning for otp 28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3340e6495528aab1fb6e6ce4fa4208c4eeef180e\"\u003e\u003ccode\u003e3340e64\u003c/code\u003e\u003c/a\u003e chore: ci support otp28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/8b49833f7685d6bdd2b22976d8cefd21dc3f0bb1\"\u003e\u003ccode\u003e8b49833\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/117\"\u003e#117\u003c/a\u003e from imtutta/feature/extend_plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/b90c7ceb4f8593ec8d4058233dc57fe9487de9dc\"\u003e\u003ccode\u003eb90c7ce\u003c/code\u003e\u003c/a\u003e feat: extend plugin behaviour to customize the view of body's items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b98f15e25dcfda672787ab71fc0871ffd97848\"\u003e\u003ccode\u003ef5b98f1\u003c/code\u003e\u003c/a\u003e chore: delete unuse travis.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/652972a4e47bd7cb54e9323f7a8865ce0a3ece2e\"\u003e\u003ccode\u003e652972a\u003c/code\u003e\u003c/a\u003e chore: correct the hex doc url\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix` from 1.7.21 to 1.8.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix/blob/main/CHANGELOG.md\"\u003ephoenix's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.1 (2025-08-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Fix AGENTS.md failing to include CSS and JavaScript sections\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Don't include node_modules override in generated \u003ccode\u003etsconfig.json\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live|html|json] - Make context argument optional. Defaults to the plural name.\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003emix precommit\u003c/code\u003e alias\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eAGENTS.md\u003c/code\u003e generation compatible with \u003ca href=\"https://hexdocs.pm/usage_rules/\"\u003e\u003ccode\u003eusage_rules\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eusage_rules\u003c/code\u003e folder to installer, allowing to sync generic Phoenix rules into new projects\u003c/li\u003e\n\u003cli\u003e[phx.new] Use LiveView 1.1 release in generated code\u003c/li\u003e\n\u003cli\u003e[phx.new] Ensure theme selector and flash closing works without LiveView\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.4 (2025-07-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix phx.gen.presence PubSub server name for umbrella apps\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ephx.gen.live\u003c/code\u003e subscribing to pubsub in disconnected mounts\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Initialize initial git repo when git is installed\u003c/li\u003e\n\u003cli\u003e[phx.new] Opt-in to HEEx \u003ccode\u003e:debug_tags_location\u003c/code\u003e in development\u003c/li\u003e\n\u003cli\u003e[phx.gen.live|html|json|context] Make context name optional and inflect based on schema when missing\u003c/li\u003e\n\u003cli\u003e[phx.gen.*] Use new Ecto 3.13 \u003ccode\u003eRepo.transact/2\u003c/code\u003e in generators\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Warn when using \u003ccode\u003ephx.gen.auth\u003c/code\u003e without esbuild as features assume \u003ccode\u003ephoenix_html.js\u003c/code\u003e in bundle\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003esecurity.md\u003c/code\u003e guide for security best practices\u003c/li\u003e\n\u003cli\u003e[phoenix.js] - Add fetch() support to LongPoll when XMLHTTPRequest is not available\u003c/li\u003e\n\u003cli\u003eOptimize parameter scrubbing by precompiling patterns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.3 (2025-05-07)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.auth] Allow configuring the scope's assign key in phx.gen.auth\u003c/li\u003e\n\u003cli\u003e[phx.new] Do not override theme in root layout if explicitly set\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.2 (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live] Only subscribe to pubsub if connected\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Remove unused current_password field\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Use context_app for scopes to fix generated scopes in umbrella apps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.1 (2025-04-16)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/675e924f73da1a594e07ba22fcbda6636790ce4a\"\u003e\u003ccode\u003e675e924\u003c/code\u003e\u003c/a\u003e Release 1.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/21ee2610ab20557a9ad1fd8f7599f5b5fe5d9b5d\"\u003e\u003ccode\u003e21ee261\u003c/code\u003e\u003c/a\u003e Bump eslint from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6440\"\u003e#6440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a280eedf8a9850e45076977e368c7397c310db2a\"\u003e\u003ccode\u003ea280eed\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​eslint/js\u003c/code\u003e from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6439\"\u003e#6439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/c3d2fa919eb4cd19fa5fef95e97a36c71f936247\"\u003e\u003ccode\u003ec3d2fa9\u003c/code\u003e\u003c/a\u003e Touchup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/8502ed0107f0420498f1e3fac235bc80c86c6912\"\u003e\u003ccode\u003e8502ed0\u003c/code\u003e\u003c/a\u003e Clarify timestamp further. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/820b0badf4ad6eebdcafa88c3bcd67259dd9b9ee\"\u003e\u003ccode\u003e820b0ba\u003c/code\u003e\u003c/a\u003e Clarify timestamp. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a64dd8c698785e6593c0a707a7f20190bc02a279\"\u003e\u003ccode\u003ea64dd8c\u003c/code\u003e\u003c/a\u003e Run mix compile before assets.build in generated aliases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6407\"\u003e#6407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/b0fe7ecd788ecc0d8c0bfbe6eb67b4fd4de57bb4\"\u003e\u003ccode\u003eb0fe7ec\u003c/code\u003e\u003c/a\u003e Update controllers documentation (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6416\"\u003e#6416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a5646dfcf099e09d031081516efcc60835c73bef\"\u003e\u003ccode\u003ea5646df\u003c/code\u003e\u003c/a\u003e Fix some typos (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6386\"\u003e#6386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/14faee2ebebca4151572e9f3f1677fcac29a6c9d\"\u003e\u003ccode\u003e14faee2\u003c/code\u003e\u003c/a\u003e Fix controller.ex documentation typo (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6417\"\u003e#6417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix/compare/v1.7.21...v1.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.2 to 1.1.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.8/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.8 (2025-08-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix race condition where patches were discarded when a join was still pending (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3957\"\u003e#3957\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.7 (2025-08-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression introduced in v1.1.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.6 (2025-08-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix live components in nested views accidentally destroying live components in parent views (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3953\"\u003e#3953\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.5 (2025-08-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix hooks not working when used inside of \u003ccode\u003ePhoenix.Component.portal/1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3950\"\u003e#3950\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix form participating custom elements not being reset to empty in some cases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3946\"\u003e#3946\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003eassign_async\u003c/code\u003e to return a keyword list\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePhoenix.LiveView.stream_async/4\u003c/code\u003e to asynchronously insert items into a stream\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.4 (2025-08-13)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponent updates being inadvertently discarded in rare circumstances when locked DOM trees are restored (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3941\"\u003e#3941\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.3 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix warning when importing LiveView JS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3926\"\u003e#3926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure form recovery respects fieldsets (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3921\"\u003e#3921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLiveViewTest: Fix crash when submitting a form with custom submitter, but without ID (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3927\"\u003e#3927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLiveViewTest: Ensure whitespace in textarea content is preserved when submitting a form (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3928\"\u003e#3928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake hook types less strict (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3913\"\u003e#3913\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHTMLFormatter: do not try to format attributes into a single line when they are spread over multiple lines.\nThis follows the behavior of the Elixir formatter that also respects newlines.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/48386116c3bfe18592aaa3dcc3238aaaf1524d3b\"\u003e\u003ccode\u003e4838611\u003c/code\u003e\u003c/a\u003e release v1.1.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/223d351df0735319372f7a2c304e4949c5de17c4\"\u003e\u003ccode\u003e223d351\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/7e0b15ad6c66a9e126baf77fc96eaf851e3edf6c\"\u003e\u003ccode\u003e7e0b15a\u003c/code\u003e\u003c/a\u003e fix pending diff race condition when join is still pending (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3957\"\u003e#3957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ccc2132eb143bfe371070d64b640130cf58d1678\"\u003e\u003ccode\u003eccc2132\u003c/code\u003e\u003c/a\u003e release v1.1.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a7aa090e63fa9ff3e906e744469ac0410574c950\"\u003e\u003ccode\u003ea7aa090\u003c/code\u003e\u003c/a\u003e release v1.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fc04af42c857e24166762c7b3127d3a3e6761ef8\"\u003e\u003ccode\u003efc04af4\u003c/code\u003e\u003c/a\u003e check owner when sending cids_will_destroy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e2b8c11cc045df9cd40fd0d3c37d6279c1b7bee5\"\u003e\u003ccode\u003ee2b8c11\u003c/code\u003e\u003c/a\u003e release v1.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ac0f7034c4b665bebeb000901d1e1a044f5c3fc4\"\u003e\u003ccode\u003eac0f703\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e0b1a1d6dd8a54d056e8c3773b6f616bcaeeeb67\"\u003e\u003ccode\u003ee0b1a1d\u003c/code\u003e\u003c/a\u003e add stream_async (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3944\"\u003e#3944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/6c0bd38a32fb4ace24e2ad35b7897530999d57fa\"\u003e\u003ccode\u003e6c0bd38\u003c/code\u003e\u003c/a\u003e fix ownsElement to account for portals (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3951\"\u003e#3951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.2...v1.1.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry` from 11.0.2 to 11.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/releases\"\u003esentry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/blob/master/CHANGELOG.md\"\u003esentry's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/14b95fd900af075f99b0c9b7451049fc4ad74e93\"\u003e\u003ccode\u003e14b95fd\u003c/code\u003e\u003c/a\u003e release: 11.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0f1c3dd95718c2c56e46c551dc368b9203c57ced\"\u003e\u003ccode\u003e0f1c3dd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md for 11.0.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/935\"\u003e#935\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/913ecff4b4847c3318b356885d2b60c2bdef9666\"\u003e\u003ccode\u003e913ecff\u003c/code\u003e\u003c/a\u003e Relax version reqs on opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/f83b5080aec61e0618b01efe14de28fce5e914b3\"\u003e\u003ccode\u003ef83b508\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.2'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/sentry-elixir/compare/11.0.2...11.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/134","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/134","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/134/packages"},{"uuid":"2773660198","node_id":"PR_kwDOOCxmKM6lUrIm","number":80,"state":"open","title":"chore(deps): bump image from 0.59.0 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-26T03:30:26.000Z","updated_at":"2025-08-26T03:30:27.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"image","old_version":"0.59.0","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.0 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.59.3\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.0\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/oasysgames/blockscout-v7-backend/pull/80","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/oasysgames%2Fblockscout-v7-backend/issues/80","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/80/packages"},{"uuid":"2765394801","node_id":"PR_kwDOH2dmWs6k1JNx","number":546,"state":"open","title":"build(deps): bump image from 0.61.1 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":["samhamilton"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-22T07:14:10.000Z","updated_at":"2025-08-26T15:46:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.61.1 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.61.1\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/martide/literature/pull/546","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/martide%2Fliterature/issues/546","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/546/packages"},{"uuid":"2755655959","node_id":"PR_kwDOPLELFc6kP_kX","number":37,"state":"open","title":"Bump image from 0.55.2 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-19T08:31:57.000Z","updated_at":"2025-08-19T08:31:58.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.55.2","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.55.2 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.59.3\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.55.2...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.55.2\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ozonechainofficial/ozone_explorer/pull/37","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ozonechainofficial%2Fozone_explorer/issues/37","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/37/packages"},{"uuid":"2755635456","node_id":"PR_kwDOPWXHQc6kP6kA","number":33,"state":"open","title":"Bump image from 0.59.3 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-19T08:24:37.000Z","updated_at":"2025-08-19T08:24:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.59.3","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.3 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.3...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.3\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/SafeerMohamed/blockscout-backend/pull/33","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/SafeerMohamed%2Fblockscout-backend/issues/33","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/33/packages"},{"uuid":"2737758608","node_id":"PR_kwDONT3nos6jLuGQ","number":23,"state":"open","title":"Bump image from 0.59.3 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-12T05:50:40.000Z","updated_at":"2025-08-12T05:50:41.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.59.3","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.3 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.3...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.3\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/mmilk23/image_unmirrorer/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmilk23%2Fimage_unmirrorer/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"},{"uuid":"2737349559","node_id":"PR_kwDOBv3HhM6jKKO3","number":12962,"state":"closed","title":"chore(deps): bump image from 0.61.1 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-13T12:53:27.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-12T01:31:34.000Z","updated_at":"2025-08-13T12:53:27.000Z","time_to_close":127313,"merged_at":"2025-08-13T12:53:26.000Z","merged_by":"vbaranov","closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.61.1 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.61.1\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/blockscout/blockscout/pull/12962","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/blockscout%2Fblockscout/issues/12962","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12962/packages"}],"issue_packages":[{"old_version":"0.67.0","new_version":"0.68.0","update_type":"minor","path":null,"pr_created_at":"2026-06-05T23:23:11.000Z","version_change":"0.67.0 → 0.68.0","issue":{"uuid":"4600816412","node_id":"PR_kwDOQRTVLs7jTNc5","number":55,"state":"open","title":"mix(deps): bump image from 0.67.0 to 0.68.0","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-05T23:23:11.000Z","updated_at":"2026-06-05T23:23:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"mix(deps)","packages":[{"name":"image","old_version":"0.67.0","new_version":"0.68.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.67.0 to 0.68.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.68.0\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.68.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.68.0 released on May 31st, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/ff902fa0392814057929c8db065783fa6787ada6\"\u003e\u003ccode\u003eff902fa\u003c/code\u003e\u003c/a\u003e Remove color migration guide from the package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3149f2ae645830327e95b5ba6ae0c43cf579a7df\"\u003e\u003ccode\u003e3149f2a\u003c/code\u003e\u003c/a\u003e Remove unneeded color migration guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b7b36aa47c92b4c4cb7f3c9fcc7cf632c919b2f1\"\u003e\u003ccode\u003eb7b36aa\u003c/code\u003e\u003c/a\u003e Update nx/exla to ~\u0026gt; 0.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/fe440f0b1f15c8b22f763f65886e6ef08cee3fe8\"\u003e\u003ccode\u003efe440f0\u003c/code\u003e\u003c/a\u003e Update changelog, bump verion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d6cef74cf42054ea66f31e9abcf8d1fbd63bfe3\"\u003e\u003ccode\u003e6d6cef7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e from hlindset/fix-xmp-removal-via-atom-selector\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1f525d651e6b894e909bf1115cb4c3b3c087a7fb\"\u003e\u003ccode\u003e1f525d6\u003c/code\u003e\u003c/a\u003e fix xmp header name in \u003ccode\u003e@metadata_fields\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b065465ffe6946c7c418e2168aea00ecaf80bbfd\"\u003e\u003ccode\u003eb065465\u003c/code\u003e\u003c/a\u003e add failing remove_metadata/2 test\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.67.0...v0.68.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.67.0\u0026new-version=0.68.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/agentjido/llmdb_xyz/pull/55","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentjido%2Fllmdb_xyz/issues/55","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/55/packages"}},{"old_version":"0.63.0","new_version":"0.68.0","update_type":"minor","path":null,"pr_created_at":"2026-06-01T01:25:46.000Z","version_change":"0.63.0 → 0.68.0","issue":{"uuid":"4559685290","node_id":"PR_kwDOH2dmWs7hMEQF","number":708,"state":"open","title":"chore(bot): bump image from 0.63.0 to 0.68.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-01T01:25:46.000Z","updated_at":"2026-06-01T01:34:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(bot)","packages":[{"name":"image","old_version":"0.63.0","new_version":"0.68.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.63.0 to 0.68.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.68.0\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.67.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.66.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRelax Nx support to allow \u003ccode\u003e~\u0026gt; 0.10\u003c/code\u003e (not ~\u0026gt; 0.11). This allows Bumblebee to be configured in \u003ccode\u003eimage_vision\u003c/code\u003e since Bumblebee only supports Nx \u003ccode\u003e~\u0026gt; 0.9.0 or ~\u0026gt; 0.10.0\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.65.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.68.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.68.0 released on May 31st, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eremove_metadata/2\u003c/code\u003e with \u003ccode\u003e:xmp\u003c/code\u003e selector. It was a silent no-op due to a typo in the header map. Thanks to \u003ca href=\"https://github.com/hlindset\"\u003e\u003ccode\u003e@​hlindset\u003c/code\u003e\u003c/a\u003e for the PR. Closes \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.67.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.67.0 released on May 3rd, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/ff902fa0392814057929c8db065783fa6787ada6\"\u003e\u003ccode\u003eff902fa\u003c/code\u003e\u003c/a\u003e Remove color migration guide from the package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3149f2ae645830327e95b5ba6ae0c43cf579a7df\"\u003e\u003ccode\u003e3149f2a\u003c/code\u003e\u003c/a\u003e Remove unneeded color migration guide\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b7b36aa47c92b4c4cb7f3c9fcc7cf632c919b2f1\"\u003e\u003ccode\u003eb7b36aa\u003c/code\u003e\u003c/a\u003e Update nx/exla to ~\u0026gt; 0.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/fe440f0b1f15c8b22f763f65886e6ef08cee3fe8\"\u003e\u003ccode\u003efe440f0\u003c/code\u003e\u003c/a\u003e Update changelog, bump verion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d6cef74cf42054ea66f31e9abcf8d1fbd63bfe3\"\u003e\u003ccode\u003e6d6cef7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/elixir-image/image/issues/198\"\u003e#198\u003c/a\u003e from hlindset/fix-xmp-removal-via-atom-selector\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1f525d651e6b894e909bf1115cb4c3b3c087a7fb\"\u003e\u003ccode\u003e1f525d6\u003c/code\u003e\u003c/a\u003e fix xmp header name in \u003ccode\u003e@metadata_fields\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b065465ffe6946c7c418e2168aea00ecaf80bbfd\"\u003e\u003ccode\u003eb065465\u003c/code\u003e\u003c/a\u003e add failing remove_metadata/2 test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/110f437f1962b44adfae9087f57ab78ff69a8b35\"\u003e\u003ccode\u003e110f437\u003c/code\u003e\u003c/a\u003e Proper release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/bfa581ce2c788ede808618b8e698bc625a8c10da\"\u003e\u003ccode\u003ebfa581c\u003c/code\u003e\u003c/a\u003e Update changelog release date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2c13c6dfb89063e6defdc1484ff9a249df648754\"\u003e\u003ccode\u003e2c13c6d\u003c/code\u003e\u003c/a\u003e Fix Image.resize/3 false-pattern dialyzer warning; harden Image.exif/1 agains...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.63.0...v0.68.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.63.0\u0026new-version=0.68.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/martide/literature/pull/708","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/martide%2Fliterature/issues/708","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/708/packages"}},{"old_version":"0.65.0","new_version":"0.67.0","update_type":"minor","path":null,"pr_created_at":"2026-05-22T23:25:34.000Z","version_change":"0.65.0 → 0.67.0","issue":{"uuid":"4506086428","node_id":"PR_kwDOQRTVLs7ehNxH","number":53,"state":"closed","title":"mix(deps): bump image from 0.65.0 to 0.67.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-24T12:35:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-22T23:25:34.000Z","updated_at":"2026-05-24T12:35:50.000Z","time_to_close":133813,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"mix(deps)","packages":[{"name":"image","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.65.0 to 0.67.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.67.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.66.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRelax Nx support to allow \u003ccode\u003e~\u0026gt; 0.10\u003c/code\u003e (not ~\u0026gt; 0.11). This allows Bumblebee to be configured in \u003ccode\u003eimage_vision\u003c/code\u003e since Bumblebee only supports Nx \u003ccode\u003e~\u0026gt; 0.9.0 or ~\u0026gt; 0.10.0\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.67.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.67.0 released on May 3rd, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.vignette/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.Palette.extract/2\u003c/code\u003e — perceptual palette extraction from an image via K-means in Oklab plus the \u003ccode\u003eColor.Palette.Cluster\u003c/code\u003e merge / phantom-guard / centroid-aware-rep pipeline (requires \u003ccode\u003e:scholar\u003c/code\u003e and \u003ccode\u003e:nx\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.gamma/2\u003c/code\u003e — per-band gamma curve adjustment (wraps \u003ccode\u003eVix.Vips.Operation.gamma/2\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.sepia/2\u003c/code\u003e — single-pass sepia tone via a 3×3 colour-recombination matrix; accepts a \u003ccode\u003e0.0..1.0\u003c/code\u003e strength that blends the matrix with the identity (matching imgix's \u003ccode\u003esepia=N\u003c/code\u003e percentage).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.posterize/2\u003c/code\u003e — quantises each band to \u003ccode\u003e2..256\u003c/code\u003e evenly-spaced levels for a flat-shaded, comic-strip rendering.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.opacity/2\u003c/code\u003e — multiplies the alpha band by a \u003ccode\u003e0.0..1.0\u003c/code\u003e factor; adds an opaque alpha band first when the input has none.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.set_orientation/2\u003c/code\u003e — overrides the EXIF orientation tag without rotating the underlying pixels (paired with \u003ccode\u003eImage.open/2\u003c/code\u003e's default \u003ccode\u003eautorotate: false\u003c/code\u003e for full caller control over orientation; matches imgix's \u003ccode\u003eor=N\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003e:lossy\u003c/code\u003e and \u003ccode\u003e:chroma_subsampling\u003c/code\u003e options to \u003ccode\u003eImage.write/3\u003c/code\u003e. \u003ccode\u003e:lossy\u003c/code\u003e (boolean) toggles the lossless wire format on WebP / AVIF and palette-quantisation on PNG. \u003ccode\u003e:chroma_subsampling\u003c/code\u003e selects \u003ccode\u003e:auto\u003c/code\u003e / \u003ccode\u003e:on\u003c/code\u003e (4:2:0) / \u003ccode\u003e:off\u003c/code\u003e (4:4:4) on JPEG and AVIF.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.tint/2\u003c/code\u003e — colour-tinted monochrome via a single 3×3 luminance + tint colour-recombination matrix. Used for the imgix \u003ccode\u003emonochrome=#hex\u003c/code\u003e / ImageKit \u003ccode\u003ee-monochrome\u003c/code\u003e family of CDN options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.fade/2\u003c/code\u003e — alpha-gradient fade-out on one or more edges via SVG \u003ccode\u003e\u0026lt;linearGradient\u0026gt;\u003c/code\u003e masks combined with a per-pixel min. Supports \u003ccode\u003e:top\u003c/code\u003e, \u003ccode\u003e:bottom\u003c/code\u003e, \u003ccode\u003e:left\u003c/code\u003e, \u003ccode\u003e:right\u003c/code\u003e, or \u003ccode\u003e:all\u003c/code\u003e, with \u003ccode\u003e:length\u003c/code\u003e as either pixels or a fraction of the relevant dimension. Used for Cloudinary \u003ccode\u003ee_fade\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.drop_shadow/2\u003c/code\u003e — soft drop shadow under the image's alpha-shaped silhouette. Composites a Gaussian-blurred, opacity-scaled, tinted copy of the alpha band beneath the original. Used for ImageKit \u003ccode\u003ee-shadow\u003c/code\u003e and Cloudinary \u003ccode\u003ee_shadow\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.minimize_metadata/2\u003c/code\u003e with a \u003ccode\u003e:keep\u003c/code\u003e option — caller-controlled list of EXIF fields to preserve when minimising metadata. The 1-arity variant continues to default to \u003ccode\u003e[:copyright, :artist]\u003c/code\u003e; the 2-arity variant lets callers pass \u003ccode\u003ekeep: [:copyright]\u003c/code\u003e (preserve only copyright), \u003ccode\u003ekeep: []\u003c/code\u003e (strip everything), or any other subset.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.enhance/2\u003c/code\u003e — content-aware automatic enhancement composed of luminance equalisation + mild saturation boost + mild sharpen. Approximates the CDN-style \u0026quot;improve\u0026quot; / \u0026quot;auto-enhance\u0026quot; calls used by Cloudinary, imgix, and ImageKit. Tunable via \u003ccode\u003e:saturation\u003c/code\u003e and \u003ccode\u003e:sharpen_sigma\u003c/code\u003e options.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdds \u003ccode\u003eImage.to_colorspace/3\u003c/code\u003e — ICC-profile-driven colourspace conversion. Accepts the libvips built-in profile atoms (\u003ccode\u003e:srgb\u003c/code\u003e, \u003ccode\u003e:cmyk\u003c/code\u003e, \u003ccode\u003e:p3\u003c/code\u003e) or a path to an \u003ccode\u003e.icc\u003c/code\u003e file via \u003ccode\u003eImage.ICCProfile.known?/1\u003c/code\u003e validation. Options: \u003ccode\u003e:input_profile\u003c/code\u003e, \u003ccode\u003e:intent\u003c/code\u003e (\u003ccode\u003e:relative\u003c/code\u003e / \u003ccode\u003e:perceptual\u003c/code\u003e / \u003ccode\u003e:saturation\u003c/code\u003e / \u003ccode\u003e:absolute\u003c/code\u003e), and \u003ccode\u003e:depth\u003c/code\u003e (\u003ccode\u003e8\u003c/code\u003e / \u003ccode\u003e16\u003c/code\u003e). Wraps \u003ccode\u003eVix.Vips.Operation.icc_transform/3\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.QRcode\u003c/code\u003e is removed. QR encoding and decoding move to the sibling \u003ca href=\"https://hex.pm/packages/image_qrcode\"\u003e\u003ccode\u003eimage_qrcode\u003c/code\u003e\u003c/a\u003e package, which is built on Nayuki's QR-Code-generator + \u003ccode\u003equirc\u003c/code\u003e and does not depend on \u003ccode\u003e:evision\u003c/code\u003e. Migration: replace \u003ccode\u003eImage.QRcode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRcode.decode/1\u003c/code\u003e with \u003ccode\u003eImage.QRCode.encode/2\u003c/code\u003e / \u003ccode\u003eImage.QRCode.decode/1\u003c/code\u003e (note the capital \u0026quot;C\u0026quot;) and add \u003ccode\u003e{:image_qrcode, \u0026quot;~\u0026gt; 0.1\u0026quot;}\u003c/code\u003e to your deps. The \u003ccode\u003eImage.to_evision/2\u003c/code\u003e and \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers are unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.add_alpha/2\u003c/code\u003e's \u003ccode\u003e:opaque\u003c/code\u003e and \u003ccode\u003e:transparent\u003c/code\u003e atoms now produce alpha = 255 and alpha = 0 respectively, matching the standard libvips / RGBA convention. The previous values were inverted relative to their names; integer values pass through unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.66.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.66.0 released on April 25th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRelax Nx support to allow \u003ccode\u003e~\u0026gt; 0.10\u003c/code\u003e (not ~\u0026gt; 0.11). This allows Bumblebee to be configured in \u003ccode\u003eimage_vision\u003c/code\u003e since Bumblebee only supports Nx \u003ccode\u003e~\u0026gt; 0.9.0 or ~\u0026gt; 0.10.0\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/110f437f1962b44adfae9087f57ab78ff69a8b35\"\u003e\u003ccode\u003e110f437\u003c/code\u003e\u003c/a\u003e Proper release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/bfa581ce2c788ede808618b8e698bc625a8c10da\"\u003e\u003ccode\u003ebfa581c\u003c/code\u003e\u003c/a\u003e Update changelog release date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2c13c6dfb89063e6defdc1484ff9a249df648754\"\u003e\u003ccode\u003e2c13c6d\u003c/code\u003e\u003c/a\u003e Fix Image.resize/3 false-pattern dialyzer warning; harden Image.exif/1 agains...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e6a7330acf4b0125da3f9c57430175d63d5fb9d5\"\u003e\u003ccode\u003ee6a7330\u003c/code\u003e\u003c/a\u003e Remove Jason\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/86f9028de996af412ceecb68ed69e0ebd37ff965\"\u003e\u003ccode\u003e86f9028\u003c/code\u003e\u003c/a\u003e Add json_polyfill when required\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7c36ecf1cb8d82f2d4771de5101013ab96db7ce8\"\u003e\u003ccode\u003e7c36ecf\u003c/code\u003e\u003c/a\u003e Add Image.enhance/2 (luminance equalisation + saturation + sharpen)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/9a5f5452f8dd7ba3e09f1608962fae3af01ddd74\"\u003e\u003ccode\u003e9a5f545\u003c/code\u003e\u003c/a\u003e Add Image.tint/2, fade/2, drop_shadow/2; extend minimize_metadata/2 with :keep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d4aa131fa653a41ebfcce2b4c9234f3aa43e2f2b\"\u003e\u003ccode\u003ed4aa131\u003c/code\u003e\u003c/a\u003e Add gamma/sepia/posterize/opacity/set_orientation; fix add_alpha :opaque/:tra...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/fef5505e503e2fe80e9ee0977d1a1a467ddd4250\"\u003e\u003ccode\u003efef5505\u003c/code\u003e\u003c/a\u003e Add Image.Palette.extract/2 (Oklab K-means + Color.Palette.Cluster pipeline)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/22c80db61ab1aa4a3687d08369610919b9bcfee3\"\u003e\u003ccode\u003e22c80db\u003c/code\u003e\u003c/a\u003e Update Image.vignette/2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.65.0...v0.67.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.65.0\u0026new-version=0.67.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/agentjido/llmdb_xyz/pull/53","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentjido%2Fllmdb_xyz/issues/53","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/53/packages"}},{"old_version":"0.63.0","new_version":"0.65.0","update_type":"minor","path":null,"pr_created_at":"2026-04-13T05:09:58.000Z","version_change":"0.63.0 → 0.65.0","issue":{"uuid":"4251420411","node_id":"PR_kwDORoJx4M7R3wxk","number":20,"state":"closed","title":"chore(deps): bump image from 0.63.0 to 0.65.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-27T05:14:53.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T05:09:58.000Z","updated_at":"2026-04-27T05:14:54.000Z","time_to_close":1209895,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"image","old_version":"0.63.0","new_version":"0.65.0","repository_url":"https://github.com/elixir-image/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/elixir-image/image) from 0.63.0 to 0.65.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.65.0\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse the updated colorspace names in Color 0.4.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.64.0\u003c/h2\u003e\n\u003cp\u003eThe primary intent of this release is to stablise the code in readiness for a 1.0 release. Deprecated code has been removed, a standardised color model introduced (via the new library \u003ca href=\"https://hex.pm/packages/color\"\u003ecolor\u003c/a\u003e) and objective classification and detection has been removed to a new \u003ccode\u003eimage_detection\u003c/code\u003e library.\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFive long-deprecated functions have been removed:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.interpretation/1\u003c/code\u003e — use \u003ccode\u003eImage.colorspace/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.type/1\u003c/code\u003e (was \u003ccode\u003eformat/1\u003c/code\u003e) — use \u003ccode\u003eImage.band_format/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask!/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask!/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.map_pages/2\u003c/code\u003e — use \u003ccode\u003eImage.map_join_pages/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Color\u003c/code\u003e has been removed. Color handling now lives in two new modules and one new dependency:\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Classification\u003c/code\u003e and \u003ccode\u003eImage.Generation\u003c/code\u003e have moved to a new sibling package, \u003ca href=\"https://hex.pm/packages/image_detection\"\u003e\u003ccode\u003e:image_detection\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:bumblebee\u003c/code\u003e is no longer a dependency of \u003ccode\u003e:image\u003c/code\u003e. It is configured in the new library \u003ccode\u003eimage_detection\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video\u003c/code\u003e is now backed by \u003ca href=\"https://hex.pm/packages/xav\"\u003eXav\u003c/a\u003e (a thin Elixir wrapper around FFmpeg) instead of \u003ccode\u003e:evision\u003c/code\u003e / OpenCV. The public API surface is largely unchanged but the underlying type, options, and a few semantic details have moved:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe video struct is now \u003ccode\u003e%Image.Video{}\u003c/code\u003e (with fields \u003ccode\u003e:reader\u003c/code\u003e, \u003ccode\u003e:source\u003c/code\u003e, \u003ccode\u003e:fps\u003c/code\u003e, \u003ccode\u003e:duration_seconds\u003c/code\u003e, \u003ccode\u003e:frame_count\u003c/code\u003e, \u003ccode\u003e:width\u003c/code\u003e, \u003ccode\u003e:height\u003c/code\u003e) rather than \u003ccode\u003e%Evision.VideoCapture{}\u003c/code\u003e. Pattern-match on the new struct module if your code does so.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.open/2\u003c/code\u003e's \u003ccode\u003e:backend\u003c/code\u003e option has been removed. FFmpeg picks the demuxer automatically and there is no concept of pluggable backends in Xav.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.known_backends/0\u003c/code\u003e, \u003ccode\u003eavailable_backends/0\u003c/code\u003e, \u003ccode\u003eknown_backend?/1\u003c/code\u003e, \u003ccode\u003eknown_backend_values/0\u003c/code\u003e, and \u003ccode\u003eavailable_backend?/1\u003c/code\u003e have been removed for the same reason. \u003ccode\u003eImage.Options.Video\u003c/code\u003e (the module that owned the backend table) has been deleted.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCamera input is now opened via a platform-specific device path. \u003ccode\u003e:default_camera\u003c/code\u003e resolves to \u003ccode\u003e/dev/video0\u003c/code\u003e on Linux, \u003ccode\u003e\u0026quot;0\u0026quot;\u003c/code\u003e (AVFoundation device 0) on macOS, and \u003ccode\u003e\u0026quot;video=0\u0026quot;\u003c/code\u003e on Windows. An integer camera index is mapped to the corresponding \u003ccode\u003e/dev/videoN\u003c/code\u003e (or platform equivalent). For non-default cameras you can also pass an explicit FFmpeg device string.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFrame-based seeking (\u003ccode\u003eImage.Video.seek/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e, and \u003ccode\u003eImage.Video.image_from_video/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e) is now implemented as a time-based seek to \u003ccode\u003en / fps\u003c/code\u003e followed by zero or more \u003ccode\u003enext_frame\u003c/code\u003e calls. For most files this lands on the requested frame; for very inter-frame-compressed files FFmpeg may snap to the nearest preceding keyframe.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.close/1\u003c/code\u003e is now a no-op that returns \u003ccode\u003e{:ok, %Image.Video{reader: nil}}\u003c/code\u003e. Xav garbage-collects the underlying FFmpeg context, so explicit close is no longer necessary. The function is retained for source compatibility; subsequent operations on the closed struct return \u003ccode\u003e{:error, %Image.Error{reason: :video_closed}}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImage and audio frames are decoded by FFmpeg + libswscale rather than by OpenCV's videoio backend. Pixel-exact comparisons against fixtures generated by the previous version will not match; the test fixture \u003ccode\u003etest/support/validate/video/video_sample_frame_0.png\u003c/code\u003e has been regenerated.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:xav\u003c/code\u003e is now an optional dependency. It requires FFmpeg ≥ 6.0 to be installed on the system. Add it to your \u003ccode\u003emix.exs\u003c/code\u003e if you use \u003ccode\u003eImage.Video\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e{:xav, \u0026quot;~\u0026gt; 0.10\u0026quot;, optional: true}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:evision\u003c/code\u003e is no longer needed for \u003ccode\u003eImage.Video\u003c/code\u003e. It is still required for \u003ccode\u003eImage.QRcode\u003c/code\u003e and for the \u003ccode\u003eImage.to_evision/2\u003c/code\u003e / \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers, which are unchanged. The README's optional-dependency table reflects the new split.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Error\u003c/code\u003e is now a structured public exception. It carries \u003ccode\u003e:reason\u003c/code\u003e (atom or \u003ccode\u003e{atom, value}\u003c/code\u003e tuple), \u003ccode\u003e:operation\u003c/code\u003e, \u003ccode\u003e:path\u003c/code\u003e, \u003ccode\u003e:value\u003c/code\u003e, and a derived \u003ccode\u003e:message\u003c/code\u003e. Every fallible function in the library now returns \u003ccode\u003e{:ok, value}\u003c/code\u003e or \u003ccode\u003e{:error, %Image.Error{}}\u003c/code\u003e — bare-string error tuples have been eliminated. Bang variants raise the same struct. The new \u003ccode\u003eImage.Error.wrap/2\u003c/code\u003e helper attaches structured context to a raw libvips or \u003ccode\u003eFile.*\u003c/code\u003e error. Pattern-match on \u003ccode\u003e:reason\u003c/code\u003e instead of scraping \u003ccode\u003e:message\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003ecase Image.open(path) do\r\n  {:ok, image} -\u0026gt; ...\r\n  {:error, %Image.Error{reason: :enoent}} -\u0026gt; not_found_handler()\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.65.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.65.0 released on April 9th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse the updated colorspace names in Color 0.4.0.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.64.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.64.0 released on April 9th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThe primary intent of this release is to stablise the code in readiness for a 1.0 release. Deprecated code has been removed, a standardised color model introduced (via the new library \u003ca href=\"https://hex.pm/packages/color\"\u003ecolor\u003c/a\u003e) and objective classification and detection has been removed to a new \u003ccode\u003eimage_detection\u003c/code\u003e library.\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFive long-deprecated functions have been removed:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.interpretation/1\u003c/code\u003e — use \u003ccode\u003eImage.colorspace/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.type/1\u003c/code\u003e (was \u003ccode\u003eformat/1\u003c/code\u003e) — use \u003ccode\u003eImage.band_format/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.convert_to_mask!/1\u003c/code\u003e — use \u003ccode\u003eImage.convert_alpha_to_mask!/1\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eImage.map_pages/2\u003c/code\u003e — use \u003ccode\u003eImage.map_join_pages/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Color\u003c/code\u003e has been removed. Color handling now lives in two new modules and one new dependency:\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Classification\u003c/code\u003e and \u003ccode\u003eImage.Generation\u003c/code\u003e have moved to a new sibling package, \u003ca href=\"https://hex.pm/packages/image_detection\"\u003e\u003ccode\u003e:image_detection\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:bumblebee\u003c/code\u003e is no longer a dependency of \u003ccode\u003e:image\u003c/code\u003e. It is configured in the new library \u003ccode\u003eimage_detection\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video\u003c/code\u003e is now backed by \u003ca href=\"https://hex.pm/packages/xav\"\u003eXav\u003c/a\u003e (a thin Elixir wrapper around FFmpeg) instead of \u003ccode\u003e:evision\u003c/code\u003e / OpenCV. The public API surface is largely unchanged but the underlying type, options, and a few semantic details have moved:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe video struct is now \u003ccode\u003e%Image.Video{}\u003c/code\u003e (with fields \u003ccode\u003e:reader\u003c/code\u003e, \u003ccode\u003e:source\u003c/code\u003e, \u003ccode\u003e:fps\u003c/code\u003e, \u003ccode\u003e:duration_seconds\u003c/code\u003e, \u003ccode\u003e:frame_count\u003c/code\u003e, \u003ccode\u003e:width\u003c/code\u003e, \u003ccode\u003e:height\u003c/code\u003e) rather than \u003ccode\u003e%Evision.VideoCapture{}\u003c/code\u003e. Pattern-match on the new struct module if your code does so.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.open/2\u003c/code\u003e's \u003ccode\u003e:backend\u003c/code\u003e option has been removed. FFmpeg picks the demuxer automatically and there is no concept of pluggable backends in Xav.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.known_backends/0\u003c/code\u003e, \u003ccode\u003eavailable_backends/0\u003c/code\u003e, \u003ccode\u003eknown_backend?/1\u003c/code\u003e, \u003ccode\u003eknown_backend_values/0\u003c/code\u003e, and \u003ccode\u003eavailable_backend?/1\u003c/code\u003e have been removed for the same reason. \u003ccode\u003eImage.Options.Video\u003c/code\u003e (the module that owned the backend table) has been deleted.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCamera input is now opened via a platform-specific device path. \u003ccode\u003e:default_camera\u003c/code\u003e resolves to \u003ccode\u003e/dev/video0\u003c/code\u003e on Linux, \u003ccode\u003e\u0026quot;0\u0026quot;\u003c/code\u003e (AVFoundation device 0) on macOS, and \u003ccode\u003e\u0026quot;video=0\u0026quot;\u003c/code\u003e on Windows. An integer camera index is mapped to the corresponding \u003ccode\u003e/dev/videoN\u003c/code\u003e (or platform equivalent). For non-default cameras you can also pass an explicit FFmpeg device string.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFrame-based seeking (\u003ccode\u003eImage.Video.seek/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e, and \u003ccode\u003eImage.Video.image_from_video/2\u003c/code\u003e with \u003ccode\u003eframe: n\u003c/code\u003e) is now implemented as a time-based seek to \u003ccode\u003en / fps\u003c/code\u003e followed by zero or more \u003ccode\u003enext_frame\u003c/code\u003e calls. For most files this lands on the requested frame; for very inter-frame-compressed files FFmpeg may snap to the nearest preceding keyframe.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Video.close/1\u003c/code\u003e is now a no-op that returns \u003ccode\u003e{:ok, %Image.Video{reader: nil}}\u003c/code\u003e. Xav garbage-collects the underlying FFmpeg context, so explicit close is no longer necessary. The function is retained for source compatibility; subsequent operations on the closed struct return \u003ccode\u003e{:error, %Image.Error{reason: :video_closed}}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImage and audio frames are decoded by FFmpeg + libswscale rather than by OpenCV's videoio backend. Pixel-exact comparisons against fixtures generated by the previous version will not match; the test fixture \u003ccode\u003etest/support/validate/video/video_sample_frame_0.png\u003c/code\u003e has been regenerated.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:xav\u003c/code\u003e is now an optional dependency. It requires FFmpeg ≥ 6.0 to be installed on the system. Add it to your \u003ccode\u003emix.exs\u003c/code\u003e if you use \u003ccode\u003eImage.Video\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e{:xav, \u0026quot;~\u0026gt; 0.10\u0026quot;, optional: true}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e:evision\u003c/code\u003e is no longer needed for \u003ccode\u003eImage.Video\u003c/code\u003e. It is still required for \u003ccode\u003eImage.QRcode\u003c/code\u003e and for the \u003ccode\u003eImage.to_evision/2\u003c/code\u003e / \u003ccode\u003eImage.from_evision/1\u003c/code\u003e interop helpers, which are unchanged. The README's optional-dependency table reflects the new split.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7b0042b441f55305227c28e584341c6e571ea652\"\u003e\u003ccode\u003e7b0042b\u003c/code\u003e\u003c/a\u003e Use the updated colorspace names in Color 0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/a09746de5bc2f8d373af3526ecfc1fb505934670\"\u003e\u003ccode\u003ea09746d\u003c/code\u003e\u003c/a\u003e Edit changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/dbb76c127d69c7b29ee8d830b6af4d60d3ab598d\"\u003e\u003ccode\u003edbb76c1\u003c/code\u003e\u003c/a\u003e update readme and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3662acb25298b2c46698eca89a4b479b3e90c381\"\u003e\u003ccode\u003e3662acb\u003c/code\u003e\u003c/a\u003e Make sure all optional deps are code fenced\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d5f13d9f4b1d9516525115332a2760c2795b97d\"\u003e\u003ccode\u003e6d5f13d\u003c/code\u003e\u003c/a\u003e Ensure optional deps are code fenced\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/923e94a29c8f0b69d197359abef769d4f72f9ef9\"\u003e\u003ccode\u003e923e94a\u003c/code\u003e\u003c/a\u003e Correct xav dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1f840c91cb42cf94bf8ba20d71641d9d9ee45f36\"\u003e\u003ccode\u003e1f840c9\u003c/code\u003e\u003c/a\u003e ffmpeg, not fffmpeg\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/89b7a597739ed0388f732550b7c70ff124fff05e\"\u003e\u003ccode\u003e89b7a59\u003c/code\u003e\u003c/a\u003e Add ffmpeg to install requirements in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/800c6865546021abcc5ba4391cbe4f8cb3926dfa\"\u003e\u003ccode\u003e800c686\u003c/code\u003e\u003c/a\u003e Update changelog and reset version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/025c3d56d3143b0fa26af0fde4b11478ef262a3b\"\u003e\u003ccode\u003e025c3d5\u003c/code\u003e\u003c/a\u003e Remove image detection and related deps to image_detection lib\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-image/image/compare/v0.63.0...v0.65.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.63.0\u0026new-version=0.65.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/livingmission/blockchain-explorer/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/livingmission%2Fblockchain-explorer/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"}},{"old_version":"0.62.1","new_version":"0.63.0","update_type":"minor","path":null,"pr_created_at":"2026-03-01T00:43:23.000Z","version_change":"0.62.1 → 0.63.0","issue":{"uuid":"4005823359","node_id":"PR_kwDOH2dmWs7HDrGt","number":661,"state":"open","title":"chore(bot): bump image from 0.62.1 to 0.63.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-01T00:43:23.000Z","updated_at":"2026-03-01T00:55:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(bot)","packages":[{"name":"image","old_version":"0.62.1","new_version":"0.63.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.62.1 to 0.63.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.63.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.63.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.63.0 released on January 19th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3d2d2facc27105a3375911f8e0c2cd7b7674f9f7\"\u003e\u003ccode\u003e3d2d2fa\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/972d38dd5ff69926990739bfdc6d9cb029215bc3\"\u003e\u003ccode\u003e972d38d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e from akoutmos/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2480133a8bd365e0f8c44b162ef14dd768c20bbe\"\u003e\u003ccode\u003e2480133\u003c/code\u003e\u003c/a\u003e Fixing hex conversion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e9f68267a3f75ae36c2b766a04a8010125309ac0\"\u003e\u003ccode\u003ee9f6826\u003c/code\u003e\u003c/a\u003e Support only Elixir 1.16 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/36acab4187a06bafa1bf4db717de1891597df987\"\u003e\u003ccode\u003e36acab4\u003c/code\u003e\u003c/a\u003e Update CI matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7412c6dead52b3d6dcf9108f471494755cd66173\"\u003e\u003ccode\u003e7412c6d\u003c/code\u003e\u003c/a\u003e Fix compiler warnings for Elixir 1.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/4106f8a1c9a94aa04d94e30344f0a281619dce65\"\u003e\u003ccode\u003e4106f8a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/195\"\u003e#195\u003c/a\u003e from stwf/fix-spec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f3461ab966e94b027a910d33a2db2649d85cc354\"\u003e\u003ccode\u003ef3461ab\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of \u003ca href=\"https://github.com/elixir-image/image\"\u003ehttps://github.com/elixir-image/image\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7a31fbd3f14ae9c172c73edf455d74cae4546243\"\u003e\u003ccode\u003e7a31fbd\u003c/code\u003e\u003c/a\u003e Update CI to use latest Elixir; run apt-get update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6c0ca806b8ddcdcd6ecb0e8a00c9216f439cbe71\"\u003e\u003ccode\u003e6c0ca80\u003c/code\u003e\u003c/a\u003e add error result to spec\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.62.1...v0.63.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.62.1\u0026new-version=0.63.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/martide/literature/pull/661","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/martide%2Fliterature/issues/661","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/661/packages"}},{"old_version":"0.62.1","new_version":"0.63.0","update_type":"minor","path":null,"pr_created_at":"2026-02-09T08:14:40.000Z","version_change":"0.62.1 → 0.63.0","issue":{"uuid":"3915062731","node_id":"PR_kwDOGGqrTc7CadNa","number":152,"state":"closed","title":"Bump the production-dependencies group with 5 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-02T08:10:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-09T08:14:40.000Z","updated_at":"2026-03-02T08:10:58.000Z","time_to_close":1814177,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":5,"packages":[{"name":"hammer","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/ExHammer/hammer"},{"name":"image","old_version":"0.62.1","new_version":"0.63.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.5","new_version":"1.8.6","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix_live_view","old_version":"1.1.19","new_version":"1.1.22","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"plug_cowboy","old_version":"2.7.5","new_version":"2.8.0","repository_url":"https://github.com/elixir-plug/plug_cowboy"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 5 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hammer](https://github.com/ExHammer/hammer) | `7.1.0` | `7.2.0` |\n| [image](https://github.com/kipcole9/image) | `0.62.1` | `0.63.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.5` | `1.8.6` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.19` | `1.1.22` |\n| [plug_cowboy](https://github.com/elixir-plug/plug_cowboy) | `2.7.5` | `2.8.0` |\n\nUpdates `hammer` from 7.1.0 to 7.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ExHammer/hammer/blob/master/CHANGELOG.md\"\u003ehammer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.2.0 - 2026-02-03\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix race condition in \u003ccode\u003eTokenBucket\u003c/code\u003e and \u003ccode\u003eLeakyBucket\u003c/code\u003e atomics backends by using compare-and-swap (CAS) with packed 64-bit values (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop Elixir 1.14 support (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Elixir 1.19 / OTP 28 support (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRename internal \u003ccode\u003e:algorithm\u003c/code\u003e option to \u003ccode\u003e:algorithm_module\u003c/code\u003e in Atomic backend for clarity (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/a112a2eb7460965809e2ba6c6a1588fc6f773fda\"\u003e\u003ccode\u003ea112a2e\u003c/code\u003e\u003c/a\u003e Bump version to 7.2.0 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/171\"\u003e#171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/32ff71917624c3f950ba516717728547ea87a521\"\u003e\u003ccode\u003e32ff719\u003c/code\u003e\u003c/a\u003e Clean up docs and internal naming (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/170\"\u003e#170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/f09cb1a73728a02ebdf531f3fedd7f323339466d\"\u003e\u003ccode\u003ef09cb1a\u003c/code\u003e\u003c/a\u003e Bump actions/cache from 4 to 5 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/c9c9325153b2ecd91ea8f49309fbdfe300d150ce\"\u003e\u003ccode\u003ec9c9325\u003c/code\u003e\u003c/a\u003e Bump dialyxir from 1.4.6 to 1.4.7 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/3255d0abf90c9c0294b14f64ea36d969b8da1b6f\"\u003e\u003ccode\u003e3255d0a\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.39.1 to 0.40.1 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/473dd10a6b1eb1b7a7dfe81cc35d8b0d4b70a71e\"\u003e\u003ccode\u003e473dd10\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.13 to 1.7.16 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/4c1a1407ae9bc39f015158a5317f59fc3ea13a24\"\u003e\u003ccode\u003e4c1a140\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/0380556e4d17d0495b920d33c95fc5ef55844d4f\"\u003e\u003ccode\u003e0380556\u003c/code\u003e\u003c/a\u003e Fix race condition in TokenBucket and LeakyBucket atomics backends (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/169\"\u003e#169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/86d67bd8ad626f5a3e1cd438371e4aac99abf5dc\"\u003e\u003ccode\u003e86d67bd\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.12 to 1.7.13 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/152\"\u003e#152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ExHammer/hammer/commit/ea5ec60bee7e25aa7b0112fbe64f05279ef00f09\"\u003e\u003ccode\u003eea5ec60\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.38.3 to 0.39.1 (\u003ca href=\"https://redirect.github.com/ExHammer/hammer/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ExHammer/hammer/compare/7.1.0...7.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.62.1 to 0.63.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.63.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.63.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.63.0 released on January 19th, 2026.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImage is supported on Elixir 1.16 and greater only. Previously support was claimed for Elixir 1.12 and later.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix compiler warnings on Elixir 1.20.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix RGB to hex conversion. Thanks to \u003ca href=\"https://github.com/akoutmos\"\u003e\u003ccode\u003e@​akoutmos\u003c/code\u003e\u003c/a\u003e for the issue and PR. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3d2d2facc27105a3375911f8e0c2cd7b7674f9f7\"\u003e\u003ccode\u003e3d2d2fa\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/972d38dd5ff69926990739bfdc6d9cb029215bc3\"\u003e\u003ccode\u003e972d38d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/196\"\u003e#196\u003c/a\u003e from akoutmos/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/2480133a8bd365e0f8c44b162ef14dd768c20bbe\"\u003e\u003ccode\u003e2480133\u003c/code\u003e\u003c/a\u003e Fixing hex conversion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e9f68267a3f75ae36c2b766a04a8010125309ac0\"\u003e\u003ccode\u003ee9f6826\u003c/code\u003e\u003c/a\u003e Support only Elixir 1.16 or later\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/36acab4187a06bafa1bf4db717de1891597df987\"\u003e\u003ccode\u003e36acab4\u003c/code\u003e\u003c/a\u003e Update CI matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7412c6dead52b3d6dcf9108f471494755cd66173\"\u003e\u003ccode\u003e7412c6d\u003c/code\u003e\u003c/a\u003e Fix compiler warnings for Elixir 1.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/4106f8a1c9a94aa04d94e30344f0a281619dce65\"\u003e\u003ccode\u003e4106f8a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/195\"\u003e#195\u003c/a\u003e from stwf/fix-spec\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f3461ab966e94b027a910d33a2db2649d85cc354\"\u003e\u003ccode\u003ef3461ab\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of \u003ca href=\"https://github.com/elixir-image/image\"\u003ehttps://github.com/elixir-image/image\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/7a31fbd3f14ae9c172c73edf455d74cae4546243\"\u003e\u003ccode\u003e7a31fbd\u003c/code\u003e\u003c/a\u003e Update CI to use latest Elixir; run apt-get update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6c0ca806b8ddcdcd6ecb0e8a00c9216f439cbe71\"\u003e\u003ccode\u003e6c0ca80\u003c/code\u003e\u003c/a\u003e add error result to spec\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.62.1...v0.63.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6 Coverage 92%\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix typos and update workflow, docs, and aliases by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/123\"\u003ezhongwencool/observer_cli#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded state formating with erlfmt and rendering with less by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/119\"\u003ezhongwencool/observer_cli#119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved recon from included_applications by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/124\"\u003ezhongwencool/observer_cli#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved test/ compilation by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/125\"\u003ezhongwencool/observer_cli#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed mix compilation by \u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/126\"\u003ezhongwencool/observer_cli#126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ev1.8.6 by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/128\"\u003ezhongwencool/observer_cli#128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/okayno14\"\u003e\u003ccode\u003e@​okayno14\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/119\"\u003ezhongwencool/observer_cli#119\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.5...1.8.6\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/blob/main/docs/CHANGELOG.md\"\u003eobserver_cli's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cul\u003e\n\u003cli\u003e1.8.6\n\u003cul\u003e\n\u003cli\u003eAdd external formatter support (dynamic loading/app env) and docs; formatter callback now receives pid.\u003c/li\u003e\n\u003cli\u003eImprove State view rendering by fixing redraw timers and infinite-loop edge cases.\u003c/li\u003e\n\u003cli\u003eImprove less_client/less_server navigation and status output (F/B commands, last line, row fetching).\u003c/li\u003e\n\u003cli\u003eAuto update net_ticktime.\u003c/li\u003e\n\u003cli\u003eFix mix compilation and avoid compiling test/ in release builds.\u003c/li\u003e\n\u003cli\u003eRemove recon from included_applications.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/75da6fa966430d3fe1270688e8b3c119161e113a\"\u003e\u003ccode\u003e75da6fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/128\"\u003e#128\u003c/a\u003e from zhongwencool/fix-typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3c18c88eb6b8dd2ee8b85cd174b898318076ba65\"\u003e\u003ccode\u003e3c18c88\u003c/code\u003e\u003c/a\u003e Fixed mix compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/765b9cd2e7566194c0eef2e72cb96352ab749205\"\u003e\u003ccode\u003e765b9cd\u003c/code\u003e\u003c/a\u003e Removed test/ compilation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f79fdeee78e47c3e07d7f8f13451289fa5bbebdb\"\u003e\u003ccode\u003ef79fdee\u003c/code\u003e\u003c/a\u003e Removed recon from included_applications\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b5706a6cecef87abbce18d16d618b2177e9df2\"\u003e\u003ccode\u003ef5b5706\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/119\"\u003e#119\u003c/a\u003e from okayno14/main_less\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/af2fa22d535426089ba145d397abfc3d7612ba6b\"\u003e\u003ccode\u003eaf2fa22\u003c/code\u003e\u003c/a\u003e Added pid to observer_cli_formatter behaviour\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/04f7b0b1f91f6060cf3c6751defb31c8811bbad6\"\u003e\u003ccode\u003e04f7b0b\u003c/code\u003e\u003c/a\u003e Fixed redraw-timer management for State-view\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/c32b0be2df12cfd936aabeb7cdf7bafac628ec43\"\u003e\u003ccode\u003ec32b0be\u003c/code\u003e\u003c/a\u003e Fixed wrong timer matching in observer_cli_process:next_draw_view_2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/627339605871d1f6d87eb41b3deb9d8f62182317\"\u003e\u003ccode\u003e6273396\u003c/code\u003e\u003c/a\u003e Fixed infinity loop in state-render-process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/424f7b98aff4cd9fc5f412fd1ad4e663e9a85fde\"\u003e\u003ccode\u003e424f7b9\u003c/code\u003e\u003c/a\u003e Added formatter.md documentation\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.19 to 1.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.22/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.22 (2026-01-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix live component container patch throwing a JavaScript error when container is locked (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4088\"\u003e#4088\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.21 (2026-01-27)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix stream reset and deletes not working if stream is teleported using \u003ccode\u003ePhoenix.Component.portal/1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4121\"\u003e#4121\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMark LiveView template code as generated to prevent warnings on Elixir 1.20\u003c/li\u003e\n\u003cli\u003eAllow unused function warnings for function components to be emitted\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePhoenix.LiveView.TagEngine.compile/2\u003c/code\u003e as an official entrypoint for compiling templates in favor of relying on the \u003ccode\u003eEEx.Engine\u003c/code\u003e behaviour\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.20 (2026-01-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eredirect\u003c/code\u003e in \u003ccode\u003ehandle_params\u003c/code\u003e for client-initiated patches causing a JS exception (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4094\"\u003e#4094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix events initiated from elements teleported outside of a LiveComponent being sent to the LiveView instead of the LiveComponent (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4101\"\u003e#4101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003eHooksOptions\u003c/code\u003e accepts non-default typed hooks (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4099\"\u003e#4099\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent portal content from disappearing in rare cases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4095\"\u003e#4095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e\u0026lt;form\u0026gt;\u003c/code\u003e submission to a controller from inside a portal not working (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4107\"\u003e#4107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JS crash when debouncing inputs attached to a form with the \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4102\"\u003e#4102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eUploadClient\u003c/code\u003e (from LiveViewTest) crashing when receiving a \u003ccode\u003e:socket_close\u003c/code\u003e message (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4079\"\u003e#4079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003elive_file_input\u003c/code\u003e to update attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4078\"\u003e#4078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix invalid HTML when setting LiveView \u003ccode\u003e:container\u003c/code\u003e option to \u003ccode\u003e:body\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3932\"\u003e#3932\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/748f193d627ba85fb9d889b3fd298f45e83d6de8\"\u003e\u003ccode\u003e748f193\u003c/code\u003e\u003c/a\u003e Release v1.1.22\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/dc2753a9db2cc9fdb2a3796c1f8330270f5756cd\"\u003e\u003ccode\u003edc2753a\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/241962782a0b97506274aab2618f2ebab910ac4d\"\u003e\u003ccode\u003e2419627\u003c/code\u003e\u003c/a\u003e fix patching locked livecomponent container (closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4088\"\u003e#4088\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4134\"\u003e#4134\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/d1c7f6413b99d38a3c1aed4b8c8b74c25cb08c4e\"\u003e\u003ccode\u003ed1c7f64\u003c/code\u003e\u003c/a\u003e Release v1.1.21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a5005507bfaaaad15f4bd9cf371608b6355cb541\"\u003e\u003ccode\u003ea500550\u003c/code\u003e\u003c/a\u003e Mark LiveView code as generated\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/4e13579086c0917354b40685b60eda51402f26c7\"\u003e\u003ccode\u003e4e13579\u003c/code\u003e\u003c/a\u003e Update docs clarify window.location timing in hook callbacks (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4120\"\u003e#4120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/085086feb90518ccbf72d508ad68428f58addf3f\"\u003e\u003ccode\u003e085086f\u003c/code\u003e\u003c/a\u003e add compile function to Phoenix.LiveView.TagEngine (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4123\"\u003e#4123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/92c5e95f90ec9a0cf1451d9c4d9387eed46c5b97\"\u003e\u003ccode\u003e92c5e95\u003c/code\u003e\u003c/a\u003e fix reset and delete for teleported streams (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4122\"\u003e#4122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/182b1f1db147a9d9f9d91153d52c0b15995ce5a4\"\u003e\u003ccode\u003e182b1f1\u003c/code\u003e\u003c/a\u003e Add test for unused components\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ad10421291b12df3dc623db14845f4f1e2e858ea\"\u003e\u003ccode\u003ead10421\u003c/code\u003e\u003c/a\u003e Emit unused function warnings for function components\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.19...v1.1.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `plug_cowboy` from 2.7.5 to 2.8.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-plug/plug_cowboy/blob/master/CHANGELOG.md\"\u003eplug_cowboy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.8.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove supported for deprecated \u003ccode\u003enext_protocols_advertised\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-plug/plug_cowboy/commit/5a4771c4b5deba2b0ec3e44d2afc96ca874d95d3\"\u003e\u003ccode\u003e5a4771c\u003c/code\u003e\u003c/a\u003e Release v2.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-plug/plug_cowboy/commit/33095a992506026e35233b678ece831a85e41467\"\u003e\u003ccode\u003e33095a9\u003c/code\u003e\u003c/a\u003e Remove deprecated :next_protocols_advertised from ranch_ssl socket_opts (\u003ca href=\"https://redirect.github.com/elixir-plug/plug_cowboy/issues/111\"\u003e#111\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/elixir-plug/plug_cowboy/compare/v2.7.5...v2.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/152","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/152","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/152/packages"}},{"old_version":"0.59.0","new_version":"0.62.1","update_type":"minor","path":null,"pr_created_at":"2025-12-22T23:11:23.000Z","version_change":"0.59.0 → 0.62.1","issue":{"uuid":"3755509775","node_id":"PR_kwDOGkLNDM66O53M","number":854,"state":"closed","title":"chore(deps): bump the production-dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T04:07:25.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-22T23:11:23.000Z","updated_at":"2026-01-13T04:07:26.000Z","time_to_close":1832162,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":16,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.3","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.2","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.7.0","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.10.0","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.7.0","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.19","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.3","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.2.0","repository_url":"https://github.com/edgurgel/solid"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.3` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.2` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.7.0` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.1` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.10.0` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.7.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.19` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.3` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.2.0` |\n\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.3 (2025-12-08)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sql] Tag generated functions as \u003ccode\u003e:generated\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e[sql] Add \u003ccode\u003e:wrap_in_transaction\u003c/code\u003e option to explain\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[mysql] Fix \u003ccode\u003estructure_load/2\u003c/code\u003e for MySQL 9.4+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/912cb3489bec72f4a961d4fdf58df68c2b6dc647\"\u003e\u003ccode\u003e912cb34\u003c/code\u003e\u003c/a\u003e Release v3.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/5d6d82b1beb502762c46bc15fa3ae97100ee504c\"\u003e\u003ccode\u003e5d6d82b\u003c/code\u003e\u003c/a\u003e Add generated option to quote in SQL adapter (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/700\"\u003e#700\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/bddc7bcc949fdd2ffd772967e8c224becdb9c45a\"\u003e\u003ccode\u003ebddc7bc\u003c/code\u003e\u003c/a\u003e chore(docs): Update Safe Ecto Migrations link (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/689\"\u003e#689\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/074a2718fd3d3e536de05b4b4b9483335f19d248\"\u003e\u003ccode\u003e074a271\u003c/code\u003e\u003c/a\u003e Improve sandbox docs (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/687\"\u003e#687\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/e223a377c407c6886eb4d1fe72778e2e03f987ab\"\u003e\u003ccode\u003ee223a37\u003c/code\u003e\u003c/a\u003e Fix structure_load/2 for MySQL 9.4+ (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/685\"\u003e#685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/69954cb7596403d5127bb2f06d7f2ef414988e9e\"\u003e\u003ccode\u003e69954cb\u003c/code\u003e\u003c/a\u003e Updated myxql to 0.8 (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/683\"\u003e#683\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/4752ad25666584846e83c1b44dc297c2a6ed3525\"\u003e\u003ccode\u003e4752ad2\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:wrap_in_transaction\u003c/code\u003e option to explain (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/682\"\u003e#682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly skip manifest removal on Elixir v1.19.3+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.1 (retired)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove unnecessary cleaning of Elixir manifests\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003ch2\u003ePrevious versions\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/blob/v1.0.0/CHANGELOG.md\"\u003eSee the CHANGELOG for versions before v1.0\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e3180f138bda49c7607b709ec74133c47c24c81d\"\u003e\u003ccode\u003ee3180f1\u003c/code\u003e\u003c/a\u003e Release v1.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/ec2f9c1b3d7d03dbd3d8a9d21e3442f26efbeef6\"\u003e\u003ccode\u003eec2f9c1\u003c/code\u003e\u003c/a\u003e Erase manifest unless on upcoming Elixir (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/4960e492813b829f2d44c2a47723379850de2117\"\u003e\u003ccode\u003e4960e49\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/8844a323145936a2bff328fabb25bddc98c09987\"\u003e\u003ccode\u003e8844a32\u003c/code\u003e\u003c/a\u003e Trim CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7fe2dc75a7f86b6fbb2329a14d520e7131c10c3f\"\u003e\u003ccode\u003e7fe2dc7\u003c/code\u003e\u003c/a\u003e Release v1.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/30bf87de18890cd545b25c6a9e2dc3f5f01d3e05\"\u003e\u003ccode\u003e30bf87d\u003c/code\u003e\u003c/a\u003e Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d33d7452b20281cf7b1aaba299955e5c92719669\"\u003e\u003ccode\u003ed33d745\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7443953e4c40ec8eb498ec244aae967bdfc200ed\"\u003e\u003ccode\u003e7443953\u003c/code\u003e\u003c/a\u003e Use ubuntu-latest in the publish-to-hex.yml workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.7.0\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.30...v0.7.0\"\u003ev0.7.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/e41f7e0deafab17cef469633aa1060901b53ad55\"\u003e\u003ccode\u003ee41f7e0\u003c/code\u003e\u003c/a\u003e chore: release version v0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/1cb6f21cd8f1270ca9d9275783b27c97474ef4ea\"\u003e\u003ccode\u003e1cb6f21\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump the dev-dependencies group with 3 updates (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/4930cd457edcb540e5e6318a295ad1187512b7a4\"\u003e\u003ccode\u003e4930cd4\u003c/code\u003e\u003c/a\u003e Fix: \u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/bd2b582cab7316f4084749fc20cc9eda22e0c960\"\u003e\u003ccode\u003ebd2b582\u003c/code\u003e\u003c/a\u003e doc: fix type link (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/d90eb60efa42b79c1b344ddd673dad0ca13bbeca\"\u003e\u003ccode\u003ed90eb60\u003c/code\u003e\u003c/a\u003e docs: Update docs to indicate behavior of List.map/2, add tests (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/5c43202f2a3b47ac9d8d3a3dbd7bfaf6024edf1e\"\u003e\u003ccode\u003e5c43202\u003c/code\u003e\u003c/a\u003e docs: Clarify Elixir version requirements (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/344\"\u003e#344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/6153ea02e91f55f4539158a03dc7a9a3eebbbec0\"\u003e\u003ccode\u003e6153ea0\u003c/code\u003e\u003c/a\u003e feat: Add support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/435cde1d385be900207373341d97e6ecb852f0e5\"\u003e\u003ccode\u003e435cde1\u003c/code\u003e\u003c/a\u003e chore: Fix REUSE license attribution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/0127832814c6727c4655545c9a668d3b604aaba0\"\u003e\u003ccode\u003e0127832\u003c/code\u003e\u003c/a\u003e build(deps): bump rewrite in the production-dependencies group (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/a866ab58baa664f7d9110ce7c39646caeb91143e\"\u003e\u003ccode\u003ea866ab5\u003c/code\u003e\u003c/a\u003e chore: Fix failing test (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/340\"\u003e#340\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0\u003c/h2\u003e\n\u003ch2\u003e0.10.0 - 2025-11-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move \u003ccode\u003e:ignore_setext\u003c/code\u003e from render to parse options\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.48.0 with breaking changes:\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.CodeBlock\u003c/code\u003e (indicates if code block was explicitly closed)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.Heading\u003c/code\u003e (indicates if ATX heading had closing hashes)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003etexts\u003c/code\u003e field to \u003ccode\u003eMDEx.FootnoteReference\u003c/code\u003e (stores original text elements with positions)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eMDEx.Table\u003c/code\u003e \u003ccode\u003enum_rows\u003c/code\u003e calculation: now includes the header row in the count\u003c/li\u003e\n\u003cli\u003eNUL byte handling changed: no longer translated to replacement character during parsing\u003c/li\u003e\n\u003cli\u003eNo virtual newline appended at EOF when missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eOverall performance optimizations in parsing and syntax highlighting\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:highlight\u003c/code\u003e for ==highlighted text== (renders as \u003ccode\u003e\u0026lt;mark\u0026gt;\u003c/code\u003e tags)\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:inline_footnotes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:subtext\u003c/code\u003e for Discord-style subtext\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:tasklist_in_table\u003c/code\u003e for tasklist items in table cells\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:leave_footnote_definitions\u003c/code\u003e to keep footnotes inline\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:escaped_char_spans\u003c/code\u003e for tracking escaped characters with source positions\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003ea7cdccb6a15c37e2d55fe2a8610747e2526eaa1b5314c8f41a6aa7398badd145  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nffff1e5aca7b367b456fda2e60946106b72d99e45f3940ac70f9f727dc4f203e  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\n1fa8c10e675df83065ff6e1e9ad6b5d0ff9795d3abc9b74f3886b624baa2fe65  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\n6ad4a58f6125014db559a2173f6b7faac1c35fee52fecba1f05f6bf17cb8b250  comrak_nif-v0.10.0-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\n0b6fb89eb23b492450c1c48c665ad6d992f3a23dec7e5703e18710544e182a95  libcomrak_nif-v0.10.0-nif-2.15-aarch64-apple-darwin.so.tar.gz\n3d9a9c45bd804138f9748b7e7aaf39d8db31f6023e4bd460e08c6eea642694af  libcomrak_nif-v0.10.0-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n65b01567c624db5d7ef71cdaa48c63128e32b05be5636a4b1bc8c9c433d7700c  libcomrak_nif-v0.10.0-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n83d4686a0dee320a2b0570fd5e3968eacb90f5166360509e9d9c3a5d0026dd7b  libcomrak_nif-v0.10.0-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\n0bc4213594b304fc1f86fdc70d431639b143a2d6a5873cf5e1bbf3e27b706a09  libcomrak_nif-v0.10.0-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\nbef95c822b5375b9beeddec99c56efd4d19345e024bc69325cf5533fc9a0b813  libcomrak_nif-v0.10.0-nif-2.15-x86_64-apple-darwin.so.tar.gz\n2e46153ac60ce16c9422030f482d1aa16ea6d2eb1f1bcacdff6e3c26d4eb0cd0  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-freebsd--legacy_cpu.so.tar.gz\ndf678f69a467ff7b18b0024611ca5328a9bbc256cd2cb805135cd53e22e0d22e  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-freebsd.so.tar.gz\n3d04f9e53cc161e626cbe3ad0c961e36c8355b7a898ca0051e4484e4a90f2900  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-linux-gnu--legacy_cpu.so.tar.gz\n45e40f3b511dcb511be1f9aeb9da0f16ec6972293ce3c6dfd18a41907c285b06  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-linux-gnu.so.tar.gz\n4ef1d72117e4d69a90655af190ec4e88a09cec31bae0ba21354f46afc5a9c44b  libcomrak_nif-v0.10.0-nif-2.15-x86_64-unknown-linux-musl.so.tar.gz\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.9.4\u003c/h2\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.10.0 - 2025-11-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move \u003ccode\u003e:ignore_setext\u003c/code\u003e from render to parse options\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.48.0 with breaking changes:\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.CodeBlock\u003c/code\u003e (indicates if code block was explicitly closed)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eclosed\u003c/code\u003e field to \u003ccode\u003eMDEx.Heading\u003c/code\u003e (indicates if ATX heading had closing hashes)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003etexts\u003c/code\u003e field to \u003ccode\u003eMDEx.FootnoteReference\u003c/code\u003e (stores original text elements with positions)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eMDEx.Table\u003c/code\u003e \u003ccode\u003enum_rows\u003c/code\u003e calculation: now includes the header row in the count\u003c/li\u003e\n\u003cli\u003eNUL byte handling changed: no longer translated to replacement character during parsing\u003c/li\u003e\n\u003cli\u003eNo virtual newline appended at EOF when missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eOverall performance optimizations in parsing and syntax highlighting\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:highlight\u003c/code\u003e for ==highlighted text== (renders as \u003ccode\u003e\u0026lt;mark\u0026gt;\u003c/code\u003e tags)\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:inline_footnotes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd extension option \u003ccode\u003e:subtext\u003c/code\u003e for Discord-style subtext\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:tasklist_in_table\u003c/code\u003e for tasklist items in table cells\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:leave_footnote_definitions\u003c/code\u003e to keep footnotes inline\u003c/li\u003e\n\u003cli\u003eAdd parse option \u003ccode\u003e:escaped_char_spans\u003c/code\u003e for tracking escaped characters with source positions\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.2 - 2025-10-02\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.put_markdown/3\u003c/code\u003e to append or prepend markdown chunks to document buffer\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Introduce buffering to accumulate markdown chunks before parsing\u003c/li\u003e\n\u003cli\u003eFixed pipeline execution when \u003ccode\u003e:markdown\u003c/code\u003e is passed in \u003ccode\u003eMDEx.new/1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e and \u003ccode\u003eMDEx.Document.parse_markdown!/2\u003c/code\u003e in favor of \u003ccode\u003eMDEx.parse_document/2\u003c/code\u003e or \u003ccode\u003eMDEx.Document.put_markdown/1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/4b24cee2ff63a6a91cb7909cdfbb0b6cf08902b3\"\u003e\u003ccode\u003e4b24cee\u003c/code\u003e\u003c/a\u003e cleanup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/243df6e2aa851a7620220f4d0182445305d2ed68\"\u003e\u003ccode\u003e243df6e\u003c/code\u003e\u003c/a\u003e fix(ci): force build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/22959d2e9b3bad6cbf86529fa0f96e6e49f29e67\"\u003e\u003ccode\u003e22959d2\u003c/code\u003e\u003c/a\u003e fix(ci): force build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/c8971442c08e6e6b193624682292aa3ebff4e8ef\"\u003e\u003ccode\u003ec897144\u003c/code\u003e\u003c/a\u003e v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/1b73b1990573b416f868f15cce5fb3a28a42b94a\"\u003e\u003ccode\u003e1b73b19\u003c/code\u003e\u003c/a\u003e chore: update autumnus v0.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/2a4c97c7a24399064434a333d4ac11fcf0d4b3c1\"\u003e\u003ccode\u003e2a4c97c\u003c/code\u003e\u003c/a\u003e chore: update comrak v0.48.0 (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/272\"\u003e#272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/3bdb4170a11238e74ed1463380cce080104d21e9\"\u003e\u003ccode\u003e3bdb417\u003c/code\u003e\u003c/a\u003e chore(deps): bump autumnus from 0.7.6 to 0.7.7 in /native/comrak_nif (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/270\"\u003e#270\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/66e8d8e3c06a7a5b57affd0118af4dc41b6d1422\"\u003e\u003ccode\u003e66e8d8e\u003c/code\u003e\u003c/a\u003e fix: workflow typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/b62632b0ac07708cb4b9c91cf971d8a823c707bb\"\u003e\u003ccode\u003eb62632b\u003c/code\u003e\u003c/a\u003e chore: update action name (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/268\"\u003e#268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/68cf53d7e0440b99cbb6f36c85d96d9bec254d44\"\u003e\u003ccode\u003e68cf53d\u003c/code\u003e\u003c/a\u003e chore: update comrak v0.46.0 (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/267\"\u003e#267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.7.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/v4.7.0/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eDisable migration lock when checking for pending migrations to avoid slow downs\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eKeep backwards compatibility on sandbox API\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/73a83afeaaf8ed5a6f545e530cc4a92602106cb9\"\u003e\u003ccode\u003e73a83af\u003c/code\u003e\u003c/a\u003e Release v4.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/35fcd9eb8326643940102f9bb335c651e3e58732\"\u003e\u003ccode\u003e35fcd9e\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/a0012c266558113a59aa8c1c52af6798c938cc0b\"\u003e\u003ccode\u003ea0012c2\u003c/code\u003e\u003c/a\u003e Release 4.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/6705443afaf84d70ab0b7a728d55762155d70c70\"\u003e\u003ccode\u003e6705443\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/3cb505384bfc6a7b1ed3b790c5b772fe682a1bee\"\u003e\u003ccode\u003e3cb5053\u003c/code\u003e\u003c/a\u003e Maintain backwards compatibility on sandbox API, closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/197\"\u003e#197\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/95fde935bcc9fce41c9ae1ccb6cc55c13fa51b5a\"\u003e\u003ccode\u003e95fde93\u003c/code\u003e\u003c/a\u003e Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.19\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.19/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.19 (2025-12-12)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure stale token redirect uses the correct URL (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4068\"\u003e#4068\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIgnore events from elements that are not connected to the DOM (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4066\"\u003e#4066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip \u003ccode\u003ephx-click-away\u003c/code\u003e if clicked element is hidden (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4070\"\u003e#4070\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow disabling symlink warning for colocated js (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4057\"\u003e#4057\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.18 (2025-11-25)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix boolean attributes not being properly ignored when using \u003ccode\u003eJS.ignore_attributes\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4049\"\u003e#4049\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Phoenix.Component.assign/2] allow passing a function as second argument assign(socket, fn _existing_assigns -\u0026gt; %{this_gets: \u0026quot;merged\u0026quot;} end) (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4051\"\u003e#4051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAnnotate \u003ccode\u003ephx-drop-target\u003c/code\u003e elements with the \u003ccode\u003ephx-drop-target-active\u003c/code\u003e class when items are being dropped (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4012\"\u003e#4012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eonDocumentPatch\u003c/code\u003e dom callback and allow specifying the event dispatch phase (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4043\"\u003e#4043\u003c/a\u003e)\nThis allows users to use view transitions, see \u003ca href=\"https://gist.github.com/SteffenDE/cf7cdb91ba037b08cdc583763e4ffc69\"\u003ethe linked gist in the PR\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eWarn in \u003ccode\u003ecreateHook\u003c/code\u003e if passed element has no ID (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4010\"\u003e#4010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003ePhoenix.Component.portal/1\u003c/code\u003e to be nested (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4048\"\u003e#4048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ephx-viewport-overrun-target\u003c/code\u003e to make infinitely scrolled tables easier to implement (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4053\"\u003e#4053\u003c/a\u003e) (\u003ca href=\"https://gist.github.com/SteffenDE/613125993362e30443e58558aa3c8ba0\"\u003eExample\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow to disable the symlink warning for colocated js (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4057\"\u003e#4057\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.17 (2025-11-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enoop in empty live reloader config\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.16 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ephx-disable-with\u003c/code\u003e restoring whitespace improperly (regression in 1.1.15)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.15 (2025-10-21)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not sending elements with \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute when using Firefox (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix keyed comprehension merging in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4027\"\u003e#4027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003etextContent\u003c/code\u003e instead of \u003ccode\u003einnerText\u003c/code\u003e when restoring \u003ccode\u003ephx-disable-with\u003c/code\u003e text to avoid issues with CSS transforms (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4015\"\u003e#4015\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/d37acf13b3b217756fb4dd83a2b5248059a1fc10\"\u003e\u003ccode\u003ed37acf1\u003c/code\u003e\u003c/a\u003e release v1.1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f8922e3b6a1fef18b528fde7e873d83f739e8923\"\u003e\u003ccode\u003ef8922e3\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/85d74d8b28d0c020142211abad92277f368f18ac\"\u003e\u003ccode\u003e85d74d8\u003c/code\u003e\u003c/a\u003e Skip phx-click-away if clicked target is hidden (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4077\"\u003e#4077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/29c2af8507e06780803c3b2d20418fc56922c12c\"\u003e\u003ccode\u003e29c2af8\u003c/code\u003e\u003c/a\u003e ignore events for elements that are not connected (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4074\"\u003e#4074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/b9307d2cc2277590801e22154c46b0d51431413a\"\u003e\u003ccode\u003eb9307d2\u003c/code\u003e\u003c/a\u003e use main view for stale redirect (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4069\"\u003e#4069\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/b3a145e5dca66137c66b970d0c44ec3871cd6f37\"\u003e\u003ccode\u003eb3a145e\u003c/code\u003e\u003c/a\u003e Raise if JS.dispatch detail is not a map (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4062\"\u003e#4062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/5bf52e60ca4558a0a328ff1f9e207b459e1a3d6d\"\u003e\u003ccode\u003e5bf52e6\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ephx-no-format\u003c/code\u003e and \u003ccode\u003ephx-no-curly-interpolation\u003c/code\u003e to cheatsheet (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4065\"\u003e#4065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/7ab8e7df93220214e82c1a36541603bd7b54bf53\"\u003e\u003ccode\u003e7ab8e7d\u003c/code\u003e\u003c/a\u003e allow disabling symlink warning for colocated js (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4057\"\u003e#4057\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a8541d7502ae1ed68f76823d73581e3ac8a0d903\"\u003e\u003ccode\u003ea8541d7\u003c/code\u003e\u003c/a\u003e format for 1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f821d9c7a34032dc44448acd44e278ae103f919b\"\u003e\u003ccode\u003ef821d9c\u003c/code\u003e\u003c/a\u003e release v1.1.18\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.19\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_pubsub` from 2.1.3 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/blob/main/CHANGELOG.md\"\u003ephoenix_pubsub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.2.0 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow the registry size to be set separate from pool size\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003e:broadcast_pool_size\u003c/code\u003e option to allow safe pool size migration\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOnly restart shards if they terminate unexpectedly\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.4 (2024-09-27)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e:permdown_on_shutdown\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/086e0af0af9306580ee59025c85931936a849ab5\"\u003e\u003ccode\u003e086e0af\u003c/code\u003e\u003c/a\u003e Release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/f442cb184a91a32aeb3439a8c160107a590f776f\"\u003e\u003ccode\u003ef442cb1\u003c/code\u003e\u003c/a\u003e Remove unused require\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/0176ce6cd603af6c4ddd622ccabb8f84f0ce5c73\"\u003e\u003ccode\u003e0176ce6\u003c/code\u003e\u003c/a\u003e Fix dialyzer Shard module warning (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/201\"\u003e#201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/fff23f8296c7c1b04ee4a2f06c285058d713cfc6\"\u003e\u003ccode\u003efff23f8\u003c/code\u003e\u003c/a\u003e Separate Registry pool size configuration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/198\"\u003e#198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95b4ad2d32310a80c9a13183da9568a141108c45\"\u003e\u003ccode\u003e95b4ad2\u003c/code\u003e\u003c/a\u003e Introduce broadcast_pool_size option to allow safe pool size migration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/197\"\u003e#197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/420a87aab32dd25b1ab906ba099fda217c16d98d\"\u003e\u003ccode\u003e420a87a\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/2c466f3a82e91530a9b97a4b688fb28f8f1c638d\"\u003e\u003ccode\u003e2c466f3\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings on latest Elixir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95eb7cca82477b1cd4f7f73b00f5a96690a26500\"\u003e\u003ccode\u003e95eb7cc\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/4f0b4bacaffd6008ff8e16076180a5ab1a261d6b\"\u003e\u003ccode\u003e4f0b4ba\u003c/code\u003e\u003c/a\u003e mix format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/148ae108d5713aa420a4beade69b44939c283a12\"\u003e\u003ccode\u003e148ae10\u003c/code\u003e\u003c/a\u003e Only restart shards if they terminate unexpectedly (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/195\"\u003e#195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/compare/v2.1.3...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca ...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/854","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/854","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/854/packages"}},{"old_version":"0.59.0","new_version":"0.62.1","update_type":"minor","path":null,"pr_created_at":"2025-11-10T23:50:34.000Z","version_change":"0.59.0 → 0.62.1","issue":{"uuid":"3610117772","node_id":"PR_kwDOGkLNDM6ypLbf","number":848,"state":"open","title":"chore(deps): bump the production-dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-10T23:50:34.000Z","updated_at":"2025-12-02T01:50:24.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":16,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.2","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.2","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.7.0","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.9.4","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.7.0","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.17","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.3","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.1.1","repository_url":"https://github.com/edgurgel/solid"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.2` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.2` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.7.0` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.1` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.9.4` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.7.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.17` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.3` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.1.1` |\n\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/701c99e97f61a0e6d3bc372f5f10da4e1b3898df\"\u003e\u003ccode\u003e701c99e\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/677\"\u003e#677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/79590224dcc36a412614c18bd507b4d5e9a906ad\"\u003e\u003ccode\u003e7959022\u003c/code\u003e\u003c/a\u003e Allow passing through opts in Ecto.Adapters.SQL.Sandbox.allow/4 calls (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/678\"\u003e#678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/22c71121b758115876db51fc449b6b5b6547898f\"\u003e\u003ccode\u003e22c7112\u003c/code\u003e\u003c/a\u003e Release v3.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/35e27985ece612c21fe65b2732587b29b25d7095\"\u003e\u003ccode\u003e35e2798\u003c/code\u003e\u003c/a\u003e Fix nested array generated columns (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/955f0fbf8f00d32efbb08bd2fb26ed74fdaa5f34\"\u003e\u003ccode\u003e955f0fb\u003c/code\u003e\u003c/a\u003e Release v3.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/aa9a3291f785522d24d9f1571d2aa79acbe0d2e5\"\u003e\u003ccode\u003eaa9a329\u003c/code\u003e\u003c/a\u003e Remove unused argument from private helper (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/3084d7150d208fde33bd9bb591cc35a5d481ade3\"\u003e\u003ccode\u003e3084d71\u003c/code\u003e\u003c/a\u003e Better docs for Repos that use \u003ccode\u003eEcto.Adapters.SQL.Adapter\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/671\"\u003e#671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly skip manifest removal on Elixir v1.19.3+\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.1 (retired)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove unnecessary cleaning of Elixir manifests\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/2\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003ch2\u003ePrevious versions\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/blob/v1.0.0/CHANGELOG.md\"\u003eSee the CHANGELOG for versions before v1.0\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e3180f138bda49c7607b709ec74133c47c24c81d\"\u003e\u003ccode\u003ee3180f1\u003c/code\u003e\u003c/a\u003e Release v1.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/ec2f9c1b3d7d03dbd3d8a9d21e3442f26efbeef6\"\u003e\u003ccode\u003eec2f9c1\u003c/code\u003e\u003c/a\u003e Erase manifest unless on upcoming Elixir (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/4960e492813b829f2d44c2a47723379850de2117\"\u003e\u003ccode\u003e4960e49\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/8844a323145936a2bff328fabb25bddc98c09987\"\u003e\u003ccode\u003e8844a32\u003c/code\u003e\u003c/a\u003e Trim CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7fe2dc75a7f86b6fbb2329a14d520e7131c10c3f\"\u003e\u003ccode\u003e7fe2dc7\u003c/code\u003e\u003c/a\u003e Release v1.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/30bf87de18890cd545b25c6a9e2dc3f5f01d3e05\"\u003e\u003ccode\u003e30bf87d\u003c/code\u003e\u003c/a\u003e Removed unnecessary cleaning of Elixir manifests (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/423\"\u003e#423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d33d7452b20281cf7b1aaba299955e5c92719669\"\u003e\u003ccode\u003ed33d745\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7443953e4c40ec8eb498ec244aae967bdfc200ed\"\u003e\u003ccode\u003e7443953\u003c/code\u003e\u003c/a\u003e Use ubuntu-latest in the publish-to-hex.yml workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.7.0\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.30...v0.7.0\"\u003ev0.7.0\u003c/a\u003e (2025-11-05)\u003c/h2\u003e\n\u003ch3\u003eFeatures:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e) by Herman verschooten\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e) by Nick Krichevsky\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't pass \u003ccode\u003e--no-git\u003c/code\u003e onto installers by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003emodify_config_code\u003c/code\u003e twice with keyword values (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/332\"\u003e#332\u003c/a\u003e) by grzuy\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/e41f7e0deafab17cef469633aa1060901b53ad55\"\u003e\u003ccode\u003ee41f7e0\u003c/code\u003e\u003c/a\u003e chore: release version v0.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/1cb6f21cd8f1270ca9d9275783b27c97474ef4ea\"\u003e\u003ccode\u003e1cb6f21\u003c/code\u003e\u003c/a\u003e build(deps-dev): bump the dev-dependencies group with 3 updates (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/4930cd457edcb540e5e6318a295ad1187512b7a4\"\u003e\u003ccode\u003e4930cd4\u003c/code\u003e\u003c/a\u003e Fix: \u003ccode\u003eput_in_map\u003c/code\u003e/\u003ccode\u003eset_map_key\u003c/code\u003e not setting keys properly (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/bd2b582cab7316f4084749fc20cc9eda22e0c960\"\u003e\u003ccode\u003ebd2b582\u003c/code\u003e\u003c/a\u003e doc: fix type link (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/346\"\u003e#346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/d90eb60efa42b79c1b344ddd673dad0ca13bbeca\"\u003e\u003ccode\u003ed90eb60\u003c/code\u003e\u003c/a\u003e docs: Update docs to indicate behavior of List.map/2, add tests (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/5c43202f2a3b47ac9d8d3a3dbd7bfaf6024edf1e\"\u003e\u003ccode\u003e5c43202\u003c/code\u003e\u003c/a\u003e docs: Clarify Elixir version requirements (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/344\"\u003e#344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/6153ea02e91f55f4539158a03dc7a9a3eebbbec0\"\u003e\u003ccode\u003e6153ea0\u003c/code\u003e\u003c/a\u003e feat: Add support for SiteEncrypt.Phoenix.Endpoint detection (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/339\"\u003e#339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/435cde1d385be900207373341d97e6ecb852f0e5\"\u003e\u003ccode\u003e435cde1\u003c/code\u003e\u003c/a\u003e chore: Fix REUSE license attribution\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/0127832814c6727c4655545c9a668d3b604aaba0\"\u003e\u003ccode\u003e0127832\u003c/code\u003e\u003c/a\u003e build(deps): bump rewrite in the production-dependencies group (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/a866ab58baa664f7d9110ce7c39646caeb91143e\"\u003e\u003ccode\u003ea866ab5\u003c/code\u003e\u003c/a\u003e chore: Fix failing test (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/340\"\u003e#340\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.4\u003c/h2\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003efee2bab68b24e77ffb7ea39dbb602cc9c8dc0010b7ea25500df8b39179a3747f  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb9cb63ffd3532a5f96050f1de877f5a1a1a3d8558b8dd25c2b27c18d57689307  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\n29c0bf07e081baf5cdad847e38ec9b00177b0b93cfb8c34255d4d26d10646e25  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\n46f8e1d96ff1f752a2b2d1e7d34453c0d46002fef5099400502de90966e70032  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\nabc6659f1f28c0aa869fc601d7852c6cc02201a96cea0fd0b0ebda2925ab7f6f  libcomrak_nif-v0.9.4-nif-2.15-aarch64-apple-darwin.so.tar.gz\naef0fa4f7d9226ddca0ec2f2ad3f2842ab885489a4c8d055c9e428bb6b0f8c8b  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n5a599ebcfa0f770b4696d126b0d93f70c8c4d64e5bc8f6ae3cc5449747616cbe  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n3a86a95f1db8f5d2c078f5d900ac6600356e058366d8a0d53b5f7481bf455f90  libcomrak_nif-v0.9.4-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\neaa85c5d594ee961f48083bf7a53cd6eefc2b75ad83a7263b3598dc773bd4649  libcomrak_nif-v0.9.4-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n56b449a1328e7360db8ec99a3b1bbcc876009a68dd41c030c7ca27e6e40c7afd  libcomrak_nif-v0.9.4-nif-2.15-x86_64-apple-darwin.so.tar.gz\n468790e76237c7bc6a3ff1a1d87ad327e64d7eb20a9a24d97c5d08a297629de7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd--legacy_cpu.so.tar.gz\n0aa1a3d3110fd2b3fb6c24d5165a42ea83909fa04fcda183c33fdae3ba0d3390  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd.so.tar.gz\n6ec8b1b9ddeeb3ff588344a21ad16b1884363e1d79b1cbd8fccf927e58033306  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu--legacy_cpu.so.tar.gz\n60cf6c28721b1e2fb801292438bb77af2379b9c51682ce044959079c7deec4d7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu.so.tar.gz\n86035a079bfcf67858e780e43c7b3295a18046bd7fa1b4eec8d4ce8c552907c2  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-musl.so.tar.gz\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.9.3\u003c/h2\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003e67c14ddd10fa6c86224fe1ba64f867d6c015036e663e9ff093d7f7f6c6a2d6af  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb4fbe7c943407fed0e56331861d54bc85ae5bddf36d27d773a28c3c1ec80062e  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\nce9be9bd400bd5bb17911172709443cf6094ae274bcd2d242fe1f412739a8de1  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\nf5ab9d67c03c834c95492e604d80c560824eec7207392499edfe4a1203a46992  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\n78ed9e5348ed98cc2f13d414d86232b1a6c335f941f0fc3c3cf8e86d796f2dc1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-apple-darwin.so.tar.gz\n143217c24b6ddebbe4d3d27dc5e2985ba31fbb62bf4ee0238793cf8dc7dbcda9  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n2d9b56c5a1875d1638f3a91f24b38340563294ac65ff09c41da989a88144fdd1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n1790b2c4aab4d43cc3dac1d1c9c0f0faf5429d07051f6dcfdc4e90cf17c65f79  libcomrak_nif-v0.9.3-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\n130b53a8707cabbb56e1a8bae5b8f3f2fca6e18294a722a063a3feb50c94308f  libcomrak_nif-v0.9.3-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.2 - 2025-10-02\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.put_markdown/3\u003c/code\u003e to append or prepend markdown chunks to document buffer\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Introduce buffering to accumulate markdown chunks before parsing\u003c/li\u003e\n\u003cli\u003eFixed pipeline execution when \u003ccode\u003e:markdown\u003c/code\u003e is passed in \u003ccode\u003eMDEx.new/1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e and \u003ccode\u003eMDEx.Document.parse_markdown!/2\u003c/code\u003e in favor of \u003ccode\u003eMDEx.parse_document/2\u003c/code\u003e or \u003ccode\u003eMDEx.Document.put_markdown/1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003ch2\u003e0.9.1 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Sigil] Support assigns in \u003ccode\u003eMD\u003c/code\u003e sigil modifier\u003c/li\u003e\n\u003cli\u003e[Docs] Document assigns support in \u003ccode\u003eHTML\u003c/code\u003e and \u003ccode\u003eMD\u003c/code\u003e modifiers\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.42.0\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.4\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumn\u003c/code\u003e to v0.5.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/807a73e4f9be51d20d48afdc9edcbe9781d27140\"\u003e\u003ccode\u003e807a73e\u003c/code\u003e\u003c/a\u003e fix: package usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/d3466743dff54bc6ce97311d0b2cd9c18f9170a1\"\u003e\u003ccode\u003ed346674\u003c/code\u003e\u003c/a\u003e v0.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/168d10ee139177477376b32708989d281ecf2e9a\"\u003e\u003ccode\u003e168d10e\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/df6705e45c8dc540acde25126395fde3eb38008b\"\u003e\u003ccode\u003edf6705e\u003c/code\u003e\u003c/a\u003e chore: update deps (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/259\"\u003e#259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/0ea36744fceee59a40f57726e6afbc64b07a091d\"\u003e\u003ccode\u003e0ea3674\u003c/code\u003e\u003c/a\u003e feat: add usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/f710d660443fe813feb9ad337e520db5a5eba09b\"\u003e\u003ccode\u003ef710d66\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/1ab4a32a06d5aa0ff336431d4d7107acff6b5aa6\"\u003e\u003ccode\u003e1ab4a32\u003c/code\u003e\u003c/a\u003e v0.9.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/a764c69f7c4cd753938cbe70cff6e30f767f5425\"\u003e\u003ccode\u003ea764c69\u003c/code\u003e\u003c/a\u003e Fix formatting and update examples in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/166d0acdae9730410144cba63c4f70191f49d87a\"\u003e\u003ccode\u003e166d0ac\u003c/code\u003e\u003c/a\u003e feat: streaming (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/257\"\u003e#257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/9b1c011e0f53fcc42302d0c68b175a9e588be061\"\u003e\u003ccode\u003e9b1c011\u003c/code\u003e\u003c/a\u003e chore: remove unused asset\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.7.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/v4.7.0/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eDisable migration lock when checking for pending migrations to avoid slow downs\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.6\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eKeep backwards compatibility on sandbox API\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/73a83afeaaf8ed5a6f545e530cc4a92602106cb9\"\u003e\u003ccode\u003e73a83af\u003c/code\u003e\u003c/a\u003e Release v4.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/35fcd9eb8326643940102f9bb335c651e3e58732\"\u003e\u003ccode\u003e35fcd9e\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/a0012c266558113a59aa8c1c52af6798c938cc0b\"\u003e\u003ccode\u003ea0012c2\u003c/code\u003e\u003c/a\u003e Release 4.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/6705443afaf84d70ab0b7a728d55762155d70c70\"\u003e\u003ccode\u003e6705443\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/3cb505384bfc6a7b1ed3b790c5b772fe682a1bee\"\u003e\u003ccode\u003e3cb5053\u003c/code\u003e\u003c/a\u003e Maintain backwards compatibility on sandbox API, closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/197\"\u003e#197\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/95fde935bcc9fce41c9ae1ccb6cc55c13fa51b5a\"\u003e\u003ccode\u003e95fde93\u003c/code\u003e\u003c/a\u003e Disable migration lock by default on CheckRepoStatus (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.17\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.17/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.17 (2025-11-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003enoop in empty live reloader config\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.16 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ephx-disable-with\u003c/code\u003e restoring whitespace improperly (regression in 1.1.15)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.15 (2025-10-21)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not sending elements with \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute when using Firefox (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix keyed comprehension merging in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4027\"\u003e#4027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003etextContent\u003c/code\u003e instead of \u003ccode\u003einnerText\u003c/code\u003e when restoring \u003ccode\u003ephx-disable-with\u003c/code\u003e text to avoid issues with CSS transforms (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4015\"\u003e#4015\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow attaching \u003ccode\u003ehandle_async\u003c/code\u003e hooks on LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4018\"\u003e#4018\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.14 (2025-10-07)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not working when form is teleported (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4009\"\u003e#4009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ehandle_event\u003c/code\u003e hook not being able to return \u003ccode\u003e{:halt, reply, socket}\u003c/code\u003e in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4006\"\u003e#4006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOnly set title to default when it is set to empty by the main view, not by nested or sticky views (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4003\"\u003e#4003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically update esbuild version when using Igniter upgrader from 1.0 to 1.1 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4011\"\u003e#4011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unused require warnings on Elixir 1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/8632ec219162f2537a1d230e3bd73a4b2dff87cb\"\u003e\u003ccode\u003e8632ec2\u003c/code\u003e\u003c/a\u003e Release 1.1.17\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/251229d9d6c6f9a96bb7e48532e19e6de24b5bc5\"\u003e\u003ccode\u003e251229d\u003c/code\u003e\u003c/a\u003e noop in empty live reloader config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2a1b860dbaf20ca1b855d5da1dad53e8769dea0c\"\u003e\u003ccode\u003e2a1b860\u003c/code\u003e\u003c/a\u003e release v1.1.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2055315e1b3c599f6e831233b6fa37399c1137ca\"\u003e\u003ccode\u003e2055315\u003c/code\u003e\u003c/a\u003e fix test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/6b2b6acb9c6a3c261ba52731b7fa4104efc348e3\"\u003e\u003ccode\u003e6b2b6ac\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/77655446b868664edcb5d3fa30e0a3f04a4b2299\"\u003e\u003ccode\u003e7765544\u003c/code\u003e\u003c/a\u003e fix phx-disable-with restore to properly use textContent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/8dba70cfb29e5791eb9a7702551a24f1050090bd\"\u003e\u003ccode\u003e8dba70c\u003c/code\u003e\u003c/a\u003e add missing function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f775adc81a2ef6955cf20cd57c9031f3996f7d0b\"\u003e\u003ccode\u003ef775adc\u003c/code\u003e\u003c/a\u003e release v1.1.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/dc672d7025b0f8a6fe8b76240ae7c043e5fbb3d1\"\u003e\u003ccode\u003edc672d7\u003c/code\u003e\u003c/a\u003e use npm trusted publishing (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fc598e177798401d868b466041d955074ab7c65c\"\u003e\u003ccode\u003efc598e1\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.17\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_pubsub` from 2.1.3 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/blob/main/CHANGELOG.md\"\u003ephoenix_pubsub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.2.0 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow the registry size to be set separate from pool size\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003e:broadcast_pool_size\u003c/code\u003e option to allow safe pool size migration\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOnly restart shards if they terminate unexpectedly\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.4 (2024-09-27)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e:permdown_on_shutdown\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/086e0af0af9306580ee59025c85931936a849ab5\"\u003e\u003ccode\u003e086e0af\u003c/code\u003e\u003c/a\u003e Release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/f442cb184a91a32aeb3439a8c160107a590f776f\"\u003e\u003ccode\u003ef442cb1\u003c/code\u003e\u003c/a\u003e Remove unused require\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/0176ce6cd603af6c4ddd622ccabb8f84f0ce5c73\"\u003e\u003ccode\u003e0176ce6\u003c/code\u003e\u003c/a\u003e Fix dialyzer Shard module warning (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/201\"\u003e#201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/fff23f8296c7c1b04ee4a2f06c285058d713cfc6\"\u003e\u003ccode\u003efff23f8\u003c/code\u003e\u003c/a\u003e Separate Registry pool size configuration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/198\"\u003e#198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95b4ad2d32310a80c9a13183da9568a141108c45\"\u003e\u003ccode\u003e95b4ad2\u003c/code\u003e\u003c/a\u003e Introduce broadcast_pool_size option to allow safe pool size migration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/197\"\u003e#197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/420a87aab32dd25b1ab906ba099fda217c16d98d\"\u003e\u003ccode\u003e420a87a\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/2c466f3a82e91530a9b97a4b688fb28f8f1c638d\"\u003e\u003ccode\u003e2c466f3\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings on latest Elixir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95eb7cca82477b1cd4f7f73b00f5a96690a26500\"\u003e\u003ccode\u003e95eb7cc\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/4f0b4bacaffd6008ff8e16076180a5ab1a261d6b\"\u003e\u003ccode\u003e4f0b4ba\u003c/code\u003e\u003c/a\u003e mix format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/148ae108d5713aa420a4beade69b44939c283a12\"\u003e\u003ccode\u003e148ae10\u003c/code\u003e\u003c/a\u003e Only restart shards if they terminate unexpectedly (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/195\"\u003e#195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/compare/v2.1.3...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/3bb2ee2bb0219027c00acb7c8a67ebdc97558fd1\"\u003e\u003ccode\u003e3bb2ee2\u003c/code\u003e\u003c/a\u003e Add example with ANY() (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/f7f9a4e3a2bdea68f6072c5a7c9960bed6bfb500\"\u003e\u003ccode\u003ef7f9a4e\u003c/code\u003e\u003c/a\u003e Add ltxtquery support (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/735\"\u003e#735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/postgrex/compare/v0.20.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `req_embed` from 0.2.1 to 0.3.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/req_embed/blob/main/CHANGELOG.md\"\u003ereq_embed's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.3 - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.2 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded providers: Audius, ElevenLabs, GOOD FOR JOB.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.1 - 2025-08-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ca href=\"https://elixircasts.io/reqembed\"\u003ehttps://elixircasts.io/reqembed\u003c/a\u003e in documentation\u003c/li\u003e\n\u003cli\u003eImprove documentation in overall\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.0 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd providers Beta QuellenSuche, Carbon, Everwall, Filestage, Form-Data, GW2 Fashions, Kubit, Naver Clip, QuellenSuche, SOOP,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Remove provider afreecaTV\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Require minimum Elixir 1.15\u003c/li\u003e\n\u003cli\u003eUpdate providers: Medienarchiv, Supercut, Webcrumbs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.3 - 2025-05-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnite provider support\u003c/li\u003e\n\u003cli\u003emarimo provider support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompilation error on Elixir 1.18.14 and OTP 28\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.2 - 2025-04-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInstallation without \u003ccode\u003e:phoenix_live_view\u003c/code\u003e dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/138d9509bf816cf8811e24e1a6f21a74bab5a149\"\u003e\u003ccode\u003e138d950\u003c/code\u003e\u003c/a\u003e v0.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/7bc46cd5cc707083a4f374247c259f237eff08ff\"\u003e\u003ccode\u003e7bc46cd\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/d22e4dbc0ffc330536433dfaa2b14a45237e6c3e\"\u003e\u003ccode\u003ed22e4db\u003c/code\u003e\u003c/a\u003e Add ElixirCasts episode link to usage rules\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/848","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/848","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/848/packages"}},{"old_version":"0.59.0","new_version":"0.62.1","update_type":"minor","path":null,"pr_created_at":"2025-10-27T23:46:15.000Z","version_change":"0.59.0 → 0.62.1","issue":{"uuid":"3559124469","node_id":"PR_kwDOGkLNDM6wBMyS","number":845,"state":"closed","title":"chore(deps): bump the production-dependencies group with 16 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-11-10T23:13:55.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-27T23:46:15.000Z","updated_at":"2025-11-10T23:13:56.000Z","time_to_close":1207660,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":16,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.2","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.6.30","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.9.4","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.6.5","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_html","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/phoenixframework/phoenix_html"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.16","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"phoenix_pubsub","old_version":"2.1.3","new_version":"2.2.0","repository_url":"https://github.com/phoenixframework/phoenix_pubsub"},{"name":"postgrex","old_version":"0.20.0","new_version":"0.21.1","repository_url":"https://github.com/elixir-ecto/postgrex"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.3","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.1.1","repository_url":"https://github.com/edgurgel/solid"},{"name":"vix","old_version":"0.33.0","new_version":"0.35.0","repository_url":"https://github.com/akash-akya/vix"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 16 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.2` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.6.30` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.1` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.9.4` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.6.5` |\n| [phoenix_html](https://github.com/phoenixframework/phoenix_html) | `4.2.1` | `4.3.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.16` |\n| [phoenix_pubsub](https://github.com/phoenixframework/phoenix_pubsub) | `2.1.3` | `2.2.0` |\n| [postgrex](https://github.com/elixir-ecto/postgrex) | `0.20.0` | `0.21.1` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.3` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.1.1` |\n| [vix](https://github.com/akash-akya/vix) | `0.33.0` | `0.35.0` |\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/701c99e97f61a0e6d3bc372f5f10da4e1b3898df\"\u003e\u003ccode\u003e701c99e\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/677\"\u003e#677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/79590224dcc36a412614c18bd507b4d5e9a906ad\"\u003e\u003ccode\u003e7959022\u003c/code\u003e\u003c/a\u003e Allow passing through opts in Ecto.Adapters.SQL.Sandbox.allow/4 calls (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/678\"\u003e#678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/22c71121b758115876db51fc449b6b5b6547898f\"\u003e\u003ccode\u003e22c7112\u003c/code\u003e\u003c/a\u003e Release v3.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/35e27985ece612c21fe65b2732587b29b25d7095\"\u003e\u003ccode\u003e35e2798\u003c/code\u003e\u003c/a\u003e Fix nested array generated columns (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/955f0fbf8f00d32efbb08bd2fb26ed74fdaa5f34\"\u003e\u003ccode\u003e955f0fb\u003c/code\u003e\u003c/a\u003e Release v3.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/aa9a3291f785522d24d9f1571d2aa79acbe0d2e5\"\u003e\u003ccode\u003eaa9a329\u003c/code\u003e\u003c/a\u003e Remove unused argument from private helper (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/3084d7150d208fde33bd9bb591cc35a5d481ade3\"\u003e\u003ccode\u003e3084d71\u003c/code\u003e\u003c/a\u003e Better docs for Repos that use \u003ccode\u003eEcto.Adapters.SQL.Adapter\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/671\"\u003e#671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.6.30\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove case where we iterate a rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.22\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehandle \u003ccode\u003e:error\u003c/code\u003e coming from alias updater by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd :error case clause in modify_existing_alias by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.21\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003euse appropriate function name \u003ccode\u003efunction\u003c/code\u003e -\u0026gt; \u003ccode\u003efunction?\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/326\"\u003e#326\u003c/a\u003e) by Ciarán Walsh\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e) by Erik André Jakobsen\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.26...v0.6.27\"\u003ev0.6.27\u003c/a\u003e (2025-08-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereleasing a new version to handle locally published version with IO.inspects left in 🤦‍♂️\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.25...v0.6.26\"\u003ev0.6.26\u003c/a\u003e (2025-07-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/928f586e1e63636de3dc335a4ed7ce4ff0da27d0\"\u003e\u003ccode\u003e928f586\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/78c00b15a9a33da006a2f373ae5f92a799198c86\"\u003e\u003ccode\u003e78c00b1\u003c/code\u003e\u003c/a\u003e fix: don't silently ignore certain errors during spinners\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/7508897dc5a2d12c8d4bf87980245bb570db2049\"\u003e\u003ccode\u003e7508897\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/69ba2ac9f658ea999412193a0836b4a50bd32811\"\u003e\u003ccode\u003e69ba2ac\u003c/code\u003e\u003c/a\u003e chore: remove beacon from projects list for now\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/04bae76892fb3d502483427219c349b4d3e21ca3\"\u003e\u003ccode\u003e04bae76\u003c/code\u003e\u003c/a\u003e improvement: add \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/c3f201124303518b4f68b5ba8e4c86cb6bf935c6\"\u003e\u003ccode\u003ec3f2011\u003c/code\u003e\u003c/a\u003e fix: prevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/961b6656bf54067dba40585d83430c3738b24305\"\u003e\u003ccode\u003e961b665\u003c/code\u003e\u003c/a\u003e chore: update igniter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/32340634fc61b53d80ef511c3a0ca9afd0f35bd1\"\u003e\u003ccode\u003e3234063\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/924a724ab3146e65270d6bf325757e10940932ed\"\u003e\u003ccode\u003e924a724\u003c/code\u003e\u003c/a\u003e improvement: \u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/ff45e81bcf811076e9d7ad9ec91aa28bcebe675d\"\u003e\u003ccode\u003eff45e81\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.6.30\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.4\u003c/h2\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003efee2bab68b24e77ffb7ea39dbb602cc9c8dc0010b7ea25500df8b39179a3747f  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb9cb63ffd3532a5f96050f1de877f5a1a1a3d8558b8dd25c2b27c18d57689307  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\n29c0bf07e081baf5cdad847e38ec9b00177b0b93cfb8c34255d4d26d10646e25  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\n46f8e1d96ff1f752a2b2d1e7d34453c0d46002fef5099400502de90966e70032  comrak_nif-v0.9.4-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\nabc6659f1f28c0aa869fc601d7852c6cc02201a96cea0fd0b0ebda2925ab7f6f  libcomrak_nif-v0.9.4-nif-2.15-aarch64-apple-darwin.so.tar.gz\naef0fa4f7d9226ddca0ec2f2ad3f2842ab885489a4c8d055c9e428bb6b0f8c8b  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n5a599ebcfa0f770b4696d126b0d93f70c8c4d64e5bc8f6ae3cc5449747616cbe  libcomrak_nif-v0.9.4-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n3a86a95f1db8f5d2c078f5d900ac6600356e058366d8a0d53b5f7481bf455f90  libcomrak_nif-v0.9.4-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\neaa85c5d594ee961f48083bf7a53cd6eefc2b75ad83a7263b3598dc773bd4649  libcomrak_nif-v0.9.4-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n56b449a1328e7360db8ec99a3b1bbcc876009a68dd41c030c7ca27e6e40c7afd  libcomrak_nif-v0.9.4-nif-2.15-x86_64-apple-darwin.so.tar.gz\n468790e76237c7bc6a3ff1a1d87ad327e64d7eb20a9a24d97c5d08a297629de7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd--legacy_cpu.so.tar.gz\n0aa1a3d3110fd2b3fb6c24d5165a42ea83909fa04fcda183c33fdae3ba0d3390  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-freebsd.so.tar.gz\n6ec8b1b9ddeeb3ff588344a21ad16b1884363e1d79b1cbd8fccf927e58033306  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu--legacy_cpu.so.tar.gz\n60cf6c28721b1e2fb801292438bb77af2379b9c51682ce044959079c7deec4d7  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-gnu.so.tar.gz\n86035a079bfcf67858e780e43c7b3295a18046bd7fa1b4eec8d4ce8c552907c2  libcomrak_nif-v0.9.4-nif-2.15-x86_64-unknown-linux-musl.so.tar.gz\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.9.3\u003c/h2\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChecksum\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003e67c14ddd10fa6c86224fe1ba64f867d6c015036e663e9ff093d7f7f6c6a2d6af  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu--legacy_cpu.dll.tar.gz\nb4fbe7c943407fed0e56331861d54bc85ae5bddf36d27d773a28c3c1ec80062e  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-gnu.dll.tar.gz\nce9be9bd400bd5bb17911172709443cf6094ae274bcd2d242fe1f412739a8de1  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc--legacy_cpu.dll.tar.gz\nf5ab9d67c03c834c95492e604d80c560824eec7207392499edfe4a1203a46992  comrak_nif-v0.9.3-nif-2.15-x86_64-pc-windows-msvc.dll.tar.gz\n78ed9e5348ed98cc2f13d414d86232b1a6c335f941f0fc3c3cf8e86d796f2dc1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-apple-darwin.so.tar.gz\n143217c24b6ddebbe4d3d27dc5e2985ba31fbb62bf4ee0238793cf8dc7dbcda9  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-gnu.so.tar.gz\n2d9b56c5a1875d1638f3a91f24b38340563294ac65ff09c41da989a88144fdd1  libcomrak_nif-v0.9.3-nif-2.15-aarch64-unknown-linux-musl.so.tar.gz\n1790b2c4aab4d43cc3dac1d1c9c0f0faf5429d07051f6dcfdc4e90cf17c65f79  libcomrak_nif-v0.9.3-nif-2.15-arm-unknown-linux-gnueabihf.so.tar.gz\n130b53a8707cabbb56e1a8bae5b8f3f2fca6e18294a722a063a3feb50c94308f  libcomrak_nif-v0.9.3-nif-2.15-riscv64gc-unknown-linux-gnu.so.tar.gz\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.9.4 - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumn\u003c/code\u003e to v0.5.6\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.5\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ecomrak\u003c/code\u003e to v0.43.0\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003erustler\u003c/code\u003e to v0.37.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.3 - 2025-10-04\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Initial (experimental) streaming support. Disabled by default, can be enabled with option \u003ccode\u003estreaming: true\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e[Options] Added \u003ccode\u003e:streaming\u003c/code\u003e option to enable fragments streaming.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Flush buffered markdown between pipeline steps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.2 - 2025-10-02\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.put_markdown/3\u003c/code\u003e to append or prepend markdown chunks to document buffer\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Introduce buffering to accumulate markdown chunks before parsing\u003c/li\u003e\n\u003cli\u003eFixed pipeline execution when \u003ccode\u003e:markdown\u003c/code\u003e is passed in \u003ccode\u003eMDEx.new/1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e and \u003ccode\u003eMDEx.Document.parse_markdown!/2\u003c/code\u003e in favor of \u003ccode\u003eMDEx.parse_document/2\u003c/code\u003e or \u003ccode\u003eMDEx.Document.put_markdown/1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003ch2\u003e0.9.1 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Sigil] Support assigns in \u003ccode\u003eMD\u003c/code\u003e sigil modifier\u003c/li\u003e\n\u003cli\u003e[Docs] Document assigns support in \u003ccode\u003eHTML\u003c/code\u003e and \u003ccode\u003eMD\u003c/code\u003e modifiers\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003ecomrak\u003c/code\u003e to v0.42.0\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumnus\u003c/code\u003e to v0.7.4\u003c/li\u003e\n\u003cli\u003e[Deps] Update \u003ccode\u003eautumn\u003c/code\u003e to v0.5.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/807a73e4f9be51d20d48afdc9edcbe9781d27140\"\u003e\u003ccode\u003e807a73e\u003c/code\u003e\u003c/a\u003e fix: package usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/d3466743dff54bc6ce97311d0b2cd9c18f9170a1\"\u003e\u003ccode\u003ed346674\u003c/code\u003e\u003c/a\u003e v0.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/168d10ee139177477376b32708989d281ecf2e9a\"\u003e\u003ccode\u003e168d10e\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/df6705e45c8dc540acde25126395fde3eb38008b\"\u003e\u003ccode\u003edf6705e\u003c/code\u003e\u003c/a\u003e chore: update deps (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/259\"\u003e#259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/0ea36744fceee59a40f57726e6afbc64b07a091d\"\u003e\u003ccode\u003e0ea3674\u003c/code\u003e\u003c/a\u003e feat: add usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/f710d660443fe813feb9ad337e520db5a5eba09b\"\u003e\u003ccode\u003ef710d66\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/1ab4a32a06d5aa0ff336431d4d7107acff6b5aa6\"\u003e\u003ccode\u003e1ab4a32\u003c/code\u003e\u003c/a\u003e v0.9.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/a764c69f7c4cd753938cbe70cff6e30f767f5425\"\u003e\u003ccode\u003ea764c69\u003c/code\u003e\u003c/a\u003e Fix formatting and update examples in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/166d0acdae9730410144cba63c4f70191f49d87a\"\u003e\u003ccode\u003e166d0ac\u003c/code\u003e\u003c/a\u003e feat: streaming (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/257\"\u003e#257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/9b1c011e0f53fcc42302d0c68b175a9e588be061\"\u003e\u003ccode\u003e9b1c011\u003c/code\u003e\u003c/a\u003e chore: remove unused asset\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.6.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/main/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/d6870457660bb20a7716d42a180bd97777ca8702\"\u003e\u003ccode\u003ed687045\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ebab9d16b579fa9629438759ad246871fadbf6e9\"\u003e\u003ccode\u003eebab9d1\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ca36795469026f814f0b0983d8446a3ac4285fce\"\u003e\u003ccode\u003eca36795\u003c/code\u003e\u003c/a\u003e Wrap errors with Plug.Conn.Wrapper error to support live reload  (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/7329d30882b52f9acfbd706c3d3f83a6ec7facd8\"\u003e\u003ccode\u003e7329d30\u003c/code\u003e\u003c/a\u003e Update sandbox.ex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ee5f9b3de924eef8e13a06e2427f3ae375ecfec8\"\u003e\u003ccode\u003eee5f9b3\u003c/code\u003e\u003c/a\u003e Fix docs: Preserve phoenix_ecto_sandbox assign (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/189\"\u003e#189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/76e5b7f8286c6212db5cabb68934c0ee3758d667\"\u003e\u003ccode\u003e76e5b7f\u003c/code\u003e\u003c/a\u003e Update Ecto Sandbox doc for when \u003ccode\u003eon_mount\u003c/code\u003e hooks on \u003ccode\u003elive_session\u003c/code\u003e are prese...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.6.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.16\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.16/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.16 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ephx-disable-with\u003c/code\u003e restoring whitespace improperly (regression in 1.1.15)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.15 (2025-10-21)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not sending elements with \u003ccode\u003eform=\u0026quot;...\u0026quot;\u003c/code\u003e attribute when using Firefox (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix keyed comprehension merging in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4027\"\u003e#4027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003etextContent\u003c/code\u003e instead of \u003ccode\u003einnerText\u003c/code\u003e when restoring \u003ccode\u003ephx-disable-with\u003c/code\u003e text to avoid issues with CSS transforms (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4015\"\u003e#4015\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow attaching \u003ccode\u003ehandle_async\u003c/code\u003e hooks on LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4018\"\u003e#4018\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.14 (2025-10-07)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix form recovery not working when form is teleported (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4009\"\u003e#4009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ehandle_event\u003c/code\u003e hook not being able to return \u003ccode\u003e{:halt, reply, socket}\u003c/code\u003e in LiveComponents (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4006\"\u003e#4006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOnly set title to default when it is set to empty by the main view, not by nested or sticky views (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4003\"\u003e#4003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically update esbuild version when using Igniter upgrader from 1.0 to 1.1 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/4011\"\u003e#4011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix unused require warnings on Elixir 1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2a1b860dbaf20ca1b855d5da1dad53e8769dea0c\"\u003e\u003ccode\u003e2a1b860\u003c/code\u003e\u003c/a\u003e release v1.1.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/2055315e1b3c599f6e831233b6fa37399c1137ca\"\u003e\u003ccode\u003e2055315\u003c/code\u003e\u003c/a\u003e fix test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/6b2b6acb9c6a3c261ba52731b7fa4104efc348e3\"\u003e\u003ccode\u003e6b2b6ac\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/77655446b868664edcb5d3fa30e0a3f04a4b2299\"\u003e\u003ccode\u003e7765544\u003c/code\u003e\u003c/a\u003e fix phx-disable-with restore to properly use textContent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/8dba70cfb29e5791eb9a7702551a24f1050090bd\"\u003e\u003ccode\u003e8dba70c\u003c/code\u003e\u003c/a\u003e add missing function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f775adc81a2ef6955cf20cd57c9031f3996f7d0b\"\u003e\u003ccode\u003ef775adc\u003c/code\u003e\u003c/a\u003e release v1.1.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/dc672d7025b0f8a6fe8b76240ae7c043e5fbb3d1\"\u003e\u003ccode\u003edc672d7\u003c/code\u003e\u003c/a\u003e use npm trusted publishing (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fc598e177798401d868b466041d955074ab7c65c\"\u003e\u003ccode\u003efc598e1\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/3a7957571d92b3701cbeaa55281bdc578f138604\"\u003e\u003ccode\u003e3a79575\u003c/code\u003e\u003c/a\u003e Fix form recovery in firefox for external inputs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4031\"\u003e#4031\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fad74aa8d0ee333aead94c0e7bfe6794a7b51559\"\u003e\u003ccode\u003efad74aa\u003c/code\u003e\u003c/a\u003e update playwright and elixir+otp (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/4029\"\u003e#4029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.16\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_pubsub` from 2.1.3 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/blob/main/CHANGELOG.md\"\u003ephoenix_pubsub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.2.0 (2025-10-22)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow the registry size to be set separate from pool size\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003e:broadcast_pool_size\u003c/code\u003e option to allow safe pool size migration\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOnly restart shards if they terminate unexpectedly\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.4 (2024-09-27)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e:permdown_on_shutdown\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/086e0af0af9306580ee59025c85931936a849ab5\"\u003e\u003ccode\u003e086e0af\u003c/code\u003e\u003c/a\u003e Release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/f442cb184a91a32aeb3439a8c160107a590f776f\"\u003e\u003ccode\u003ef442cb1\u003c/code\u003e\u003c/a\u003e Remove unused require\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/0176ce6cd603af6c4ddd622ccabb8f84f0ce5c73\"\u003e\u003ccode\u003e0176ce6\u003c/code\u003e\u003c/a\u003e Fix dialyzer Shard module warning (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/201\"\u003e#201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/fff23f8296c7c1b04ee4a2f06c285058d713cfc6\"\u003e\u003ccode\u003efff23f8\u003c/code\u003e\u003c/a\u003e Separate Registry pool size configuration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/198\"\u003e#198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95b4ad2d32310a80c9a13183da9568a141108c45\"\u003e\u003ccode\u003e95b4ad2\u003c/code\u003e\u003c/a\u003e Introduce broadcast_pool_size option to allow safe pool size migration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/197\"\u003e#197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/420a87aab32dd25b1ab906ba099fda217c16d98d\"\u003e\u003ccode\u003e420a87a\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/2c466f3a82e91530a9b97a4b688fb28f8f1c638d\"\u003e\u003ccode\u003e2c466f3\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings on latest Elixir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/95eb7cca82477b1cd4f7f73b00f5a96690a26500\"\u003e\u003ccode\u003e95eb7cc\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/4f0b4bacaffd6008ff8e16076180a5ab1a261d6b\"\u003e\u003ccode\u003e4f0b4ba\u003c/code\u003e\u003c/a\u003e mix format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/commit/148ae108d5713aa420a4beade69b44939c283a12\"\u003e\u003ccode\u003e148ae10\u003c/code\u003e\u003c/a\u003e Only restart shards if they terminate unexpectedly (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_pubsub/issues/195\"\u003e#195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_pubsub/compare/v2.1.3...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/3bb2ee2bb0219027c00acb7c8a67ebdc97558fd1\"\u003e\u003ccode\u003e3bb2ee2\u003c/code\u003e\u003c/a\u003e Add example with ANY() (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/f7f9a4e3a2bdea68f6072c5a7c9960bed6bfb500\"\u003e\u003ccode\u003ef7f9a4e\u003c/code\u003e\u003c/a\u003e Add ltxtquery support (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/735\"\u003e#735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/postgrex/compare/v0.20.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `req_embed` from 0.2.1 to 0.3.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/req_embed/blob/main/CHANGELOG.md\"\u003ereq_embed's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.3 - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd usage-rules.md for LLMs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.2 - 2025-09-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded providers: Audius, ElevenLabs, GOOD FOR JOB.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.1 - 2025-08-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ca href=\"https://elixircasts.io/reqembed\"\u003ehttps://elixircasts.io/reqembed\u003c/a\u003e in documentation\u003c/li\u003e\n\u003cli\u003eImprove documentation in overall\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.3.0 - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd providers Beta QuellenSuche, Carbon, Everwall, Filestage, Form-Data, GW2 Fashions, Kubit, Naver Clip, QuellenSuche, SOOP,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Remove provider afreecaTV\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Require minimum Elixir 1.15\u003c/li\u003e\n\u003cli\u003eUpdate providers: Medienarchiv, Supercut, Webcrumbs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.3 - 2025-05-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnite provider support\u003c/li\u003e\n\u003cli\u003emarimo provider support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompilation error on Elixir 1.18.14 and OTP 28\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.2 - 2025-04-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInstallation without \u003ccode\u003e:phoenix_live_view\u003c/code\u003e dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/138d9509bf816cf8811e24e1a6f21a74bab5a149\"\u003e\u003ccode\u003e138d950\u003c/code\u003e\u003c/a\u003e v0.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/7bc46cd5cc707083a4f374247c259f237eff08ff\"\u003e\u003ccode\u003e7bc46cd\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/d22e4dbc0ffc330536433dfaa2b14a45237e6c3e\"\u003e\u003ccode\u003ed22e4db\u003c/code\u003e\u003c/a\u003e Add ElixirCasts episode link to usage rules\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/49b657ca496d49116c5bb1b55d71df1977784bfa\"\u003e\u003ccode\u003e49b657c\u003c/code\u003e\u003c/a\u003e small fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/f940586b572a7fd75b6861c5c585e2198ead2d7a\"\u003e\u003ccode\u003ef940586\u003c/code\u003e\u003c/a\u003e usage-rules.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/e285fd881b3b327682f27c27449160762e1b3507\"\u003e\u003ccode\u003ee285fd8\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/27fed3c88eb322867fad02f426363066cc5d0d29\"\u003e\u003ccode\u003e27fed3c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/leandrocp/req_embed/issues/27\"\u003e#27\u003c/a\u003e from leandrocp/dependabot/hex/production-dependencies-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/845","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/845","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/845/packages"}},{"old_version":"0.59.3","new_version":"0.62.1","update_type":"minor","path":null,"pr_created_at":"2025-10-23T20:14:10.000Z","version_change":"0.59.3 → 0.62.1","issue":{"uuid":"3546396168","node_id":"PR_kwDONT3nos6vWvSJ","number":24,"state":"open","title":"Bump image from 0.59.3 to 0.62.1","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-10-23T20:14:10.000Z","updated_at":"2026-02-06T22:01:13.054Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.59.3","new_version":"0.62.1","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.3 to 0.62.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.1 released on October 23rd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix decoding EXIF component configuration if the value is invalid. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e. Thanks to \u003ca href=\"https://github.com/ethangunderson\"\u003e\u003ccode\u003e@​ethangunderson\u003c/code\u003e\u003c/a\u003e for the report.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.minimize_metadata/1\u003c/code\u003e when the image does not have an author or copyright field.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/1749809d282b96de002e2fdbe2e772f27606cb1b\"\u003e\u003ccode\u003e1749809\u003c/code\u003e\u003c/a\u003e Add tests for metadata minimization when no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/d71edab3a6b1bcab517da971ddfa7a2eb59e745e\"\u003e\u003ccode\u003ed71edab\u003c/code\u003e\u003c/a\u003e Make note about not using from_binary/2 more prominent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/72f62dcd75220bd9c153b15e8e746ddce9a6a6f8\"\u003e\u003ccode\u003e72f62dc\u003c/code\u003e\u003c/a\u003e Improve minimize_metadata/1 docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/05cc21332b2ab5b9b309fbb4beced4b557d5d502\"\u003e\u003ccode\u003e05cc213\u003c/code\u003e\u003c/a\u003e minimize_metadata/1 shouldnt error if there's no exif\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/049b6b5b3fde9b7c0dbc1d3efd2ce06c9517e0ac\"\u003e\u003ccode\u003e049b6b5\u003c/code\u003e\u003c/a\u003e Fix Image.minimize_metadata/1 again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/30f6a61df0bbc081ecfe34025443b054fa75b21a\"\u003e\u003ccode\u003e30f6a61\u003c/code\u003e\u003c/a\u003e Update version and changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6d1c90699bc7397c4dfcf74bf48f439337331c69\"\u003e\u003ccode\u003e6d1c906\u003c/code\u003e\u003c/a\u003e Fix error on invalid exif components. Fixes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/194\"\u003e#194\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.3...v0.62.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.3\u0026new-version=0.62.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/mmilk23/image_unmirrorer/pull/24","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmilk23%2Fimage_unmirrorer/issues/24","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/24/packages"}},{"old_version":"0.61.1","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-10-06T08:15:28.000Z","version_change":"0.61.1 → 0.62.0","issue":{"uuid":"2889226698","node_id":"PR_kwDOGGqrTc6sNhnK","number":137,"state":"open","title":"Bump the production-dependencies group with 9 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-10-06T08:15:28.000Z","updated_at":"2025-10-06T08:15:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":9,"packages":[{"name":"exqlite","old_version":"0.33.0","new_version":"0.33.1","repository_url":"https://github.com/elixir-sqlite/exqlite"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.3","new_version":"1.8.4","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix","old_version":"1.7.21","new_version":"1.8.1","repository_url":"https://github.com/phoenixframework/phoenix"},{"name":"phoenix_html","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/phoenixframework/phoenix_html"},{"name":"phoenix_live_view","old_version":"1.1.2","new_version":"1.1.13","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"sentry","old_version":"11.0.2","new_version":"11.0.4","repository_url":"https://github.com/getsentry/sentry-elixir"},{"name":"tailwind","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/phoenixframework/tailwind"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 9 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [exqlite](https://github.com/elixir-sqlite/exqlite) | `0.33.0` | `0.33.1` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [image](https://github.com/kipcole9/image) | `0.61.1` | `0.62.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.3` | `1.8.4` |\n| [phoenix](https://github.com/phoenixframework/phoenix) | `1.7.21` | `1.8.1` |\n| [phoenix_html](https://github.com/phoenixframework/phoenix_html) | `4.2.1` | `4.3.0` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.2` | `1.1.13` |\n| [sentry](https://github.com/getsentry/sentry-elixir) | `11.0.2` | `11.0.4` |\n| [tailwind](https://github.com/phoenixframework/tailwind) | `0.3.1` | `0.4.0` |\n\nUpdates `exqlite` from 0.33.0 to 0.33.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-sqlite/exqlite/releases\"\u003eexqlite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.33.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Add \u003ccode\u003eserialized\u003c/code\u003e as an option to connect. by \u003ca href=\"https://github.com/mpope9\"\u003e\u003ccode\u003e@​mpope9\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/337\"\u003eelixir-sqlite/exqlite#337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd SunOS to *BSD flags case by \u003ca href=\"https://github.com/kenichi\"\u003e\u003ccode\u003e@​kenichi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/338\"\u003eelixir-sqlite/exqlite#338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mpope9\"\u003e\u003ccode\u003e@​mpope9\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/337\"\u003eelixir-sqlite/exqlite#337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kenichi\"\u003e\u003ccode\u003e@​kenichi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/pull/338\"\u003eelixir-sqlite/exqlite#338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/elixir-sqlite/exqlite/compare/v0.33.0...v0.33.1\"\u003ehttps://github.com/elixir-sqlite/exqlite/compare/v0.33.0...v0.33.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-sqlite/exqlite/blob/main/CHANGELOG.md\"\u003eexqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.33.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadded: Allow SunOS builds in Makefile\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-sqlite/exqlite/commit/e7828d55546226e0a448e020f7d5861ef7b44e10\"\u003e\u003ccode\u003ee7828d5\u003c/code\u003e\u003c/a\u003e Bump to v0.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-sqlite/exqlite/commit/dfd7e102dce29db2c1fcd725bce6ecec9da2fa36\"\u003e\u003ccode\u003edfd7e10\u003c/code\u003e\u003c/a\u003e add SunOS to *BSD flags case (\u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/issues/338\"\u003e#338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-sqlite/exqlite/commit/3aad0e9aa30d4ac1d658a2e8731834caf644f7b9\"\u003e\u003ccode\u003e3aad0e9\u003c/code\u003e\u003c/a\u003e feat: Add \u003ccode\u003eserialized\u003c/code\u003e as an option to connect. (\u003ca href=\"https://redirect.github.com/elixir-sqlite/exqlite/issues/337\"\u003e#337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/elixir-sqlite/exqlite/compare/v0.33.0...v0.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.61.1 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.3 to 1.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: extend plugin behaviour to customize the view of body's items by \u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOtp 28 build by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/116\"\u003ezhongwencool/observer_cli#116\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/63a6668cdf304ed05ca04f3e2657df4abfbddb4d\"\u003e\u003ccode\u003e63a6668\u003c/code\u003e\u003c/a\u003e chore: update changelog for version 1.8.4 with OTP 28 fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/be8c67221cd56a5b21efeef474aafd459a8d6aee\"\u003e\u003ccode\u003ebe8c672\u003c/code\u003e\u003c/a\u003e chore: ignore unexported function erlang:processes_next/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/02592f3f89ca70f0dca411005f34b284c5c79ed7\"\u003e\u003ccode\u003e02592f3\u003c/code\u003e\u003c/a\u003e chore: add fail-fast false option for ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/4b5fd4b66dcb78ac1eaf4459f76140322fbe292c\"\u003e\u003ccode\u003e4b5fd4b\u003c/code\u003e\u003c/a\u003e chore: fix dialyzer warning for otp 28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3340e6495528aab1fb6e6ce4fa4208c4eeef180e\"\u003e\u003ccode\u003e3340e64\u003c/code\u003e\u003c/a\u003e chore: ci support otp28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/8b49833f7685d6bdd2b22976d8cefd21dc3f0bb1\"\u003e\u003ccode\u003e8b49833\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/117\"\u003e#117\u003c/a\u003e from imtutta/feature/extend_plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/b90c7ceb4f8593ec8d4058233dc57fe9487de9dc\"\u003e\u003ccode\u003eb90c7ce\u003c/code\u003e\u003c/a\u003e feat: extend plugin behaviour to customize the view of body's items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b98f15e25dcfda672787ab71fc0871ffd97848\"\u003e\u003ccode\u003ef5b98f1\u003c/code\u003e\u003c/a\u003e chore: delete unuse travis.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/652972a4e47bd7cb54e9323f7a8865ce0a3ece2e\"\u003e\u003ccode\u003e652972a\u003c/code\u003e\u003c/a\u003e chore: correct the hex doc url\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix` from 1.7.21 to 1.8.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix/blob/main/CHANGELOG.md\"\u003ephoenix's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.1 (2025-08-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Fix AGENTS.md failing to include CSS and JavaScript sections\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Don't include node_modules override in generated \u003ccode\u003etsconfig.json\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live|html|json] - Make context argument optional. Defaults to the plural name.\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003emix precommit\u003c/code\u003e alias\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eAGENTS.md\u003c/code\u003e generation compatible with \u003ca href=\"https://hexdocs.pm/usage_rules/\"\u003e\u003ccode\u003eusage_rules\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eusage_rules\u003c/code\u003e folder to installer, allowing to sync generic Phoenix rules into new projects\u003c/li\u003e\n\u003cli\u003e[phx.new] Use LiveView 1.1 release in generated code\u003c/li\u003e\n\u003cli\u003e[phx.new] Ensure theme selector and flash closing works without LiveView\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.4 (2025-07-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix phx.gen.presence PubSub server name for umbrella apps\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ephx.gen.live\u003c/code\u003e subscribing to pubsub in disconnected mounts\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Initialize initial git repo when git is installed\u003c/li\u003e\n\u003cli\u003e[phx.new] Opt-in to HEEx \u003ccode\u003e:debug_tags_location\u003c/code\u003e in development\u003c/li\u003e\n\u003cli\u003e[phx.gen.live|html|json|context] Make context name optional and inflect based on schema when missing\u003c/li\u003e\n\u003cli\u003e[phx.gen.*] Use new Ecto 3.13 \u003ccode\u003eRepo.transact/2\u003c/code\u003e in generators\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Warn when using \u003ccode\u003ephx.gen.auth\u003c/code\u003e without esbuild as features assume \u003ccode\u003ephoenix_html.js\u003c/code\u003e in bundle\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003esecurity.md\u003c/code\u003e guide for security best practices\u003c/li\u003e\n\u003cli\u003e[phoenix.js] - Add fetch() support to LongPoll when XMLHTTPRequest is not available\u003c/li\u003e\n\u003cli\u003eOptimize parameter scrubbing by precompiling patterns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.3 (2025-05-07)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.auth] Allow configuring the scope's assign key in phx.gen.auth\u003c/li\u003e\n\u003cli\u003e[phx.new] Do not override theme in root layout if explicitly set\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.2 (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live] Only subscribe to pubsub if connected\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Remove unused current_password field\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Use context_app for scopes to fix generated scopes in umbrella apps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.1 (2025-04-16)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/675e924f73da1a594e07ba22fcbda6636790ce4a\"\u003e\u003ccode\u003e675e924\u003c/code\u003e\u003c/a\u003e Release 1.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/21ee2610ab20557a9ad1fd8f7599f5b5fe5d9b5d\"\u003e\u003ccode\u003e21ee261\u003c/code\u003e\u003c/a\u003e Bump eslint from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6440\"\u003e#6440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a280eedf8a9850e45076977e368c7397c310db2a\"\u003e\u003ccode\u003ea280eed\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​eslint/js\u003c/code\u003e from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6439\"\u003e#6439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/c3d2fa919eb4cd19fa5fef95e97a36c71f936247\"\u003e\u003ccode\u003ec3d2fa9\u003c/code\u003e\u003c/a\u003e Touchup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/8502ed0107f0420498f1e3fac235bc80c86c6912\"\u003e\u003ccode\u003e8502ed0\u003c/code\u003e\u003c/a\u003e Clarify timestamp further. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/820b0badf4ad6eebdcafa88c3bcd67259dd9b9ee\"\u003e\u003ccode\u003e820b0ba\u003c/code\u003e\u003c/a\u003e Clarify timestamp. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a64dd8c698785e6593c0a707a7f20190bc02a279\"\u003e\u003ccode\u003ea64dd8c\u003c/code\u003e\u003c/a\u003e Run mix compile before assets.build in generated aliases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6407\"\u003e#6407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/b0fe7ecd788ecc0d8c0bfbe6eb67b4fd4de57bb4\"\u003e\u003ccode\u003eb0fe7ec\u003c/code\u003e\u003c/a\u003e Update controllers documentation (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6416\"\u003e#6416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a5646dfcf099e09d031081516efcc60835c73bef\"\u003e\u003ccode\u003ea5646df\u003c/code\u003e\u003c/a\u003e Fix some typos (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6386\"\u003e#6386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/14faee2ebebca4151572e9f3f1677fcac29a6c9d\"\u003e\u003ccode\u003e14faee2\u003c/code\u003e\u003c/a\u003e Fix controller.ex documentation typo (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6417\"\u003e#6417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix/compare/v1.7.21...v1.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.2 to 1.1.13\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.13/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.11 (2025-09-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponents being destroyed when their DOM ID changes, even though they are still rendered (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3981\"\u003e#3981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix warning when an empty comprehension is rendered in LiveViewTest\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up duplicate ID check in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3962\"\u003e#3962\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.10 (2025-09-03)\u003c/h2\u003e\n\u003ch3\u003eBug fixxes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRegression in v1.1.9 - fix \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e crashing when using keywords lists and not properly handling atom keys (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3975\"\u003e#3975\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.9 (2025-09-02)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix moved comprehension diff crashing LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3963\"\u003e#3963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003epush_patch\u003c/code\u003e works during form recovery (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix diff crash in LiveViewTest when rendering structs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3970\"\u003e#3970\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude form values from DOM in \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e to mimic browser behavior (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3885\"\u003e#3885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow assigning generic hooks to type \u003ccode\u003eHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3955\"\u003e#3955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow typing hook element when using TypeScript (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd more metadata to \u003ccode\u003ephx:page-loading-start\u003c/code\u003e event in case of errors (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3910\"\u003e#3910\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/975bc91a8f1348bac0d6b718432e3c9c067773dd\"\u003e\u003ccode\u003e975bc91\u003c/code\u003e\u003c/a\u003e release v1.1.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/c1f1de9abf5f9ea7120b12c78d1ba575be776111\"\u003e\u003ccode\u003ec1f1de9\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ff403bb5c2f239c18ba8a27c68c93b2ca4866fcd\"\u003e\u003ccode\u003eff403bb\u003c/code\u003e\u003c/a\u003e prevent crash when passing * to ignore_attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3997\"\u003e#3997\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/67a3bc071aeef9065dce071ccc691f976f479856\"\u003e\u003ccode\u003e67a3bc0\u003c/code\u003e\u003c/a\u003e Fix extra spaces being continually added when formatting nested inline tags (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/68619fb6e0b5d404f8e9e9eba733102f0eb96803\"\u003e\u003ccode\u003e68619fb\u003c/code\u003e\u003c/a\u003e fix merging of streams in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3994\"\u003e#3994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e898d68f5b998b75536d419d7bbe9f50f105fbfb\"\u003e\u003ccode\u003ee898d68\u003c/code\u003e\u003c/a\u003e Serialize error reason as JSON (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/72189f63b784e0b2dec44d41810beb8d37a694b2\"\u003e\u003ccode\u003e72189f6\u003c/code\u003e\u003c/a\u003e release v1.1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f6c87c4f76e6415eb8d8938fe50adf814e03ddcb\"\u003e\u003ccode\u003ef6c87c4\u003c/code\u003e\u003c/a\u003e allow auto-symlinking node_modules for ColocatedJS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a60512c4f258c52bf3bab7919710b1eeb3ac6c49\"\u003e\u003ccode\u003ea60512c\u003c/code\u003e\u003c/a\u003e Prevent pattern in \u003ccode\u003e:let\u003c/code\u003e from leading to uncovered line (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/05191936285dd96b59a3e4da7b4ebb0b190866bc\"\u003e\u003ccode\u003e0519193\u003c/code\u003e\u003c/a\u003e Fix heading in CHANGELOG (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3986\"\u003e#3986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.2...v1.1.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry` from 11.0.2 to 11.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/releases\"\u003esentry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/blob/master/CHANGELOG.md\"\u003esentry's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5f5dc03f013b1933863ccfb08d48b8640008485b\"\u003e\u003ccode\u003e5f5dc03\u003c/code\u003e\u003c/a\u003e release: 11.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78bf227541918ed2d1fe8502e1f77ce5daab8103\"\u003e\u003ccode\u003e78bf227\u003c/code\u003e\u003c/a\u003e Fix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5bf38d6dddbd265b0f478f6cf0c09d45373bdcd5\"\u003e\u003ccode\u003e5bf38d6\u003c/code\u003e\u003c/a\u003e Update pull_request_template.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/941\"\u003e#941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0de7beb4482bd75181890a7be0d5bad05971be76\"\u003e\u003ccode\u003e0de7beb\u003c/code\u003e\u003c/a\u003e meta: add pull request template (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/be4721751d0a4f13455c1becd141bc05f9b357c8\"\u003e\u003ccode\u003ebe47217\u003c/code\u003e\u003c/a\u003e Update SDK version in the README.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/930\"\u003e#930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78b7f5aed691495e3b510a806e43367ddc738c15\"\u003e\u003ccode\u003e78b7f5a\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/14b95fd900af075f99b0c9b7451049fc4ad74e93\"\u003e\u003ccode\u003e14b95fd\u003c/code\u003e\u003c/a\u003e release: 11.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0f1c3dd95718c2c56e46c551dc368b9203c57ced\"\u003e\u003ccode\u003e0f1c3dd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md for 11.0.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/935\"\u003e#935\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/913ecff4b4847c3318b356885d2b60c2bdef9666\"\u003e\u003ccode\u003e913ecff\u003c/code\u003e\u003c/a\u003e Relax version reqs on opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/f83b5080aec61e0618b01efe14de28fce5e914b3\"\u003e\u003ccode\u003ef83b508\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.2'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/sentry-elixir/compare/11.0.2...11.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/tailwind/blob/main/CHANGELOG.md\"\u003etailwind's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0 (2025-09-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eNo longer copy assets in \u003ccode\u003emix tailwind.install\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDiscard empty proxy env vars\u003c/li\u003e\n\u003cli\u003eEnsure watcher picks up rule changes on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e8e289195534780a342c5bb24912eab8b4e318a3\"\u003e\u003ccode\u003ee8e2891\u003c/code\u003e\u003c/a\u003e Release v0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/d09a32b421bbaa37ee575b916d09361e8518a5a6\"\u003e\u003ccode\u003ed09a32b\u003c/code\u003e\u003c/a\u003e Add comments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/3e495133fad3aeee3cd23954566ef9f1c5692707\"\u003e\u003ccode\u003e3e49513\u003c/code\u003e\u003c/a\u003e Normalize windows driver\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/5f8a6b9b18e4bb25960df9e08b77c6e00d05148a\"\u003e\u003ccode\u003e5f8a6b9\u003c/code\u003e\u003c/a\u003e Update versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e9887900add55b5b3a245098699a0c52fdd5d540\"\u003e\u003ccode\u003ee988790\u003c/code\u003e\u003c/a\u003e Sanitize empty strings when getting Proxy Environment variables (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/92\"\u003e#92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/2bf28d7cd8c0f81a74931dbc48c87c62b8b766bc\"\u003e\u003ccode\u003e2bf28d7\u003c/code\u003e\u003c/a\u003e Revert config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/327cef38cd5e439b6d71bb6b05856e18e494b741\"\u003e\u003ccode\u003e327cef3\u003c/code\u003e\u003c/a\u003e Remove outdated docs, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/102\"\u003e#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/21c4b7689f0026fcb1e4c9c54b4aa62788d60713\"\u003e\u003ccode\u003e21c4b76\u003c/code\u003e\u003c/a\u003e Fix path in message, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/126\"\u003e#126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/be2c7b6ad0131050edf077bd8137072d218ca708\"\u003e\u003ccode\u003ebe2c7b6\u003c/code\u003e\u003c/a\u003e Update tests, readme, and simplify install\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/f7e3037a29fb68368501dc4e711c4bcf5999cea5\"\u003e\u003ccode\u003ef7e3037\u003c/code\u003e\u003c/a\u003e Update README.md (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/132\"\u003e#132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/tailwind/compare/v0.3.1...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/137","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/137","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/137/packages"}},{"old_version":"0.59.0","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-09-30T02:01:41.000Z","version_change":"0.59.0 → 0.62.0","issue":{"uuid":"2872616064","node_id":"PR_kwDOGkLNDM6rOKSA","number":842,"state":"open","title":"chore(deps): bump the production-dependencies group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-30T02:01:41.000Z","updated_at":"2025-09-30T02:01:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":15,"packages":[{"name":"ecto_sql","old_version":"3.12.1","new_version":"3.13.2","repository_url":"https://github.com/elixir-ecto/ecto_sql"},{"name":"esbuild","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/phoenixframework/esbuild"},{"name":"floki","old_version":"0.37.1","new_version":"0.38.0","repository_url":"https://github.com/philss/floki"},{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"hackney","old_version":"1.23.0","new_version":"1.25.0","repository_url":"https://github.com/benoitc/hackney"},{"name":"igniter","old_version":"0.5.43","new_version":"0.6.30","repository_url":"https://github.com/ash-project/igniter"},{"name":"image","old_version":"0.59.0","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"mdex","old_version":"0.5.0","new_version":"0.9.0","repository_url":"https://github.com/leandrocp/mdex"},{"name":"phoenix_ecto","old_version":"4.6.3","new_version":"4.6.5","repository_url":"https://github.com/phoenixframework/phoenix_ecto"},{"name":"phoenix_live_view","old_version":"1.0.9","new_version":"1.1.13","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"req_embed","old_version":"0.2.1","new_version":"0.3.1","repository_url":"https://github.com/leandrocp/req_embed"},{"name":"solid","old_version":"0.18.0","new_version":"1.1.1","repository_url":"https://github.com/edgurgel/solid"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ecto_sql](https://github.com/elixir-ecto/ecto_sql) | `3.12.1` | `3.13.2` |\n| [esbuild](https://github.com/phoenixframework/esbuild) | `0.9.0` | `0.10.0` |\n| [floki](https://github.com/philss/floki) | `0.37.1` | `0.38.0` |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [hackney](https://github.com/benoitc/hackney) | `1.23.0` | `1.25.0` |\n| [igniter](https://github.com/ash-project/igniter) | `0.5.43` | `0.6.30` |\n| [image](https://github.com/kipcole9/image) | `0.59.0` | `0.62.0` |\n| [mdex](https://github.com/leandrocp/mdex) | `0.5.0` | `0.9.0` |\n| [phoenix_ecto](https://github.com/phoenixframework/phoenix_ecto) | `4.6.3` | `4.6.5` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.0.9` | `1.1.13` |\n| [req_embed](https://github.com/leandrocp/req_embed) | `0.2.1` | `0.3.1` |\n| [solid](https://github.com/edgurgel/solid) | `0.18.0` | `1.1.1` |\n\n\nUpdates `ecto_sql` from 3.12.1 to 3.13.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md\"\u003eecto_sql's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.13.2 (2025-06-24)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[sandbox] Allow passing through opts in \u003ccode\u003eEcto.Adapters.SQL.Sandbox.allow/4\u003c/code\u003e calls\u003c/li\u003e\n\u003cli\u003e[sql] Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated time columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.1 (2025-06-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[postgres] Fix nested array generated columns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0 (2025-06-18)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Ecto.Migration] Add support for index directions\u003c/li\u003e\n\u003cli\u003e[sql] Support \u003ccode\u003e:log_stacktrace_mfa\u003c/code\u003e for filtering or modifying stacktrace-derived info in query logs\u003c/li\u003e\n\u003cli\u003e[mysql] Support arrays using JSON for MariaDB\u003c/li\u003e\n\u003cli\u003e[mysql] Allow to specify \u003ccode\u003e:prepare\u003c/code\u003e per operation\u003c/li\u003e\n\u003cli\u003e[postgres] Add support for collations in Postgres\u003c/li\u003e\n\u003cli\u003e[postgres] Allow source fields in \u003ccode\u003ejson_extract_path\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/cf5080c1a404a8bfa85c20fb9cbfb0a8401b0912\"\u003e\u003ccode\u003ecf5080c\u003c/code\u003e\u003c/a\u003e Release v3.13.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/b87638180f7cbc0a753f42a80ce719ae53ad2e68\"\u003e\u003ccode\u003eb876381\u003c/code\u003e\u003c/a\u003e Refactor generated handling in column_type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/62603f88b657c4aca79c37cedc7a921b75d3c1cb\"\u003e\u003ccode\u003e62603f8\u003c/code\u003e\u003c/a\u003e Fix generated nested time array (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/701c99e97f61a0e6d3bc372f5f10da4e1b3898df\"\u003e\u003ccode\u003e701c99e\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003eON DELETE SET DEFAULT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/677\"\u003e#677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/79590224dcc36a412614c18bd507b4d5e9a906ad\"\u003e\u003ccode\u003e7959022\u003c/code\u003e\u003c/a\u003e Allow passing through opts in Ecto.Adapters.SQL.Sandbox.allow/4 calls (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/678\"\u003e#678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/22c71121b758115876db51fc449b6b5b6547898f\"\u003e\u003ccode\u003e22c7112\u003c/code\u003e\u003c/a\u003e Release v3.13.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/35e27985ece612c21fe65b2732587b29b25d7095\"\u003e\u003ccode\u003e35e2798\u003c/code\u003e\u003c/a\u003e Fix nested array generated columns (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/955f0fbf8f00d32efbb08bd2fb26ed74fdaa5f34\"\u003e\u003ccode\u003e955f0fb\u003c/code\u003e\u003c/a\u003e Release v3.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/aa9a3291f785522d24d9f1571d2aa79acbe0d2e5\"\u003e\u003ccode\u003eaa9a329\u003c/code\u003e\u003c/a\u003e Remove unused argument from private helper (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/ecto_sql/commit/3084d7150d208fde33bd9bb591cc35a5d481ade3\"\u003e\u003ccode\u003e3084d71\u003c/code\u003e\u003c/a\u003e Better docs for Repos that use \u003ccode\u003eEcto.Adapters.SQL.Adapter\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/elixir-ecto/ecto_sql/issues/671\"\u003e#671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `esbuild` from 0.9.0 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/esbuild/blob/main/CHANGELOG.md\"\u003eesbuild's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.10.0 (2025-05-27)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically join environment variables specified as lists using the\ncorrect \u003ccode\u003ePATH\u003c/code\u003e separator. For example:\n\u003cpre lang=\"elixir\"\u003e\u003ccode\u003econfig :esbuild,\n  my_profile: [\n    ...\n    env: %{\n      \u0026quot;NODE_PATH\u0026quot; =\u0026gt; [Path.expand(\u0026quot;../deps\u0026quot;, __DIR__), Mix.Project.build_path()]\n    }\n  ]\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/86f43046c069df68702082f8376be3be38e89652\"\u003e\u003ccode\u003e86f4304\u003c/code\u003e\u003c/a\u003e release v0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/c891ea25604ff6e1f2879bd3e863d4a648d7997a\"\u003e\u003ccode\u003ec891ea2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/phoenixframework/esbuild/issues/78\"\u003e#78\u003c/a\u003e from phoenixframework/sd-path-sep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/6f8b4dffe66600bf02b0a319a58a3920a7bf7f52\"\u003e\u003ccode\u003e6f8b4df\u003c/code\u003e\u003c/a\u003e join all lists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/e818a2785820bd91a64b686aa6011216117de052\"\u003e\u003ccode\u003ee818a27\u003c/code\u003e\u003c/a\u003e update CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/esbuild/commit/809c25fd076070f3e142bf814bcf43d7b8107253\"\u003e\u003ccode\u003e809c25f\u003c/code\u003e\u003c/a\u003e support passing NODE_PATH as list\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/esbuild/compare/v0.9.0...v0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `floki` from 0.37.1 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/releases\"\u003efloki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.38.0\u003c/h2\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\n\u003ccode\u003eFloki.parse_fragment/2\u003c/code\u003e or \u003ccode\u003eFloki.parse_document/2\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/philss/floki/blob/main/CHANGELOG.md\"\u003efloki's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.38.0] - 2025-06-14\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThis version adds initial support for the \u003ccode\u003e:has\u003c/code\u003e pseudo-selector.\nIt is a great addition that enables finding elements containing\nmatching children.\u003c/p\u003e\n\u003cp\u003eExamples for selectors:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(h1, p, span)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(p.foo)\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;div:has(img[src='https://example.com'])\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e\u0026quot;tr:has(*:fl-contains('TEST'))\u0026quot;\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNote that combinators like \u003ccode\u003e\u0026quot;\u0026gt;\u0026quot;\u003c/code\u003e are not allowed yet.\u003c/p\u003e\n\u003cp\u003eThank you \u003ca href=\"https://github.com/bvobart\"\u003e\u003ccode\u003e@​bvobart\u003c/code\u003e\u003c/a\u003e for this feature!\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003e:style\u003c/code\u003e option documentation to \u003ccode\u003eFloki.text/2\u003c/code\u003e.\nThanks \u003ca href=\"https://github.com/s3cur3\"\u003e\u003ccode\u003e@​s3cur3\u003c/code\u003e\u003c/a\u003e for the fix.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix deprecation warnings for upcoming Elixir 1.19.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePrevent from crashing when selector is an empty string.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove support for Elixir 1.14 and OTP 23.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemove deprecated functions and function clauses\nthat were accepting strings (binaries).\u003c/p\u003e\n\u003cp\u003eAffected functions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eparse/1\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emap/2\u003c/code\u003e - removed function\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattr/4\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efind/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etext/3\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eattribute/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efilter_out/2\u003c/code\u003e - removed clause\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHTML must be parsed before searching. Functions like \u003ccode\u003eFloki.find/2\u003c/code\u003e,\n\u003ccode\u003eFloki.attribute/2\u003c/code\u003e, and other HTML manipulation functions \u003cstrong\u003eno longer work\ndirectly with HTML strings\u003c/strong\u003e. The HTML must be parsed first using\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/2c41ba8917a49b6f4e2b2dddec98d5462f6284b7\"\u003e\u003ccode\u003e2c41ba8\u003c/code\u003e\u003c/a\u003e Release v0.38 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/ca714a400d9450d227b6df6905da24e73cf07571\"\u003e\u003ccode\u003eca714a4\u003c/code\u003e\u003c/a\u003e Prevent \u003ccode\u003efind/2\u003c/code\u003e from crashing with empty selector (\u003ca href=\"https://redirect.github.com/philss/floki/issues/631\"\u003e#631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/541bdce3d5cc4d0d1e9b6e3e7b215d567c2d39a3\"\u003e\u003ccode\u003e541bdce\u003c/code\u003e\u003c/a\u003e Remove deprecation warnings for the upcoming Elixir 1.19 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/72b4563317d53d537cf9f2f11ae730312042e98a\"\u003e\u003ccode\u003e72b4563\u003c/code\u003e\u003c/a\u003e Remove deprecations (\u003ca href=\"https://redirect.github.com/philss/floki/issues/628\"\u003e#628\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/dcdc385eb8bd1495bd0188bd94139bb807120410\"\u003e\u003ccode\u003edcdc385\u003c/code\u003e\u003c/a\u003e Remove support for Elixir 1.14 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/b92cd7342b8fdd44a7448d0f9371836b7f21f3f0\"\u003e\u003ccode\u003eb92cd73\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e:style\u003c/code\u003e flag to text/2` docs (\u003ca href=\"https://redirect.github.com/philss/floki/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/c0de672dadf3e8beaca67317c3b3a23b603593b6\"\u003e\u003ccode\u003ec0de672\u003c/code\u003e\u003c/a\u003e Bump benchee from 1.3.1 to 1.4.0 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/a51697278d4facdacf27f1626c6f66d48c032d69\"\u003e\u003ccode\u003ea516972\u003c/code\u003e\u003c/a\u003e Bump credo from 1.7.11 to 1.7.12 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/619\"\u003e#619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/5398a0892d0bc55d1d7fc45c0289428a177ce68f\"\u003e\u003ccode\u003e5398a08\u003c/code\u003e\u003c/a\u003e Bump ex_doc from 0.37.3 to 0.38.2 (\u003ca href=\"https://redirect.github.com/philss/floki/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/philss/floki/commit/f900ea1e5ac60e7f39980750a60c891b604fb67d\"\u003e\u003ccode\u003ef900ea1\u003c/code\u003e\u003c/a\u003e feat: implement :has pseudo-selector functionality (\u003ca href=\"https://redirect.github.com/philss/floki/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/philss/floki/compare/v0.37.1...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hackney` from 1.23.0 to 1.25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/releases\"\u003ehackney's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eIMPORTANT CHANGE\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.25.0\"\u003ehttps://hex.pm/packages/hackney/1.25.0\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003einsecure_basic_auth\u003c/code\u003e application variable defaults to \u003ccode\u003efalse\u003c/code\u003e for security.\nIf your application relies on insecure basic auth over HTTP, you must explicitly set\n\u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, true)\u003c/code\u003e to maintain previous behavior.\u003c/p\u003e\n\u003cp\u003eHex.pm : \u003ca href=\"https://hex.pm/packages/hackney/1.24.1\"\u003ehttps://hex.pm/packages/hackney/1.24.1\u003c/a\u003e\nDoc: \u003ca href=\"https://hexdocs.pm/hackney/readme.html\"\u003ehttps://hexdocs.pm/hackney/readme.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/benoitc/hackney/blob/master/NEWS.md\"\u003ehackney's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.25.0 - 2025-07-24\u003c/h2\u003e\n\u003cp\u003e** IMPORTANT CHANGE **\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003echange: \u003ccode\u003einsecure_basic_auth\u003c/code\u003e now defaults to \u003ccode\u003etrue\u003c/code\u003e instead of \u003ccode\u003efalse\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eThis restores backward compatibility with pre-1.24.0 behavior where basic auth\nwas allowed over HTTP connections. If you need strict HTTPS-only basic auth:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet globally: \u003ccode\u003eapplication:set_env(hackney, insecure_basic_auth, false)\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eOr per-request: \u003ccode\u003e{insecure_basic_auth, false}\u003c/code\u003e in options\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.1 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove unused variable warning in hackney.erl\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.24.0 - 2025-05-26\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003esecurity: fix basic auth credential exposure vulnerability\u003c/li\u003e\n\u003cli\u003esecurity: add application variable support for insecure_basic_auth\u003c/li\u003e\n\u003cli\u003efix: NXDOMAIN error in Docker Compose environments (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/764\"\u003e#764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: stream_body timeout after first chunk (issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: SSL hostname verification with custom ssl_options and SSL message leak in async streaming\u003c/li\u003e\n\u003cli\u003efix: pool connections not freed on 307 redirects and multiple pool/timer race conditions\u003c/li\u003e\n\u003cli\u003efix: socket leaks, process deadlocks, ETS memory leaks, and infinite gen_server calls\u003c/li\u003e\n\u003cli\u003efix: controlling_process error handling in happy eyeballs and connection pool return\u003c/li\u003e\n\u003cli\u003eimprovement: update GitHub Actions to ubuntu-22.04 and bump certifi/mimerl dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/8c00789e411d7c09a9808d720232098da1f19d69\"\u003e\u003ccode\u003e8c00789\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/778\"\u003e#778\u003c/a\u003e from benoitc/insecure-basic-auth-default-true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/a1d4108541d224d1a8cb2baeac95abb923af515b\"\u003e\u003ccode\u003ea1d4108\u003c/code\u003e\u003c/a\u003e change insecure_basic_auth default to true\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/e2bbdf741ee374c872da2baadc7451b66644b421\"\u003e\u003ccode\u003ee2bbdf7\u003c/code\u003e\u003c/a\u003e bump unicode compat lib\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/3b901a6cf8ae1118aa4e66505ca20083d946b867\"\u003e\u003ccode\u003e3b901a6\u003c/code\u003e\u003c/a\u003e update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/d59b422deed47b51607871bdd13ffcf6a10e449d\"\u003e\u003ccode\u003ed59b422\u003c/code\u003e\u003c/a\u003e fix: remove unused variable warning and bump version to 1.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/30447da6b5ae7b665d92150c036345f618e159a6\"\u003e\u003ccode\u003e30447da\u003c/code\u003e\u003c/a\u003e fix  version in readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/fd82258116a4299f52db804d0e745ed095f0f8f9\"\u003e\u003ccode\u003efd82258\u003c/code\u003e\u003c/a\u003e fix documentation warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/1239ec634c5eb687476ab1dc22f9663162930db2\"\u003e\u003ccode\u003e1239ec6\u003c/code\u003e\u003c/a\u003e update NEWS.md with stream_body timeout fix for issue \u003ca href=\"https://redirect.github.com/benoitc/hackney/issues/762\"\u003e#762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/96e881ebc76c86df991b99640e5270add7fe3a97\"\u003e\u003ccode\u003e96e881e\u003c/code\u003e\u003c/a\u003e fix stream_body timeout issue by reverting breaking error format change\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/benoitc/hackney/commit/431b4f549ed5d1550a39698dc33c82f8301a345f\"\u003e\u003ccode\u003e431b4f5\u003c/code\u003e\u003c/a\u003e Fix typos in NEWS.md\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/benoitc/hackney/compare/1.23.0...1.25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `igniter` from 0.5.43 to 0.6.30\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/releases\"\u003eigniter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.6.30\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.25\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove another enumeration of the rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.24\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eiterate over sources, not rewrite, in one more place by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.23\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove case where we iterate a rewrite by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.22\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ehandle \u003ccode\u003e:error\u003c/code\u003e coming from alias updater by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eadd :error case clause in modify_existing_alias by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.6.21\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ash-project/igniter/blob/main/CHANGELOG.md\"\u003eigniter's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.29...v0.6.30\"\u003ev0.6.30\u003c/a\u003e (2025-09-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003edon't silently ignore certain errors during spinners by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003edon't display \u0026quot;temporarily adding igniter\u0026quot; when we aren't by Zach Daniel\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.28...v0.6.29\"\u003ev0.6.29\u003c/a\u003e (2025-09-20)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e) by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eprevent duplicate 'live' directories for modules with Live namespace by Matthew Sinclair\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end by Zach Daniel\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.27...v0.6.28\"\u003ev0.6.28\u003c/a\u003e (2025-08-21)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003euse appropriate function name \u003ccode\u003efunction\u003c/code\u003e -\u0026gt; \u003ccode\u003efunction?\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/326\"\u003e#326\u003c/a\u003e) by Ciarán Walsh\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e) by Erik André Jakobsen\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.26...v0.6.27\"\u003ev0.6.27\u003c/a\u003e (2025-08-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ereleasing a new version to handle locally published version with IO.inspects left in 🤦‍♂️\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/ash-project/igniter/compare/v0.6.25...v0.6.26\"\u003ev0.6.26\u003c/a\u003e (2025-07-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/928f586e1e63636de3dc335a4ed7ce4ff0da27d0\"\u003e\u003ccode\u003e928f586\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.30\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/78c00b15a9a33da006a2f373ae5f92a799198c86\"\u003e\u003ccode\u003e78c00b1\u003c/code\u003e\u003c/a\u003e fix: don't silently ignore certain errors during spinners\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/7508897dc5a2d12c8d4bf87980245bb570db2049\"\u003e\u003ccode\u003e7508897\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/69ba2ac9f658ea999412193a0836b4a50bd32811\"\u003e\u003ccode\u003e69ba2ac\u003c/code\u003e\u003c/a\u003e chore: remove beacon from projects list for now\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/04bae76892fb3d502483427219c349b4d3e21ca3\"\u003e\u003ccode\u003e04bae76\u003c/code\u003e\u003c/a\u003e improvement: add \u003ccode\u003edelay_task\u003c/code\u003e to run tasks at the end\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/c3f201124303518b4f68b5ba8e4c86cb6bf935c6\"\u003e\u003ccode\u003ec3f2011\u003c/code\u003e\u003c/a\u003e fix: prevent duplicate 'live' directories for modules with Live namespace (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/330\"\u003e#330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/961b6656bf54067dba40585d83430c3738b24305\"\u003e\u003ccode\u003e961b665\u003c/code\u003e\u003c/a\u003e chore: update igniter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/32340634fc61b53d80ef511c3a0ca9afd0f35bd1\"\u003e\u003ccode\u003e3234063\u003c/code\u003e\u003c/a\u003e chore: release version v0.6.28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/924a724ab3146e65270d6bf325757e10940932ed\"\u003e\u003ccode\u003e924a724\u003c/code\u003e\u003c/a\u003e improvement: \u003ccode\u003eigniter.new\u003c/code\u003e Don't run git init if already in git repo (\u003ca href=\"https://redirect.github.com/ash-project/igniter/issues/328\"\u003e#328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ash-project/igniter/commit/ff45e81bcf811076e9d7ad9ec91aa28bcebe675d\"\u003e\u003ccode\u003eff45e81\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ash-project/igniter/compare/v0.5.43...v0.6.30\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.59.0 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.59.3\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mdex` from 0.5.0 to 0.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/releases\"\u003emdex's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.0\u003c/h2\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eThe \u003ccode\u003eMDEx.Document\u003c/code\u003e module now provides an unified API to create, manipulate, and render Markdown documents.\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- %MDEx.Pipe{} = pipe = MDEx.new()\n- MDEx.Pipe.run(pipe)\n+ %MDEx.Document{} = document = MDEx.new()\n+ MDEx.Document.run(document)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee examples \u003ca href=\"https://redirect.github.com/leandrocp/mdex_gfm/pull/7/files\"\u003eleandrocp/mdex_gfm#7\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/leandrocp/mdex_mermaid/pull/13/files\"\u003eleandrocp/mdex_mermaid#13\u003c/a\u003e\u003c/p\u003e\n\u003col start=\"2\"\u003e\n\u003cli\u003eMove types from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- @spec my_function(MDEx.options()) :: any()\n+ @spec my_function(MDEx.Document.options()) :: any()\n\u003c/code\u003e\u003c/pre\u003e\n\u003col start=\"3\"\u003e\n\u003cli\u003eReplace the \u003ccode\u003e:features\u003c/code\u003e option with explicit \u003ccode\u003e:syntax_highlight\u003c/code\u003e and \u003ccode\u003e:sanitize\u003c/code\u003e options\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- MDEx.new(features: [syntax_highlight_theme: \u0026quot;github_light\u0026quot;, sanitize: true])\n+ MDEx.new(\n+   syntax_highlight: [formatter: {:html_inline, theme: \u0026quot;github_light\u0026quot;}],\n+   sanitize: MDEx.Document.default_sanitize_options()\n+ )\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.default_options/0\u003c/code\u003e to get all default options\u003c/li\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e to replace \u003ccode\u003eMDEx.Document\u003c/code\u003e with new Markdown content\u003c/li\u003e\n\u003cli\u003e[Document] Add extra fields in \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e to store options, private data, and pipeline state. Use functions in \u003ccode\u003eMDEx.Document\u003c/code\u003e to manipulate these fields.\u003c/li\u003e\n\u003cli\u003e[Document] Add config \u003ccode\u003eApplication.put_env(:mdex, :inspect_format, :struct)\u003c/code\u003e to enable inspecting the raw \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e struct\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Require \u003ccode\u003eautumnus \u0026gt;= 0.5.4\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Remove \u003ccode\u003eMDEx.Pipe\u003c/code\u003e in favour of unifying all functionality in \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Return \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e in \u003ccode\u003eMDEx.new/1\u003c/code\u003e instead of \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move type definitions from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e (\u003ccode\u003eextension_options\u003c/code\u003e, \u003ccode\u003eparse_options\u003c/code\u003e, \u003ccode\u003erender_options\u003c/code\u003e, \u003ccode\u003esyntax_highlight_options\u003c/code\u003e, \u003ccode\u003esanitize_options\u003c/code\u003e, \u003ccode\u003eoptions\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/mdex/blob/main/CHANGELOG.md\"\u003emdex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.9.0 (2025-09-22)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBREAKING CHANGES\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis version introduces breaking changes to the public API. Please follow the upgrade guide below to migrate your code.\u003c/p\u003e\n\u003ch4\u003eUpgrade Guide\u003c/h4\u003e\n\u003col\u003e\n\u003cli\u003eReplace \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e with \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eThe \u003ccode\u003eMDEx.Document\u003c/code\u003e module now provides an unified API to create, manipulate, and render Markdown documents.\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- %MDEx.Pipe{} = pipe = MDEx.new()\n- MDEx.Pipe.run(pipe)\n+ %MDEx.Document{} = document = MDEx.new()\n+ MDEx.Document.run(document)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSee examples \u003ca href=\"https://redirect.github.com/leandrocp/mdex_gfm/pull/7/files\"\u003eleandrocp/mdex_gfm#7\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/leandrocp/mdex_mermaid/pull/13/files\"\u003eleandrocp/mdex_mermaid#13\u003c/a\u003e\u003c/p\u003e\n\u003col start=\"2\"\u003e\n\u003cli\u003eMove types from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- @spec my_function(MDEx.options()) :: any()\n+ @spec my_function(MDEx.Document.options()) :: any()\n\u003c/code\u003e\u003c/pre\u003e\n\u003col start=\"3\"\u003e\n\u003cli\u003eReplace the \u003ccode\u003e:features\u003c/code\u003e option with explicit \u003ccode\u003e:syntax_highlight\u003c/code\u003e and \u003ccode\u003e:sanitize\u003c/code\u003e options\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e- MDEx.new(features: [syntax_highlight_theme: \u0026quot;github_light\u0026quot;, sanitize: true])\n+ MDEx.new(\n+   syntax_highlight: [formatter: {:html_inline, theme: \u0026quot;github_light\u0026quot;}],\n+   sanitize: MDEx.Document.default_sanitize_options()\n+ )\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.default_options/0\u003c/code\u003e to get all default options\u003c/li\u003e\n\u003cli\u003e[Document] Add \u003ccode\u003eMDEx.Document.parse_markdown/2\u003c/code\u003e to replace \u003ccode\u003eMDEx.Document\u003c/code\u003e with new Markdown content\u003c/li\u003e\n\u003cli\u003e[Document] Add extra fields in \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e to store options, private data, and pipeline state. Use functions in \u003ccode\u003eMDEx.Document\u003c/code\u003e to manipulate these fields.\u003c/li\u003e\n\u003cli\u003e[Document] Add config \u003ccode\u003eApplication.put_env(:mdex, :inspect_format, :struct)\u003c/code\u003e to enable inspecting the raw \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e struct\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Deps] Require \u003ccode\u003eautumnus \u0026gt;= 0.5.4\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Remove \u003ccode\u003eMDEx.Pipe\u003c/code\u003e in favour of unifying all functionality in \u003ccode\u003eMDEx.Document\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Return \u003ccode\u003e%MDEx.Document{}\u003c/code\u003e in \u003ccode\u003eMDEx.new/1\u003c/code\u003e instead of \u003ccode\u003e%MDEx.Pipe{}\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Move type definitions from \u003ccode\u003eMDEx\u003c/code\u003e to \u003ccode\u003eMDEx.Document\u003c/code\u003e (\u003ccode\u003eextension_options\u003c/code\u003e, \u003ccode\u003eparse_options\u003c/code\u003e, \u003ccode\u003erender_options\u003c/code\u003e, \u003ccode\u003esyntax_highlight_options\u003c/code\u003e, \u003ccode\u003esanitize_options\u003c/code\u003e, \u003ccode\u003eoptions\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBREAKING\u003c/strong\u003e Remove the \u003ccode\u003e:features\u003c/code\u003e option and support only explicit \u003ccode\u003e:syntax_highlight\u003c/code\u003e / \u003ccode\u003e:sanitize\u003c/code\u003e entries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/147272b2605549e92ba5c68fa94731caa9102ef9\"\u003e\u003ccode\u003e147272b\u003c/code\u003e\u003c/a\u003e v0.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/c721f3016aa987de1b2213aa780a9d204cf11625\"\u003e\u003ccode\u003ec721f30\u003c/code\u003e\u003c/a\u003e impr test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/462e4ebdcb6fc1fa43bafb0db8849f1a9fac8009\"\u003e\u003ccode\u003e462e4eb\u003c/code\u003e\u003c/a\u003e chore(deps): bump anyhow from 1.0.99 to 1.0.100 in /native/comrak_nif (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/16b7fb71fd1793ac73b56019a62cbea2460ffcab\"\u003e\u003ccode\u003e16b7fb7\u003c/code\u003e\u003c/a\u003e chore(deps): bump serde from 1.0.223 to 1.0.226 in /native/comrak_nif (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/3dee5f29636bab96a9200c920273425f906e8cbf\"\u003e\u003ccode\u003e3dee5f2\u003c/code\u003e\u003c/a\u003e fix(inspect): env :struct (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/249\"\u003e#249\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/996d5d54992d35b70b11d0b7a542c7d66285748f\"\u003e\u003ccode\u003e996d5d5\u003c/code\u003e\u003c/a\u003e feat: config inspect (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/246\"\u003e#246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/34a4de686ce7d46ef8491fbf6d4dfb68c9560cda\"\u003e\u003ccode\u003e34a4de6\u003c/code\u003e\u003c/a\u003e Unify MDEx.Document as the core engine (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/245\"\u003e#245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/848ee20b88b57dbcbbbaf58628579349f7744ed5\"\u003e\u003ccode\u003e848ee20\u003c/code\u003e\u003c/a\u003e v0.8.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/c899cff040a9e7d29178794644822d644f6cc881\"\u003e\u003ccode\u003ec899cff\u003c/code\u003e\u003c/a\u003e fix: syntax highlight options (\u003ca href=\"https://redirect.github.com/leandrocp/mdex/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/mdex/commit/07cea77f28d113c821b46eea8e0ec3cb163ff3b6\"\u003e\u003ccode\u003e07cea77\u003c/code\u003e\u003c/a\u003e v0.8.5\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/mdex/compare/v0.5.0...v0.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_ecto` from 4.6.3 to 4.6.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/blob/main/CHANGELOG.md\"\u003ephoenix_ecto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.6.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eUnallow existing allowances when attempting to allow a Plug to access a connection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.6.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnhancements\n\u003cul\u003e\n\u003cli\u003eWrap raised Ecto exceptions so context is not lost\u003c/li\u003e\n\u003cli\u003eDo not override changeset actions\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/c131a74d5309ff6e1579fb941c8678ccd8afff3a\"\u003e\u003ccode\u003ec131a74\u003c/code\u003e\u003c/a\u003e Release v4.6.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2ee06843f1de2500e83a8de04d9971f4df6b69c7\"\u003e\u003ccode\u003e2ee0684\u003c/code\u003e\u003c/a\u003e Unallow existing allowances when attempting to allow a Plug to access a conne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/93143d549d691c35533ac550299e414065f4426f\"\u003e\u003ccode\u003e93143d5\u003c/code\u003e\u003c/a\u003e Update ExDoc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/2e7f33abdea0494b4cc50a6bb0674eeda6008b03\"\u003e\u003ccode\u003e2e7f33a\u003c/code\u003e\u003c/a\u003e Updates runner to 24.04 and elixir to 1.18 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/191\"\u003e#191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/d6870457660bb20a7716d42a180bd97777ca8702\"\u003e\u003ccode\u003ed687045\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ebab9d16b579fa9629438759ad246871fadbf6e9\"\u003e\u003ccode\u003eebab9d1\u003c/code\u003e\u003c/a\u003e Release v4.6.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ca36795469026f814f0b0983d8446a3ac4285fce\"\u003e\u003ccode\u003eca36795\u003c/code\u003e\u003c/a\u003e Wrap errors with Plug.Conn.Wrapper error to support live reload  (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/7329d30882b52f9acfbd706c3d3f83a6ec7facd8\"\u003e\u003ccode\u003e7329d30\u003c/code\u003e\u003c/a\u003e Update sandbox.ex\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/ee5f9b3de924eef8e13a06e2427f3ae375ecfec8\"\u003e\u003ccode\u003eee5f9b3\u003c/code\u003e\u003c/a\u003e Fix docs: Preserve phoenix_ecto_sandbox assign (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_ecto/issues/189\"\u003e#189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/commit/76e5b7f8286c6212db5cabb68934c0ee3758d667\"\u003e\u003ccode\u003e76e5b7f\u003c/code\u003e\u003c/a\u003e Update Ecto Sandbox doc for when \u003ccode\u003eon_mount\u003c/code\u003e hooks on \u003ccode\u003elive_session\u003c/code\u003e are prese...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_ecto/compare/v4.6.3...v4.6.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_html` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md\"\u003ephoenix_html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.3.0 (2025-09-28)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImplement \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e for Duration\u003c/li\u003e\n\u003cli\u003eAdd function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e to improve documentation\u003c/li\u003e\n\u003cli\u003eAllow custom tags in options_for_select\u003c/li\u003e\n\u003cli\u003eAllow datetime as form option values\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid false positive warnings on Elixir v1.19\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/8cfd3e37ff9ef0924812a78cf6c9d27cdbd4e726\"\u003e\u003ccode\u003e8cfd3e3\u003c/code\u003e\u003c/a\u003e Release v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/053861d1894a10c7787678ab2d86a0b5cee9686f\"\u003e\u003ccode\u003e053861d\u003c/code\u003e\u003c/a\u003e Avoid false positive in Elixir v1.19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/671042cd441ef001ecba00904be2e5bc39c07dfe\"\u003e\u003ccode\u003e671042c\u003c/code\u003e\u003c/a\u003e allow datetime as form option values (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0f31c955865319f6fe5ac58b5e5c4c385bd80796\"\u003e\u003ccode\u003e0f31c95\u003c/code\u003e\u003c/a\u003e feat(custom option tags): allow custom tags in options_for_select (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/467\"\u003e#467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/0229e746a22d70093473a39946c9868a585181a3\"\u003e\u003ccode\u003e0229e74\u003c/code\u003e\u003c/a\u003e Add function head for argument names of \u003ccode\u003enormalize_value/2\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/466\"\u003e#466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/49bb6e545e4799c30cdad97a0b71413bbd9f7c1d\"\u003e\u003ccode\u003e49bb6e5\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ePhoenix.HTML.Safe\u003c/code\u003e to Duration (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/463\"\u003e#463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/ddaf11e54f38627c03aa4da937ecb95259103926\"\u003e\u003ccode\u003eddaf11e\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_html/issues/464\"\u003e#464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_html/commit/c11a9e3b87fa247b31a8ccf1265d6588e1ddaa04\"\u003e\u003ccode\u003ec11a9e3\u003c/code\u003e\u003c/a\u003e Implement Access for form fields\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/phoenixframework/phoenix_html/compare/v4.2.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.0.9 to 1.1.13\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.13/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.11 (2025-09-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponents being destroyed when their DOM ID changes, even though they are still rendered (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3981\"\u003e#3981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix warning when an empty comprehension is rendered in LiveViewTest\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up duplicate ID check in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3962\"\u003e#3962\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.10 (2025-09-03)\u003c/h2\u003e\n\u003ch3\u003eBug fixxes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRegression in v1.1.9 - fix \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e crashing when using keywords lists and not properly handling atom keys (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3975\"\u003e#3975\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.9 (2025-09-02)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix moved comprehension diff crashing LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3963\"\u003e#3963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003epush_patch\u003c/code\u003e works during form recovery (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix diff crash in LiveViewTest when rendering structs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3970\"\u003e#3970\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude form values from DOM in \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e to mimic browser behavior (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3885\"\u003e#3885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow assigning generic hooks to type \u003ccode\u003eHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3955\"\u003e#3955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow typing hook element when using TypeScript (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd more metadata to \u003ccode\u003ephx:page-loading-start\u003c/code\u003e event in case of errors (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3910\"\u003e#3910\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/975bc91a8f1348bac0d6b718432e3c9c067773dd\"\u003e\u003ccode\u003e975bc91\u003c/code\u003e\u003c/a\u003e release v1.1.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/c1f1de9abf5f9ea7120b12c78d1ba575be776111\"\u003e\u003ccode\u003ec1f1de9\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ff403bb5c2f239c18ba8a27c68c93b2ca4866fcd\"\u003e\u003ccode\u003eff403bb\u003c/code\u003e\u003c/a\u003e prevent crash when passing * to ignore_attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3997\"\u003e#3997\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/67a3bc071aeef9065dce071ccc691f976f479856\"\u003e\u003ccode\u003e67a3bc0\u003c/code\u003e\u003c/a\u003e Fix extra spaces being continually added when formatting nested inline tags (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/68619fb6e0b5d404f8e9e9eba733102f0eb96803\"\u003e\u003ccode\u003e68619fb\u003c/code\u003e\u003c/a\u003e fix merging of streams in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3994\"\u003e#3994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e898d68f5b998b75536d419d7bbe9f50f105fbfb\"\u003e\u003ccode\u003ee898d68\u003c/code\u003e\u003c/a\u003e Serialize error reason as JSON (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/72189f63b784e0b2dec44d41810beb8d37a694b2\"\u003e\u003ccode\u003e72189f6\u003c/code\u003e\u003c/a\u003e release v1.1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f6c87c4f76e6415eb8d8938fe50adf814e03ddcb\"\u003e\u003ccode\u003ef6c87c4\u003c/code\u003e\u003c/a\u003e allow auto-symlinking node_modules for ColocatedJS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a60512c4f258c52bf3bab7919710b1eeb3ac6c49\"\u003e\u003ccode\u003ea60512c\u003c/code\u003e\u003c/a\u003e Prevent pattern in \u003ccode\u003e:let\u003c/code\u003e from leading to uncovered line (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/05191936285dd96b59a3e4da7b4ebb0b190866bc\"\u003e\u003ccode\u003e0519193\u003c/code\u003e\u003c/a\u003e Fix heading in CHANGELOG (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3986\"\u003e#3986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.9...v1.1.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `postgrex` from 0.20.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md\"\u003epostgrex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.21.1 (2025-08-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBug fixes\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.21.0 (2025-07-31)\u003c/h2\u003e\n\u003cp\u003eThis release requires Erlang/OTP 25+\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnhancements\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd query timeout option on ReplicationConnection\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eBug fixes\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePGHOST option does not override explicitly given endpoint configuration\u003c/li\u003e\n\u003cli\u003eAdd ltxtquery support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/b419affa58b61cc67eba400de6e086ae964fe723\"\u003e\u003ccode\u003eb419aff\u003c/code\u003e\u003c/a\u003e Release v0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/567ea8a8f1ceef72499c37d5a22d19dad4c01130\"\u003e\u003ccode\u003e567ea8a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003essl: true\u003c/code\u003e with missing ssl_opts handling (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/0eb228f1ba3fb96330a5aad389fbe7710d84fd97\"\u003e\u003ccode\u003e0eb228f\u003c/code\u003e\u003c/a\u003e Release v0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/2660c6bf58bc5567ac44dca11a1316c3f39b1c0c\"\u003e\u003ccode\u003e2660c6b\u003c/code\u003e\u003c/a\u003e List options given when setopts fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/d990017f5bf9ba2866e73f9111b126a2fd9b860b\"\u003e\u003ccode\u003ed990017\u003c/code\u003e\u003c/a\u003e Add query timeout option on ReplicationConnection (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/748\"\u003e#748\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/412b55567b6f0f3feb587e38466fcab047581c0f\"\u003e\u003ccode\u003e412b555\u003c/code\u003e\u003c/a\u003e Prioritize explicit endpoint options over PGHOST-derived defaults (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/257daa773a7558d574df3aa3b558664275787ff8\"\u003e\u003ccode\u003e257daa7\u003c/code\u003e\u003c/a\u003e Require Erlang/OTP 25 for cacerts (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/14a8a58bea1edf92b6f93d29eaea3b78a0151a03\"\u003e\u003ccode\u003e14a8a58\u003c/code\u003e\u003c/a\u003e Update CI (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/3bb2ee2bb0219027c00acb7c8a67ebdc97558fd1\"\u003e\u003ccode\u003e3bb2ee2\u003c/code\u003e\u003c/a\u003e Add example with ANY() (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-ecto/postgrex/commit/f7f9a4e3a2bdea68f6072c5a7c9960bed6bfb500\"\u003e\u003ccode\u003ef7f9a4e\u003c/code\u003e\u003c/a\u003e Add ltxtquery support (\u003ca href=\"https://redirect.github.com/elixir-ecto/postgrex/issues/735\"\u003e#735\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-ecto/postgrex/compare/v0.20.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `req_embed` from 0.2.1 to 0.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/leandrocp/req_embed/blob/main/CHANGELOG.md\"\u003ereq_embed's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[0.3.1] - 2025-08-13\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ca href=\"https://elixircasts.io/reqembed\"\u003ehttps://elixircasts.io/reqembed\u003c/a\u003e in documentation\u003c/li\u003e\n\u003cli\u003eImprove documentation in overall\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.3.0] - 2025-08-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd providers Beta QuellenSuche, Carbon, Everwall, Filestage, Form-Data, GW2 Fashions, Kubit, Naver Clip, QuellenSuche, SOOP,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Remove provider afreecaTV\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBreaking:\u003c/strong\u003e Require minimum Elixir 1.15\u003c/li\u003e\n\u003cli\u003eUpdate providers: Medienarchiv, Supercut, Webcrumbs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.2.3] - 2025-05-30\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnite provider support\u003c/li\u003e\n\u003cli\u003emarimo provider support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompilation error on Elixir 1.18.14 and OTP 28\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[0.2.2] - 2025-04-24\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInstallation without \u003ccode\u003e:phoenix_live_view\u003c/code\u003e dependency\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/ee8bd526b1fb785bd4f8d211bce5d4a1acbc1b41\"\u003e\u003ccode\u003eee8bd52\u003c/code\u003e\u003c/a\u003e v0.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/7bf4fb95c8334f5f724ca0fc6c661eb243465723\"\u003e\u003ccode\u003e7bf4fb9\u003c/code\u003e\u003c/a\u003e docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/089b5015e819b842893c2b9dc1055060f635458e\"\u003e\u003ccode\u003e089b501\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/0e0be444f105f7d3f050e374538d078c0c1a4bea\"\u003e\u003ccode\u003e0e0be44\u003c/code\u003e\u003c/a\u003e docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/c6050c57b4476373a52040c04b2db8ddb7f28247\"\u003e\u003ccode\u003ec6050c5\u003c/code\u003e\u003c/a\u003e -dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/230d035ad795eb94611238ad942f0297b5bbdf0d\"\u003e\u003ccode\u003e230d035\u003c/code\u003e\u003c/a\u003e v0.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/b46197f0bb359d2969a33b1ac1e7f019931362cf\"\u003e\u003ccode\u003eb46197f\u003c/code\u003e\u003c/a\u003e chore: tests and docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/59e295b2c6790c1dadd035f562714fa5f26a0e96\"\u003e\u003ccode\u003e59e295b\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/fcdaa5e4262bdaab04ff717b9bf5641a28563103\"\u003e\u003ccode\u003efcdaa5e\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leandrocp/req_embed/commit/4b73335d108719a20f1bcb36e80678a369a77f4a\"\u003e\u003ccode\u003e4b73335\u003c/code\u003e\u003c/a\u003e chore: dependabot\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/leandrocp/req_embed/compare/v0.2.1...v0.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `solid` from 0.18.0 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/edgurgel/solid/releases\"\u003esolid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSolid 1.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix replace_first filter for nil argument by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/174\"\u003eedgurgel/solid#174\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Handle non-list inputs in sort_natural filter by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/175\"\u003eedgurgel/solid#175\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: \u003ccode\u003ereplace_last\u003c/code\u003e filter bug with duplicate substrings by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/176\"\u003eedgurgel/solid#176\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(filter): Handle nil argument for replace_last by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/177\"\u003eedgurgel/solid#177\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(strip_html): handle multiline comments by \u003ca href=\"https://github.com/google-labs-jules\"\u003e\u003ccode\u003e@​google-labs-jules\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/178\"\u003eedgurgel/solid#178\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Return error when both strict variables and filters are enabled by \u003ca href=\"https://github.com/Cervajz\"\u003e\u003ccode\u003e@​Cervajz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/179\"\u003eedgurgel/solid#179\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove UndefinedVariableError and UndefinedFilterError error messages by \u003ca href=\"https://github.com/Cervajz\"\u003e\u003ccode\u003e@​Cervajz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/180\"\u003eedgurgel/solid#180\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Cervajz\"\u003e\u003ccode\u003e@​Cervajz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/179\"\u003eedgurgel/solid#179\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/edgurgel/solid/compare/v1.1.0...v1.1.1\"\u003ehttps://github.com/edgurgel/solid/compare/v1.1.0...v1.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSolid 1.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: render loop should not access parentloop by \u003ca href=\"https://github.com/edgurgel\"\u003e\u003ccode\u003e@​edgurgel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/edgurgel/solid/pull/170\"\u003eedgurgel/solid#170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix incorrect typespec in If/Unless tag by \u003ca hr...\n\n_Description has been truncated_","html_url":"https://github.com/BeaconCMS/beacon/pull/842","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeaconCMS%2Fbeacon/issues/842","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/842/packages"}},{"old_version":"0.61.1","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-09-22T08:28:05.000Z","version_change":"0.61.1 → 0.62.0","issue":{"uuid":"2848403220","node_id":"PR_kwDOGGqrTc6pxy8U","number":136,"state":"closed","title":"Bump the production-dependencies group with 7 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-09-29T08:15:05.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-22T08:28:05.000Z","updated_at":"2025-09-29T08:15:05.000Z","time_to_close":604020,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":7,"packages":[{"name":"gettext","old_version":"0.26.2","new_version":"1.0.0","repository_url":"https://github.com/elixir-gettext/gettext"},{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.3","new_version":"1.8.4","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix","old_version":"1.7.21","new_version":"1.8.1","repository_url":"https://github.com/phoenixframework/phoenix"},{"name":"phoenix_live_view","old_version":"1.1.2","new_version":"1.1.13","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"sentry","old_version":"11.0.2","new_version":"11.0.4","repository_url":"https://github.com/getsentry/sentry-elixir"},{"name":"tailwind","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/phoenixframework/tailwind"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 7 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [gettext](https://github.com/elixir-gettext/gettext) | `0.26.2` | `1.0.0` |\n| [image](https://github.com/kipcole9/image) | `0.61.1` | `0.62.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.3` | `1.8.4` |\n| [phoenix](https://github.com/phoenixframework/phoenix) | `1.7.21` | `1.8.1` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.2` | `1.1.13` |\n| [sentry](https://github.com/getsentry/sentry-elixir) | `11.0.2` | `11.0.4` |\n| [tailwind](https://github.com/phoenixframework/tailwind) | `0.3.1` | `0.4.0` |\n\nUpdates `gettext` from 0.26.2 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-gettext/gettext/blob/main/CHANGELOG.md\"\u003egettext's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003cp\u003eThis is the first 1.0 release of Gettext, a silly 10 years (and 6 months) after we started working on it. There are \u003cem\u003every few changes\u003c/em\u003e from the latest 0.26 release, and none of them are breaking.\u003c/p\u003e\n\u003cp\u003eHere are the new goodies:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for concatenating sigils if all parts are known at compile time (such as \u003ccode\u003e\u0026quot;Hello \u0026quot; \u0026lt;\u0026gt; ~s(world)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eSignificantly increase the timeout for \u003ccode\u003emix gettext.extract\u003c/code\u003e to two minutes.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eGettext.put_locale!/1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eHappy 10+ years of Elixir translations everyone! 🎉\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/d1a8c86d0bb7b1edfd01538d6bce32b5b809363f\"\u003e\u003ccode\u003ed1a8c86\u003c/code\u003e\u003c/a\u003e Release v1.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/e1df334b3bc77e21f457b38e4a76e3543814d016\"\u003e\u003ccode\u003ee1df334\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/962426d045cff9928e74681d54b6592beb0e44a2\"\u003e\u003ccode\u003e962426d\u003c/code\u003e\u003c/a\u003e Add new function put_locale!/2  (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/420\"\u003e#420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/f436de77e5964fa5eb23838b8f97a2925c0c830a\"\u003e\u003ccode\u003ef436de7\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.20.2 to 1.20.4 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/418\"\u003e#418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/54ccc9c865bbed89fdc20b670e66d083f89d1c59\"\u003e\u003ccode\u003e54ccc9c\u003c/code\u003e\u003c/a\u003e Don't time out when running the extract task (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/fc89178eb34933b909b3e78a2441308cbf13ecfc\"\u003e\u003ccode\u003efc89178\u003c/code\u003e\u003c/a\u003e Bump erlef/setup-beam from 1.19.0 to 1.20.2 (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/415\"\u003e#415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/a44a2bf3a420af2a7f6c1448eb846c0b6f867f7b\"\u003e\u003ccode\u003ea44a2bf\u003c/code\u003e\u003c/a\u003e Harden CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/414\"\u003e#414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/7405f841de22bd4df14774b746352965717334fc\"\u003e\u003ccode\u003e7405f84\u003c/code\u003e\u003c/a\u003e Fix concatenation of sigils (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/6a97765953bdec82233e6509c8df4f5feda62fc3\"\u003e\u003ccode\u003e6a97765\u003c/code\u003e\u003c/a\u003e Update Elixir/Erlang versions in CI (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/407\"\u003e#407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-gettext/gettext/commit/647d27f2dbfe2f1b0452a1879787bf5edd63098b\"\u003e\u003ccode\u003e647d27f\u003c/code\u003e\u003c/a\u003e Improve a deprecation warning (\u003ca href=\"https://redirect.github.com/elixir-gettext/gettext/issues/406\"\u003e#406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/elixir-gettext/gettext/compare/v0.26.2...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `image` from 0.61.1 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.3 to 1.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: extend plugin behaviour to customize the view of body's items by \u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOtp 28 build by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/116\"\u003ezhongwencool/observer_cli#116\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/63a6668cdf304ed05ca04f3e2657df4abfbddb4d\"\u003e\u003ccode\u003e63a6668\u003c/code\u003e\u003c/a\u003e chore: update changelog for version 1.8.4 with OTP 28 fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/be8c67221cd56a5b21efeef474aafd459a8d6aee\"\u003e\u003ccode\u003ebe8c672\u003c/code\u003e\u003c/a\u003e chore: ignore unexported function erlang:processes_next/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/02592f3f89ca70f0dca411005f34b284c5c79ed7\"\u003e\u003ccode\u003e02592f3\u003c/code\u003e\u003c/a\u003e chore: add fail-fast false option for ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/4b5fd4b66dcb78ac1eaf4459f76140322fbe292c\"\u003e\u003ccode\u003e4b5fd4b\u003c/code\u003e\u003c/a\u003e chore: fix dialyzer warning for otp 28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3340e6495528aab1fb6e6ce4fa4208c4eeef180e\"\u003e\u003ccode\u003e3340e64\u003c/code\u003e\u003c/a\u003e chore: ci support otp28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/8b49833f7685d6bdd2b22976d8cefd21dc3f0bb1\"\u003e\u003ccode\u003e8b49833\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/117\"\u003e#117\u003c/a\u003e from imtutta/feature/extend_plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/b90c7ceb4f8593ec8d4058233dc57fe9487de9dc\"\u003e\u003ccode\u003eb90c7ce\u003c/code\u003e\u003c/a\u003e feat: extend plugin behaviour to customize the view of body's items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b98f15e25dcfda672787ab71fc0871ffd97848\"\u003e\u003ccode\u003ef5b98f1\u003c/code\u003e\u003c/a\u003e chore: delete unuse travis.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/652972a4e47bd7cb54e9323f7a8865ce0a3ece2e\"\u003e\u003ccode\u003e652972a\u003c/code\u003e\u003c/a\u003e chore: correct the hex doc url\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix` from 1.7.21 to 1.8.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix/blob/main/CHANGELOG.md\"\u003ephoenix's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.1 (2025-08-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Fix AGENTS.md failing to include CSS and JavaScript sections\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Don't include node_modules override in generated \u003ccode\u003etsconfig.json\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live|html|json] - Make context argument optional. Defaults to the plural name.\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003emix precommit\u003c/code\u003e alias\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eAGENTS.md\u003c/code\u003e generation compatible with \u003ca href=\"https://hexdocs.pm/usage_rules/\"\u003e\u003ccode\u003eusage_rules\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eusage_rules\u003c/code\u003e folder to installer, allowing to sync generic Phoenix rules into new projects\u003c/li\u003e\n\u003cli\u003e[phx.new] Use LiveView 1.1 release in generated code\u003c/li\u003e\n\u003cli\u003e[phx.new] Ensure theme selector and flash closing works without LiveView\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.4 (2025-07-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix phx.gen.presence PubSub server name for umbrella apps\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ephx.gen.live\u003c/code\u003e subscribing to pubsub in disconnected mounts\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Initialize initial git repo when git is installed\u003c/li\u003e\n\u003cli\u003e[phx.new] Opt-in to HEEx \u003ccode\u003e:debug_tags_location\u003c/code\u003e in development\u003c/li\u003e\n\u003cli\u003e[phx.gen.live|html|json|context] Make context name optional and inflect based on schema when missing\u003c/li\u003e\n\u003cli\u003e[phx.gen.*] Use new Ecto 3.13 \u003ccode\u003eRepo.transact/2\u003c/code\u003e in generators\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Warn when using \u003ccode\u003ephx.gen.auth\u003c/code\u003e without esbuild as features assume \u003ccode\u003ephoenix_html.js\u003c/code\u003e in bundle\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003esecurity.md\u003c/code\u003e guide for security best practices\u003c/li\u003e\n\u003cli\u003e[phoenix.js] - Add fetch() support to LongPoll when XMLHTTPRequest is not available\u003c/li\u003e\n\u003cli\u003eOptimize parameter scrubbing by precompiling patterns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.3 (2025-05-07)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.auth] Allow configuring the scope's assign key in phx.gen.auth\u003c/li\u003e\n\u003cli\u003e[phx.new] Do not override theme in root layout if explicitly set\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.2 (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live] Only subscribe to pubsub if connected\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Remove unused current_password field\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Use context_app for scopes to fix generated scopes in umbrella apps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.1 (2025-04-16)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/675e924f73da1a594e07ba22fcbda6636790ce4a\"\u003e\u003ccode\u003e675e924\u003c/code\u003e\u003c/a\u003e Release 1.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/21ee2610ab20557a9ad1fd8f7599f5b5fe5d9b5d\"\u003e\u003ccode\u003e21ee261\u003c/code\u003e\u003c/a\u003e Bump eslint from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6440\"\u003e#6440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a280eedf8a9850e45076977e368c7397c310db2a\"\u003e\u003ccode\u003ea280eed\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​eslint/js\u003c/code\u003e from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6439\"\u003e#6439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/c3d2fa919eb4cd19fa5fef95e97a36c71f936247\"\u003e\u003ccode\u003ec3d2fa9\u003c/code\u003e\u003c/a\u003e Touchup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/8502ed0107f0420498f1e3fac235bc80c86c6912\"\u003e\u003ccode\u003e8502ed0\u003c/code\u003e\u003c/a\u003e Clarify timestamp further. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/820b0badf4ad6eebdcafa88c3bcd67259dd9b9ee\"\u003e\u003ccode\u003e820b0ba\u003c/code\u003e\u003c/a\u003e Clarify timestamp. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a64dd8c698785e6593c0a707a7f20190bc02a279\"\u003e\u003ccode\u003ea64dd8c\u003c/code\u003e\u003c/a\u003e Run mix compile before assets.build in generated aliases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6407\"\u003e#6407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/b0fe7ecd788ecc0d8c0bfbe6eb67b4fd4de57bb4\"\u003e\u003ccode\u003eb0fe7ec\u003c/code\u003e\u003c/a\u003e Update controllers documentation (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6416\"\u003e#6416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a5646dfcf099e09d031081516efcc60835c73bef\"\u003e\u003ccode\u003ea5646df\u003c/code\u003e\u003c/a\u003e Fix some typos (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6386\"\u003e#6386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/14faee2ebebca4151572e9f3f1677fcac29a6c9d\"\u003e\u003ccode\u003e14faee2\u003c/code\u003e\u003c/a\u003e Fix controller.ex documentation typo (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6417\"\u003e#6417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix/compare/v1.7.21...v1.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.2 to 1.1.13\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.13/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.13 (2025-09-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix invalid stream merging in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3993\"\u003e#3993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix extra spaces when formatting nested inline tags (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3995\"\u003e#3995\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure error reasons are serialized into message on the client (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent JavaScript exception when passing \u003ccode\u003e\u0026quot;*\u0026quot;\u003c/code\u003e to \u003ccode\u003eJS.ignore_attributes/3\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3996\"\u003e#3996\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.12 (2025-09-14)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent HEEx line from being reported as uncovered when using a pattern in \u003ccode\u003e:let={}\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically symlink \u003ccode\u003eassets/node_modules\u003c/code\u003e folder for colocated hooks (see the documentation for \u003ccode\u003ePhoenix.LiveView.ColocatedJS\u003c/code\u003e, \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.11 (2025-09-04)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponents being destroyed when their DOM ID changes, even though they are still rendered (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3981\"\u003e#3981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix warning when an empty comprehension is rendered in LiveViewTest\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up duplicate ID check in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3962\"\u003e#3962\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.10 (2025-09-03)\u003c/h2\u003e\n\u003ch3\u003eBug fixxes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRegression in v1.1.9 - fix \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e crashing when using keywords lists and not properly handling atom keys (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3975\"\u003e#3975\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.9 (2025-09-02)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix moved comprehension diff crashing LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3963\"\u003e#3963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003epush_patch\u003c/code\u003e works during form recovery (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix diff crash in LiveViewTest when rendering structs (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3970\"\u003e#3970\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInclude form values from DOM in \u003ccode\u003ePhoenix.LiveViewTest.submit_form/2\u003c/code\u003e and \u003ccode\u003ePhoenix.LiveViewTest.follow_trigger_action/2\u003c/code\u003e to mimic browser behavior (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3885\"\u003e#3885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow assigning generic hooks to type \u003ccode\u003eHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3955\"\u003e#3955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow typing hook element when using TypeScript (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd more metadata to \u003ccode\u003ephx:page-loading-start\u003c/code\u003e event in case of errors (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3910\"\u003e#3910\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/975bc91a8f1348bac0d6b718432e3c9c067773dd\"\u003e\u003ccode\u003e975bc91\u003c/code\u003e\u003c/a\u003e release v1.1.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/c1f1de9abf5f9ea7120b12c78d1ba575be776111\"\u003e\u003ccode\u003ec1f1de9\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ff403bb5c2f239c18ba8a27c68c93b2ca4866fcd\"\u003e\u003ccode\u003eff403bb\u003c/code\u003e\u003c/a\u003e prevent crash when passing * to ignore_attributes (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3997\"\u003e#3997\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/67a3bc071aeef9065dce071ccc691f976f479856\"\u003e\u003ccode\u003e67a3bc0\u003c/code\u003e\u003c/a\u003e Fix extra spaces being continually added when formatting nested inline tags (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/68619fb6e0b5d404f8e9e9eba733102f0eb96803\"\u003e\u003ccode\u003e68619fb\u003c/code\u003e\u003c/a\u003e fix merging of streams in LiveViewTest (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3994\"\u003e#3994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e898d68f5b998b75536d419d7bbe9f50f105fbfb\"\u003e\u003ccode\u003ee898d68\u003c/code\u003e\u003c/a\u003e Serialize error reason as JSON (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3984\"\u003e#3984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/72189f63b784e0b2dec44d41810beb8d37a694b2\"\u003e\u003ccode\u003e72189f6\u003c/code\u003e\u003c/a\u003e release v1.1.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/f6c87c4f76e6415eb8d8938fe50adf814e03ddcb\"\u003e\u003ccode\u003ef6c87c4\u003c/code\u003e\u003c/a\u003e allow auto-symlinking node_modules for ColocatedJS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3988\"\u003e#3988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a60512c4f258c52bf3bab7919710b1eeb3ac6c49\"\u003e\u003ccode\u003ea60512c\u003c/code\u003e\u003c/a\u003e Prevent pattern in \u003ccode\u003e:let\u003c/code\u003e from leading to uncovered line (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3989\"\u003e#3989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/05191936285dd96b59a3e4da7b4ebb0b190866bc\"\u003e\u003ccode\u003e0519193\u003c/code\u003e\u003c/a\u003e Fix heading in CHANGELOG (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3986\"\u003e#3986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.2...v1.1.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry` from 11.0.2 to 11.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/releases\"\u003esentry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/blob/master/CHANGELOG.md\"\u003esentry's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5f5dc03f013b1933863ccfb08d48b8640008485b\"\u003e\u003ccode\u003e5f5dc03\u003c/code\u003e\u003c/a\u003e release: 11.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78bf227541918ed2d1fe8502e1f77ce5daab8103\"\u003e\u003ccode\u003e78bf227\u003c/code\u003e\u003c/a\u003e Fix safe JSON encoding of improper lists (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/938\"\u003e#938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/5bf38d6dddbd265b0f478f6cf0c09d45373bdcd5\"\u003e\u003ccode\u003e5bf38d6\u003c/code\u003e\u003c/a\u003e Update pull_request_template.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/941\"\u003e#941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0de7beb4482bd75181890a7be0d5bad05971be76\"\u003e\u003ccode\u003e0de7beb\u003c/code\u003e\u003c/a\u003e meta: add pull request template (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/be4721751d0a4f13455c1becd141bc05f9b357c8\"\u003e\u003ccode\u003ebe47217\u003c/code\u003e\u003c/a\u003e Update SDK version in the README.md (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/930\"\u003e#930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/78b7f5aed691495e3b510a806e43367ddc738c15\"\u003e\u003ccode\u003e78b7f5a\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/14b95fd900af075f99b0c9b7451049fc4ad74e93\"\u003e\u003ccode\u003e14b95fd\u003c/code\u003e\u003c/a\u003e release: 11.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0f1c3dd95718c2c56e46c551dc368b9203c57ced\"\u003e\u003ccode\u003e0f1c3dd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md for 11.0.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/935\"\u003e#935\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/913ecff4b4847c3318b356885d2b60c2bdef9666\"\u003e\u003ccode\u003e913ecff\u003c/code\u003e\u003c/a\u003e Relax version reqs on opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/f83b5080aec61e0618b01efe14de28fce5e914b3\"\u003e\u003ccode\u003ef83b508\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.2'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/sentry-elixir/compare/11.0.2...11.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/tailwind/blob/main/CHANGELOG.md\"\u003etailwind's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0 (2025-09-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eNo longer copy assets in \u003ccode\u003emix tailwind.install\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDiscard empty proxy env vars\u003c/li\u003e\n\u003cli\u003eEnsure watcher picks up rule changes on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e8e289195534780a342c5bb24912eab8b4e318a3\"\u003e\u003ccode\u003ee8e2891\u003c/code\u003e\u003c/a\u003e Release v0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/d09a32b421bbaa37ee575b916d09361e8518a5a6\"\u003e\u003ccode\u003ed09a32b\u003c/code\u003e\u003c/a\u003e Add comments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/3e495133fad3aeee3cd23954566ef9f1c5692707\"\u003e\u003ccode\u003e3e49513\u003c/code\u003e\u003c/a\u003e Normalize windows driver\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/5f8a6b9b18e4bb25960df9e08b77c6e00d05148a\"\u003e\u003ccode\u003e5f8a6b9\u003c/code\u003e\u003c/a\u003e Update versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/e9887900add55b5b3a245098699a0c52fdd5d540\"\u003e\u003ccode\u003ee988790\u003c/code\u003e\u003c/a\u003e Sanitize empty strings when getting Proxy Environment variables (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/92\"\u003e#92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/2bf28d7cd8c0f81a74931dbc48c87c62b8b766bc\"\u003e\u003ccode\u003e2bf28d7\u003c/code\u003e\u003c/a\u003e Revert config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/327cef38cd5e439b6d71bb6b05856e18e494b741\"\u003e\u003ccode\u003e327cef3\u003c/code\u003e\u003c/a\u003e Remove outdated docs, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/102\"\u003e#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/21c4b7689f0026fcb1e4c9c54b4aa62788d60713\"\u003e\u003ccode\u003e21c4b76\u003c/code\u003e\u003c/a\u003e Fix path in message, closes \u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/126\"\u003e#126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/be2c7b6ad0131050edf077bd8137072d218ca708\"\u003e\u003ccode\u003ebe2c7b6\u003c/code\u003e\u003c/a\u003e Update tests, readme, and simplify install\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/tailwind/commit/f7e3037a29fb68368501dc4e711c4bcf5999cea5\"\u003e\u003ccode\u003ef7e3037\u003c/code\u003e\u003c/a\u003e Update README.md (\u003ca href=\"https://redirect.github.com/phoenixframework/tailwind/issues/132\"\u003e#132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/tailwind/compare/v0.3.1...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/136","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/136","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/136/packages"}},{"old_version":"0.61.1","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-09-01T21:34:14.000Z","version_change":"0.61.1 → 0.62.0","issue":{"uuid":"2790776801","node_id":"PR_kwDOGGqrTc6mV9_h","number":134,"state":"open","title":"Bump the production-dependencies group across 1 directory with 5 updates","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-01T21:34:14.000Z","updated_at":"2025-09-01T21:34:15.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"production-dependencies","update_count":5,"packages":[{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"},{"name":"observer_cli","old_version":"1.8.3","new_version":"1.8.4","repository_url":"https://github.com/zhongwencool/observer_cli"},{"name":"phoenix","old_version":"1.7.21","new_version":"1.8.1","repository_url":"https://github.com/phoenixframework/phoenix"},{"name":"phoenix_live_view","old_version":"1.1.2","new_version":"1.1.8","repository_url":"https://github.com/phoenixframework/phoenix_live_view"},{"name":"sentry","old_version":"11.0.2","new_version":"11.0.3","repository_url":"https://github.com/getsentry/sentry-elixir"}],"path":null,"ecosystem":"hex"},"body":"Bumps the production-dependencies group with 5 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [image](https://github.com/kipcole9/image) | `0.61.1` | `0.62.0` |\n| [observer_cli](https://github.com/zhongwencool/observer_cli) | `1.8.3` | `1.8.4` |\n| [phoenix](https://github.com/phoenixframework/phoenix) | `1.7.21` | `1.8.1` |\n| [phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view) | `1.1.2` | `1.1.8` |\n| [sentry](https://github.com/getsentry/sentry-elixir) | `11.0.2` | `11.0.3` |\n\n\nUpdates `image` from 0.61.1 to 0.62.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `observer_cli` from 1.8.3 to 1.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/zhongwencool/observer_cli/releases\"\u003eobserver_cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: extend plugin behaviour to customize the view of body's items by \u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOtp 28 build by \u003ca href=\"https://github.com/zhongwencool\"\u003e\u003ccode\u003e@​zhongwencool\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/116\"\u003ezhongwencool/observer_cli#116\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/imtutta\"\u003e\u003ccode\u003e@​imtutta\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/pull/117\"\u003ezhongwencool/observer_cli#117\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ehttps://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/63a6668cdf304ed05ca04f3e2657df4abfbddb4d\"\u003e\u003ccode\u003e63a6668\u003c/code\u003e\u003c/a\u003e chore: update changelog for version 1.8.4 with OTP 28 fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/be8c67221cd56a5b21efeef474aafd459a8d6aee\"\u003e\u003ccode\u003ebe8c672\u003c/code\u003e\u003c/a\u003e chore: ignore unexported function erlang:processes_next/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/02592f3f89ca70f0dca411005f34b284c5c79ed7\"\u003e\u003ccode\u003e02592f3\u003c/code\u003e\u003c/a\u003e chore: add fail-fast false option for ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/4b5fd4b66dcb78ac1eaf4459f76140322fbe292c\"\u003e\u003ccode\u003e4b5fd4b\u003c/code\u003e\u003c/a\u003e chore: fix dialyzer warning for otp 28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/3340e6495528aab1fb6e6ce4fa4208c4eeef180e\"\u003e\u003ccode\u003e3340e64\u003c/code\u003e\u003c/a\u003e chore: ci support otp28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/8b49833f7685d6bdd2b22976d8cefd21dc3f0bb1\"\u003e\u003ccode\u003e8b49833\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/zhongwencool/observer_cli/issues/117\"\u003e#117\u003c/a\u003e from imtutta/feature/extend_plugin\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/b90c7ceb4f8593ec8d4058233dc57fe9487de9dc\"\u003e\u003ccode\u003eb90c7ce\u003c/code\u003e\u003c/a\u003e feat: extend plugin behaviour to customize the view of body's items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/f5b98f15e25dcfda672787ab71fc0871ffd97848\"\u003e\u003ccode\u003ef5b98f1\u003c/code\u003e\u003c/a\u003e chore: delete unuse travis.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zhongwencool/observer_cli/commit/652972a4e47bd7cb54e9323f7a8865ce0a3ece2e\"\u003e\u003ccode\u003e652972a\u003c/code\u003e\u003c/a\u003e chore: correct the hex doc url\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/zhongwencool/observer_cli/compare/1.8.3...1.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix` from 1.7.21 to 1.8.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix/blob/main/CHANGELOG.md\"\u003ephoenix's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.1 (2025-08-28)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Fix AGENTS.md failing to include CSS and JavaScript sections\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Don't include node_modules override in generated \u003ccode\u003etsconfig.json\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live|html|json] - Make context argument optional. Defaults to the plural name.\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003emix precommit\u003c/code\u003e alias\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eAGENTS.md\u003c/code\u003e generation compatible with \u003ca href=\"https://hexdocs.pm/usage_rules/\"\u003e\u003ccode\u003eusage_rules\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[phx.new] Add \u003ccode\u003eusage_rules\u003c/code\u003e folder to installer, allowing to sync generic Phoenix rules into new projects\u003c/li\u003e\n\u003cli\u003e[phx.new] Use LiveView 1.1 release in generated code\u003c/li\u003e\n\u003cli\u003e[phx.new] Ensure theme selector and flash closing works without LiveView\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.4 (2025-07-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix phx.gen.presence PubSub server name for umbrella apps\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ephx.gen.live\u003c/code\u003e subscribing to pubsub in disconnected mounts\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.new] Initialize initial git repo when git is installed\u003c/li\u003e\n\u003cli\u003e[phx.new] Opt-in to HEEx \u003ccode\u003e:debug_tags_location\u003c/code\u003e in development\u003c/li\u003e\n\u003cli\u003e[phx.gen.live|html|json|context] Make context name optional and inflect based on schema when missing\u003c/li\u003e\n\u003cli\u003e[phx.gen.*] Use new Ecto 3.13 \u003ccode\u003eRepo.transact/2\u003c/code\u003e in generators\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Warn when using \u003ccode\u003ephx.gen.auth\u003c/code\u003e without esbuild as features assume \u003ccode\u003ephoenix_html.js\u003c/code\u003e in bundle\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003esecurity.md\u003c/code\u003e guide for security best practices\u003c/li\u003e\n\u003cli\u003e[phoenix.js] - Add fetch() support to LongPoll when XMLHTTPRequest is not available\u003c/li\u003e\n\u003cli\u003eOptimize parameter scrubbing by precompiling patterns\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.3 (2025-05-07)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.auth] Allow configuring the scope's assign key in phx.gen.auth\u003c/li\u003e\n\u003cli\u003e[phx.new] Do not override theme in root layout if explicitly set\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.2 (2025-04-29)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[phx.gen.live] Only subscribe to pubsub if connected\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Remove unused current_password field\u003c/li\u003e\n\u003cli\u003e[phx.gen.auth] Use context_app for scopes to fix generated scopes in umbrella apps\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.8.0-rc.1 (2025-04-16)\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/675e924f73da1a594e07ba22fcbda6636790ce4a\"\u003e\u003ccode\u003e675e924\u003c/code\u003e\u003c/a\u003e Release 1.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/21ee2610ab20557a9ad1fd8f7599f5b5fe5d9b5d\"\u003e\u003ccode\u003e21ee261\u003c/code\u003e\u003c/a\u003e Bump eslint from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6440\"\u003e#6440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a280eedf8a9850e45076977e368c7397c310db2a\"\u003e\u003ccode\u003ea280eed\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​eslint/js\u003c/code\u003e from 9.33.0 to 9.34.0 (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6439\"\u003e#6439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/c3d2fa919eb4cd19fa5fef95e97a36c71f936247\"\u003e\u003ccode\u003ec3d2fa9\u003c/code\u003e\u003c/a\u003e Touchup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/8502ed0107f0420498f1e3fac235bc80c86c6912\"\u003e\u003ccode\u003e8502ed0\u003c/code\u003e\u003c/a\u003e Clarify timestamp further. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/820b0badf4ad6eebdcafa88c3bcd67259dd9b9ee\"\u003e\u003ccode\u003e820b0ba\u003c/code\u003e\u003c/a\u003e Clarify timestamp. Closes \u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6438\"\u003e#6438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a64dd8c698785e6593c0a707a7f20190bc02a279\"\u003e\u003ccode\u003ea64dd8c\u003c/code\u003e\u003c/a\u003e Run mix compile before assets.build in generated aliases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6407\"\u003e#6407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/b0fe7ecd788ecc0d8c0bfbe6eb67b4fd4de57bb4\"\u003e\u003ccode\u003eb0fe7ec\u003c/code\u003e\u003c/a\u003e Update controllers documentation (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6416\"\u003e#6416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/a5646dfcf099e09d031081516efcc60835c73bef\"\u003e\u003ccode\u003ea5646df\u003c/code\u003e\u003c/a\u003e Fix some typos (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6386\"\u003e#6386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix/commit/14faee2ebebca4151572e9f3f1677fcac29a6c9d\"\u003e\u003ccode\u003e14faee2\u003c/code\u003e\u003c/a\u003e Fix controller.ex documentation typo (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix/issues/6417\"\u003e#6417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix/compare/v1.7.21...v1.8.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `phoenix_live_view` from 1.1.2 to 1.1.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/blob/v1.1.8/CHANGELOG.md\"\u003ephoenix_live_view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.8 (2025-08-20)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix race condition where patches were discarded when a join was still pending (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3957\"\u003e#3957\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.7 (2025-08-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression introduced in v1.1.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.6 (2025-08-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix live components in nested views accidentally destroying live components in parent views (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3953\"\u003e#3953\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.5 (2025-08-18)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix hooks not working when used inside of \u003ccode\u003ePhoenix.Component.portal/1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3950\"\u003e#3950\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix form participating custom elements not being reset to empty in some cases (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3946\"\u003e#3946\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003eassign_async\u003c/code\u003e to return a keyword list\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ePhoenix.LiveView.stream_async/4\u003c/code\u003e to asynchronously insert items into a stream\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.4 (2025-08-13)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix LiveComponent updates being inadvertently discarded in rare circumstances when locked DOM trees are restored (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3941\"\u003e#3941\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.1.3 (2025-08-05)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix warning when importing LiveView JS (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3926\"\u003e#3926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure form recovery respects fieldsets (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3921\"\u003e#3921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLiveViewTest: Fix crash when submitting a form with custom submitter, but without ID (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3927\"\u003e#3927\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLiveViewTest: Ensure whitespace in textarea content is preserved when submitting a form (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3928\"\u003e#3928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake hook types less strict (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3913\"\u003e#3913\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHTMLFormatter: do not try to format attributes into a single line when they are spread over multiple lines.\nThis follows the behavior of the Elixir formatter that also respects newlines.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/48386116c3bfe18592aaa3dcc3238aaaf1524d3b\"\u003e\u003ccode\u003e4838611\u003c/code\u003e\u003c/a\u003e release v1.1.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/223d351df0735319372f7a2c304e4949c5de17c4\"\u003e\u003ccode\u003e223d351\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/7e0b15ad6c66a9e126baf77fc96eaf851e3edf6c\"\u003e\u003ccode\u003e7e0b15a\u003c/code\u003e\u003c/a\u003e fix pending diff race condition when join is still pending (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3957\"\u003e#3957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ccc2132eb143bfe371070d64b640130cf58d1678\"\u003e\u003ccode\u003eccc2132\u003c/code\u003e\u003c/a\u003e release v1.1.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/a7aa090e63fa9ff3e906e744469ac0410574c950\"\u003e\u003ccode\u003ea7aa090\u003c/code\u003e\u003c/a\u003e release v1.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/fc04af42c857e24166762c7b3127d3a3e6761ef8\"\u003e\u003ccode\u003efc04af4\u003c/code\u003e\u003c/a\u003e check owner when sending cids_will_destroy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e2b8c11cc045df9cd40fd0d3c37d6279c1b7bee5\"\u003e\u003ccode\u003ee2b8c11\u003c/code\u003e\u003c/a\u003e release v1.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/ac0f7034c4b665bebeb000901d1e1a044f5c3fc4\"\u003e\u003ccode\u003eac0f703\u003c/code\u003e\u003c/a\u003e Update assets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/e0b1a1d6dd8a54d056e8c3773b6f616bcaeeeb67\"\u003e\u003ccode\u003ee0b1a1d\u003c/code\u003e\u003c/a\u003e add stream_async (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3944\"\u003e#3944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/commit/6c0bd38a32fb4ace24e2ad35b7897530999d57fa\"\u003e\u003ccode\u003e6c0bd38\u003c/code\u003e\u003c/a\u003e fix ownsElement to account for portals (\u003ca href=\"https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3951\"\u003e#3951\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/phoenixframework/phoenix_live_view/compare/v1.1.2...v1.1.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry` from 11.0.2 to 11.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/releases\"\u003esentry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-elixir/blob/master/CHANGELOG.md\"\u003esentry's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e11.0.3\u003c/h2\u003e\n\u003ch4\u003eVarious improvements\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow any version of opentelemetry deps and verify minimum versions internally - this makes it possible to use \u003ccode\u003esentry\u003c/code\u003e \u003cem\u003ewith tracing disabled\u003c/em\u003e along with older versions of opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/pull/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/14b95fd900af075f99b0c9b7451049fc4ad74e93\"\u003e\u003ccode\u003e14b95fd\u003c/code\u003e\u003c/a\u003e release: 11.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/0f1c3dd95718c2c56e46c551dc368b9203c57ced\"\u003e\u003ccode\u003e0f1c3dd\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md for 11.0.3 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/935\"\u003e#935\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/913ecff4b4847c3318b356885d2b60c2bdef9666\"\u003e\u003ccode\u003e913ecff\u003c/code\u003e\u003c/a\u003e Relax version reqs on opentelemetry deps (\u003ca href=\"https://redirect.github.com/getsentry/sentry-elixir/issues/931\"\u003e#931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-elixir/commit/f83b5080aec61e0618b01efe14de28fce5e914b3\"\u003e\u003ccode\u003ef83b508\u003c/code\u003e\u003c/a\u003e Merge branch 'release/11.0.2'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/sentry-elixir/compare/11.0.2...11.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/cr0t/lexin/pull/134","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cr0t%2Flexin/issues/134","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/134/packages"}},{"old_version":"0.59.0","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-08-26T03:30:26.000Z","version_change":"0.59.0 → 0.62.0","issue":{"uuid":"2773660198","node_id":"PR_kwDOOCxmKM6lUrIm","number":80,"state":"open","title":"chore(deps): bump image from 0.59.0 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-26T03:30:26.000Z","updated_at":"2025-08-26T03:30:27.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"image","old_version":"0.59.0","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.0 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.59.3\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.0...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.0\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/oasysgames/blockscout-v7-backend/pull/80","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/oasysgames%2Fblockscout-v7-backend/issues/80","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/80/packages"}},{"old_version":"0.61.1","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-08-22T07:14:10.000Z","version_change":"0.61.1 → 0.62.0","issue":{"uuid":"2765394801","node_id":"PR_kwDOH2dmWs6k1JNx","number":546,"state":"open","title":"build(deps): bump image from 0.61.1 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":["samhamilton"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-22T07:14:10.000Z","updated_at":"2025-08-26T15:46:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.61.1 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.61.1\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/martide/literature/pull/546","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/martide%2Fliterature/issues/546","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/546/packages"}},{"old_version":"0.55.2","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-08-19T08:31:57.000Z","version_change":"0.55.2 → 0.62.0","issue":{"uuid":"2755655959","node_id":"PR_kwDOPLELFc6kP_kX","number":37,"state":"open","title":"Bump image from 0.55.2 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-19T08:31:57.000Z","updated_at":"2025-08-19T08:31:58.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.55.2","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.55.2 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.59.3\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.55.2...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.55.2\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ozonechainofficial/ozone_explorer/pull/37","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ozonechainofficial%2Fozone_explorer/issues/37","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/37/packages"}},{"old_version":"0.59.3","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-08-19T08:24:37.000Z","version_change":"0.59.3 → 0.62.0","issue":{"uuid":"2755635456","node_id":"PR_kwDOPWXHQc6kP6kA","number":33,"state":"open","title":"Bump image from 0.59.3 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-19T08:24:37.000Z","updated_at":"2025-08-19T08:24:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.59.3","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.3 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.3...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.3\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/SafeerMohamed/blockscout-backend/pull/33","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/SafeerMohamed%2Fblockscout-backend/issues/33","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/33/packages"}},{"old_version":"0.59.3","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-08-12T05:50:40.000Z","version_change":"0.59.3 → 0.62.0","issue":{"uuid":"2737758608","node_id":"PR_kwDONT3nos6jLuGQ","number":23,"state":"open","title":"Bump image from 0.59.3 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-12T05:50:40.000Z","updated_at":"2025-08-12T05:50:41.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"image","old_version":"0.59.3","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.59.3 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.61.0\u003c/h2\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage version 0.60.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove the error messages for \u003ccode\u003eImage.crop/5\u003c/code\u003e when the crop bounding box is invalid. Closes \u003ca href=\"https://redirect.github.com/kipcole9/image/issues/190\"\u003e#190\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.band_and/1\u003c/code\u003e, \u003ccode\u003eImage.band_or/1\u003c/code\u003e and \u003ccode\u003eImage.band_xor/1\u003c/code\u003e to apply the appropriate boolean operation across the bands of an image.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd new (and different) \u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e and \u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e which return only coordinates whose values match the image maximum or minimum.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.1\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.1 released on July 14th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u0026quot;function get_req_message/1\u0026quot; compiler warning.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.61.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.61.0 released on July 2nd, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds \u003ccode\u003eImage.from_req_stream/2\u003c/code\u003e. This function returns a \u003ccode\u003eVix.Vips.Image.t/0\u003c/code\u003e from streaming a \u003ccode\u003eReq\u003c/code\u003e request using the \u003ccode\u003eReq.get/2\u003c/code\u003e option \u003ccode\u003einto: :self\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImage 0.60.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.60.0 released on June 27th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.maxpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.Math.minpos/2\u003c/code\u003e is renamed to \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e to better reflect its intent. The keyword options argument is also replaced with a simple integer argument \u003ccode\u003en\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe return value from \u003ccode\u003eImage.Math.top_n/2\u003c/code\u003e and \u003ccode\u003eImage.Math.bottom_n/2\u003c/code\u003e have changed. They will now return the form \u003ccode\u003e{max, max_x, max_y, [{x_max_1, y_max_1}, {x_max_2, y_max_2}, ...]}\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/defe9a1c55240c63a4f874d9239917b36f511435\"\u003e\u003ccode\u003edefe9a1\u003c/code\u003e\u003c/a\u003e Fix compiler warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/3da1613c63acad324fd0aabd2b6df5dae4fd8aff\"\u003e\u003ccode\u003e3da1613\u003c/code\u003e\u003c/a\u003e Fix changelog version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.59.3...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.59.3\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/mmilk23/image_unmirrorer/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmilk23%2Fimage_unmirrorer/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"}},{"old_version":"0.61.1","new_version":"0.62.0","update_type":"minor","path":null,"pr_created_at":"2025-08-12T01:31:34.000Z","version_change":"0.61.1 → 0.62.0","issue":{"uuid":"2737349559","node_id":"PR_kwDOBv3HhM6jKKO3","number":12962,"state":"closed","title":"chore(deps): bump image from 0.61.1 to 0.62.0","user":"dependabot[bot]","labels":["dependencies","elixir"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-13T12:53:27.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-12T01:31:34.000Z","updated_at":"2025-08-13T12:53:27.000Z","time_to_close":127313,"merged_at":"2025-08-13T12:53:26.000Z","merged_by":"vbaranov","closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"image","old_version":"0.61.1","new_version":"0.62.0","repository_url":"https://github.com/kipcole9/image"}],"path":null,"ecosystem":"hex"},"body":"Bumps [image](https://github.com/kipcole9/image) from 0.61.1 to 0.62.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kipcole9/image/releases\"\u003eimage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage version 0.62.0\u003c/h2\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/elixir-image/image/blob/main/CHANGELOG.md\"\u003eimage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eImage 0.62.0\u003c/h2\u003e\n\u003cp\u003eThis is the changelog for Image version 0.62.0 released on August 8th, 2025.  For older changelogs please consult the release tag on \u003ca href=\"https://github.com/elixir-image/image/tags\"\u003eGitHub\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBreaking Change\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e previously normalized the results which meant that the pixel counts for each bucket could not be resolved. The function no longer normalises the histogram so the raw pixel counts per bucket are retained.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eImage.histogram/1\u003c/code\u003e is fixed to \u003cem\u003enot\u003c/em\u003e normalize histogram entries. Therefore the histogram now returns correct pixel counts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eImage.Text.add_background_padding/2\u003c/code\u003e when the padding is derived from a base image.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eEnhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd \u003ccode\u003eImage.to_list/1\u003c/code\u003e to return an image as a nested list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded an example for \u003ccode\u003eImage.histogram/1\u003c/code\u003e to illustrate what data is returned and how to interpret it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/f9d734976112ea2f211ff5fc5f6d8be83ff452e1\"\u003e\u003ccode\u003ef9d7349\u003c/code\u003e\u003c/a\u003e Update changelog date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/b36b0322fa6387d93389da50ffc52203a3219ab5\"\u003e\u003ccode\u003eb36b032\u003c/code\u003e\u003c/a\u003e Don't write validation image again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/07018aa2237b027cfef8bbc64ca9449bfac072d8\"\u003e\u003ccode\u003e07018aa\u003c/code\u003e\u003c/a\u003e Fix k_means tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/219bc0800566983ab9af00aca6be54325191c192\"\u003e\u003ccode\u003e219bc08\u003c/code\u003e\u003c/a\u003e Remove test file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/e2530e500895580964ed346f7e744cd3796204a2\"\u003e\u003ccode\u003ee2530e5\u003c/code\u003e\u003c/a\u003e Add Image.to_list/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/6cee1dfe941d9b8fcb5c040f7219c1c65fa73faa\"\u003e\u003ccode\u003e6cee1df\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/87c816d469cf8804cd12b6cb15d5b0621d6aa912\"\u003e\u003ccode\u003e87c816d\u003c/code\u003e\u003c/a\u003e Don't normalize Image.histogram/1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/elixir-image/image/commit/102c78632e7485792ceba9b052a6774f8e07e92d\"\u003e\u003ccode\u003e102c786\u003c/code\u003e\u003c/a\u003e Fix version\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kipcole9/image/compare/v0.61.1...v0.62.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=image\u0026package-manager=hex\u0026previous-version=0.61.1\u0026new-version=0.62.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/blockscout/blockscout/pull/12962","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/blockscout%2Fblockscout/issues/12962","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12962/packages"}}]}