Commit Graph

7180 Commits

Author SHA1 Message Date
Thomas Eizinger
f11a902b3d refactor(rust): move dns-control to bin-shared (#9023)
Currently, the platform-specific code for controlling DNS resolution on
a system sits in `firezone-headless-client`. This code is also used by
the GUI client. This creates a weird compile-time dependency from the
GUI client to the headless client.

For other components that have platform-specific implementations, we use
the `firezone-bin-shared` crate. As a first step of resolving the
compile-time dependency, we move the `dns_control` module to
`firezone-bin-shared`.
2025-05-06 01:29:09 +00:00
dependabot[bot]
bea57c02c4 build(deps): bump libc from 0.2.171 to 0.2.172 in /rust (#9031)
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.171 to 0.2.172.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/libc/releases">libc's
releases</a>.</em></p>
<blockquote>
<h2>0.2.172</h2>
<h3>Added</h3>
<ul>
<li>Android: Add <code>getauxval</code> for 32-bit targets (<a
href="https://redirect.github.com/rust-lang/libc/pull/4338">#4338</a>)</li>
<li>Android: Add <code>if_tun.h</code> ioctls (<a
href="https://redirect.github.com/rust-lang/libc/pull/4379">#4379</a>)</li>
<li>Android: Define <code>SO_BINDTOIFINDEX</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4391">#4391</a>)</li>
<li>Cygwin: Add <code>posix_spawn_file_actions_add[f]chdir[_np]</code>
(<a
href="https://redirect.github.com/rust-lang/libc/pull/4387">#4387</a>)</li>
<li>Cygwin: Add new socket options (<a
href="https://redirect.github.com/rust-lang/libc/pull/4350">#4350</a>)</li>
<li>Cygwin: Add statfs &amp; fcntl (<a
href="https://redirect.github.com/rust-lang/libc/pull/4321">#4321</a>)</li>
<li>FreeBSD: Add <code>filedesc</code> and <code>fdescenttbl</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4327">#4327</a>)</li>
<li>Glibc: Add unstable support for _FILE_OFFSET_BITS=64 (<a
href="https://redirect.github.com/rust-lang/libc/pull/4345">#4345</a>)</li>
<li>Hermit: Add <code>AF_UNSPEC</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4344">#4344</a>)</li>
<li>Hermit: Add <code>AF_VSOCK</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4344">#4344</a>)</li>
<li>Illumos, NetBSD: Add <code>timerfd</code> APIs (<a
href="https://redirect.github.com/rust-lang/libc/pull/4333">#4333</a>)</li>
<li>Linux: Add <code>_IO</code>, <code>_IOW</code>, <code>_IOR</code>,
<code>_IOWR</code> to the exported API (<a
href="https://redirect.github.com/rust-lang/libc/pull/4325">#4325</a>)</li>
<li>Linux: Add <code>tcp_info</code> to uClibc bindings (<a
href="https://redirect.github.com/rust-lang/libc/pull/4347">#4347</a>)</li>
<li>Linux: Add further BPF program flags (<a
href="https://redirect.github.com/rust-lang/libc/pull/4356">#4356</a>)</li>
<li>Linux: Add missing INPUT_PROP_XXX flags from
<code>input-event-codes.h</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4326">#4326</a>)</li>
<li>Linux: Add missing TLS bindings (<a
href="https://redirect.github.com/rust-lang/libc/pull/4296">#4296</a>)</li>
<li>Linux: Add more constants from <code>seccomp.h</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4330">#4330</a>)</li>
<li>Linux: Add more glibc <code>ptrace_sud_config</code> and related
<code>PTRACE_*ET_SYSCALL_USER_DISPATCH_CONFIG</code>. (<a
href="https://redirect.github.com/rust-lang/libc/pull/4386">#4386</a>)</li>
<li>Linux: Add new netlink flags (<a
href="https://redirect.github.com/rust-lang/libc/pull/4288">#4288</a>)</li>
<li>Linux: Define ioctl codes on more architectures (<a
href="https://redirect.github.com/rust-lang/libc/pull/4382">#4382</a>)</li>
<li>Linux: Add missing <code>pthread_attr_setstack</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4349">#4349</a>)</li>
<li>Musl: Add missing <code>utmpx</code> API (<a
href="https://redirect.github.com/rust-lang/libc/pull/4332">#4332</a>)</li>
<li>Musl: Enable <code>getrandom</code> on all platforms (<a
href="https://redirect.github.com/rust-lang/libc/pull/4346">#4346</a>)</li>
<li>NuttX: Add more signal constants (<a
href="https://redirect.github.com/rust-lang/libc/pull/4353">#4353</a>)</li>
<li>QNX: Add QNX 7.1-iosock and 8.0 to list of additional cfgs (<a
href="https://redirect.github.com/rust-lang/libc/pull/4169">#4169</a>)</li>
<li>QNX: Add support for alternative Neutrino network stack
<code>io-sock</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4169">#4169</a>)</li>
<li>Redox: Add more <code>sys/socket.h</code> and <code>sys/uio.h</code>
definitions (<a
href="https://redirect.github.com/rust-lang/libc/pull/4388">#4388</a>)</li>
<li>Solaris: Temporarily define <code>O_DIRECT</code> and
<code>SIGINFO</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4348">#4348</a>)</li>
<li>Solarish: Add <code>secure_getenv</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4342">#4342</a>)</li>
<li>VxWorks: Add missing <code>d_type</code> member to
<code>dirent</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4352">#4352</a>)</li>
<li>VxWorks: Add missing signal-related constsants (<a
href="https://redirect.github.com/rust-lang/libc/pull/4352">#4352</a>)</li>
<li>VxWorks: Add more error codes (<a
href="https://redirect.github.com/rust-lang/libc/pull/4337">#4337</a>)</li>
</ul>
<h3>Deprecated</h3>
<ul>
<li>FreeBSD: Deprecate <code>TCP_PCAP_OUT</code> and
<code>TCP_PCAP_IN</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4381">#4381</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Cygwin: Fix member types of <code>statfs</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4324">#4324</a>)</li>
<li>Cygwin: Fix tests (<a
href="https://redirect.github.com/rust-lang/libc/pull/4357">#4357</a>)</li>
<li>Hermit: Make <code>AF_INET = 3</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4344">#4344</a>)</li>
<li>Musl: Fix the syscall table on RISC-V-32 (<a
href="https://redirect.github.com/rust-lang/libc/pull/4335">#4335</a>)</li>
<li>Musl: Fix the value of <code>SA_ONSTACK</code> on RISC-V-32 (<a
href="https://redirect.github.com/rust-lang/libc/pull/4335">#4335</a>)</li>
<li>VxWorks: Fix a typo in the <code>waitpid</code> parameter name (<a
href="https://redirect.github.com/rust-lang/libc/pull/4334">#4334</a>)</li>
</ul>
<h3>Removed</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/libc/blob/0.2.172/CHANGELOG.md">libc's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/rust-lang/libc/compare/0.2.171...0.2.172">0.2.172</a>
- 2025-04-14</h2>
<h3>Added</h3>
<ul>
<li>Android: Add <code>getauxval</code> for 32-bit targets (<a
href="https://redirect.github.com/rust-lang/libc/pull/4338">#4338</a>)</li>
<li>Android: Add <code>if_tun.h</code> ioctls (<a
href="https://redirect.github.com/rust-lang/libc/pull/4379">#4379</a>)</li>
<li>Android: Define <code>SO_BINDTOIFINDEX</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4391">#4391</a>)</li>
<li>Cygwin: Add <code>posix_spawn_file_actions_add[f]chdir[_np]</code>
(<a
href="https://redirect.github.com/rust-lang/libc/pull/4387">#4387</a>)</li>
<li>Cygwin: Add new socket options (<a
href="https://redirect.github.com/rust-lang/libc/pull/4350">#4350</a>)</li>
<li>Cygwin: Add statfs &amp; fcntl (<a
href="https://redirect.github.com/rust-lang/libc/pull/4321">#4321</a>)</li>
<li>FreeBSD: Add <code>filedesc</code> and <code>fdescenttbl</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4327">#4327</a>)</li>
<li>Glibc: Add unstable support for _FILE_OFFSET_BITS=64 (<a
href="https://redirect.github.com/rust-lang/libc/pull/4345">#4345</a>)</li>
<li>Hermit: Add <code>AF_UNSPEC</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4344">#4344</a>)</li>
<li>Hermit: Add <code>AF_VSOCK</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4344">#4344</a>)</li>
<li>Illumos, NetBSD: Add <code>timerfd</code> APIs (<a
href="https://redirect.github.com/rust-lang/libc/pull/4333">#4333</a>)</li>
<li>Linux: Add <code>_IO</code>, <code>_IOW</code>, <code>_IOR</code>,
<code>_IOWR</code> to the exported API (<a
href="https://redirect.github.com/rust-lang/libc/pull/4325">#4325</a>)</li>
<li>Linux: Add <code>tcp_info</code> to uClibc bindings (<a
href="https://redirect.github.com/rust-lang/libc/pull/4347">#4347</a>)</li>
<li>Linux: Add further BPF program flags (<a
href="https://redirect.github.com/rust-lang/libc/pull/4356">#4356</a>)</li>
<li>Linux: Add missing INPUT_PROP_XXX flags from
<code>input-event-codes.h</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4326">#4326</a>)</li>
<li>Linux: Add missing TLS bindings (<a
href="https://redirect.github.com/rust-lang/libc/pull/4296">#4296</a>)</li>
<li>Linux: Add more constants from <code>seccomp.h</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4330">#4330</a>)</li>
<li>Linux: Add more glibc <code>ptrace_sud_config</code> and related
<code>PTRACE_*ET_SYSCALL_USER_DISPATCH_CONFIG</code>. (<a
href="https://redirect.github.com/rust-lang/libc/pull/4386">#4386</a>)</li>
<li>Linux: Add new netlink flags (<a
href="https://redirect.github.com/rust-lang/libc/pull/4288">#4288</a>)</li>
<li>Linux: Define ioctl codes on more architectures (<a
href="https://redirect.github.com/rust-lang/libc/pull/4382">#4382</a>)</li>
<li>Linux: Add missing <code>pthread_attr_setstack</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4349">#4349</a>)</li>
<li>Musl: Add missing <code>utmpx</code> API (<a
href="https://redirect.github.com/rust-lang/libc/pull/4332">#4332</a>)</li>
<li>Musl: Enable <code>getrandom</code> on all platforms (<a
href="https://redirect.github.com/rust-lang/libc/pull/4346">#4346</a>)</li>
<li>NuttX: Add more signal constants (<a
href="https://redirect.github.com/rust-lang/libc/pull/4353">#4353</a>)</li>
<li>QNX: Add QNX 7.1-iosock and 8.0 to list of additional cfgs (<a
href="https://redirect.github.com/rust-lang/libc/pull/4169">#4169</a>)</li>
<li>QNX: Add support for alternative Neutrino network stack
<code>io-sock</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4169">#4169</a>)</li>
<li>Redox: Add more <code>sys/socket.h</code> and <code>sys/uio.h</code>
definitions (<a
href="https://redirect.github.com/rust-lang/libc/pull/4388">#4388</a>)</li>
<li>Solaris: Temporarily define <code>O_DIRECT</code> and
<code>SIGINFO</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4348">#4348</a>)</li>
<li>Solarish: Add <code>secure_getenv</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4342">#4342</a>)</li>
<li>VxWorks: Add missing <code>d_type</code> member to
<code>dirent</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4352">#4352</a>)</li>
<li>VxWorks: Add missing signal-related constsants (<a
href="https://redirect.github.com/rust-lang/libc/pull/4352">#4352</a>)</li>
<li>VxWorks: Add more error codes (<a
href="https://redirect.github.com/rust-lang/libc/pull/4337">#4337</a>)</li>
</ul>
<h3>Deprecated</h3>
<ul>
<li>FreeBSD: Deprecate <code>TCP_PCAP_OUT</code> and
<code>TCP_PCAP_IN</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4381">#4381</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Cygwin: Fix member types of <code>statfs</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4324">#4324</a>)</li>
<li>Cygwin: Fix tests (<a
href="https://redirect.github.com/rust-lang/libc/pull/4357">#4357</a>)</li>
<li>Hermit: Make <code>AF_INET = 3</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4344">#4344</a>)</li>
<li>Musl: Fix the syscall table on RISC-V-32 (<a
href="https://redirect.github.com/rust-lang/libc/pull/4335">#4335</a>)</li>
<li>Musl: Fix the value of <code>SA_ONSTACK</code> on RISC-V-32 (<a
href="https://redirect.github.com/rust-lang/libc/pull/4335">#4335</a>)</li>
<li>VxWorks: Fix a typo in the <code>waitpid</code> parameter name (<a
href="https://redirect.github.com/rust-lang/libc/pull/4334">#4334</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a5eab581f9"><code>a5eab58</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/libc/issues/4410">#4410</a>
from tgross35/release-libc</li>
<li><a
href="481eca7cc3"><code>481eca7</code></a>
chore: release libc 0.2.172</li>
<li><a
href="ce2edbbaa9"><code>ce2edbb</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/libc/issues/4399">#4399</a>
from tgross35/backport-triagebot-branch-warn</li>
<li><a
href="31b3200907"><code>31b3200</code></a>
Suggest stable-nominated in the PR template</li>
<li><a
href="3bffe1d58a"><code>3bffe1d</code></a>
Make triagebot warn on non-default branches</li>
<li><a
href="03e6ffc8c4"><code>03e6ffc</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/libc/issues/4396">#4396</a>
from tgross35/backport-serrano</li>
<li><a
href="f9a47ac811"><code>f9a47ac</code></a>
Define SO_BINDTOIFINDEX on Android</li>
<li><a
href="a358dae479"><code>a358dae</code></a>
Add missing utmpx apis for linux musl</li>
<li><a
href="1ff2f2181a"><code>1ff2f21</code></a>
adding linux glibc ptrace_sud_config and related
PTRACE_*ET_SYSCALL_USER_DISP...</li>
<li><a
href="55c58c956d"><code>55c58c9</code></a>
Add more redox sys/socket.h and sys/uio.h definitions</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-lang/libc/compare/0.2.171...0.2.172">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.171&new-version=0.2.172)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2025-05-06 01:26:26 +00:00
Thomas Eizinger
5c9dd439e2 chore(rust): filter spammy WinTUN errors in the sentry_layer (#9036)
By default, we send all WARN and ERROR logs to Sentry. This also
includes logs emitted via the `log` crate via a facade that `tracing`
installs. The wintun-rs bindings install such a logger in the native
WinTUN code. The WinTUN code has a bug where it doesn't handle adapter
removal idempotently. That is, if the adapter has already been removed
it logs an error instead of succeeding.

Typically, such logs can easily be suppressed in Sentry. In this case
however, Sentry fails to group these different logs together because
WinTUN's error message contains a path to a temporary directory which is
different every time it gets executed. As such, these logs spam our
Sentry instance with no way for us to disable them with existing tools.

The WireGuard mailing list for WinTUN also appears to be dead. We
attempted to contact the list in February and have not received a reply
yet. The last archive goes back to November 2024 [0]. We use WinTUN as a
prebuild and signed DLL so we also cannot meaningfully patch this on our
end without upstreaming it.

Thus, as a last resort, we add some infrastructure to our logging setup
that allows us to client-side filter events based on certain patterns of
the message and a log level.

[0]: https://lists.zx2c4.com/pipermail/wireguard/

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-06 01:16:18 +00:00
Thomas Eizinger
005b6fe863 feat(windows): optimise network change detection (#9021)
Presently, the network change detection on Windows is very naive and
simply emits a change event everytime _anything_ changes. We can
optimise this and therefore improve the start-up time of Firezone by:

- Filtering out duplicate events
- Filtering out network change events for our own network adapter

This reduces the number of network change events to 1 during startup. As
far as I can tell from the code comments in this area, we explicitly
send this one to ensure we don't run into a race condition whilst we are
starting up.

Resolves: #8905
2025-05-06 00:23:27 +00:00
Thomas Eizinger
806996c245 refactor(rust): move signals to bin-shared (#9024)
The `signals` module isn't something headless-client specific and should
live in our `bin-shared` crate. Once the `ipc_service` module is
decoupled from the headless-client crate, it will be used by both the
headless client and IPC service (which then will be defined in the GUI
client crate).
2025-05-05 23:34:26 +00:00
Thomas Eizinger
ce51c40d0d refactor(rust): move known_dirs to bin-shared (#9026)
The `known_dirs` module is used across the headless-client and the GUI
client. It should live in `bin-shared` where all the other
cross-platform modules are.

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
2025-05-05 22:45:53 +00:00
Thomas Eizinger
d833998b85 feat: update changelog as part of bump-versions script (#9019)
After we missed this again recently, I figured automating this shouldn't
actually be too difficult.

Co-authored-by: Claude
2025-05-05 21:44:31 +00:00
dependabot[bot]
2c467f7b4e build(deps): bump anyhow from 1.0.97 to 1.0.98 in /rust (#9033)
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.97 to 1.0.98.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/anyhow/releases">anyhow's
releases</a>.</em></p>
<blockquote>
<h2>1.0.98</h2>
<ul>
<li>Add <a
href="https://docs.rs/anyhow/1/anyhow/struct.Error.html#method.into_boxed_dyn_error"><code>self.into_boxed_dyn_error()</code></a>
and <a
href="https://docs.rs/anyhow/1/anyhow/struct.Error.html#method.reallocate_into_boxed_dyn_error_without_backtrace"><code>self.reallocate_into_boxed_dyn_error_without_backtrace()</code></a>
methods for anyhow::Error (<a
href="https://redirect.github.com/dtolnay/anyhow/issues/415">#415</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="709fe86f04"><code>709fe86</code></a>
Release 1.0.98</li>
<li><a
href="cbc1ad2b16"><code>cbc1ad2</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/anyhow/issues/415">#415</a>
from dtolnay/intodyn</li>
<li><a
href="e1a2017668"><code>e1a2017</code></a>
Add 2 different conversions to Box&lt;dyn Error + Send + Sync +
'static&gt;</li>
<li><a
href="29f2eddd15"><code>29f2edd</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/anyhow/issues/416">#416</a>
from dtolnay/oldnostd</li>
<li><a
href="2244db872f"><code>2244db8</code></a>
Omit unused object_boxed from vtable in old no-std rustc</li>
<li><a
href="213a9c2e6c"><code>213a9c2</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/anyhow/issues/414">#414</a>
from dtolnay/nightly</li>
<li><a
href="02aa6b6faa"><code>02aa6b6</code></a>
Make all nightly go through the module that was probed</li>
<li>See full diff in <a
href="https://github.com/dtolnay/anyhow/compare/1.0.97...1.0.98">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=anyhow&package-manager=cargo&previous-version=1.0.97&new-version=1.0.98)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 12:38:03 +00:00
dependabot[bot]
eed093710a build(deps): bump tokio-util from 0.7.13 to 0.7.15 in /rust (#9032)
Bumps [tokio-util](https://github.com/tokio-rs/tokio) from 0.7.13 to
0.7.15.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4d4d12613b"><code>4d4d126</code></a>
chore: prepare tokio-util v0.7.15 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7283">#7283</a>)</li>
<li><a
href="5490267a79"><code>5490267</code></a>
fs: update the mockall dev dependency to 0.13.0 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7234">#7234</a>)</li>
<li><a
href="1434b32b5a"><code>1434b32</code></a>
examples: improve echo example consistency (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7256">#7256</a>)</li>
<li><a
href="159a3b2c85"><code>159a3b2</code></a>
rt(unstable): remove alt multi-threaded runtime (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7275">#7275</a>)</li>
<li><a
href="ce87dcfbf0"><code>ce87dcf</code></a>
runtime: document the queue behavior of <code>spawn_blocking</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7269">#7269</a>)</li>
<li><a
href="d41d49d202"><code>d41d49d</code></a>
metrics: fix panic comment in <code>max_error</code> docs (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7273">#7273</a>)</li>
<li><a
href="7a6c424f6e"><code>7a6c424</code></a>
process: add <code>Command::spawn_with</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7249">#7249</a>)</li>
<li><a
href="c3037adac9"><code>c3037ad</code></a>
task: properly handle removed entries in <code>JoinMap</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7264">#7264</a>)</li>
<li><a
href="964fd06e0f"><code>964fd06</code></a>
benches: add helper functions for building runtimes (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7260">#7260</a>)</li>
<li><a
href="817fa605ee"><code>817fa60</code></a>
fs: avoid some copies in <code>tokio::fs::write</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/7199">#7199</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.13...tokio-util-0.7.15">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tokio-util&package-manager=cargo&previous-version=0.7.13&new-version=0.7.15)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 12:34:48 +00:00
dependabot[bot]
1294e20859 build(deps): bump clap from 4.5.34 to 4.5.37 in /rust (#9030)
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.34 to 4.5.37.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/releases">clap's
releases</a>.</em></p>
<blockquote>
<h2>v4.5.37</h2>
<h2>[4.5.37] - 2025-04-18</h2>
<h3>Features</h3>
<ul>
<li>Added <code>ArgMatches::try_clear_id()</code></li>
</ul>
<h2>v4.5.36</h2>
<h2>[4.5.36] - 2025-04-11</h2>
<h3>Fixes</h3>
<ul>
<li><em>(help)</em> Revert 4.5.35's &quot;Don't leave space for shorts
if there are none&quot; for now</li>
</ul>
<h2>v4.5.35</h2>
<h2>[4.5.35] - 2025-04-01</h2>
<h3>Fixes</h3>
<ul>
<li><em>(help)</em> Align positionals and flags when put in the same
<code>help_heading</code></li>
<li><em>(help)</em> Don't leave space for shorts if there are none</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's
changelog</a>.</em></p>
<blockquote>
<h2>[4.5.37] - 2025-04-18</h2>
<h3>Features</h3>
<ul>
<li>Added <code>ArgMatches::try_clear_id()</code></li>
</ul>
<h2>[4.5.36] - 2025-04-11</h2>
<h3>Fixes</h3>
<ul>
<li><em>(help)</em> Revert 4.5.35's &quot;Don't leave space for shorts
if there are none&quot; for now</li>
</ul>
<h2>[4.5.35] - 2025-04-01</h2>
<h3>Fixes</h3>
<ul>
<li><em>(help)</em> Align positionals and flags when put in the same
<code>help_heading</code></li>
<li><em>(help)</em> Don't leave space for shorts if there are none</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c54ffa17f5"><code>c54ffa1</code></a>
chore: Release</li>
<li><a
href="26eab7b4e5"><code>26eab7b</code></a>
docs: Update changelog</li>
<li><a
href="f275804c23"><code>f275804</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5805">#5805</a>
from epage/style</li>
<li><a
href="7c7742cae8"><code>7c7742c</code></a>
fix(complete): Adjust dynamic for MSRV</li>
<li><a
href="f1ae3c0e49"><code>f1ae3c0</code></a>
style: Make clippy happy</li>
<li><a
href="5c932b7079"><code>5c932b7</code></a>
chore(deps): Update Rust crate divan to v0.1.15 (<a
href="https://redirect.github.com/clap-rs/clap/issues/5798">#5798</a>)</li>
<li><a
href="bc0537f589"><code>bc0537f</code></a>
chore(deps): Update compatible (dev) (<a
href="https://redirect.github.com/clap-rs/clap/issues/5797">#5797</a>)</li>
<li><a
href="7a6475e3c1"><code>7a6475e</code></a>
chore: Release</li>
<li><a
href="0266c4197f"><code>0266c41</code></a>
docs: Update changelog</li>
<li><a
href="6ec0b43448"><code>6ec0b43</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5791">#5791</a>
from okapia/zsh-default-fallback</li>
<li>Additional commits viewable in <a
href="https://github.com/clap-rs/clap/compare/clap_complete-v4.5.34...clap_complete-v4.5.37">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.5.34&new-version=4.5.37)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 12:34:12 +00:00
Thomas Eizinger
37529803ce build(rust): bump otel ecosystem crates to 0.29 (#9029) 2025-05-05 12:33:07 +00:00
Thomas Eizinger
81ba49e2bf ci(rust): reorder static analysis (#9025)
Running `clippy` first is more useful because it provides better
feedback around compile-errors. When working with cross-platform code,
it is often the case that one needs to push to CI to ensure everything
builds. Therefore, getting fast feedback is important.
2025-05-05 12:29:57 +00:00
Thomas Eizinger
80335676b1 refactor(rust): move uptime to bin-shared (#9027)
The `uptime` module from `firezone-headless-client` is also used in the
GUI client. In order to decouple this dependency, we move the module to
`bin-shared`, next to the other cross-plaform modules.
2025-05-05 12:28:26 +00:00
Thomas Eizinger
2d802edf6a fix(connlib): _always_ use one IP stack for relayed connections (#9018)
At the moment, Firezone already attempts to prefer the same IP stack
across relayed connections all the way through to the Gateway. This is
achieved with a feature in str0m implemented in
https://github.com/algesten/str0m/pull/640 where the `IceAgent` computes
the local preference of an added candidate such that an IPv4 candidate
allocated over an IPv4 network has a higher preference than an IPv6
candidate allocated over an IPv4 network.

If a candidate gets accepted by the local agent, it is signaled to the
remote via our control protocol. The remote peer then adds the candidate
as a remote candidate and the ICE process starts by pairing them with
local ones and testing connectivity.

Currently, str0m's API consumes the candidate and only returns a `bool`
whether it should be sent signaled to the remote. This means the local
preference computed as part of `add_local_candidate` **is not**
reflected in the priority of the candidate sent to the remote. As a
result, if the controlled agent (i.e. the Gateway) is behind symmetric
NAT and therefore only has relay candidates available, the preference of
IPv4 over IPv6 candidates on an IPv4 network is lost. This is what we
are seeing in #8998.

This changes with https://github.com/algesten/str0m/pull/650 being
merged to `main` which we are updating to with this PR. Now,
`add_local_candidate` returns an `Option<&Candidate>` which has been
modified with the local preference of the `IceAgent` around the
preferred IP stack of relay candidates. As such, the priority calculated
and signaled to the remote embeds this information and will be taken
into account by the controlling agent (i.e. the Client) when nominating
a pair.

Resolves: #8998
2025-05-05 01:11:28 +00:00
Thomas Eizinger
56a4cad124 fix(connlib): ensure ICE timing config applies immediately (#9014)
When there is no traffic going through the tunnel, Firezone switches
into a low-power mode where it only sends STUN bindings every 60s. As
soon as we see traffic, we move out of this low-power mode to detect
connectivity problems early.

Applying this new timing config however does not clear some internal
caches in `str0m` and therefore, it can take up to the previously set
timeout value until str0m actually picks up on the new timers.

This is being fixed in https://github.com/algesten/str0m/pull/649. Until
that is merged, we depend on our fork that has these changes merged
already.

Resolves: #8999
2025-05-02 14:13:28 +00:00
Thomas Eizinger
ea475c721a docs(website): update changelog for latest releases (#9015)
In #9013, we forgot to update the changelogs for Apple Clients and the
Gateway.
2025-05-02 13:16:28 +00:00
Thomas Eizinger
7d96953265 ci: add integration test with ECN enabled (#9012) 2025-05-02 10:25:12 +00:00
dependabot[bot]
5fc55ed357 build(deps): bump the aya group in /rust with 5 updates (#8993)
Bumps the aya group in /rust with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [aya](https://github.com/aya-rs/aya) | ``c65a200`` | ``583709f`` |
| [aya-build](https://github.com/aya-rs/aya) | ``c65a200`` | ``583709f``
|
| [aya-ebpf](https://github.com/aya-rs/aya) | ``c65a200`` | ``583709f``
|
| [aya-log](https://github.com/aya-rs/aya) | ``c65a200`` | ``583709f`` |
| [aya-log-ebpf](https://github.com/aya-rs/aya) | ``c65a200`` |
``583709f`` |

Updates `aya` from `c65a200` to `583709f`
<details>
<summary>Commits</summary>
<ul>
<li><a
href="583709f6a0"><code>583709f</code></a>
appease <code>clippy::uninlined-format-args</code></li>
<li>See full diff in <a
href="c65a200e9a...583709f6a0">compare
view</a></li>
</ul>
</details>
<br />

Updates `aya-build` from `c65a200` to `583709f`
<details>
<summary>Commits</summary>
<ul>
<li><a
href="583709f6a0"><code>583709f</code></a>
appease <code>clippy::uninlined-format-args</code></li>
<li>See full diff in <a
href="c65a200e9a...583709f6a0">compare
view</a></li>
</ul>
</details>
<br />

Updates `aya-ebpf` from `c65a200` to `583709f`
<details>
<summary>Commits</summary>
<ul>
<li><a
href="583709f6a0"><code>583709f</code></a>
appease <code>clippy::uninlined-format-args</code></li>
<li>See full diff in <a
href="c65a200e9a...583709f6a0">compare
view</a></li>
</ul>
</details>
<br />

Updates `aya-log` from `c65a200` to `583709f`
<details>
<summary>Commits</summary>
<ul>
<li><a
href="583709f6a0"><code>583709f</code></a>
appease <code>clippy::uninlined-format-args</code></li>
<li>See full diff in <a
href="c65a200e9a...583709f6a0">compare
view</a></li>
</ul>
</details>
<br />

Updates `aya-log-ebpf` from `c65a200` to `583709f`
<details>
<summary>Commits</summary>
<ul>
<li><a
href="583709f6a0"><code>583709f</code></a>
appease <code>clippy::uninlined-format-args</code></li>
<li>See full diff in <a
href="c65a200e9a...583709f6a0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> 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)
- `@dependabot ignore <dependency name> 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)
- `@dependabot ignore <dependency name>` 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)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 08:17:21 +00:00
Jamil
6e0e7343ba chore: release Apple & Gateway with ECN fix (#9013) 2025-05-02 00:16:40 -07:00
Thomas Eizinger
513e0a400c docs(website): update Apple changelog (#9011) 2025-05-02 05:55:25 +00:00
Thomas Eizinger
41cae2ed3b ci(rust): only run proptest's regression seeds on Windows (#9010)
GitHub's Windows runners are very slow. In order to not prolong CI runs
too much, we set the number of _additional_ proptest cases for Windows
to 0. This means we still run all the regression seeds that we've
accumulated in `proptest-regressions/tests.txt` and simply don't
generate any new ones on top of it.

This is also a good benchmark to ensure that our regression seeds cover
all cases that we are testing further down below using the coverage
grepping.

Related: #8948
2025-05-02 05:45:21 +00:00
Thomas Eizinger
0aab954fa9 fix(connlib): never clear ECT from IP packets (#9009)
ECN information is helpful to allow the congestion controllers to more
easily fine-tune their send and receive windows. When a Firezone Client
receives an IP packet where the ECN bits signal an ECN capable
transport, we mirror this bit on the UDP datagram that carries the
encrypted IP packet.

When receiving a datagram with ECN bits set, the Gateway will then apply
these bits to the decrypted IP packet and pass it along towards its
destination.

This implementation is unfortunately a bit too naive. Not all devices on
the Internet support ECN and therefore, we may receive a datagram that
has its ECN bits cleared when the ECN bits on the inner IP packet still
signal an ECN capable transport. In this case, we should _not_ override
the ECN bits and instead pass the IP packet along as is. Network devices
along the path between Gateway and Resource may still use these ECN bits
to signal congestion.

We fix this by making the `with_ecn` function on `IpPacket` private. It
is not meant to be used outside of the module. We supersede it with a
`with_ecn_from_transport` function that implements the above logic.

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2025-05-02 05:28:19 +00:00
Thomas Eizinger
43c4c5f91b feat(gateway): add CLI flag to validate checksums of all packets (#9007)
Validating checksums can be expensive so this is off-by-default. The
intent is to turn it on in our staging environment so we can detects
bugs in our packet handling code during testing.
2025-05-02 03:50:07 +00:00
Thomas Eizinger
471483f5d8 fix(connlib): update checksum after setting ECN information (#9005)
When setting ECN information on an IP packet, the header changes and
therefore, we need to update the IP checksum. MacOS attempts to open TCP
connections with ECN information but will fallback to non-ECT if it
detects packet loss. Failing to update the checksums caused the packet
to get dropped at the remote TCP stack and therefore triggered a
retransmission on the MacOS side.

Related: #8899
2025-05-02 02:35:23 +00:00
Thomas Eizinger
0fd14b993b chore(connlib): buffer most recent TCP SYN (#9004)
When establishing connections that take longer than the TCP RTO, we may
see duplicate TCP SYNs. Those have different timestamps from each other
but are otherwise equal. To provide more accurate timing information to
the TCP stack, we now keep the latest TCP SYN around instead of the very
first one.
2025-05-02 01:06:14 +00:00
dependabot[bot]
79c05dc881 build(deps): bump resolv-conf from 0.7.1 to 0.7.3 in /rust (#8996)
Bumps [resolv-conf](https://github.com/hickory-dns/resolv-conf) from
0.7.1 to 0.7.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/hickory-dns/resolv-conf/releases">resolv-conf's
releases</a>.</em></p>
<blockquote>
<h2>0.7.3</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump version and add dummy / compat &quot;system&quot; feature by <a
href="https://github.com/decathorpe"><code>@​decathorpe</code></a> in <a
href="https://redirect.github.com/hickory-dns/resolv-conf/pull/48">hickory-dns/resolv-conf#48</a></li>
</ul>
<h2>0.7.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Replace external crate with inline code by <a
href="https://github.com/Jake-Shadle"><code>@​Jake-Shadle</code></a> in
<a
href="https://redirect.github.com/hickory-dns/resolv-conf/pull/44">hickory-dns/resolv-conf#44</a></li>
<li>Hostname tweaks by <a
href="https://github.com/djc"><code>@​djc</code></a> in <a
href="https://redirect.github.com/hickory-dns/resolv-conf/pull/45">hickory-dns/resolv-conf#45</a></li>
<li>Style updates by <a
href="https://github.com/djc"><code>@​djc</code></a> in <a
href="https://redirect.github.com/hickory-dns/resolv-conf/pull/46">hickory-dns/resolv-conf#46</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5d8efe95fe"><code>5d8efe9</code></a>
Bump version to 0.7.3</li>
<li><a
href="846de1b7eb"><code>846de1b</code></a>
Add back dummy &quot;system&quot; feature for compatibility with
0.7.1</li>
<li><a
href="47effe2e2f"><code>47effe2</code></a>
Use match ergonomics</li>
<li><a
href="1fc695df24"><code>1fc695d</code></a>
Use inline format arguments</li>
<li><a
href="7f202b8c8d"><code>7f202b8</code></a>
Bump version to 0.7.2</li>
<li><a
href="b1f9e69538"><code>b1f9e69</code></a>
Move version up</li>
<li><a
href="523747af6e"><code>523747a</code></a>
Reduce MSRV to 1.61</li>
<li><a
href="ef960824d6"><code>ef96082</code></a>
Postpone String allocation</li>
<li><a
href="07c06becbd"><code>07c06be</code></a>
Simplify domain_from_host()</li>
<li><a
href="a2b71ca625"><code>a2b71ca</code></a>
Extend domain_from_host() tests</li>
<li>Additional commits viewable in <a
href="https://github.com/hickory-dns/resolv-conf/compare/v0.7.1...v0.7.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=resolv-conf&package-manager=cargo&previous-version=0.7.1&new-version=0.7.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 00:49:33 +00:00
dependabot[bot]
5af50f4f6d build(deps): bump chrono from 0.4.39 to 0.4.41 in /rust (#8994)
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.39 to
0.4.41.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/chronotope/chrono/releases">chrono's
releases</a>.</em></p>
<blockquote>
<h2>v0.4.41</h2>
<h2>What's Changed</h2>
<ul>
<li>Add <code>subsec_micros</code> and <code>subsec_millis</code>
methods to <code>TimeDelta</code> by <a
href="https://github.com/ggoetz"><code>@​ggoetz</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1668">chronotope/chrono#1668</a></li>
<li>Deprecate <code>NaiveDateTime::UNIX_EPOCH</code> by <a
href="https://github.com/robertbastian"><code>@​robertbastian</code></a>
in <a
href="https://redirect.github.com/chronotope/chrono/pull/1670">chronotope/chrono#1670</a></li>
<li>Implement <code>as_seconds_f32</code> and
<code>as_seconds_f64</code> for <code>TimeDelta</code> by <a
href="https://github.com/ggoetz"><code>@​ggoetz</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1671">chronotope/chrono#1671</a></li>
<li>chore: fix some comments by <a
href="https://github.com/jimmycathy"><code>@​jimmycathy</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1677">chronotope/chrono#1677</a></li>
<li>Add <code>num_days_in_month</code> method to <code>Datelike</code>
trait by <a href="https://github.com/aslilac"><code>@​aslilac</code></a>
in <a
href="https://redirect.github.com/chronotope/chrono/pull/1673">chronotope/chrono#1673</a></li>
<li>add <code>WeekdaySet</code>, a collection of <code>Weekday</code>
that is <code>Copy</code> by <a
href="https://github.com/Kinrany"><code>@​Kinrany</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1676">chronotope/chrono#1676</a></li>
<li>WeekdaySet tweaks by <a
href="https://github.com/djc"><code>@​djc</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1680">chronotope/chrono#1680</a></li>
<li>Upgrade to windows-bindgen 0.61 by <a
href="https://github.com/djc"><code>@​djc</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1682">chronotope/chrono#1682</a></li>
<li>Implemented a consistent Eq trait for NaiveWeek by <a
href="https://github.com/Splashling1789"><code>@​Splashling1789</code></a>
in <a
href="https://redirect.github.com/chronotope/chrono/pull/1687">chronotope/chrono#1687</a></li>
<li>TimeZone::from_posix_tz: Treat empty TZ variable as UTC by <a
href="https://github.com/drinkcat"><code>@​drinkcat</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1691">chronotope/chrono#1691</a></li>
<li>Add support for lossy format strings by <a
href="https://github.com/Qelxiros"><code>@​Qelxiros</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1693">chronotope/chrono#1693</a></li>
</ul>
<h2>0.4.40</h2>
<h2>What's Changed</h2>
<ul>
<li>Add Month::num_days() by <a
href="https://github.com/djc"><code>@​djc</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1645">chronotope/chrono#1645</a></li>
<li>Update Windows dependencies by <a
href="https://github.com/kennykerr"><code>@​kennykerr</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1646">chronotope/chrono#1646</a></li>
<li>Feature/round_up method on DurationRound trait by <a
href="https://github.com/MagnumTrader"><code>@​MagnumTrader</code></a>
in <a
href="https://redirect.github.com/chronotope/chrono/pull/1651">chronotope/chrono#1651</a></li>
<li>Expose <code>write_to</code> for <code>DelayedFormat</code> by <a
href="https://github.com/tugtugtug"><code>@​tugtugtug</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1654">chronotope/chrono#1654</a></li>
<li>Update LICENSE.txt by <a
href="https://github.com/maximevtush"><code>@​maximevtush</code></a> in
<a
href="https://redirect.github.com/chronotope/chrono/pull/1656">chronotope/chrono#1656</a></li>
<li>docs: fix minor typo by <a
href="https://github.com/samfolo"><code>@​samfolo</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1659">chronotope/chrono#1659</a></li>
<li>Use NaiveDateTime for internal tz_info methods. by <a
href="https://github.com/AVee"><code>@​AVee</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1658">chronotope/chrono#1658</a></li>
<li>Upgrade to windows-bindgen 0.60 by <a
href="https://github.com/djc"><code>@​djc</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1665">chronotope/chrono#1665</a></li>
<li>Add quarter (%q) date string specifier by <a
href="https://github.com/drinkcat"><code>@​drinkcat</code></a> in <a
href="https://redirect.github.com/chronotope/chrono/pull/1666">chronotope/chrono#1666</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d1de1d95ea"><code>d1de1d9</code></a>
Bump version to 0.4.41</li>
<li><a
href="e2bd1d1d67"><code>e2bd1d1</code></a>
Add support for lenient format strings (<a
href="https://redirect.github.com/chronotope/chrono/issues/1693">#1693</a>)</li>
<li><a
href="2c95b0aca8"><code>2c95b0a</code></a>
Tweak expression to avoid repetition</li>
<li><a
href="ebeef99426"><code>ebeef99</code></a>
TimeZone::from_posix_tz: Treat empty TZ variable as UTC</li>
<li><a
href="dc068f0373"><code>dc068f0</code></a>
Tweak style on NaiveWeek fixes</li>
<li><a
href="b267a4fe90"><code>b267a4f</code></a>
Implemented consistent Hash and Eq trait for NaiveWeek</li>
<li><a
href="7c0bd136d6"><code>7c0bd13</code></a>
Apply suggestions from clippy 1.86</li>
<li><a
href="104cdc73cb"><code>104cdc7</code></a>
Bump MSRV to 1.62</li>
<li><a
href="6a853015b7"><code>6a85301</code></a>
Upgrade to windows-bindgen 0.61</li>
<li><a
href="265c79b2a5"><code>265c79b</code></a>
Tweak WeekdaySet method order</li>
<li>Additional commits viewable in <a
href="https://github.com/chronotope/chrono/compare/v0.4.39...v0.4.41">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=chrono&package-manager=cargo&previous-version=0.4.39&new-version=0.4.41)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 00:46:12 +00:00
Jamil
8a7f248dda fix(portal): ignore expected replication connection failures (#9003)
These are expected during deploys, so don't log them as errors. If the
Supervisor fails to start us after exhausting all attempts, it will log
an error.
2025-05-02 00:45:02 +00:00
dependabot[bot]
b463439093 build(deps): bump serde from 1.0.217 to 1.0.219 in /rust (#8995)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.217 to
1.0.219.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/serde-rs/serde/releases">serde's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.219</h2>
<ul>
<li>Prevent <code>absolute_paths</code> Clippy restriction being
triggered inside macro-generated code (<a
href="https://redirect.github.com/serde-rs/serde/issues/2906">#2906</a>,
thanks <a
href="https://github.com/davidzeng0"><code>@​davidzeng0</code></a>)</li>
</ul>
<h2>v1.0.218</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="49d098debd"><code>49d098d</code></a>
Release 1.0.219</li>
<li><a
href="40f1d19dbe"><code>40f1d19</code></a>
Wrap dummy.rs to 80 columns</li>
<li><a
href="514848b584"><code>514848b</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2906">#2906</a>
from davidzeng0/master</li>
<li><a
href="168b6cf789"><code>168b6cf</code></a>
fix clippy absolute paths warning</li>
<li><a
href="a8bdd17333"><code>a8bdd17</code></a>
Remove unused Punctuated import</li>
<li><a
href="1c9601358b"><code>1c96013</code></a>
Resolve mem_replace_with_default clippy lint</li>
<li><a
href="f0d1ae08f3"><code>f0d1ae0</code></a>
Ignore elidable_lifetime_names pedantic clippy lint</li>
<li><a
href="e3eaa6a3dd"><code>e3eaa6a</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2896">#2896</a>
from dtolnay/stabledoc</li>
<li><a
href="6a630cf283"><code>6a630cf</code></a>
Also link to stable proc_macro</li>
<li><a
href="7bfd518dd4"><code>7bfd518</code></a>
Release 1.0.218</li>
<li>Additional commits viewable in <a
href="https://github.com/serde-rs/serde/compare/v1.0.217...v1.0.219">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde&package-manager=cargo&previous-version=1.0.217&new-version=1.0.219)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 00:44:51 +00:00
Jamil
f2ee63e056 fix(deps): Dependabot looks for Package.swift (#8997)
<img width="907" alt="Screenshot 2025-05-01 at 9 29 47 AM"
src="https://github.com/user-attachments/assets/061b757c-1268-42e9-b95b-4e6fa1e8d19f"
/>
2025-05-02 00:18:52 +00:00
Thomas Eizinger
f53e4419b8 ci(rust): run the default number of proptest cases (#8982)
By default, proptest runs all regression cases + 256 new ones. Given
that we run the tests on 3 different operating systems in various
versions each and that on each PR, we are likely hitting enough
different cases to detect any bugs.

Related: #8948
2025-05-01 23:18:05 +00:00
Thomas Eizinger
555945f7f0 ci: don't run Tauri workflows on every PR (#8981)
These take a long time and there is not really any benefit. We already
run smoke-tests on both Windows and Linux runners which ensures that the
GUI and IPC service compile and start. In addition, we run clippy across
the entire Rust codebase.

The only thing that doesn't get tested in CI if we remove this is the
bundling of the applications. This however rarely changes and one can
always trigger the Tauri workflow manually for a PR to see if certain
changes are working.

Related: #8948
2025-05-01 23:15:45 +00:00
Jamil
5ed76d5b66 fix(deps): update github-actions in .github/actions (#9000)
Dependabot only updates dependencies in .github/workflows. This is an
attempt to tell it to also update in .github/actions too.
2025-05-01 21:50:15 +00:00
Jamil
ce8c32229c docs: Reorder gcloud auth step for cloudsql (#9001)
This is almost always required.
2025-05-01 21:50:04 +00:00
Thomas Eizinger
497f8a7f8a ci(rust): make compile-packages opt-out from workspace (#8979)
Instead of explicitly listing every package we want to compile, attempt
to compile the entire workspace and exclude the ones we know won't work
on Windows.
2025-05-01 21:20:35 +00:00
Thomas Eizinger
69c308d80e ci(android): only build release bundles on request (#8983)
The debug build is good enough if one wants to test a particular PR on a
real device. When necessary, a release build can be trigger explicitly
for a particular branch.

Related: #8948
2025-05-01 21:19:54 +00:00
Jamil
56d5689d9e fix(portal): bump env for logical (#9002)
Need to enable logical decoding.
2025-05-01 13:12:12 -07:00
dependabot[bot]
446421c6f0 build(deps): bump framer-motion from 12.7.4 to 12.9.4 in /website (#8992)
Bumps [framer-motion](https://github.com/motiondivision/motion) from
12.7.4 to 12.9.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/motiondivision/motion/blob/main/CHANGELOG.md">framer-motion's
changelog</a>.</em></p>
<blockquote>
<h2>[12.9.4] 2025-05-01</h2>
<h3>Fixed</h3>
<ul>
<li>Remove version check for <code>MotionValue</code>.</li>
</ul>
<h2>[12.9.3] 2025-05-01</h2>
<h3>Fixed</h3>
<ul>
<li>Fixed memory leak when unmounting <code>motion</code>
components.</li>
</ul>
<h2>[12.9.2] 2025-04-25</h2>
<h3>Fixed</h3>
<ul>
<li>Fixed scroll timeline cache when defining <code>offset</code>.</li>
<li>Detect when page scroll is attached to <code>document.body</code>
and use this instead of <code>document.documentElement</code>.</li>
</ul>
<h2>[12.9.1] 2025-04-24</h2>
<h3>Fixed</h3>
<ul>
<li>Restarting a finished main thread animation with a negative
<code>.speed</code> now works as expected.</li>
</ul>
<h2>[12.9.0] 2025-04-24</h2>
<h3>Added</h3>
<ul>
<li><code>styleEffect</code></li>
</ul>
<h2>[12.8.3] 2025-04-24</h2>
<h3>Changed</h3>
<ul>
<li>Animating a <code>MotionValue</code> to its current value will skip
creating the animation.</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Ensure <code>.then()</code> fires when <code>.stop()</code> or
<code>.cancel()</code> are called. This is undesired but reverts the
behaviour to before <code>12.7.5</code>.</li>
</ul>
<h2>[12.8.2] 2025-04-24</h2>
<h3>Changed</h3>
<ul>
<li>Unifying <code>transform</code> behaviour for SVG and CSS switched
from element measurements for <code>transform-box: fill-box</code>.</li>
</ul>
<h2>[12.8.1] 2025-04-23</h2>
<h3>Fixed</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3edb39e9d4"><code>3edb39e</code></a>
v12.9.4</li>
<li><a
href="4efee1e8b8"><code>4efee1e</code></a>
Removing version check for motion values</li>
<li><a
href="0b38e02fad"><code>0b38e02</code></a>
v12.9.3</li>
<li><a
href="3d2c631d90"><code>3d2c631</code></a>
Updating changelog</li>
<li><a
href="5e7d5b5db3"><code>5e7d5b5</code></a>
Merge pull request <a
href="https://redirect.github.com/motiondivision/motion/issues/3178">#3178</a>
from motiondivision/fix/release-visual-element</li>
<li><a
href="3eb2de69e4"><code>3eb2de6</code></a>
Fixing memory leak</li>
<li><a
href="0de2c3e9ba"><code>0de2c3e</code></a>
Updating</li>
<li><a
href="02fcf86f80"><code>02fcf86</code></a>
Updating changelog</li>
<li><a
href="af6e9feffd"><code>af6e9fe</code></a>
Updating default scroll element</li>
<li><a
href="15befa76f6"><code>15befa7</code></a>
Updating funding address</li>
<li>Additional commits viewable in <a
href="https://github.com/motiondivision/motion/compare/v12.7.4...v12.9.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=framer-motion&package-manager=npm_and_yarn&previous-version=12.7.4&new-version=12.9.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 16:46:49 +00:00
dependabot[bot]
da7a9729c5 build(deps): bump pre-commit from 3.6.2 to 4.2.0 in /.github (#8989)
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 3.6.2
to 4.2.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pre-commit/pre-commit/releases">pre-commit's
releases</a>.</em></p>
<blockquote>
<h2>pre-commit v4.2.0</h2>
<h3>Features</h3>
<ul>
<li>For <code>language: python</code> first attempt a versioned python
executable for the default language version before consulting a
potentially unversioned <code>sys.executable</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3430">#3430</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
</ul>
<h3>Fixes</h3>
<ul>
<li>Handle error during conflict detection when a file is named
&quot;HEAD&quot;
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3425">#3425</a>
PR by <a
href="https://github.com/tusharsadhwani"><code>@​tusharsadhwani</code></a>.</li>
</ul>
</li>
</ul>
<h2>pre-commit v4.1.0</h2>
<h3>Features</h3>
<ul>
<li>Add <code>language: julia</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3348">#3348</a>
PR by <a
href="https://github.com/fredrikekre"><code>@​fredrikekre</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/2689">#2689</a>
issue <a
href="https://github.com/jmuchovej"><code>@​jmuchovej</code></a>.</li>
</ul>
</li>
</ul>
<h3>Fixes</h3>
<ul>
<li>Disable automatic toolchain switching for <code>language:
golang</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3304">#3304</a>
PR by <a
href="https://github.com/AleksaC"><code>@​AleksaC</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3300">#3300</a>
issue by <a
href="https://github.com/AleksaC"><code>@​AleksaC</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3149">#3149</a>
issue by <a
href="https://github.com/nijel"><code>@​nijel</code></a>.</li>
</ul>
</li>
<li>Fix <code>language: r</code> installation when initiated by RStudio.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3389">#3389</a>
PR by <a
href="https://github.com/lorenzwalthert"><code>@​lorenzwalthert</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3385">#3385</a>
issue by <a
href="https://github.com/lorenzwalthert"><code>@​lorenzwalthert</code></a>.</li>
</ul>
</li>
</ul>
<h2>pre-commit v4.0.1</h2>
<h3>Fixes</h3>
<ul>
<li>Fix <code>pre-commit migrate-config</code> for unquoted deprecated
stages names with
purelib <code>pyyaml</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3324">#3324</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit-ci/issues/issues/234">pre-commit-ci/issues#234</a>
issue by <a
href="https://github.com/lorenzwalthert"><code>@​lorenzwalthert</code></a>.</li>
</ul>
</li>
</ul>
<h2>pre-commit v4.0.0</h2>
<h3>Features</h3>
<ul>
<li>Improve <code>pre-commit migrate-config</code> to handle more yaml
formats.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3301">#3301</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
<li>Handle <code>stages</code> deprecation in <code>pre-commit
migrate-config</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3302">#3302</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/2732">#2732</a>
issue by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
<li>Upgrade <code>ruby-build</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3199">#3199</a>
PR by <a
href="https://github.com/ThisGuyCodes"><code>@​ThisGuyCodes</code></a>.</li>
</ul>
</li>
<li>Add &quot;sensible regex&quot; warnings to <code>repo: meta</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3311">#3311</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
<li>Add warnings for deprecated <code>stages</code> (<code>commit</code>
-&gt; <code>pre-commit</code>, <code>push</code> -&gt;
<code>pre-push</code>, <code>merge-commit</code> -&gt;
<code>pre-merge-commit</code>).
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3312">#3312</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3313">#3313</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3315">#3315</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/2732">#2732</a>
issue by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
</ul>
<h3>Migrating</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md">pre-commit's
changelog</a>.</em></p>
<blockquote>
<h1>4.2.0 - 2025-03-18</h1>
<h3>Features</h3>
<ul>
<li>For <code>language: python</code> first attempt a versioned python
executable for
the default language version before consulting a potentially unversioned
<code>sys.executable</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3430">#3430</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
</ul>
<h3>Fixes</h3>
<ul>
<li>Handle error during conflict detection when a file is named
&quot;HEAD&quot;
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3425">#3425</a>
PR by <a
href="https://github.com/tusharsadhwani"><code>@​tusharsadhwani</code></a>.</li>
</ul>
</li>
</ul>
<h1>4.1.0 - 2025-01-20</h1>
<h3>Features</h3>
<ul>
<li>Add <code>language: julia</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3348">#3348</a>
PR by <a
href="https://github.com/fredrikekre"><code>@​fredrikekre</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/2689">#2689</a>
issue <a
href="https://github.com/jmuchovej"><code>@​jmuchovej</code></a>.</li>
</ul>
</li>
</ul>
<h3>Fixes</h3>
<ul>
<li>Disable automatic toolchain switching for <code>language:
golang</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3304">#3304</a>
PR by <a
href="https://github.com/AleksaC"><code>@​AleksaC</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3300">#3300</a>
issue by <a
href="https://github.com/AleksaC"><code>@​AleksaC</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3149">#3149</a>
issue by <a
href="https://github.com/nijel"><code>@​nijel</code></a>.</li>
</ul>
</li>
<li>Fix <code>language: r</code> installation when initiated by RStudio.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3389">#3389</a>
PR by <a
href="https://github.com/lorenzwalthert"><code>@​lorenzwalthert</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3385">#3385</a>
issue by <a
href="https://github.com/lorenzwalthert"><code>@​lorenzwalthert</code></a>.</li>
</ul>
</li>
</ul>
<h1>4.0.1 - 2024-10-08</h1>
<h3>Fixes</h3>
<ul>
<li>Fix <code>pre-commit migrate-config</code> for unquoted deprecated
stages names with
purelib <code>pyyaml</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3324">#3324</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit-ci/issues/issues/234">pre-commit-ci/issues#234</a>
issue by <a
href="https://github.com/lorenzwalthert"><code>@​lorenzwalthert</code></a>.</li>
</ul>
</li>
</ul>
<h1>4.0.0 - 2024-10-05</h1>
<h3>Features</h3>
<ul>
<li>Improve <code>pre-commit migrate-config</code> to handle more yaml
formats.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3301">#3301</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
<li>Handle <code>stages</code> deprecation in <code>pre-commit
migrate-config</code>.
<ul>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3302">#3302</a>
PR by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
<li><a
href="https://redirect.github.com/pre-commit/pre-commit/issues/2732">#2732</a>
issue by <a
href="https://github.com/asottile"><code>@​asottile</code></a>.</li>
</ul>
</li>
<li>Upgrade <code>ruby-build</code>.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="aa48766b88"><code>aa48766</code></a>
v4.2.0</li>
<li><a
href="bf6f11dc6c"><code>bf6f11d</code></a>
Merge pull request <a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3430">#3430</a>
from pre-commit/preferential-sys-impl</li>
<li><a
href="3e8d0f5e1c"><code>3e8d0f5</code></a>
adjust python default_language_version to prefer versioned exe</li>
<li><a
href="ff7256cedf"><code>ff7256c</code></a>
Merge pull request <a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3425">#3425</a>
from tusharsadhwani/ambiguous-ref</li>
<li><a
href="b7eb412c79"><code>b7eb412</code></a>
fix: crash on ambiguous ref 'HEAD'</li>
<li><a
href="7b88c63ae6"><code>7b88c63</code></a>
Merge pull request <a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3404">#3404</a>
from pre-commit/pre-commit-ci-update-config</li>
<li><a
href="94b97e28f7"><code>94b97e2</code></a>
[pre-commit.ci] pre-commit autoupdate</li>
<li><a
href="2f93b80484"><code>2f93b80</code></a>
Merge pull request <a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3401">#3401</a>
from pre-commit/pre-commit-ci-update-config</li>
<li><a
href="4f90a1e88a"><code>4f90a1e</code></a>
[pre-commit.ci] pre-commit autoupdate</li>
<li><a
href="aba1ce04e7"><code>aba1ce0</code></a>
Merge pull request <a
href="https://redirect.github.com/pre-commit/pre-commit/issues/3396">#3396</a>
from pre-commit/all-repos_autofix_all-repos-sed</li>
<li>Additional commits viewable in <a
href="https://github.com/pre-commit/pre-commit/compare/v3.6.2...v4.2.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pre-commit&package-manager=pip&previous-version=3.6.2&new-version=4.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 16:37:11 +00:00
Jamil
299fbcd096 fix(portal): Properly check background jobs (#8986)
The `background_jobs_enabled` config in an ENV var that needs to be set
for a specific configuration key. It's not set on the top-level
`:domain` config by default.

Instead, it's used to enable / disable specific modules to start by the
application's Supervisor.

The `Domain.Events.ReplicationConnection` module is updated in this PR
to follow this convention.
2025-05-01 16:32:43 +00:00
Jamil
593a288f64 fix(ci): Fix github actions dependabot (#8985)
Our GitHub actions packages are not being updated. This may be a reason
why.

Edit: Looks like it's not applying to our composite actions in
.github/actions. Will see if this fixes it.
2025-05-01 16:04:02 +00:00
dependabot[bot]
7cd22097ba build(deps): bump logger_json from 7.0.0 to 7.0.2 in /elixir (#8975)
Bumps [logger_json](https://github.com/Nebo15/logger_json) from 7.0.0 to
7.0.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/Nebo15/logger_json/releases">logger_json's
releases</a>.</em></p>
<blockquote>
<h2>7.0.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Datadog: report <code>error.kind</code> and <code>error.stack</code>
for non-crash error+ logs by <a
href="https://github.com/aloukissas"><code>@​aloukissas</code></a> in <a
href="https://redirect.github.com/Nebo15/logger_json/pull/157">Nebo15/logger_json#157</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/aloukissas"><code>@​aloukissas</code></a> made
their first contribution in <a
href="https://redirect.github.com/Nebo15/logger_json/pull/157">Nebo15/logger_json#157</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/Nebo15/logger_json/compare/7.0.1...7.0.2">https://github.com/Nebo15/logger_json/compare/7.0.1...7.0.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6e0b5ca332"><code>6e0b5ca</code></a>
Bump version</li>
<li><a
href="7de4c86996"><code>7de4c86</code></a>
pattern match</li>
<li><a
href="42c074a193"><code>42c074a</code></a>
honor existing metadata</li>
<li><a
href="b7a1e1ae5c"><code>b7a1e1a</code></a>
remove else clause</li>
<li><a
href="bd6144a591"><code>bd6144a</code></a>
logger level option</li>
<li><a
href="564f1e14ab"><code>564f1e1</code></a>
no need for stack</li>
<li><a
href="2cf9140036"><code>2cf9140</code></a>
feat: report error.kind and error.stack for non-crash error+ logs</li>
<li><a
href="14aa482efb"><code>14aa482</code></a>
Add kind and top level message to DataDog formatter</li>
<li><a
href="c0bcd290d1"><code>c0bcd29</code></a>
Allow using old tuples in config.exs and promote using new/1 in
runtime.exs</li>
<li>See full diff in <a
href="https://github.com/Nebo15/logger_json/compare/7.0.0...7.0.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=logger_json&package-manager=hex&previous-version=7.0.0&new-version=7.0.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 15:22:08 +00:00
dependabot[bot]
3631dfe08f build(deps): bump com.android.application from 8.9.1 to 8.9.2 in /kotlin/android in the com-android group (#8976)
Bumps the com-android group in /kotlin/android with 1 update:
com.android.application.

Updates `com.android.application` from 8.9.1 to 8.9.2


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.android.application&package-manager=gradle&previous-version=8.9.1&new-version=8.9.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> 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)
- `@dependabot ignore <dependency name> 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)
- `@dependabot ignore <dependency name>` 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)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 15:21:47 +00:00
dependabot[bot]
ad433dd58b build(deps): bump com.google.code.gson:gson from 2.13.0 to 2.13.1 in /kotlin/android (#8977)
Bumps [com.google.code.gson:gson](https://github.com/google/gson) from
2.13.0 to 2.13.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/google/gson/releases">com.google.code.gson:gson's
releases</a>.</em></p>
<blockquote>
<h2>Gson 2.13.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Give FieldNamingStrategy the ability to return multiple String names
by <a href="https://github.com/mfriesen"><code>@​mfriesen</code></a> in
<a
href="https://redirect.github.com/google/gson/pull/2776">google/gson#2776</a></li>
<li>Remove outdated android-proguard-example by <a
href="https://github.com/Goooler"><code>@​Goooler</code></a> in <a
href="https://redirect.github.com/google/gson/pull/2843">google/gson#2843</a></li>
<li>Adjust Troubleshooting Guide ProGuard / R8 section by <a
href="https://github.com/Marcono1234"><code>@​Marcono1234</code></a> in
<a
href="https://redirect.github.com/google/gson/pull/2844">google/gson#2844</a></li>
<li>Update dependencies, including the problematic
<code>com.google.errorprone:error_prone_annotations:2.37.0</code>.</li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mfriesen"><code>@​mfriesen</code></a>
made their first contribution in <a
href="https://redirect.github.com/google/gson/pull/2776">google/gson#2776</a></li>
<li><a href="https://github.com/Goooler"><code>@​Goooler</code></a> made
their first contribution in <a
href="https://redirect.github.com/google/gson/pull/2843">google/gson#2843</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/google/gson/compare/gson-parent-2.13.0...gson-parent-2.13.1">https://github.com/google/gson/compare/gson-parent-2.13.0...gson-parent-2.13.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="257bee9eff"><code>257bee9</code></a>
[maven-release-plugin] prepare release gson-parent-2.13.1</li>
<li><a
href="63d74b3940"><code>63d74b3</code></a>
Bump the maven group with 5 updates (<a
href="https://redirect.github.com/google/gson/issues/2851">#2851</a>)</li>
<li><a
href="810e356059"><code>810e356</code></a>
Add shrinker test for interface implementation being deserialized (<a
href="https://redirect.github.com/google/gson/issues/2845">#2845</a>)</li>
<li><a
href="00ae397757"><code>00ae397</code></a>
Adjust Troubleshooting Guide ProGuard / R8 section (<a
href="https://redirect.github.com/google/gson/issues/2844">#2844</a>)</li>
<li><a
href="0eec6f35c5"><code>0eec6f3</code></a>
Remove outdated android-proguard-example (<a
href="https://redirect.github.com/google/gson/issues/2843">#2843</a>)</li>
<li><a
href="4e65e6ab36"><code>4e65e6a</code></a>
Give FieldNamingStrategy the ability to return multiple String names (<a
href="https://redirect.github.com/google/gson/issues/2776">#2776</a>)</li>
<li><a
href="6010131366"><code>6010131</code></a>
[maven-release-plugin] prepare for next development iteration</li>
<li>See full diff in <a
href="https://github.com/google/gson/compare/gson-parent-2.13.0...gson-parent-2.13.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.google.code.gson:gson&package-manager=gradle&previous-version=2.13.0&new-version=2.13.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 14:00:54 +00:00
dependabot[bot]
a6c5653d66 build(deps): bump com.google.firebase:firebase-bom from 33.12.0 to 33.13.0 in /kotlin/android (#8978)
Bumps com.google.firebase:firebase-bom from 33.12.0 to 33.13.0.


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.google.firebase:firebase-bom&package-manager=gradle&previous-version=33.12.0&new-version=33.13.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 14:00:29 +00:00
dependabot[bot]
5d62a7d357 build(deps): bump ex_cldr_numbers from 2.35.0 to 2.35.1 in /elixir (#8974)
Bumps [ex_cldr_numbers](https://github.com/elixir-cldr/cldr_numbers)
from 2.35.0 to 2.35.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-cldr/cldr_numbers/releases">ex_cldr_numbers's
releases</a>.</em></p>
<blockquote>
<h2>Cldr Numbers version 2.35.1</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Fix formatting currency amounts when the currency format does not
have a digit placeholder (<code>0</code> and <code>#</code>) directly
next to the currency placeholder (<code>¤</code>). Thanks to <a
href="https://github.com/benregn"><code>@​benregn</code></a> for the
report. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/54">#54</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-cldr/cldr_numbers/blob/main/CHANGELOG.md">ex_cldr_numbers's
changelog</a>.</em></p>
<blockquote>
<h2>Cldr Numbers v2.35.1</h2>
<p>This is the changelog for Cldr v2.35.1 released on April 23rd, 2025.
For older changelogs please consult the release tag on <a
href="https://github.com/elixir-cldr/cldr_numbers/tags">GitHub</a></p>
<h3>Bug Fixes</h3>
<ul>
<li>Fix formatting currency amounts when the currency format does not
have a digit placeholder (<code>0</code> and <code>#</code>) directly
next to the currency placeholder (<code>¤</code>). Thanks to <a
href="https://github.com/benregn"><code>@​benregn</code></a> for the
report. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/54">#54</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1fb2f82370"><code>1fb2f82</code></a>
Fix currency formatting. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/54">#54</a></li>
<li>See full diff in <a
href="https://github.com/elixir-cldr/cldr_numbers/compare/v2.35.0...v2.35.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ex_cldr_numbers&package-manager=hex&previous-version=2.35.0&new-version=2.35.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 13:59:21 +00:00
dependabot[bot]
aa4f66df37 build(deps): bump tzdata from 1.1.2 to 1.1.3 in /elixir (#8973)
Bumps [tzdata](https://github.com/lau/tzdata) from 1.1.2 to 1.1.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/lau/tzdata/blob/master/CHANGELOG.md">tzdata's
changelog</a>.</em></p>
<blockquote>
<h2>[1.1.3] - 2025-03-05</h2>
<h3>Fixed</h3>
<ul>
<li>Fix Elixir compiler warnings for decreasing ranges without explicit
steps (Christoph Grothaus)</li>
<li>Fix various Elixir compiler warnings (Thomas Cioppettini)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Now requires Elixir 1.9 or greater instead of 1.8 or greater.</li>
<li>tzdata release version shipped with this library is now 2025a
instead of 2024b.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="61fb7ecf68"><code>61fb7ec</code></a>
Version 1.1.3 (<a
href="https://redirect.github.com/lau/tzdata/issues/158">#158</a>)</li>
<li><a
href="f760899337"><code>f760899</code></a>
Fix Elixir compiler warnings for decreasing ranges without explicit
steps (<a
href="https://redirect.github.com/lau/tzdata/issues/154">#154</a>)</li>
<li><a
href="7791318499"><code>7791318</code></a>
chore(Elixir): Fix warnings emitted by elixir 1.16 (<a
href="https://redirect.github.com/lau/tzdata/issues/139">#139</a>)</li>
<li>See full diff in <a
href="https://github.com/lau/tzdata/compare/v1.1.2...v1.1.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tzdata&package-manager=hex&previous-version=1.1.2&new-version=1.1.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 13:59:08 +00:00
dependabot[bot]
532c26fa48 build(deps): bump observer_cli from 1.8.2 to 1.8.3 in /elixir (#8970)
Bumps [observer_cli](https://github.com/zhongwencool/observer_cli) from
1.8.2 to 1.8.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/zhongwencool/observer_cli/releases">observer_cli's
releases</a>.</em></p>
<blockquote>
<h2>1.8.3</h2>
<h2>What's Changed</h2>
<ul>
<li>process_info(Pid, monitors) can also return {port, _} tuples by <a
href="https://github.com/gomoripeti"><code>@​gomoripeti</code></a> in <a
href="https://redirect.github.com/zhongwencool/observer_cli/pull/110">zhongwencool/observer_cli#110</a></li>
<li>correct the units shown for memory data by <a
href="https://github.com/gonzalobf"><code>@​gonzalobf</code></a> in <a
href="https://redirect.github.com/zhongwencool/observer_cli/pull/111">zhongwencool/observer_cli#111</a></li>
<li>Fix compile warning on OTP 27 by <a
href="https://github.com/zmstone"><code>@​zmstone</code></a> in <a
href="https://redirect.github.com/zhongwencool/observer_cli/pull/114">zhongwencool/observer_cli#114</a></li>
<li>Fix mnesia crash by handling unknown storage types by <a
href="https://github.com/zhongwencool"><code>@​zhongwencool</code></a>
in <a
href="https://redirect.github.com/zhongwencool/observer_cli/pull/115">zhongwencool/observer_cli#115</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/gonzalobf"><code>@​gonzalobf</code></a>
made their first contribution in <a
href="https://redirect.github.com/zhongwencool/observer_cli/pull/111">zhongwencool/observer_cli#111</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/zhongwencool/observer_cli/compare/v1.8.2...1.8.3">https://github.com/zhongwencool/observer_cli/compare/v1.8.2...1.8.3</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5ef0a2cec2"><code>5ef0a2c</code></a>
chore: include docs dir</li>
<li><a
href="de56d61c8c"><code>de56d61</code></a>
Merge pull request <a
href="https://redirect.github.com/zhongwencool/observer_cli/issues/115">#115</a>
from zhongwencool/mnesia-crash</li>
<li><a
href="49440d8134"><code>49440d8</code></a>
Migrate documentation from doc to docs directory and switch to
ex_doc</li>
<li><a
href="cbfcf75ecc"><code>cbfcf75</code></a>
bump to 1.8.3</li>
<li><a
href="93453bd876"><code>93453bd</code></a>
Fix mnesia crash by handling unknown storage types</li>
<li><a
href="54f152d717"><code>54f152d</code></a>
Fix compile warning on OTP 27</li>
<li><a
href="c4eba84200"><code>c4eba84</code></a>
correct the units shown for memory data</li>
<li><a
href="12ef05329c"><code>12ef053</code></a>
process_info(Pid, monitors) can also return {port, _} tuples</li>
<li>See full diff in <a
href="https://github.com/zhongwencool/observer_cli/compare/v1.8.2...1.8.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=observer_cli&package-manager=hex&previous-version=1.8.2&new-version=1.8.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 13:58:55 +00:00
dependabot[bot]
48151cb4ba build(deps): bump argon2_elixir from 4.1.2 to 4.1.3 in /elixir (#8966)
Bumps [argon2_elixir](https://github.com/riverrun/argon2_elixir) from
4.1.2 to 4.1.3.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c77ab6660b"><code>c77ab66</code></a>
update version to v4.1.3</li>
<li><a
href="2bc37dcc9f"><code>2bc37dc</code></a>
Merge pull request <a
href="https://redirect.github.com/riverrun/argon2_elixir/issues/68">#68</a>
from meeq/patch-1</li>
<li><a
href="af29b73a65"><code>af29b73</code></a>
Fix Clang compile warning</li>
<li>See full diff in <a
href="https://github.com/riverrun/argon2_elixir/compare/v4.1.2...v4.1.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=argon2_elixir&package-manager=hex&previous-version=4.1.2&new-version=4.1.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 13:58:43 +00:00
dependabot[bot]
9022ead6ca build(deps): bump fast-xml-parser from 5.2.0 to 5.2.1 in /website (#8963)
Bumps
[fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser)
from 5.2.0 to 5.2.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md">fast-xml-parser's
changelog</a>.</em></p>
<blockquote>
<p><!-- raw HTML omitted -->Note: If you find missing information about
particular minor version, that version must have been changed without
any functional change in this library.<!-- raw HTML omitted --></p>
<p><strong>5.2.1 / 2025-04-22</strong></p>
<ul>
<li>fix: read DOCTYPE entity value correctly</li>
<li>read DOCTYPE NOTATION, ELEMENT exp but not using read values</li>
</ul>
<p><strong>5.2.0 / 2025-04-03</strong></p>
<ul>
<li>feat: support metadata on nodes (<a
href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/593">#593</a>)
(By <a href="https://github.com/srl295">Steven R. Loomis</a>)</li>
</ul>
<p><strong>5.1.0 / 2025-04-02</strong></p>
<ul>
<li>feat: declare package as side-effect free (<a
href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/738">#738</a>)
(By <a href="https://github.com/tbouffard">Thomas Bouffard</a>)</li>
<li>fix cjs build mode</li>
<li>fix builder return type to string</li>
<li></li>
</ul>
<p><strong>5.0.9 / 2025-03-14</strong></p>
<ul>
<li>fix: support numeric entities with values over 0xFFFF (<a
href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/726">#726</a>)
(By <a href="https://github.com/mcdurdin">Marc Durdin</a>)</li>
<li>fix: update strnum to fix parsing 0 if skiplike option is used</li>
</ul>
<p><strong>5.0.8 / 2025-02-27</strong></p>
<ul>
<li>fix parsing 0 if skiplike option is used.
<ul>
<li>updating strnum dependency</li>
</ul>
</li>
</ul>
<p><strong>5.0.7 / 2025-02-25</strong></p>
<ul>
<li>fix (<a
href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/724">#724</a>)
typings for cjs.</li>
</ul>
<p><strong>5.0.6 / 2025-02-20</strong></p>
<ul>
<li>fix cli output (By <a href="https://github.com/angeld7">Angel
Delgado</a>)
<ul>
<li>remove multiple JSON parsing</li>
</ul>
</li>
</ul>
<p><strong>5.0.5 / 2025-02-20</strong></p>
<ul>
<li>fix parsing of string starting with 'e' or 'E' by updating
strnum</li>
</ul>
<p><strong>5.0.4 / 2025-02-20</strong></p>
<ul>
<li>fix CLI to support all the versions of node js when displaying
library version.</li>
<li>fix CJS import in v5
<ul>
<li>by fixing webpack config</li>
</ul>
</li>
</ul>
<p><strong>5.0.3 / 2025-02-20</strong></p>
<ul>
<li>Using strnum ESM module
<ul>
<li>new fixes in strum may break your experience</li>
</ul>
</li>
</ul>
<p><strong>5.0.2 / 2025-02-20</strong></p>
<ul>
<li>fix: include CommonJS resources in the npm package <a
href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/714">#714</a>
(By <a href="https://github.com/tbouffard">Thomas Bouffard</a>)</li>
<li>fix: move babel deps to dev deps</li>
</ul>
<p><strong>5.0.1 / 2025-02-19</strong></p>
<ul>
<li>fix syntax error for CLI command</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="62365df401"><code>62365df</code></a>
update docs and package info</li>
<li><a
href="0c0b3673bf"><code>0c0b367</code></a>
feat: read DOCTYPE ELEMENT exp</li>
<li><a
href="38d023473f"><code>38d0234</code></a>
refactored code of DOCTYPE</li>
<li><a
href="7c6cba497c"><code>7c6cba4</code></a>
feat read DOCTYPE NOTATION exp</li>
<li><a
href="7589705052"><code>7589705</code></a>
fix: DOCTYPE entity value should be read correctly</li>
<li><a
href="02eb4a7539"><code>02eb4a7</code></a>
Update SECURITY.md</li>
<li><a
href="bfeb50432e"><code>bfeb504</code></a>
fix typo in CHANGELOG.md (<a
href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/743">#743</a>)</li>
<li>See full diff in <a
href="https://github.com/NaturalIntelligence/fast-xml-parser/compare/v5.2.0...v5.2.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=fast-xml-parser&package-manager=npm_and_yarn&previous-version=5.2.0&new-version=5.2.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot 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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
- `@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)
- `@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)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 13:58:05 +00:00