Commit Graph

111 Commits

Author SHA1 Message Date
Jamil
b28e99cdab chore(ci): Use 1.0.0 as version base (#2949)
Fixes #2948 

So it seems that it's easiest just to use an old-fashioned semver
string. This means we'll need to keep a version matrix in the docs of
which components are supported and for how long, but it's better than
having different version schemes for different Firezone components
altogether.
2023-12-19 14:19:16 +00:00
Thomas Eizinger
9a5f4e0ce2 fix(relay): ensure channel numbers are unique to a client (#2744)
Previously, there was a misinterpretation of the spec that didn't allow
_different_ clients to use the same channel number. This is wrong
though. Because channel numbers are managed by clients, they must be
unique _per client_. This patch addresses this short-coming.

I didn't include any dedicated tests for this. The fact that the
existing ones still work means the feature is overall working and the
data structure shows that the channels are now indeed unique per client.
2023-12-04 17:01:55 +00:00
Thomas Eizinger
81598dbaff feat(relay): reduce packet drops (#2737)
There is another channel which we didn't yet increase in size, the one
between the allocation and the main task loop. Increasing to 1000 means
each allocation can potentially buffer 65MB of data. With the biggest
port range (16383 allocations), that would be a theoretical memory
consumption of ~ 1TB. But, this would imply that we have 16383 connected
clients that all send data at max speed, saturating our downlink and our
uplink is somehow ridiculously small. As long as up and downlink are
roughly within the same ballpark figure, it should be impossible to
actually fill up these buffers.

I suspect that the current packet drops of the iperf test are happening
because on localhost, sending 10 UDP packets is so quick that a tokio is
unable to wake up the task in time to empty the queue.

In addition to the increased channel size, I've also added a check for
the other channels to avoid writing to them in case they are not ready
for some reason.

---------

Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2023-11-29 19:01:17 +00:00
Gabi
aec5b97012 Add performance tests for client-gateway communication (#2655) 2023-11-17 00:32:34 -06:00
dependabot[bot]
95bfd5bb02 build(deps): Bump env_logger from 0.10.0 to 0.10.1 in /rust (#2637)
Bumps [env_logger](https://github.com/rust-cli/env_logger) from 0.10.0
to 0.10.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md">env_logger's
changelog</a>.</em></p>
<blockquote>
<h2>[0.10.1] - 2023-11-10</h2>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="36623f573b"><code>36623f5</code></a>
chore: Release env_logger version 0.10.1</li>
<li><a
href="8a033d8438"><code>8a033d8</code></a>
chore: Fix packaging</li>
<li><a
href="9df7e6c081"><code>9df7e6c</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-cli/env_logger/issues/241">#241</a>
from ChrisDenton/simple-insert</li>
<li><a
href="46ccdd94f5"><code>46ccdd9</code></a>
perf: Replace <code>HashMap</code> with a <code>Vec</code></li>
<li><a
href="bdc96a421f"><code>bdc96a4</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-cli/env_logger/issues/249">#249</a>
from atouchet/v10</li>
<li><a
href="983837c47b"><code>983837c</code></a>
Update links and remove broken badge</li>
<li><a
href="dcd220dfaf"><code>dcd220d</code></a>
Update listed version number</li>
<li><a
href="36b1508ea1"><code>36b1508</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-cli/env_logger/issues/260">#260</a>
from y-yagi/2018-edition</li>
<li><a
href="6f64347c6a"><code>6f64347</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-cli/env_logger/issues/282">#282</a>
from epage/syntax</li>
<li><a
href="b29735781a"><code>b297357</code></a>
chore: Update docs and examples to 2018 edition</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-cli/env_logger/compare/v0.10.0...v0.10.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=env_logger&package-manager=cargo&previous-version=0.10.0&new-version=0.10.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 <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>
Co-authored-by: Gabi <gabrielalejandro7@gmail.com>
2023-11-15 22:20:01 +00:00
dependabot[bot]
d666cb2b39 build(deps): Bump proptest from 1.3.1 to 1.4.0 in /rust (#2635)
Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.3.1 to
1.4.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="63ef67c71f"><code>63ef67c</code></a>
[Release] 1.4.0 : adds missing changelog entries (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/397">#397</a>)</li>
<li><a
href="3d40220e74"><code>3d40220</code></a>
Merge pull request <a
href="https://redirect.github.com/proptest-rs/proptest/issues/393">#393</a>
from tzemanovic/tomas/compile-fail-must-be-debug</li>
<li><a
href="a9123f3eda"><code>a9123f3</code></a>
Merge pull request <a
href="https://redirect.github.com/proptest-rs/proptest/issues/389">#389</a>
from proptest-rs/tomas/nightly-coroutine-trait</li>
<li><a
href="0a1ba017f8"><code>0a1ba01</code></a>
fix 🤷</li>
<li><a
href="5e17be759b"><code>5e17be7</code></a>
fix nightly build (re: <a
href="https://redirect.github.com/rust-lang/rust/pull/116958">rust-lang/rust#116958</a>)</li>
<li><a
href="6f534cb228"><code>6f534cb</code></a>
Merge pull request <a
href="https://redirect.github.com/proptest-rs/proptest/issues/377">#377</a>
from sameer/master</li>
<li><a
href="d6f95d46e7"><code>d6f95d4</code></a>
Update compiletest_rs requirement from 0.9 to 0.10 (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/383">#383</a>)</li>
<li><a
href="8b0670379b"><code>8b06703</code></a>
Update regex-syntax requirement from 0.7 to 0.8 (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/386">#386</a>)</li>
<li><a
href="f8c489d42b"><code>f8c489d</code></a>
Update message-io requirement from 0.17.0 to 0.18.0 (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/384">#384</a>)</li>
<li><a
href="539bd55416"><code>539bd55</code></a>
Enable Dependabot (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/380">#380</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/proptest-rs/proptest/compare/v1.3.1...v1.4.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=proptest&package-manager=cargo&previous-version=1.3.1&new-version=1.4.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 <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>
Co-authored-by: Gabi <gabrielalejandro7@gmail.com>
2023-11-15 22:19:43 +00:00
dependabot[bot]
0d1df924dc build(deps): Bump clap from 4.4.6 to 4.4.7 in /rust (#2525)
Bumps [clap](https://github.com/clap-rs/clap) from 4.4.6 to 4.4.7.
<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.4.7] - 2023-10-24</h2>
<h3>Performance</h3>
<ul>
<li>Reduced code size</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9bfa5a338c"><code>9bfa5a3</code></a>
chore: Release</li>
<li><a
href="38b5a2f956"><code>38b5a2f</code></a>
chore: Release</li>
<li><a
href="e485448b89"><code>e485448</code></a>
docs: Update changelog</li>
<li><a
href="f801a03c1b"><code>f801a03</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5181">#5181</a>
from alexcrichton/smaller-is-number</li>
<li><a
href="9a9aabc178"><code>9a9aabc</code></a>
refactor: Reduce code size of testing tokens if they're a number</li>
<li><a
href="1b84314fb4"><code>1b84314</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5176">#5176</a>
from epage/dep</li>
<li><a
href="dcced5ae6a"><code>dcced5a</code></a>
chore: Bump completest</li>
<li><a
href="f4319bcbf2"><code>f4319bc</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5174">#5174</a>
from kpreid/patch-1</li>
<li><a
href="71c1e59334"><code>71c1e59</code></a>
docs: Fix doc link to <code>Arg::trailing_var_arg</code></li>
<li><a
href="deebc1f91d"><code>deebc1f</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5172">#5172</a>
from epage/style</li>
<li>Additional commits viewable in <a
href="https://github.com/clap-rs/clap/compare/v4.4.6...v4.4.7">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.4.6&new-version=4.4.7)](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>
2023-11-03 17:52:22 +00:00
Jamil
2bca378f17 Allow data plane configuration at runtime (#2477)
## Changelog

- Updates connlib parameter API_URL (formerly known under different
names as `CONTROL_PLANE_URL`, `PORTAL_URL`, `PORTAL_WS_URL`, and
friends) to be configured as an "advanced" or "hidden" feature at
runtime so that we can test production builds on both staging and
production.
- Makes `AUTH_BASE_URL` configurable at runtime too
- Moves `CONNLIB_LOG_FILTER_STRING` to be configured like this as well
and simplifies its naming
- Fixes a timing attack bug on Android when comparing the `csrf` token
- Adds proper account ID validation to Android to prevent invalid URL
parameter strings from being saved and used
- Cleans up a number of UI / view issues on Android regarding typos,
consistency, etc
- Hides vars from from the `relay` CLI we may not want to expose just
yet
- `get_device_id()` is flawed for connlib components -- SMBios is rarely
available. Data plane components now require a `FIREZONE_ID` now instead
to use for upserting.


Fixes #2482 
Fixes #2471

---------

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
Co-authored-by: Gabi <gabrielalejandro7@gmail.com>
2023-10-30 23:46:53 -07:00
dependabot[bot]
b417e71c1d build(deps): Bump base64 from 0.21.4 to 0.21.5 in /rust (#2524)
Bumps [base64](https://github.com/marshallpierce/rust-base64) from
0.21.4 to 0.21.5.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md">base64's
changelog</a>.</em></p>
<blockquote>
<h1>0.21.5</h1>
<ul>
<li>Add <code>Debug</code> and <code>Clone</code> impls for the general
purpose Engine</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7f81bafe0e"><code>7f81baf</code></a>
v0.21.5</li>
<li><a
href="95dda57d41"><code>95dda57</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/255">#255</a>
from marshallpierce/mp/debug</li>
<li><a
href="bda313a5bc"><code>bda313a</code></a>
Add Debug and Clone to general purpose Engine</li>
<li><a
href="53a8737645"><code>53a8737</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/254">#254</a>
from marshallpierce/mp/ci-all-targets</li>
<li><a
href="c423b6ec2e"><code>c423b6e</code></a>
CI for all targets w/o default features</li>
<li><a
href="9eaf503f9c"><code>9eaf503</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/253">#253</a>
from kpreid/features-and-build</li>
<li><a
href="04451fb0bc"><code>04451fb</code></a>
Allow <code>cargo test</code> to complete under any set of
features.</li>
<li><a
href="2ee1a00030"><code>2ee1a00</code></a>
<code>no_std</code> import simplification.</li>
<li>See full diff in <a
href="https://github.com/marshallpierce/rust-base64/compare/v0.21.4...v0.21.5">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=base64&package-manager=cargo&previous-version=0.21.4&new-version=0.21.5)](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>
2023-10-30 14:21:22 -03:00
dependabot[bot]
bf39f65bb0 build(deps): Bump futures from 0.3.28 to 0.3.29 in /rust (#2523)
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.28 to
0.3.29.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/futures-rs/releases">futures's
releases</a>.</em></p>
<blockquote>
<h2>0.3.29</h2>
<ul>
<li>Add <code>TryStreamExt::try_ready_chunks</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2757">#2757</a>)</li>
<li>Add <code>TryStreamExt::{try_all,try_any}</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2783">#2783</a>)</li>
<li>Add <code>UnboundedSender::{len,is_empty}</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2750">#2750</a>)</li>
<li>Fix <code>Sync</code> impl of <code>FuturesUnordered</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2788">#2788</a>)</li>
<li>Fix infinite loop caused by invalid UTF-8 bytes (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2785">#2785</a>)</li>
<li>Fix build error with -Z minimal-versions (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2761">#2761</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md">futures's
changelog</a>.</em></p>
<blockquote>
<h1>0.3.29 - 2023-10-26</h1>
<ul>
<li>Add <code>TryStreamExt::try_ready_chunks</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2757">#2757</a>)</li>
<li>Add <code>TryStreamExt::{try_all,try_any}</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2783">#2783</a>)</li>
<li>Add <code>UnboundedSender::{len,is_empty}</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2750">#2750</a>)</li>
<li>Fix <code>Sync</code> impl of <code>FuturesUnordered</code> (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2788">#2788</a>)</li>
<li>Fix infinite loop caused by invalid UTF-8 bytes (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2785">#2785</a>)</li>
<li>Fix build error with -Z minimal-versions (<a
href="https://redirect.github.com/rust-lang/futures-rs/issues/2761">#2761</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="86f2a6aa8c"><code>86f2a6a</code></a>
Release 0.3.29</li>
<li><a
href="a40204d698"><code>a40204d</code></a>
Provide AtomicWaker if portable-atomic feature is enabled, even if
atomic CAS...</li>
<li><a
href="24cca65c7a"><code>24cca65</code></a>
Add <code>TryAny</code> adapter</li>
<li><a
href="e60a439bde"><code>e60a439</code></a>
Add <code>TryAll</code> adapter</li>
<li><a
href="5051335313"><code>5051335</code></a>
Remove unsafe code from AssertUnmoved</li>
<li><a
href="60a86e1532"><code>60a86e1</code></a>
Fix Sync impl of FuturesUnordered</li>
<li><a
href="f392082f3a"><code>f392082</code></a>
Extend io::AsyncBufReadExt::lines example with invalid UTF-8</li>
<li><a
href="2f2ec390e4"><code>2f2ec39</code></a>
Fix infinite loop caused by invalid UTF-8 bytes</li>
<li><a
href="8570ea6a7a"><code>8570ea6</code></a>
Fix unused_imports warning</li>
<li><a
href="43c0c5f81a"><code>43c0c5f</code></a>
Add tests for <code>StreamExt::all</code> and
<code>StreamExt::any</code></li>
<li>Additional commits viewable in <a
href="https://github.com/rust-lang/futures-rs/compare/0.3.28...0.3.29">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=futures&package-manager=cargo&previous-version=0.3.28&new-version=0.3.29)](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>
2023-10-30 13:31:46 -03:00
dependabot[bot]
50f3809ffa build(deps): Bump serde from 1.0.189 to 1.0.190 in /rust (#2522)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.189 to
1.0.190.
<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.190</h2>
<ul>
<li>Preserve NaN sign when deserializing f32 from f64 or vice versa (<a
href="https://redirect.github.com/serde-rs/serde/issues/2637">#2637</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="edb1a586d8"><code>edb1a58</code></a>
Release 1.0.190</li>
<li><a
href="11c2917040"><code>11c2917</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2637">#2637</a>
from dtolnay/nansign</li>
<li><a
href="6ba9c12ff6"><code>6ba9c12</code></a>
Float copysign does not exist in libcore yet</li>
<li><a
href="d2fcc346b9"><code>d2fcc34</code></a>
Ensure f32 deserialized from f64 and vice versa preserve NaN sign</li>
<li><a
href="a091a07aa2"><code>a091a07</code></a>
Add float NaN tests</li>
<li><a
href="bb4135cae8"><code>bb4135c</code></a>
Fix unused imports</li>
<li><a
href="8de84b7ca3"><code>8de84b7</code></a>
Resolve get_first clippy lint</li>
<li><a
href="9cdf332029"><code>9cdf332</code></a>
Remove 'remember to update' reminder from Cargo.toml</li>
<li>See full diff in <a
href="https://github.com/serde-rs/serde/compare/v1.0.189...v1.0.190">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.189&new-version=1.0.190)](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>
2023-10-30 13:31:33 -03:00
dependabot[bot]
f0e545a8fd build(deps): Bump stun_codec from 0.3.3 to 0.3.4 in /rust (#2487)
Bumps [stun_codec](https://github.com/sile/stun_codec) from 0.3.3 to
0.3.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sile/stun_codec/releases">stun_codec's
releases</a>.</em></p>
<blockquote>
<h2>v0.3.4</h2>
<h2>What's Changed</h2>
<ul>
<li>Remove the hmac_sha1 dependency by <a
href="https://github.com/pantsman0"><code>@​pantsman0</code></a> in <a
href="https://redirect.github.com/sile/stun_codec/pull/20">sile/stun_codec#20</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/pantsman0"><code>@​pantsman0</code></a>
made their first contribution in <a
href="https://redirect.github.com/sile/stun_codec/pull/20">sile/stun_codec#20</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/sile/stun_codec/compare/0.3.3...0.3.4">https://github.com/sile/stun_codec/compare/0.3.3...0.3.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29e1a317dc"><code>29e1a31</code></a>
Bump version to 0.3.4</li>
<li><a
href="7396682627"><code>7396682</code></a>
Update ci.yml</li>
<li><a
href="6f11af4449"><code>6f11af4</code></a>
apply cargo fmt</li>
<li><a
href="2a5c6b938a"><code>2a5c6b9</code></a>
Merge pull request <a
href="https://redirect.github.com/sile/stun_codec/issues/20">#20</a>
from pantsman0/master</li>
<li><a
href="a7bc91d771"><code>a7bc91d</code></a>
Remove the hmac_sha1 dependency</li>
<li>See full diff in <a
href="https://github.com/sile/stun_codec/compare/0.3.3...0.3.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=stun_codec&package-manager=cargo&previous-version=0.3.3&new-version=0.3.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 <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>
2023-10-23 17:50:48 -03:00
dependabot[bot]
0af112df00 build(deps): Bump socket2 from 0.5.4 to 0.5.5 in /rust (#2486)
Bumps [socket2](https://github.com/rust-lang/socket2) from 0.5.4 to
0.5.5.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/socket2/blob/master/CHANGELOG.md">socket2's
changelog</a>.</em></p>
<blockquote>
<h1>0.5.5</h1>
<ul>
<li>Add support for Vita
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/465">rust-lang/socket2#465</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="328dac6604"><code>328dac6</code></a>
Release v0.5.5</li>
<li><a
href="2173342387"><code>2173342</code></a>
Add v0.4.10 changelog</li>
<li><a
href="f61a788b88"><code>f61a788</code></a>
Expanded bool</li>
<li><a
href="f1349f3d24"><code>f1349f3</code></a>
Fixes after review</li>
<li><a
href="beeb126ac5"><code>beeb126</code></a>
Add support for vita</li>
<li>See full diff in <a
href="https://github.com/rust-lang/socket2/compare/v0.5.4...v0.5.5">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=socket2&package-manager=cargo&previous-version=0.5.4&new-version=0.5.5)](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>
2023-10-23 17:50:24 -03:00
Jamil
573124bd2f Document relay gateway client CLIs (#2424)
Fixes #2363 

* Rename `relay` package to `firezone-relay` so that binaries outputted
match the `firezone-*` cli naming scheme
* Rename `firezone-headless-client` package to `firezone-linux-client`
for consistency
* Add READMEs for user-facing CLI components (there will also be docs
later)
2023-10-19 00:59:17 +00:00
Thomas Eizinger
a65a0ad88e deps: update to webrtc 0.9, boringtun to master (#2404)
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2023-10-18 19:05:28 -03:00
dependabot[bot]
b69a91e33c build(deps): Bump uuid from 1.4.1 to 1.5.0 in /rust (#2428)
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.4.1 to 1.5.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/uuid-rs/uuid/releases">uuid's
releases</a>.</em></p>
<blockquote>
<h2>1.5.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Add impl From<!-- raw HTML omitted --> for String under the std
feature flag by <a
href="https://github.com/brahms116"><code>@​brahms116</code></a> in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/700">uuid-rs/uuid#700</a></li>
<li>Remove dead link to templates by <a
href="https://github.com/KodrAus"><code>@​KodrAus</code></a> in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/704">uuid-rs/uuid#704</a></li>
<li>make ClockSequence wrap correctly by <a
href="https://github.com/fef1312"><code>@​fef1312</code></a> in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/705">uuid-rs/uuid#705</a></li>
<li>Track MSRV in Cargo.toml by <a
href="https://github.com/KodrAus"><code>@​KodrAus</code></a> in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/706">uuid-rs/uuid#706</a></li>
<li>Support converting between Uuid and vec by <a
href="https://github.com/KodrAus"><code>@​KodrAus</code></a> in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/703">uuid-rs/uuid#703</a></li>
<li>Replace MIPS with Miri and add clippy to CI by <a
href="https://github.com/KodrAus"><code>@​KodrAus</code></a> in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/712">uuid-rs/uuid#712</a></li>
<li>Added <code>bytemuck</code> support by <a
href="https://github.com/John-Toohey"><code>@​John-Toohey</code></a> in
<a
href="https://redirect.github.com/uuid-rs/uuid/pull/711">uuid-rs/uuid#711</a></li>
<li>Prepare for 1.5.0 release by <a
href="https://github.com/KodrAus"><code>@​KodrAus</code></a> in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/713">uuid-rs/uuid#713</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/brahms116"><code>@​brahms116</code></a>
made their first contribution in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/700">uuid-rs/uuid#700</a></li>
<li><a href="https://github.com/fef1312"><code>@​fef1312</code></a> made
their first contribution in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/705">uuid-rs/uuid#705</a></li>
<li><a
href="https://github.com/John-Toohey"><code>@​John-Toohey</code></a>
made their first contribution in <a
href="https://redirect.github.com/uuid-rs/uuid/pull/711">uuid-rs/uuid#711</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/uuid-rs/uuid/compare/1.4.1...1.5.0">https://github.com/uuid-rs/uuid/compare/1.4.1...1.5.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e68b0108fa"><code>e68b010</code></a>
Merge pull request <a
href="https://redirect.github.com/uuid-rs/uuid/issues/713">#713</a> from
uuid-rs/cargo/1.5.0</li>
<li><a
href="b1cc27a118"><code>b1cc27a</code></a>
prepare for 1.5.0 release</li>
<li><a
href="b8ebdee9b0"><code>b8ebdee</code></a>
Merge pull request <a
href="https://redirect.github.com/uuid-rs/uuid/issues/711">#711</a> from
John-Toohey/bytemuck</li>
<li><a
href="2dad70d3c7"><code>2dad70d</code></a>
Added the <code>bytemuck</code> optional dependency to
<code>lib.rs</code> documentation</li>
<li><a
href="bcf2b58997"><code>bcf2b58</code></a>
Added Bytemuck to .github/workflows/ci.yml::env::DEP_FEATURES</li>
<li><a
href="a8d2e1d4bf"><code>a8d2e1d</code></a>
Merge pull request <a
href="https://redirect.github.com/uuid-rs/uuid/issues/712">#712</a> from
uuid-rs/ci/miri-clippy</li>
<li><a
href="0c5b2dfebd"><code>0c5b2df</code></a>
fix up a clippy warning</li>
<li><a
href="1d4bd6e5b2"><code>1d4bd6e</code></a>
Merge pull request <a
href="https://redirect.github.com/uuid-rs/uuid/issues/703">#703</a> from
uuid-rs/feat/convert-to-vec</li>
<li><a
href="52b3fbc04a"><code>52b3fbc</code></a>
replace MIPS with Miri and add clippy to CI</li>
<li><a
href="3833d095c1"><code>3833d09</code></a>
Make the bytemuck dependency look more like the other dependencies</li>
<li>Additional commits viewable in <a
href="https://github.com/uuid-rs/uuid/compare/1.4.1...1.5.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=uuid&package-manager=cargo&previous-version=1.4.1&new-version=1.5.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 <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>
2023-10-18 19:45:18 +00:00
Jamil
6ec10b2669 Revert "Fix/website mdx" (#2434)
Reverts firezone/firezone#2433
2023-10-18 11:42:54 -07:00
Jamil
caef531b17 Fix/website mdx (#2433) 2023-10-18 11:42:18 -07:00
dependabot[bot]
aaf18aa66b build(deps): Bump tokio from 1.32.0 to 1.33.0 in /rust (#2388)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-18 00:17:28 +00:00
dependabot[bot]
3e1ba0d041 build(deps): Bump serde from 1.0.188 to 1.0.189 in /rust (#2383)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-17 23:54:06 +00:00
Thomas Eizinger
dbb1dd4a3a deps(rust): bump to Rust version 1.73 (#2291)
See https://releases.rs/docs/1.73.0/ for details.
2023-10-10 13:03:06 -07:00
dependabot[bot]
2e30596a25 build(deps): Bump proptest from 1.2.0 to 1.3.1 in /rust (#2281)
Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.2.0 to
1.3.1.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0b4ffe8d08"><code>0b4ffe8</code></a>
[Release] 1.3.1 -- fix for incompatible bit-set/bit-vec versions (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/375">#375</a>)</li>
<li><a
href="99bdf24f8a"><code>99bdf24</code></a>
[Release] 1.3.0 (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/373">#373</a>)</li>
<li><a
href="7bfc889fea"><code>7bfc889</code></a>
Merge pull request <a
href="https://redirect.github.com/proptest-rs/proptest/issues/357">#357</a>
from tzemanovic/tomas/clear-break-dead-code</li>
<li><a
href="eb9db9d6c3"><code>eb9db9d</code></a>
Merge branch 'master' into tomas/clear-break-dead-code</li>
<li><a
href="370b3a031c"><code>370b3a0</code></a>
Permit use of (?-u) in byte-regex strategies (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/336">#336</a>)
(<a
href="https://redirect.github.com/proptest-rs/proptest/issues/337">#337</a>)</li>
<li><a
href="e395e8caa5"><code>e395e8c</code></a>
Add PathBuf Arbitrary impl with tests (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/368">#368</a>)</li>
<li><a
href="fcccad0f76"><code>fcccad0</code></a>
Book tips and best practices (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/367">#367</a>)</li>
<li><a
href="fc3be95ae1"><code>fc3be95</code></a>
Merge pull request <a
href="https://redirect.github.com/proptest-rs/proptest/issues/355">#355</a>
from tzemanovic/tomas/fix-sm-logs</li>
<li><a
href="7292965d14"><code>7292965</code></a>
Merge pull request <a
href="https://redirect.github.com/proptest-rs/proptest/issues/360">#360</a>
from psychon/remove-byteorder</li>
<li><a
href="466d59daec"><code>466d59d</code></a>
[proptest] silence clippy::arc_with_non_send_sync warning with
prop_oneof (<a
href="https://redirect.github.com/proptest-rs/proptest/issues/363">#363</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/proptest-rs/proptest/compare/v1.2.0...v1.3.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=proptest&package-manager=cargo&previous-version=1.2.0&new-version=1.3.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 <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>
Co-authored-by: Gabi <gabrielalejandro7@gmail.com>
2023-10-09 20:02:42 -03:00
Thomas Eizinger
72d6942a71 refactor(phoenix-channel): introduce init function (#2260)
What is common across all our usages of the phoenix channel is that we
wait for some kind of `init` message before we fully start-up. We
extract this pattern into a dedicated function within the
`phoenix-channel` crate.

---------

Signed-off-by: Thomas Eizinger <thomas@eizinger.io>
2023-10-10 07:45:46 +11:00
Jamil
ff1c0b950a Add make version command to set version in components (#2215)
Fixes #2213 

This will allow us to fetch the actual Firezone version that's in use
from within the language runtimes themselves without resorting to an
external mechanism to do so. This is useful in connlib for example when
selecting the Portal API to use with `X-Firezone-API-Version`, and
useful in log printing.

Since platforms enforce semantic version, I propose the convention:

`1.20231001.34` where MAJOR is `1` for Firezone 1.0, MINOR is our API
version, and PATCH is the release of that API version that is published
on the repo.

Given this system, publishing a release would consist of:

1. Edit `Makefile` to set the patch and minor versions appropriately
depending on whether there are breaking portal API changes.
2. `make version`
3. `git add .; git commit; git push` -- this opens a PR with the new
version numbers. In this PR we can discuss whether to stop-ship or go.
4. PR merged, release is drafted and deployed to staging with the new
tag and version numbers
5. build artifacts are uploaded to drafted release, everything is tagged
and versioned appropriately without having to introduce another commit
6. If all looks good, publish release
2023-10-03 15:22:02 +11:00
dependabot[bot]
1e26c1cea8 build(deps): Bump the otel group in /rust with 1 update (#2217)
Bumps the otel group in /rust with 1 update:
[tracing-opentelemetry](https://github.com/tokio-rs/tracing-opentelemetry).

<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tracing-opentelemetry/releases">tracing-opentelemetry's
releases</a>.</em></p>
<blockquote>
<h2>0.21.0</h2>
<h3>Added</h3>
<ul>
<li>Ability to produce measurement with attributes (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/43">#43</a>)</li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li><code>MetricsLayer</code> is now generic over the its
<code>Subscriber</code> impl to support
<a
href="https://docs.rs/tracing-subscriber/0.3.17/tracing_subscriber/layer/index.html#per-layer-filtering">per-layer
filtering</a> (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/43">#43</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Trace IDs not matching when propagating invalid contexts (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/55">#55</a>)</li>
</ul>
<p>Thanks to <a href="https://github.com/ymgyt"><code>@​ymgyt</code></a>
and <a href="https://github.com/hdost"><code>@​hdost</code></a> for
contributing to this release!</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tracing-opentelemetry/blob/v0.1.x/CHANGELOG.md">tracing-opentelemetry's
changelog</a>.</em></p>
<blockquote>
<h1>0.21.0 (August 28, 2023)</h1>
<h3>Added</h3>
<ul>
<li>Ability to produce measurement with attributes (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/43">#43</a>)</li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li><code>MetricsLayer</code> is now generic over the its
<code>Subscriber</code> impl to support
<a
href="https://docs.rs/tracing-subscriber/0.3.17/tracing_subscriber/layer/index.html#per-layer-filtering">per-layer
filtering</a> (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/43">#43</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Trace IDs not matching when propagating invalid contexts (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/55">#55</a>)</li>
</ul>
<p>Thanks to <a href="https://github.com/ymgyt"><code>@​ymgyt</code></a>
and <a href="https://github.com/hdost"><code>@​hdost</code></a> for
contributing to this release!</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="61498639b0"><code>6149863</code></a>
Prepare for v0.21.0 release (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/56">#56</a>)</li>
<li><a
href="4fa7527481"><code>4fa7527</code></a>
fix: trace id did not match when propagating invalid context (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/55">#55</a>)</li>
<li><a
href="11d57b8092"><code>11d57b8</code></a>
chore: add opentelemetry-otlp integration example (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/53">#53</a>)</li>
<li><a
href="680f91dcdf"><code>680f91d</code></a>
docs: update semantic-conventions link (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/52">#52</a>)</li>
<li><a
href="fee6cbf238"><code>fee6cbf</code></a>
chore: use pprof in the benchmark for metrics (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/51">#51</a>)</li>
<li><a
href="e9148988fc"><code>e914898</code></a>
Move off of opentelemetry in favor of separate crates. (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/48">#48</a>)</li>
<li><a
href="473a500d5a"><code>473a500</code></a>
docs: add metrics layer attributes description (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/49">#49</a>)</li>
<li><a
href="42a3c73c37"><code>42a3c73</code></a>
docs: update README basic example (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/47">#47</a>)</li>
<li><a
href="7bb3e5643a"><code>7bb3e56</code></a>
feat: produce measurement with attributes (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/43">#43</a>)</li>
<li><a
href="6bc7dce956"><code>6bc7dce</code></a>
docs: fix REAEME MetricsLayer link (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/44">#44</a>)</li>
<li>See full diff in <a
href="https://github.com/tokio-rs/tracing-opentelemetry/compare/v0.20.0...v0.21.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tracing-opentelemetry&package-manager=cargo&previous-version=0.20.0&new-version=0.21.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 <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>
2023-10-02 16:32:00 -03:00
dependabot[bot]
a3aa6721c0 build(deps): Bump sha2 from 0.10.7 to 0.10.8 in /rust (#2220)
Bumps [sha2](https://github.com/RustCrypto/hashes) from 0.10.7 to
0.10.8.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="28a7b0da94"><code>28a7b0d</code></a>
Update Cargo.lock</li>
<li><a
href="c6decdf36f"><code>c6decdf</code></a>
sha2: Add inline-asm backend for LoongArch64 targets (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/507">#507</a>)</li>
<li><a
href="026b0e81e9"><code>026b0e8</code></a>
md5: minor code tweaks, bump to v0.10.6 (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/506">#506</a>)</li>
<li><a
href="a24e8b73a6"><code>a24e8b7</code></a>
md5: Add inline-asm backend for LoongArch64 targets (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/505">#505</a>)</li>
<li><a
href="7aba4b5271"><code>7aba4b5</code></a>
Add asm!-based backend for LoongArch64 targets (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/504">#504</a>)</li>
<li><a
href="dcfd5a5016"><code>dcfd5a5</code></a>
build(deps): bump actions/checkout from 3 to 4 (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/501">#501</a>)</li>
<li><a
href="4372c776a5"><code>4372c77</code></a>
CI: replace MIPS cross tests with PPC32 (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/503">#503</a>)</li>
<li><a
href="42d3a25a4e"><code>42d3a25</code></a>
k12: fix incorrect hash calculation (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/499">#499</a>)</li>
<li><a
href="342dbfabd4"><code>342dbfa</code></a>
Update asm dependencies (<a
href="https://redirect.github.com/RustCrypto/hashes/issues/498">#498</a>)</li>
<li><a
href="59176e068a"><code>59176e0</code></a>
Update Clippy and fix lints</li>
<li>Additional commits viewable in <a
href="https://github.com/RustCrypto/hashes/compare/sha2-v0.10.7...sha2-v0.10.8">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sha2&package-manager=cargo&previous-version=0.10.7&new-version=0.10.8)](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>
2023-10-02 16:30:29 -03:00
Jamil
c4c6f3e4ca refactor(portal): Don't pin session token to user_agent or remote_ip (#2195)
Removing the check to get Rust PRs to pass.

**Note**: #2182 was dependent on this one, and has since merged into
this one.
2023-09-30 07:40:57 -07:00
Jamil
3baf2ee1bb feat(connlib): Wrap secrets in Secret to minimize chance of leakage (#2159)
Fixes #2085

---------

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2023-09-28 18:35:16 +00:00
dependabot[bot]
ad3d5f00b7 build(deps): Bump the otel group in /rust with 5 updates (#2165)
Bumps the otel group in /rust with 5 updates:

| Package | From | To |
| --- | --- | --- |
|
[tracing-stackdriver](https://github.com/NAlexPear/tracing-stackdriver)
| `0.7.2` | `0.8.0` |
|
[tracing-opentelemetry](https://github.com/tokio-rs/tracing-opentelemetry)
| `0.19.0` | `0.20.0` |
| [opentelemetry](https://github.com/open-telemetry/opentelemetry-rust)
| `0.19.0` | `0.20.0` |
|
[opentelemetry_api](https://github.com/open-telemetry/opentelemetry-rust)
| `0.19.0` | `0.20.0` |
|
[opentelemetry-otlp](https://github.com/open-telemetry/opentelemetry-rust)
| `0.12.0` | `0.13.0` |

Updates `tracing-stackdriver` from 0.7.2 to 0.8.0
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b47f8c00ff"><code>b47f8c0</code></a>
⬆ Bump version to 0.8.0</li>
<li><a
href="7bad22884b"><code>7bad228</code></a>
🏁 Add pre-publish semver check</li>
<li><a
href="a72e4585ea"><code>a72e458</code></a>
Run cargo-update to fix CI</li>
<li><a
href="b577f24145"><code>b577f24</code></a>
Fix formatting</li>
<li><a
href="e28429faad"><code>e28429f</code></a>
Fix compile errors in test</li>
<li><a
href="b5c8a23fa0"><code>b5c8a23</code></a>
Update lockfile</li>
<li><a
href="0d92b9fa8d"><code>0d92b9f</code></a>
Bump opentelemetry dependency</li>
<li><a
href="848b0822dc"><code>848b082</code></a>
📝 Handle latest clippy lints</li>
<li>See full diff in <a
href="https://github.com/NAlexPear/tracing-stackdriver/compare/v0.7.2...v0.8.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `tracing-opentelemetry` from 0.19.0 to 0.20.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tracing-opentelemetry/releases">tracing-opentelemetry's
releases</a>.</em></p>
<blockquote>
<h2>0.20.0</h2>
<h3>Added</h3>
<ul>
<li>Add <code>OpenTelemetrySpanExt::set_attribute</code> function (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/34">#34</a>)</li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li>Upgrade to <code>v0.20.0</code> of <code>opentelemetry</code> (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/36">#36</a>)
For list of breaking changes in OpenTelemetry, see the
<a
href="https://github.com/open-telemetry/opentelemetry-rust/blob/v0.20.0/opentelemetry-api/CHANGELOG.md#v0200">v0.20.0
changelog</a>.</li>
</ul>
<p>Thanks to <a
href="https://github.com/ymgyt"><code>@​ymgyt</code></a>, <a
href="https://github.com/mladedav"><code>@​mladedav</code></a>, <a
href="https://github.com/shaun-cox"><code>@​shaun-cox</code></a>, and <a
href="https://github.com/Protryon"><code>@​Protryon</code></a> for
contributing to this release!</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tracing-opentelemetry/blob/v0.1.x/CHANGELOG.md">tracing-opentelemetry's
changelog</a>.</em></p>
<blockquote>
<h1>0.20.0 (August 1, 2023)</h1>
<h3>Added</h3>
<ul>
<li>Add <code>OpenTelemetrySpanExt::set_attribute</code> function (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/34">#34</a>)</li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li>Upgrade to <code>v0.20.0</code> of <code>opentelemetry</code> (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/36">#36</a>)
For list of breaking changes in OpenTelemetry, see the
<a
href="https://github.com/open-telemetry/opentelemetry-rust/blob/v0.20.0/opentelemetry-api/CHANGELOG.md#v0200">v0.20.0
changelog</a>.</li>
</ul>
<p>Thanks to <a
href="https://github.com/ymgyt"><code>@​ymgyt</code></a>, <a
href="https://github.com/mladedav"><code>@​mladedav</code></a>, <a
href="https://github.com/shaun-cox"><code>@​shaun-cox</code></a>, and <a
href="https://github.com/Protryon"><code>@​Protryon</code></a> for
contributing to this release!</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d9b18f2aed"><code>d9b18f2</code></a>
Prepare for v0.20.0 release (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/41">#41</a>)</li>
<li><a
href="d36955010d"><code>d369550</code></a>
chore: use pprof only if target_os is not windows (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/40">#40</a>)</li>
<li><a
href="76771cf8e8"><code>76771cf</code></a>
update opentelemetry to 0.20.0 (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/36">#36</a>)</li>
<li><a
href="7b77d33d58"><code>7b77d33</code></a>
Add set_attribute function (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/34">#34</a>)</li>
<li><a
href="f5f898b47e"><code>f5f898b</code></a>
Enable flame graphs and reports for benchmarks (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/27">#27</a>)</li>
<li><a
href="040c57a61b"><code>040c57a</code></a>
Set builder parent span to None when manually setting parent (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/26">#26</a>)</li>
<li><a
href="5ce1b10893"><code>5ce1b10</code></a>
build(deps): update criterion requirement from 0.4.0 to 0.5.0 (<a
href="https://redirect.github.com/tokio-rs/tracing-opentelemetry/issues/24">#24</a>)</li>
<li>See full diff in <a
href="https://github.com/tokio-rs/tracing-opentelemetry/compare/v0.19.0...v0.20.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `opentelemetry` from 0.19.0 to 0.20.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/open-telemetry/opentelemetry-rust/releases">opentelemetry's
releases</a>.</em></p>
<blockquote>
<h2>v0.20.0</h2>
<p>See individual crate changelogs for details.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="dfeac078ff"><code>dfeac07</code></a>
Fix stdout exporter dependency (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1172">#1172</a>)</li>
<li><a
href="771d3c4207"><code>771d3c4</code></a>
Prepare for v0.20.0 release (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1156">#1156</a>)</li>
<li><a
href="2ca024e9ab"><code>2ca024e</code></a>
Export logs only if the level/logger/target is enabled. (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1147">#1147</a>)</li>
<li><a
href="8975aa382e"><code>8975aa3</code></a>
fix: Fix env endpoint use in telemetry agent (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1167">#1167</a>)</li>
<li><a
href="6962621fb8"><code>6962621</code></a>
Start adding metrics advanced (view) examples (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1170">#1170</a>)</li>
<li><a
href="9f28319307"><code>9f28319</code></a>
update (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1169">#1169</a>)</li>
<li><a
href="1f59a15cbf"><code>1f59a15</code></a>
Add OTLP LogExporter to the example (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1168">#1168</a>)</li>
<li><a
href="58ad33a5d0"><code>58ad33a</code></a>
Add compression support for otlp tonic (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1165">#1165</a>)</li>
<li><a
href="ba6f924bcd"><code>ba6f924</code></a>
proto: fix doc links to tonic, prost (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1162">#1162</a>)</li>
<li><a
href="fb141994e0"><code>fb14199</code></a>
Install logger provider (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1164">#1164</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/open-telemetry/opentelemetry-rust/compare/v0.19.0...v0.20.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `opentelemetry_api` from 0.19.0 to 0.20.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/open-telemetry/opentelemetry-rust/releases">opentelemetry_api's
releases</a>.</em></p>
<blockquote>
<h2>v0.20.0</h2>
<p>See individual crate changelogs for details.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="dfeac078ff"><code>dfeac07</code></a>
Fix stdout exporter dependency (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1172">#1172</a>)</li>
<li><a
href="771d3c4207"><code>771d3c4</code></a>
Prepare for v0.20.0 release (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1156">#1156</a>)</li>
<li><a
href="2ca024e9ab"><code>2ca024e</code></a>
Export logs only if the level/logger/target is enabled. (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1147">#1147</a>)</li>
<li><a
href="8975aa382e"><code>8975aa3</code></a>
fix: Fix env endpoint use in telemetry agent (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1167">#1167</a>)</li>
<li><a
href="6962621fb8"><code>6962621</code></a>
Start adding metrics advanced (view) examples (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1170">#1170</a>)</li>
<li><a
href="9f28319307"><code>9f28319</code></a>
update (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1169">#1169</a>)</li>
<li><a
href="1f59a15cbf"><code>1f59a15</code></a>
Add OTLP LogExporter to the example (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1168">#1168</a>)</li>
<li><a
href="58ad33a5d0"><code>58ad33a</code></a>
Add compression support for otlp tonic (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1165">#1165</a>)</li>
<li><a
href="ba6f924bcd"><code>ba6f924</code></a>
proto: fix doc links to tonic, prost (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1162">#1162</a>)</li>
<li><a
href="fb141994e0"><code>fb14199</code></a>
Install logger provider (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/1164">#1164</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/open-telemetry/opentelemetry-rust/compare/v0.19.0...v0.20.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `opentelemetry-otlp` from 0.12.0 to 0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/open-telemetry/opentelemetry-rust/releases">opentelemetry-otlp's
releases</a>.</em></p>
<blockquote>
<h2>v0.13.0</h2>
<p>Upgrade note: exporter pipelines do not return an uninstall guard as
of <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/444">#444</a>,
use <code>opentelemetry::global::shutdown_tracer_provider</code>
explicitly instead.</p>
<h2>Changed</h2>
<ul>
<li>Pull configrations from environment variables by default when
creating BatchSpanProcessor <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/445">#445</a></li>
<li>Convert doc links to intra-doc <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/466">#466</a></li>
<li>Switch to Cow for event names <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/471">#471</a></li>
<li>Use API to configure async runtime instead of features <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/481">#481</a></li>
<li>Rename trace config with_default_sampler to with_sampler <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/482">#482</a></li>
</ul>
<h2>Removed</h2>
<ul>
<li>Removed tracer provider guard <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/444">#444</a></li>
<li>Removed <code>from_env</code> and use environment variables to
initialize the configurations by default <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/459">#459</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="97c220f624"><code>97c220f</code></a>
Prepare for v0.13.0 release (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/470">#470</a>)</li>
<li><a
href="a32b962668"><code>a32b962</code></a>
Merge opentelemetry-stackdriver into this repo. (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/487">#487</a>)</li>
<li><a
href="cb419bb9f1"><code>cb419bb</code></a>
Configure async runtime in Rust code instead of cargo feature (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/481">#481</a>)</li>
<li><a
href="2b9fa23145"><code>2b9fa23</code></a>
fix: otel-otlp will try to create another tokio runtime inside one if
async f...</li>
<li><a
href="436b76e5bb"><code>436b76e</code></a>
bump prometheus dependency (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/485">#485</a>)</li>
<li><a
href="a49d6f5612"><code>a49d6f5</code></a>
Rename trace config with_default_sampler to with_sampler (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/482">#482</a>)</li>
<li><a
href="e9ef3e23d6"><code>e9ef3e2</code></a>
feat: clean up lint.sh, use API to set grpc layer (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/467">#467</a>)</li>
<li><a
href="d42c552bd0"><code>d42c552</code></a>
Abstraction trait for different runtimes (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/480">#480</a>)</li>
<li><a
href="0b1074e969"><code>0b1074e</code></a>
Impl clone for noop tracer/provider/span (<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/479">#479</a>)</li>
<li><a
href="e17a1313b4"><code>e17a131</code></a>
otlp: mention service.name in kitchen sink cfg doc - closes <a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/475">#475</a>
(<a
href="https://redirect.github.com/open-telemetry/opentelemetry-rust/issues/476">#476</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/open-telemetry/opentelemetry-rust/compare/v0.12.0...v0.13.0">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>
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2023-09-27 18:55:01 +00:00
Gabi
5a998f7373 connlib: add logging string configuration (#2115)
Split from #2104

This adds logging string configuration, unifies behavior between gateway
and headless clients and some cli improvements for those.

---------

Signed-off-by: Gabi <gabrielalejandro7@gmail.com>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2023-09-25 20:17:22 +00:00
dependabot[bot]
616cabab78 build(deps): Bump clap from 4.4.2 to 4.4.4 in /rust (#2107)
Bumps [clap](https://github.com/clap-rs/clap) from 4.4.2 to 4.4.4.
<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.4.4</h2>
<h2>[4.4.4] - 2023-09-18</h2>
<h3>Internal</h3>
<ul>
<li>Update <code>terminal_size</code> to 0.3</li>
</ul>
<h2>v4.4.3</h2>
<h2>[4.4.3] - 2023-09-12</h2>
<h3>Documentation</h3>
<ul>
<li><em>(derive)</em> Clarify use of attributes within the tutorial</li>
<li>Split sections in the builder and derive tutorials into separate
modules</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.4.4] - 2023-09-18</h2>
<h3>Internal</h3>
<ul>
<li>Update <code>terminal_size</code> to 0.3</li>
</ul>
<h2>[4.4.3] - 2023-09-12</h2>
<h3>Documentation</h3>
<ul>
<li><em>(derive)</em> Clarify use of attributes within the tutorial</li>
<li>Split sections in the builder and derive tutorials into separate
modules</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e6e539660f"><code>e6e5396</code></a>
chore: Release</li>
<li><a
href="acbb60c113"><code>acbb60c</code></a>
docs: Update changelog</li>
<li><a
href="f09d521450"><code>f09d521</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5129">#5129</a>
from cgwalters/widen-terminal-size</li>
<li><a
href="84f99ff979"><code>84f99ff</code></a>
chore(builder): Bump terminal_size to 0.3</li>
<li><a
href="7f8df272d9"><code>7f8df27</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5124">#5124</a>
from devinherron/master</li>
<li><a
href="4dff87386a"><code>4dff873</code></a>
fix(doc): Fix typo in 03_04_subcommands.md</li>
<li><a
href="e9668b364c"><code>e9668b3</code></a>
chore: Release</li>
<li><a
href="bc4986e01e"><code>bc4986e</code></a>
docs: Update changelog</li>
<li><a
href="3d53641ca1"><code>3d53641</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5122">#5122</a>
from epage/docs</li>
<li><a
href="32586c7b63"><code>32586c7</code></a>
docs(tutorial): Split into separate modules per section</li>
<li>Additional commits viewable in <a
href="https://github.com/clap-rs/clap/compare/v4.4.2...v4.4.4">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.4.2&new-version=4.4.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 <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>
2023-09-21 19:23:54 +00:00
Thomas Eizinger
9d93d02b48 deps(relay): bump to stun-codec 0.3.3 (#2088)
I've opened several PRs upstream for code that was missing in
`stun-codec` for our purposes. Those have been accepted and released, so
we can bump to that version now and remove that code.

Related: https://github.com/sile/stun_codec/pull/14.
Related: https://github.com/sile/stun_codec/pull/15.
Related: https://github.com/sile/stun_codec/pull/16.
Related: https://github.com/sile/stun_codec/pull/17.

A big thanks to @sile for the crate and being responsive maintainer
🥳
2023-09-21 06:31:11 +00:00
Thomas Eizinger
ae2fbc3364 feat(relay): respond to bad STUN message where possible (#2073)
Previously, we would only log an error if we failed to decode the
attribute part of a STUN message. Now, if we can decode the STUN header
but fail at one of the attributes, we will properly respond to the
client.

This could for example happen if a client requests a channel number that
is out of range.
2023-09-18 23:29:28 +00:00
dependabot[bot]
41b67b7082 build(deps): Bump socket2 from 0.5.3 to 0.5.4 in /rust (#2079)
Bumps [socket2](https://github.com/rust-lang/socket2) from 0.5.3 to
0.5.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/socket2/blob/master/CHANGELOG.md">socket2's
changelog</a>.</em></p>
<blockquote>
<h1>0.5.4</h1>
<ul>
<li>Deprecated <code>Socket::(bind_)device_by_index</code>, replaced by
<code>Socket::(bind_)device_by_index_v4</code> for IPv4 sockets
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/432">rust-lang/socket2#432</a>).</li>
<li>Added <code>Socket::(bind_)device_by_index_v6</code>
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/432">rust-lang/socket2#432</a>).</li>
<li>Added experimental support for the ESP-IDF framework
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/452">rust-lang/socket2#452</a>)</li>
<li>Added <code>Socket::{send,recv}msg</code> and
<code>MsgHdr(Mut)</code> types, wrapping <code>sendmsg(2)</code>
and <code>recvmsg(2)</code>
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/447">rust-lang/socket2#447</a>).</li>
<li>Added <code>Socket::(set_)reuse_port_lb</code> to retrieve or set
<code>SO_REUSEPORT_LB</code> on
FreeBSD
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/442">rust-lang/socket2#442</a>).</li>
<li>Added <code>Protocol::DIVERT</code> on FreeBSD and OpenBSD
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/448">rust-lang/socket2#448</a>).</li>
<li>Add <code>Socket::protocol</code> for Windows (using
<code>WSAPROTOCOL_INFOW</code>)
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/470">rust-lang/socket2#470</a>).</li>
<li><code>From&lt;SocketAddrV{4,6}&gt;</code> for <code>SockAddr </code>
nows sets <code>ss_len</code> on platforms that
have the fields (most BSDs)
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/469">rust-lang/socket2#469</a>).</li>
<li>Change Windows to use <code>ADDRESS_FAMILY</code> for
<code>sa_family_t</code>, this shouldn't
affect anything in practice
(<a
href="https://redirect.github.com/rust-lang/socket2/pull/463">rust-lang/socket2#463</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/rust-lang/socket2/commits">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=socket2&package-manager=cargo&previous-version=0.5.3&new-version=0.5.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>
2023-09-18 22:28:44 +00:00
Thomas Eizinger
10faffc4db refactor(relay): use tracing::instrument macro for spans (#2068) 2023-09-14 21:10:51 +00:00
Thomas Eizinger
81bc6a8f40 fix(relay): apply our env-filter to the trace exporter layer (#2071)
This might be the issue why we see spans that are not enabled in the
`RUST_LOG` directive.
2023-09-14 01:23:27 -06:00
Thomas Eizinger
94ded341f1 fix(relay): heartbeats are sent to portal not the relay (#2070) 2023-09-14 01:23:07 -06:00
Thomas Eizinger
608488d718 feat(relay): drastically improve usefulness of spans (#2056) 2023-09-14 04:04:20 +00:00
Thomas Eizinger
89d7b0f5f4 feat(relay): replace prometheus with OTEL metrics (#1996)
To better take advantage of the OTEL ecosystem, we change our prometheus
metrics to OTEL metrics. OTEL metrics are pushed to the agent via the
OTEL pipeline set up in https://github.com/firezone/firezone/pull/1995
rather than pulled like prometheus.

This means our `/metrics` endpoint is now gone which we previously
(ab)used as a health-check. I've added a dedicated `/healthz` endpoint.
2023-09-13 10:16:07 -06:00
Thomas Eizinger
178b68d770 feat(relay): remove direct integration with Google Cloud Trace (#2054)
This exporter never worked reliably and we have since switched to
running an OTLP collector as a side-car.
2023-09-12 22:00:43 -06:00
Thomas Eizinger
0de7b3e783 fix(relay): assign unique span IDs (#2055)
I misunderstood something the docs around span IDs. This root span was
in-fact harmful because it would group all spans under one ID.
2023-09-12 22:00:31 -06:00
Thomas Eizinger
05201d9350 fix(relay): don't panic if waking time is in the past (#2052)
To be resource efficient, the relay's event loop suspends if there is no
activity on its sockets. Certain operations however need to happen at a
specified time, for example, allocations need to be freed if not renewed
after a specified TTL. To achieve this, the relay implementation has a
mechanism where it can request the event-loop to wake up at a specified
deadline.

Previously, we assumed that this deadline was always in the future. For
reasons not yet known, we encountered a situation where this deadline
was in the past.

We fix this by:

1) Scheduling an immediate wake-up instead of panicking
2) Logging a warning to help with debugging if this ever occurs again
2023-09-12 20:31:08 -06:00
Thomas Eizinger
bc9aec266b fix(relay): add config for Google Project ID when using OTLP exporter (#2051)
If we aren't configured to use the Google Cloud Trace exporter, then we
currently have no way of configuring the Google Project Id for the
relay. This in turn means that we cannot set span IDs for the Google
Cloud logging format.

Add a configuration option and also emit a warning if we are configured
to emit Google Cloud logging but don't have the ID set.
2023-09-12 20:21:53 -06:00
Thomas Eizinger
fbfce585b0 feat(relay): allow configuration of OTLP exporter (#2050)
Allows configuration of an OTLP collector as an alternative to Google
Cloud Trace. We also add a temporary logger that allows us to print
things to stdout as we are setting up the more complicated tracing
infrastructure. This might be prove helpful during debugging!
2023-09-12 18:47:42 -06:00
dependabot[bot]
1a6f0efec0 build(deps): Bump base64 from 0.21.3 to 0.21.4 in /rust (#2004)
Bumps [base64](https://github.com/marshallpierce/rust-base64) from
0.21.3 to 0.21.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md">base64's
changelog</a>.</em></p>
<blockquote>
<h1>0.21.4</h1>
<ul>
<li>Make <code>encoded_len</code> <code>const</code>, allowing the
creation of arrays sized to encode compile-time-known data lengths</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b88fd5bfdc"><code>b88fd5b</code></a>
v0.21.4</li>
<li><a
href="c70a8962d7"><code>c70a896</code></a>
Merge pull request <a
href="https://redirect.github.com/marshallpierce/rust-base64/issues/252">#252</a>
from marshallpierce/mp/const-encoded_len</li>
<li><a
href="59048ffae7"><code>59048ff</code></a>
Make encoded_len const</li>
<li>See full diff in <a
href="https://github.com/marshallpierce/rust-base64/compare/v0.21.3...v0.21.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=base64&package-manager=cargo&previous-version=0.21.3&new-version=0.21.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>
2023-09-12 22:49:23 +00:00
Jamil
40b62448e2 feat(connlib): Add file_logger module and configure via connect (#1973)
Implements the FFI part of the following issues:

Fixes firezone/product#669
Refs firezone/product#672
Refs firezone/product#673

~~Log wg stats as well by moving into warn category.~~ This contains
information we want to keep out of our logging infrastructure for now.
2023-09-11 16:50:48 -07:00
dependabot[bot]
9a905d3295 build(deps): Bump redis from 0.23.2 to 0.23.3 in /rust (#2005)
Bumps [redis](https://github.com/redis-rs/redis-rs) from 0.23.2 to
0.23.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/redis-rs/redis-rs/releases">redis's
releases</a>.</em></p>
<blockquote>
<h2>v0.23.3</h2>
<h3>0.23.3 (2023-09-01)</h3>
<p>Note that this release fixes a small regression in async Redis
Cluster handling of the <code>PING</code> command.
Based on updated response aggregation logic in <a
href="https://redirect.github.com/redis-rs/redis-rs/pull/888">#888</a>,
it
will again return a single response instead of an array.</p>
<h4>Features</h4>
<ul>
<li>Add <code>key_type</code> command (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/933">#933</a>
<a href="https://github.com/bruaba"><code>@​bruaba</code></a>)</li>
<li>Async cluster: Group responses by response_policy. (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/888">#888</a>)</li>
</ul>
<h4>Fixes</h4>
<ul>
<li>Remove unnecessary heap allocation (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/939">#939</a>
<a
href="https://github.com/thechampagne"><code>@​thechampagne</code></a>)</li>
<li>Sentinel tests: Ensure no ports are used twice (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/915">#915</a>)</li>
<li>Fix lint issues (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/937">#937</a>)</li>
<li>Fix JSON serialization error test (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/928">#928</a>)</li>
<li>Remove unused dependencies (<a
href="https://redirect.github.com/redis-rs/redis-rs/pull/916">#916</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="85960f4fc0"><code>85960f4</code></a>
Release redis 0.23.3 / redis-test 0.2.3 (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/940">#940</a>)</li>
<li><a
href="9e336aa391"><code>9e336aa</code></a>
Remove unnecessary heap allocation (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/939">#939</a>)</li>
<li><a
href="404640bf05"><code>404640b</code></a>
Sentinel tests: Ensure no ports are used twice. (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/915">#915</a>)</li>
<li><a
href="220c6a9742"><code>220c6a9</code></a>
Fix test to run all failovers. (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/937">#937</a>)</li>
<li><a
href="163f5c2790"><code>163f5c2</code></a>
Determine the type of a key (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/933">#933</a>)</li>
<li><a
href="7643f3714f"><code>7643f37</code></a>
async cluster: Group responses by response_policy. (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/888">#888</a>)</li>
<li><a
href="f3e7dba176"><code>f3e7dba</code></a>
Fix JSON serialization error test.</li>
<li><a
href="88c940b9ef"><code>88c940b</code></a>
Remove unused dependencies.</li>
<li><a
href="c1efef1c52"><code>c1efef1</code></a>
Update redis-test version. (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/926">#926</a>)</li>
<li><a
href="7756b827fc"><code>7756b82</code></a>
Remove redundancy from example (<a
href="https://redirect.github.com/redis-rs/redis-rs/issues/918">#918</a>)</li>
<li>See full diff in <a
href="https://github.com/redis-rs/redis-rs/compare/redis-0.23.2...redis-0.23.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=redis&package-manager=cargo&previous-version=0.23.2&new-version=0.23.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>
2023-09-11 21:40:23 +00:00
dependabot[bot]
c6d9217977 build(deps): Bump url from 2.4.0 to 2.4.1 in /rust (#1982)
Bumps [url](https://github.com/servo/rust-url) from 2.4.0 to 2.4.1.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a08aa2cd10"><code>a08aa2c</code></a>
Fix panic in set_path for file URLs (<a
href="https://redirect.github.com/servo/rust-url/issues/865">#865</a>)</li>
<li><a
href="edabc79793"><code>edabc79</code></a>
Fix no_std for idna (<a
href="https://redirect.github.com/servo/rust-url/issues/843">#843</a>)</li>
<li><a
href="115837002b"><code>1158370</code></a>
Update WPT data and expectations (<a
href="https://redirect.github.com/servo/rust-url/issues/859">#859</a>)</li>
<li><a
href="beb2cde646"><code>beb2cde</code></a>
Stabilize debugger_visualizer feature (<a
href="https://redirect.github.com/servo/rust-url/issues/855">#855</a>)</li>
<li><a
href="86730f1653"><code>86730f1</code></a>
Add <code>--generate-link-to-definition</code> option when building on
docs.rs (<a
href="https://redirect.github.com/servo/rust-url/issues/858">#858</a>)</li>
<li><a
href="e4dbb436e6"><code>e4dbb43</code></a>
Implement std::error::Error for InvalidBase64 (<a
href="https://redirect.github.com/servo/rust-url/issues/856">#856</a>)</li>
<li><a
href="b33514a3bc"><code>b33514a</code></a>
Rewrite WPT runner (<a
href="https://redirect.github.com/servo/rust-url/issues/857">#857</a>)</li>
<li><a
href="b22857487a"><code>b228574</code></a>
Enable the GitHub merge queue (<a
href="https://redirect.github.com/servo/rust-url/issues/851">#851</a>)</li>
<li><a
href="3a474c320a"><code>3a474c3</code></a>
Merge pull request <a
href="https://redirect.github.com/servo/rust-url/issues/698">#698</a>
from lucacasonato/impl_error_for_data_url</li>
<li><a
href="1f7dbe0df5"><code>1f7dbe0</code></a>
Merge pull request <a
href="https://redirect.github.com/servo/rust-url/issues/848">#848</a>
from lucacasonato/fix_trailing_space_pathname_setter</li>
<li>Additional commits viewable in <a
href="https://github.com/servo/rust-url/compare/v2.4.0...v2.4.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=url&package-manager=cargo&previous-version=2.4.0&new-version=2.4.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>
2023-09-08 17:21:17 +00:00
Thomas Eizinger
6681301166 fix(relay): use system cert store for root certificates (#1999) 2023-09-08 01:32:48 -06:00
Thomas Eizinger
cdfe086ca9 feat(relay): push spans to OTLP-receiver (#1995)
When I built https://github.com/firezone/firezone/pull/1994, I hadn't
yet fully understood how tracing works on Google Cloud. Logs and traces
are separated in Google Cloud. Most importantly, traces need to be
_pushed_ to Google Cloud whereas logs are scraped automatically. Logs
can _reference_ traces via particular fields, in particular
`logging.googleapis.com/spanId` and
`projects/{project_id}/traces/{trace_id}`.

Within the container-optimised OS that we are running on, we are already
authenticated to all the Google APIs. Thus, we can utilize the
`GcpAuthorizer` from the `opentelemetry_stackdriver` module which will
automatically obtain a token from the internal metadata endpoint. Thus
no external configuration is necessary.

We split the configuration for logs / traces into two components:

- `LOG_FORMAT`: Specifies how the logs are formatted. Can be `human`,
`json` or `google-cloud`.
- `TRACE_RECEIVER`: Optional. Specifies where the traces are sent to. If
specified, we will also slightly tweak the log configuration to embed
the project ID which allows Google Cloud Trace to cross-reference log
entries with traces.
2023-09-07 23:45:44 -06:00