At the moment, there is a lot of indirection between tunnel, session,
control planes etc. I think this is a lot easier to understand if we
don't have as many type parameters and instead, create one `Session`
type per "kind" of deployment: Clients and gateways.
This is an initial start, there is now some duplication between gateways
and clients. I'd recommend patch-by-patch review.
I originally started this to do
https://github.com/firezone/firezone/issues/2158 but that is not
possible until we have _concrete_ message types within each `Session`,
hence I am sending this PR first.
Most of this PR is moving things around in the control protocol part of
the tunnel to ease readability, there are some improvements there to do
but ideally I won't spend more time there since we will probably throw
it away when we move away from webrtc.
The most important part of this PR is the ice trickle, which should make
stablishing a connection initially much faster and in theory we can add
relays without incurring in a delay penalty there. I still need to test
and benchmark it with staging
Thanks to @devsnaked for the fix. Opening this to get the changes merged
more quickly.
Supersedes #2072
---------
Signed-off-by: Maximilly Moreira Gonçalves <max.ocw@gmail.com>
Co-authored-by: Maximilly Moreira <max.ocw@gmail.com>
* Removes FirezoneKit/Package.resolved -- this file was unused
* Removes `iphonesimulator` as a build target -- this is just not
supported at all with NetworkExtensions
* Update dependencies
* Rename `_SwiftUINavigationState` to `SwiftUINavigationCore` due to
update
* Removes CONNLIB_MOCK from `build-rust.sh`
* Minor cleanup of `build-rust.sh` to simplify env vars
* Fixes the below issue when building on developer machines on Xcode 15
(GH runner Xcode 15 is buggy, leaving that pinned to 14 for now):
```
= note: ld: warning: no platform load command found in '/private/var/folders/02/4nz6gzkx5wj81dkc4pf9jyyh0000gn/T/rustcRAtGnz/symbols.o', assuming: iOS
ld: building for 'iOS', but linking in dylib (/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libobjc.A.tbd) built for 'macOS macCatalyst zippered(macOS/Catalyst)'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```
Adds `active_path` to determine whether or not to highlight a sidebar
item.
~~Leaving as draft for now to allow @devsnaked to contribute. Edit: Will
use this PR as the base for @devsnaked's upcoming changes~~
Edit: fixes#2065
Instead of using combinators or early-exiting on _success_, use `?` and
keep the data flow of the FFI function focused on the happy path.
I find code easier to read if the left-most indentation is the happy
path and any further indentations are errors that exit early from the
function.
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>
Splits of from #2104
Some refactoring I did for firezone/product#681 to obtain better
flamegraphs, additionally to improve performance I added a `wire` target
so we can turn off wire tracing in production and generally tried to
improve logs for easier filtering and use of structured-tracing.
---------
Signed-off-by: Gabi <gabrielalejandro7@gmail.com>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
Bumps [aes-gcm](https://github.com/RustCrypto/AEADs) from 0.10.2 to
0.10.3.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7e82b01cd4"><code>7e82b01</code></a>
aes-gcm v0.10.3 (<a
href="https://redirect.github.com/RustCrypto/AEADs/issues/552">#552</a>)</li>
<li><a
href="b587b27270"><code>b587b27</code></a>
aes-gcm: avoid exposing plaintext on tag verification failure (<a
href="https://redirect.github.com/RustCrypto/AEADs/issues/551">#551</a>)</li>
<li><a
href="2209bcaa9e"><code>2209bca</code></a>
build(deps): bump actions/checkout from 3 to 4 (<a
href="https://redirect.github.com/RustCrypto/AEADs/issues/548">#548</a>)</li>
<li><a
href="035ec25362"><code>035ec25</code></a>
build(deps): bump ascon from 0.3.1 to 0.4.0 (<a
href="https://redirect.github.com/RustCrypto/AEADs/issues/545">#545</a>)</li>
<li><a
href="e94ba5ab9f"><code>e94ba5a</code></a>
xsalsa20poly1305: remove source code (<a
href="https://redirect.github.com/RustCrypto/AEADs/issues/543">#543</a>)</li>
<li><a
href="31240c1285"><code>31240c1</code></a>
Update Cargo.lock</li>
<li><a
href="40240c4a85"><code>40240c4</code></a>
Update Cargo.lock</li>
<li><a
href="be4ea6fd3b"><code>be4ea6f</code></a>
Update Cargo.lock</li>
<li><a
href="2aef39e90d"><code>2aef39e</code></a>
Update Clippy version (<a
href="https://redirect.github.com/RustCrypto/AEADs/issues/534">#534</a>)</li>
<li><a
href="50710da0cb"><code>50710da</code></a>
Update Cargo.lock</li>
<li>Additional commits viewable in <a
href="https://github.com/RustCrypto/AEADs/compare/aes-gcm-v0.10.2...aes-gcm-v0.10.3">compare
view</a></li>
</ul>
</details>
<br />
[](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/firezone/firezone/network/alerts).
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
The various client platforms are too different in how they handle
logging. Contrary to what I suggested in the initial PR, I no longer
think that storing the guard within the session is a good idea.
For the headless client for example, we block on CTRL+C anyway and thus
can simplify have the guard stay alive for the entirety of the program.
For Apple, we can store the guard in the `WrappedSession`. For Android,
we store it in a static variable anyway.
Lastly, whilst working on the log-upload, I've encountered circular
dependencies caused by this as I would have to store more than just the
`WorkerGuard` in the `Session`.
Bumps [wintun](https://github.com/nulldotblack/wintun) from 0.2.1 to
0.3.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/nulldotblack/wintun/releases">wintun's
releases</a>.</em></p>
<blockquote>
<h2>v0.3.1</h2>
<h2>Added</h2>
<ul>
<li>Support for non 32bit x86 and arm targets in all three examples</li>
</ul>
<h3>Updated</h3>
<ul>
<li>Adapter docs</li>
</ul>
<h2>v0.3.0</h2>
<h3>Added</h3>
<ul>
<li>udp-echo example which mirrors packets via the tun interface</li>
<li><code>Adapter::get_name</code>, <code>Adapter::set_name</code>, and
<code>Adapter::get_guid</code></li>
<li><code>Adapter::set_address</code> <code>Adapter::set_gateway</code>,
<code>Adapter::set_netmask</code>, or
<code>Adapter::set_network_addresses_tuple</code> to set all three at
once
<ul>
<li>Easily configure adapter address, netmask, and gateway properties to
more easily control how it interacts with the Windows networking
stack</li>
</ul>
</li>
<li>And <code>Adapter::get_addresses</code>,
<code>Adapter::get_gateways</code>,
<code>Adapter::get_netmask_of_address</code> to read this state</li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li>Renamed <code>enum ApiError</code> -> <code>enum Error</code> and
added more variants.
<ul>
<li>All functions returning <code>wintun::Result</code> are
effected.</li>
</ul>
</li>
<li>Removed <code>pool: &str</code> parameter from
<code>Adapter::create</code> as this was removed from the wintun c
library</li>
<li>Changed return type of <code>Session::get_read_wait_event</code>
from <code>Result<winnt::HANDLE, ()></code> to
<code>Result<windows::Win32::HANDLE, wintun::Error></code></li>
</ul>
<p>Plus internal refactoring and cleanup by <a
href="https://github.com/ssrlive"><code>@ssrlive</code></a> in <a
href="https://redirect.github.com/nulldotblack/wintun/issues/7">#7</a>.
Thanks!</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/nulldotblack/wintun/blob/main/CHANGELOG.md">wintun's
changelog</a>.</em></p>
<blockquote>
<h2>[0.3.1] - 2023-09-16</h2>
<h2>Added</h2>
<ul>
<li>Support for non 32bit x86 and arm targets in all three examples</li>
</ul>
<h3>Updated</h3>
<ul>
<li>Adapter docs</li>
</ul>
<h2>[0.3.0] - 2023-09-15</h2>
<h3>Added</h3>
<ul>
<li>udp-echo example which mirrors packets via the tun interface</li>
<li><code>Adapter::get_name</code>, <code>Adapter::set_name</code>, and
<code>Adapter::get_guid</code></li>
<li><code>Adapter::set_address</code> <code>Adapter::set_gateway</code>,
<code>Adapter::set_netmask</code>, or
<code>Adapter::set_network_addresses_tuple</code> to set all three at
once
<ul>
<li>Easily configure adapter address, netmask, and gateway properties to
more easily control how it interacts with the Windows networking
stack</li>
</ul>
</li>
<li>And <code>Adapter::get_addresses</code>,
<code>Adapter::get_gateways</code>,
<code>Adapter::get_netmask_of_address</code> to read this state</li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li>Renamed <code>enum ApiError</code> -> <code>enum Error</code> and
added more variants.
<ul>
<li>All functions returning <code>wintun::Result</code> are
effected.</li>
</ul>
</li>
<li>Removed <code>pool: &str</code> parameter from
<code>Adapter::create</code> as this was removed from the wintun c
library</li>
<li>Changed return type of <code>Session::get_read_wait_event</code>
from <code>Result<winnt::HANDLE, ()></code> to
<code>Result<windows::Win32::HANDLE, wintun::Error></code></li>
</ul>
<p>Plus internal refactoring and cleanup by <a
href="https://github.com/ssrlive"><code>@ssrlive</code></a>: <a
href="https://redirect.github.com/nulldotblack/wintun/pull/7">nulldotblack/wintun#7</a>.
Thanks!</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7aa2059895"><code>7aa2059</code></a>
prep 0.3.1 (<a
href="https://redirect.github.com/nulldotblack/wintun/issues/10">#10</a>)</li>
<li><a
href="d962317331"><code>d962317</code></a>
Minor changes (<a
href="https://redirect.github.com/nulldotblack/wintun/issues/9">#9</a>)</li>
<li><a
href="aa68d4c43f"><code>aa68d4c</code></a>
Merge pull request <a
href="https://redirect.github.com/nulldotblack/wintun/issues/8">#8</a>
from nulldotblack/prep-0.3.0</li>
<li><a
href="6844dcf9b8"><code>6844dcf</code></a>
Remove vim undo file</li>
<li><a
href="549a1e9b73"><code>549a1e9</code></a>
update changlog</li>
<li><a
href="fe906e46fc"><code>fe906e4</code></a>
Merge pull request <a
href="https://redirect.github.com/nulldotblack/wintun/issues/7">#7</a>
from ssrlive/main</li>
<li><a
href="3b48c40a46"><code>3b48c40</code></a>
Modified as required by <a
href="https://github.com/TroyNeubauer"><code>@TroyNeubauer</code></a></li>
<li><a
href="e5b9bfdfae"><code>e5b9bfd</code></a>
some links</li>
<li><a
href="84890b4c03"><code>84890b4</code></a>
set_network_addresses_tuple</li>
<li><a
href="97ffe9876a"><code>97ffe98</code></a>
get_gateways</li>
<li>Additional commits viewable in <a
href="https://github.com/nulldotblack/wintun/compare/v0.2.1...v0.3.1">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Bumps [smbios-lib](https://github.com/jrgerber/smbios-lib) from 0.9.0 to
0.9.1.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/jrgerber/smbios-lib/commits">compare
view</a></li>
</ul>
</details>
<br />
[](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>
This file type-checks and compiles just fine on my local Linux machine
without the `cfg` attributes. Remove them to allow `cargo clippy
--all-targets` to be more useful in local development.
Fixes#2048.
Fixes#2023.
Previously:
- accountId was stored in UserDefaults
- token and actorName were stored as two separate items of data in the
keychain (only one token+actorName can be in storage at any point in
time)
With this PR:
- accountId is stored in the tunnel configuration, along with the
authBaseURL
- token is stored in the keychain, along with the authURL and actorName
as attributes on the same keychain item
- a persistent reference to the token is stored in the tunnel
configuration (only the app and the tunnel can dereference it to access
the token without user intervention)
- once stored, the app never reads the token; the tunnel reads the token
directly from the keychain
- token is stored per authURL; so two tokens for two different authURLs
can be in storage at the same time
- when the accountId is changed in app settings, the app searches for
the new authURL in the keychain, and if it finds an item, considers the
app to be logged in with that user (a proper UI for switching accounts
shall come in later)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.106 to
1.0.107.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/serde-rs/json/releases">serde_json's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.107</h2>
<ul>
<li>impl IntoDeserializer for &RawValue (<a
href="https://redirect.github.com/serde-rs/json/issues/1071">#1071</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b6e113f203"><code>b6e113f</code></a>
Release 1.0.107</li>
<li><a
href="00626a0a95"><code>00626a0</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/json/issues/1073">#1073</a>
from dtolnay/rawvalue</li>
<li><a
href="b9d296f87d"><code>b9d296f</code></a>
IntoDeserializer for &RawValue</li>
<li><a
href="4ea34a2566"><code>4ea34a2</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/json/issues/1072">#1072</a>
from dtolnay/rawvalue</li>
<li><a
href="fe30766ae5"><code>fe30766</code></a>
Support deserializing from &RawValue</li>
<li><a
href="2c22077f0e"><code>2c22077</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/json/issues/1062">#1062</a>
from osiewicz/remove_build_rs</li>
<li><a
href="04f7758b6e"><code>04f7758</code></a>
fixup! chore: Remove no_btreemap_get_key_value and
no_btreemap_remove_entry.</li>
<li><a
href="83bdc5fd42"><code>83bdc5f</code></a>
Omit return keyword in <code>remove_entry</code></li>
<li><a
href="89a2741956"><code>89a2741</code></a>
Revert "Remove limb_width32 and limb_width64 features"</li>
<li><a
href="16e04ceedd"><code>16e04ce</code></a>
fixup! Remove limb_width32 and limb_width64 features</li>
<li>See full diff in <a
href="https://github.com/serde-rs/json/compare/v1.0.106...v1.0.107">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.147 to 0.2.148.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c89f7474a6"><code>c89f747</code></a>
libc 0.2.148</li>
<li><a
href="835661543d"><code>8356615</code></a>
Auto merge of <a
href="https://redirect.github.com/rust-lang/libc/issues/3322">#3322</a>
- shyouhei:feature/shyouhei/RTLD_MAIN_ONLY, r=JohnTitor</li>
<li><a
href="10e072473e"><code>10e0724</code></a>
Auto merge of <a
href="https://redirect.github.com/rust-lang/libc/issues/3321">#3321</a>
- kleisauke:emscripten-update-node-16.20.0, r=JohnTitor</li>
<li><a
href="ff6a0c677b"><code>ff6a0c6</code></a>
properly modify the type with ::</li>
<li><a
href="837159cdd1"><code>837159c</code></a>
add RTLD_MAIN_ONLY</li>
<li><a
href="5841067de1"><code>5841067</code></a>
CI: Update Node.js version to v16.20.0</li>
<li><a
href="9447d174fc"><code>9447d17</code></a>
Auto merge of <a
href="https://redirect.github.com/rust-lang/libc/issues/3313">#3313</a>
- devnexen:linux_mman_aarch64_upd, r=JohnTitor</li>
<li><a
href="cbeb1bde9f"><code>cbeb1bd</code></a>
linux glibc/musl and android adding PROT_BTI/PROT_MTE mmap flags for
arm64.</li>
<li><a
href="92a5d3e8f6"><code>92a5d3e</code></a>
Auto merge of <a
href="https://redirect.github.com/rust-lang/libc/issues/3301">#3301</a>
- Dirreke:csky-unknown-linux-gnuabiv2, r=JohnTitor</li>
<li><a
href="cd4fc660b5"><code>cd4fc66</code></a>
Auto merge of <a
href="https://redirect.github.com/rust-lang/libc/issues/3312">#3312</a>
- alexcrichton:fix-aarch64-darwin-ucontext-t, r=JohnTitor</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-lang/libc/compare/0.2.147...0.2.148">compare
view</a></li>
</ul>
</details>
<br />
[](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>
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 />
[](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>
The `debug` exporter prints statements like the following to stdout:
> 2023-09-07T09:57:43.468-0700 info TracesExporter {"kind": "exporter",
"data_type": "traces", "name": "debug", "resource spans": 1, "spans": 2}
Activating debug logs should give us overall more insight into what this
thing is doing.
I found the following in the serial port logs on GC:
> [ 24.279297] cloud-init[742]: 2023-09-20 19:34:00,095 -
schema.py[WARNING]: Invalid cloud-config provided: Please run 'sudo
cloud-init schema --system' to see the schema errors.
Not sure if it causes any problems at the moment because the spans seem
to import fine but I figured it cannot hurt to add a linter to our CI.