mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 18:18:55 +00:00
2e2fa100e81470d040e00e86ce5f0a889f82073e
675 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
2e2fa100e8 |
build(deps): Bump chrono from 0.4.34 to 0.4.35 in /rust (#4008)
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.34 to 0.4.35. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/chronotope/chrono/releases">chrono's releases</a>.</em></p> <blockquote> <h2>v0.4.35</h2> <p>Most of our efforts have shifted to improving the API for a 0.5 release, for which cleanups and refactorings are landing on the 0.4.x branch.</p> <p>The most significant changes in this release are two sets of deprecations.</p> <ul> <li> <p>We deprecated all timestamp-related methods on <code>NaiveDateTime</code>. The reason is that a timestamp is defined to be in UTC. The <code>NaiveDateTime</code> type doesn't know the offset from UTC, so it was technically wrong to have these methods. The alternative is to use the similar methods on the <code>DateTime<Utc></code> type, or from the <code>TimeZone</code> trait.</p> <p>Converting from <code>NaiveDateTime</code> to <code>DateTime<Utc></code> is simple with <code>.and_utc()</code>, and in the other direction with <code>.naive_utc()</code>.</p> </li> <li> <p>The panicking constructors of <code>TimeDelta</code> (the new name of the <code>Duration</code> type) are deprecated. This was the last part of chrono that defaulted to panicking on error, dating from before rust 1.0.</p> </li> <li> <p>A nice change is that <code>NaiveDate</code> now includes a niche. So now <code>Option<NaiveDate></code>, <code>Option<NaiveDateTime></code> and <code>Option<DateTime<Tz>></code> are the same size as their base types.</p> </li> <li> <p><code>format::Numeric</code> and <code>format::Fixed</code> are marked as <code>non_exhaustive</code>. This will allow us to improve our formatting and parsing support, and we have reason to believe this breaking change will have little to no impact on users.</p> </li> </ul> <h1>Additions</h1> <ul> <li>Add <code>DateTime::{from_timestamp_micros, from_timestamp_nanos}</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1234">#1234</a>)</li> <li>Add getters to <code>Parsed</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1465">#1465</a>)</li> </ul> <h1>Deprecations</h1> <ul> <li>Deprecate timestamp methods on <code>NaiveDateTime</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1473">#1473</a>)</li> <li>Deprecate panicking constructors of <code>TimeDelta</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1450">#1450</a>)</li> </ul> <h1>Changes/fixes</h1> <ul> <li>Use <code>NonZeroI32</code> inside <code>NaiveDate</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1207">#1207</a>)</li> <li>Mark <code>format::Numeric</code> and <code>format::Fixed</code> as <code>non_exhaustive</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1430">#1430</a>)</li> <li><code>Parsed</code> fixes to error values (<a href="https://redirect.github.com/chronotope/chrono/issues/1439">#1439</a>)</li> <li>Use <code>overflowing_naive_local</code> in <code>DateTime::checked_add*</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1333">#1333</a>)</li> <li>Do complete range checks in <code>Parsed::set_*</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1465">#1465</a>)</li> </ul> <h1>Documentation</h1> <ul> <li>Rustfmt doctests (<a href="https://redirect.github.com/chronotope/chrono/issues/1452">#1452</a>)</li> <li>Improve docs for crate features (<a href="https://redirect.github.com/chronotope/chrono/issues/1455">#1455</a>, thanks <a href="https://github.com/edmorley"><code>@edmorley</code></a>)</li> <li>Add more documentation and examples to <code>Parsed</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1439">#1439</a>)</li> </ul> <h1>Internal</h1> <ul> <li>Refactor <code>internals</code> module (<a href="https://redirect.github.com/chronotope/chrono/issues/1428">#1428</a>, <a href="https://redirect.github.com/chronotope/chrono/issues/1429">#1429</a>, <a href="https://redirect.github.com/chronotope/chrono/issues/1431">#1431</a>, <a href="https://redirect.github.com/chronotope/chrono/issues/1432">#1432</a>, <a href="https://redirect.github.com/chronotope/chrono/issues/1433">#1433</a>, <a href="https://redirect.github.com/chronotope/chrono/issues/1438">#1438</a>)</li> <li>CI: test cross-compiling to <code>x86_64-unknown-illumos</code> instead of Solaris (<a href="https://redirect.github.com/chronotope/chrono/issues/1437">#1437</a>)</li> <li>CI: lint Windows target, fix clippy warning (<a href="https://redirect.github.com/chronotope/chrono/issues/1441">#1441</a>)</li> <li>CI: only run <code>cargo hack check</code> on Linux (<a href="https://redirect.github.com/chronotope/chrono/issues/1442">#1442</a>)</li> <li>Update windows-bindgen to 0.54 (<a href="https://redirect.github.com/chronotope/chrono/issues/1462">#1462</a>, <a href="https://redirect.github.com/chronotope/chrono/issues/1483">#1483</a>)</li> <li>Simplify error value of <code>parse_internal</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1459">#1459</a>)</li> <li>Simplify <code>SerdeError</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1458">#1458</a>)</li> <li>Simplify <code>NaiveDate::from_isoywd</code> a bit (<a href="https://redirect.github.com/chronotope/chrono/issues/1464">#1464</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
3ee1d101ff |
docs(windows): notifications don't work on Windows-on-Arm (aarch64) yet (#4037)
Ref #4035 |
||
|
|
e4d828b9b1 |
ci(docker): bump Rust from 1.74 to 1.76 (#4033)
This was accidentally missed in #3632. Jamil said it may fix `cargo-chef`'s caching once merged. Part of #3995 |
||
|
|
2ee801ad9d |
build(deps-dev): Bump @types/node from 20.11.15 to 20.11.25 in /rust/gui-client (#4000)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.11.15 to 20.11.25. <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
c948693655 |
chore(deps): Fix deprecation error with chrono (#4032)
Fixes the issue in #4008 |
||
|
|
869bf2407b |
build(deps): Bump @tauri-apps/cli from 1.5.9 to 1.5.10 in /rust/gui-client (#4004)
Bumps [@tauri-apps/cli](https://github.com/tauri-apps/tauri) from 1.5.9 to 1.5.10. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tauri-apps/tauri/releases"><code>@tauri-apps/cli</code>'s releases</a>.</em></p> <blockquote> <h2><code>@tauri-apps/cli</code> v1.5.10</h2> <h2>[1.5.10]</h2> <h3>Bug Fixes</h3> <ul> <li><a href=" |
||
|
|
510714ddcd |
build(deps): Bump clap from 4.5.1 to 4.5.2 in /rust (#4009)
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.1 to 4.5.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.5.2</h2> <h2>[4.5.2] - 2024-03-06</h2> <h3>Fixes</h3> <ul> <li><em>(macros)</em> Silence a warning</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.5.2] - 2024-03-06</h2> <h3>Fixes</h3> <ul> <li><em>(macros)</em> Silence a warning</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
98779bb84b |
build(deps-dev): Bump typescript from 5.3.3 to 5.4.2 in /rust/gui-client (#4001)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.3.3 to 5.4.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Microsoft/TypeScript/releases">typescript's releases</a>.</em></p> <blockquote> <h2>TypeScript 5.4</h2> <p>For release notes, check out the <a href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/">release announcement</a>.</p> <p>For the complete list of fixed issues, check out the</p> <ul> <li><a href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+">fixed issues query for Typescript 5.4.0 (Beta)</a>.</li> <li><a href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+">fixed issues query for Typescript 5.4.1 (RC)</a>.</li> <li><a href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+">fixed issues query for Typescript 5.4.2 (Stable)</a>.</li> </ul> <p>Downloads are available on:</p> <ul> <li><a href="https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild">NuGet package</a></li> </ul> <h2>TypeScript 5.4 RC</h2> <p>For release notes, check out the <a href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-4-rc/">release announcement</a>.</p> <p>For the complete list of fixed issues, check out the</p> <ul> <li><a href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+">fixed issues query for Typescript 5.4.0 (Beta)</a>.</li> <li><a href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+">fixed issues query for Typescript 5.4.1 (RC)</a>.</li> </ul> <p>Downloads are available on:</p> <ul> <li><a href="https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild">NuGet package</a></li> </ul> <h2>TypeScript 5.4 Beta</h2> <p>For release notes, check out the <a href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-4-beta/">release announcement</a>.</p> <p>For the complete list of fixed issues, check out the</p> <ul> <li><a href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+">fixed issues query for Typescript 5.4.0 (Beta)</a>.</li> </ul> <p>Downloads are available on:</p> <ul> <li><a href="https://www.npmjs.com/package/typescript">npm</a></li> <li><a href="https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild">NuGet package</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
93c54c8445 |
build(deps): Bump flowbite from 2.2.1 to 2.3.0 in /rust/gui-client (#4003)
Bumps [flowbite](https://github.com/themesberg/flowbite) from 2.2.1 to 2.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/themesberg/flowbite/releases">flowbite's releases</a>.</em></p> <blockquote> <h2>v2.3.0</h2> <ul> <li>added new <a href="https://flowbite.com/docs/components/clipboard/">copy to clipboard</a> component and examples</li> <li>added new JavaScript tab to the documentation examples</li> <li>update dependency to Tailwind CSS v3.4.1</li> <li>fixed carousel component behavior when there’s only one image</li> <li>added new data attribute to set active and inactive classes for tabs</li> <li>Ruby on Rails integration fix for turbo load</li> <li>minor bug fixes and improvements</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
46d60da136 |
chore(snownet): improve logs in Allocation (#3986)
This adds a few logs that I noticed could be helpful after looking at some logs shared by a customer. Most importantly, we now log everything in `handle_timeout` in the scope of the relay's IP, meaning we can differentiate them from each other. |
||
|
|
0ed2480ac0 |
refactor(connlib): merge control_protocol::gateway into gateway module (#3984)
This separation doesn't really hold anymore as we already have an `impl Tunnel` and `impl GatewayState` within `gateway.rs`. It is easier to maintain if more gateway-specific things are in `gateway.rs`. Plus, once we integrate the portal connection into the tunnel, we can collapse a lot of these APIs. |
||
|
|
2f74edd581 |
feat(snownet): always force a handshake when we change the socket (#3985)
Some local testing identified that we might lose the first packet if we switch the sockets too quickly, i.e. upgrade from a relayed one to a direct one initially. To mitigate having to wait for the wireguard timeout here, let's force a handshake every time we switch to a new socket. |
||
|
|
ae6c32643f |
refactor(connlib): fail tunnel in case the device gets closed (#3981)
Currently, we have some duplication between client and gateway in how we handle a closed TUN device (i.e. reading a 0-length packet). Previously, we would just deactivate the tunnel as we can't do anything when the device is gone. I don't think that is actually helpful. Instead, we should fail the tunnel if the device gets closed, similar to any other IO error on the device.\ This reduces duplication between the two eventloops. |
||
|
|
784a34faa1 |
chore(connlib): move wire trace logs to Socket (#3983)
This further improves consistency in when we emit these logs. Previously, the `wire` trace would also log packets that we failed to send (so never actually hit the wire) and would omit packets that we handled internally within `snownet`. To implement this consistently, I ended up merging the two iterators for IPv4 and IPv6 packets which is a nice addition because it means we always empty both sockets and don't prioritize IPv4 over IPv6. |
||
|
|
9cab250696 |
chore(windows): Sign internal exe using beforeBundleCommand (#3994)
Refs #3230 It looks like we need to sign the internal exe before it gets bundled too. We can use `beforeBundleCommand` to do so. Soon, Tauri should have native support for this exact scenario: https://github.com/tauri-apps/tauri/pull/8718 |
||
|
|
8360e3734b |
chore(phoenix-channel): reduce noise in logs (#3939)
The span around the `init` function doesn't actually add anything
useful. We always use the `PhoenixChannel` only in a particular
component, e.g. the relay will always log in using the `relay` topic
etc. Thus, when looking at the relay's logs, this `login_topic` will
simply say "relay" which is something we know by looking at the source
code.
Additionally, the "Connected to portal, waiting for `init` message" line
is no longer true. Connecting to the portal has been moved into the
internal state machine, which now causes two similar logs to be printed:
```
gateway-1 | 2024-03-05T04:45:29.671736Z INFO init{user_agent="Alpine Linux/3.19.1 (x86_64;6.6.16;) connlib/1.0.0" login_topic="gateway"}: phoenix_channel: Connected to portal, waiting for `init` message
gateway-1 | 2024-03-05T04:45:29.685338Z INFO init{user_agent="Alpine Linux/3.19.1 (x86_64;6.6.16;) connlib/1.0.0" login_topic="gateway"}: phoenix_channel: Connected to portal host=api
```
Note that the first one is lying because we simply constructed the state
machine but haven't connected to anything yet.
|
||
|
|
26c10fb361 |
build(deps): Bump base64 from 0.21.7 to 0.22.0 in /rust (#3935)
Bumps [base64](https://github.com/marshallpierce/rust-base64) from 0.21.7 to 0.22.0. <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.22.0</h1> <ul> <li><code>DecodeSliceError::OutputSliceTooSmall</code> is now conservative rather than precise. That is, the error will only occur if the decoded output <em>cannot</em> fit, meaning that <code>Engine::decode_slice</code> can now be used with exactly-sized output slices. As part of this, <code>Engine::internal_decode</code> now returns <code>DecodeSliceError</code> instead of <code>DecodeError</code>, but that is not expected to affect any external callers.</li> <li><code>DecodeError::InvalidLength</code> now refers specifically to the <em>number of valid symbols</em> being invalid (i.e. <code>len % 4 == 1</code>), rather than just the number of input bytes. This avoids confusing scenarios when based on interpretation you could make a case for either <code>InvalidLength</code> or <code>InvalidByte</code> being appropriate.</li> <li>Decoding is somewhat faster (5-10%)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
2c2bbe19ff |
chore(relay): add FIREZONE_NAME env variable (#3932)
Follow-up from #2544. --------- Signed-off-by: Thomas Eizinger <thomas@eizinger.io> Co-authored-by: Jamil <jamilbk@users.noreply.github.com> |
||
|
|
b94eb4d4c7 |
chore: make stub of the Tauri client for macOS (#3977)
This would allow me to fix compile / check / fmt errors from macOS CI runners locally, e.g. https://github.com/firezone/firezone/pull/3920#discussion_r1513357337 It can't sign in or start connlib, but it shows the GUI  --------- Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com> Co-authored-by: User <user@Users-MacBook-Pro.local> Co-authored-by: Jamil <jamilbk@users.noreply.github.com> |
||
|
|
379f577291 |
chore(windows client): update windows and windows-implement deps (#3919)
Closes #3879 and #3902 I re-created Cargo.lock, so it incidentally updated a bunch of other stuff. I can revert that file if it's a problem. Had to search a bit for the breaking changes. Found here that they renamed `ComInterface`: https://github.com/microsoft/windows-rs/issues/2875#issuecomment-1962332067 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
d5922eade0 |
build(deps): Bump env_logger from 0.11.2 to 0.11.3 in /rust (#3968)
Bumps [env_logger](https://github.com/rust-cli/env_logger) from 0.11.2 to 0.11.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-cli/env_logger/releases">env_logger's releases</a>.</em></p> <blockquote> <h2>v0.11.3</h2> <h2>[0.11.3] - 2024-03-05</h2> <h3>Features</h3> <ul> <li>Experimental support for key-value logging behind <code>unstable-kv</code></li> </ul> </blockquote> </details> <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.11.3] - 2024-03-05</h2> <h3>Features</h3> <ul> <li>Experimental support for key-value logging behind <code>unstable-kv</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
25439d0b68 |
build(deps): Bump log from 0.4.20 to 0.4.21 in /rust (#3956)
Bumps [log](https://github.com/rust-lang/log) from 0.4.20 to 0.4.21. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/log/blob/master/CHANGELOG.md">log's changelog</a>.</em></p> <blockquote> <h2>[0.4.21] - 2024-02-27</h2> <h2>What's Changed</h2> <ul> <li>Minor clippy nits by <a href="https://github.com/nyurik"><code>@nyurik</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/578">rust-lang/log#578</a></li> <li>Simplify Display impl by <a href="https://github.com/nyurik"><code>@nyurik</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/579">rust-lang/log#579</a></li> <li>Set all crates to 2021 edition by <a href="https://github.com/nyurik"><code>@nyurik</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/580">rust-lang/log#580</a></li> <li>Various changes based on review by <a href="https://github.com/Thomasdezeeuw"><code>@Thomasdezeeuw</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/583">rust-lang/log#583</a></li> <li>Fix typo in file_static() method doc by <a href="https://github.com/dimo414"><code>@dimo414</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/590">rust-lang/log#590</a></li> <li>Specialize empty key value pairs by <a href="https://github.com/EFanZh"><code>@EFanZh</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/576">rust-lang/log#576</a></li> <li>Fix incorrect lifetime in Value::to_str() by <a href="https://github.com/peterjoel"><code>@peterjoel</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/587">rust-lang/log#587</a></li> <li>Remove some API of the key-value feature by <a href="https://github.com/Thomasdezeeuw"><code>@Thomasdezeeuw</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/585">rust-lang/log#585</a></li> <li>Add logcontrol-log and log-reload by <a href="https://github.com/swsnr"><code>@swsnr</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/595">rust-lang/log#595</a></li> <li>Add Serialization section to kv::Value docs by <a href="https://github.com/Thomasdezeeuw"><code>@Thomasdezeeuw</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/593">rust-lang/log#593</a></li> <li>Rename Value::to_str to to_cow_str by <a href="https://github.com/Thomasdezeeuw"><code>@Thomasdezeeuw</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/592">rust-lang/log#592</a></li> <li>Clarify documentation and simplify initialization of <code>STATIC_MAX_LEVEL</code> by <a href="https://github.com/ptosi"><code>@ptosi</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/594">rust-lang/log#594</a></li> <li>Update docs to 2021 edition, test by <a href="https://github.com/nyurik"><code>@nyurik</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/577">rust-lang/log#577</a></li> <li>Add "alterable_logger" link to README.md by <a href="https://github.com/brummer-simon"><code>@brummer-simon</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/589">rust-lang/log#589</a></li> <li>Normalize line ending by <a href="https://github.com/EFanZh"><code>@EFanZh</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/602">rust-lang/log#602</a></li> <li>Remove <code>ok_or</code> in favor of <code>Option::ok_or</code> by <a href="https://github.com/AngelicosPhosphoros"><code>@AngelicosPhosphoros</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/607">rust-lang/log#607</a></li> <li>Use <code>Acquire</code> ordering for initialization check by <a href="https://github.com/AngelicosPhosphoros"><code>@AngelicosPhosphoros</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/610">rust-lang/log#610</a></li> <li>Get structured logging API ready for stabilization by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/613">rust-lang/log#613</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/nyurik"><code>@nyurik</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/log/pull/578">rust-lang/log#578</a></li> <li><a href="https://github.com/dimo414"><code>@dimo414</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/log/pull/590">rust-lang/log#590</a></li> <li><a href="https://github.com/peterjoel"><code>@peterjoel</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/log/pull/587">rust-lang/log#587</a></li> <li><a href="https://github.com/ptosi"><code>@ptosi</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/log/pull/594">rust-lang/log#594</a></li> <li><a href="https://github.com/brummer-simon"><code>@brummer-simon</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/log/pull/589">rust-lang/log#589</a></li> <li><a href="https://github.com/AngelicosPhosphoros"><code>@AngelicosPhosphoros</code></a> made their first contribution in <a href="https://redirect.github.com/rust-lang/log/pull/607">rust-lang/log#607</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
9e7389b1ac |
build(deps): Bump arboard from 3.3.1 to 3.3.2 in /rust (#3934)
Bumps [arboard](https://github.com/1Password/arboard) from 3.3.1 to 3.3.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/1Password/arboard/releases">arboard's releases</a>.</em></p> <blockquote> <h2>v3.3.2</h2> <h3>Fixed</h3> <ul> <li>Fixed compilation on Windows when using the <code>image-data</code> feature combined with older Rust compilers.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/1Password/arboard/blob/master/CHANGELOG.md">arboard's changelog</a>.</em></p> <blockquote> <h2>3.3.2 on 2024-12-02</h2> <h3>Fixed</h3> <ul> <li>Fixed compilation on Windows when using the <code>image-data</code> feature combined with older Rust compilers.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
774e3bab64 |
build(deps): Bump mio from 0.8.10 to 0.8.11 in /rust (#3921)
Bumps [mio](https://github.com/tokio-rs/mio) from 0.8.10 to 0.8.11. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tokio-rs/mio/blob/master/CHANGELOG.md">mio's changelog</a>.</em></p> <blockquote> <h1>0.8.11</h1> <ul> <li>Fix receiving IOCP events after deregistering a Windows named pipe (<a href="https://redirect.github.com/tokio-rs/mio/pull/1760">tokio-rs/mio#1760</a>, backport pr: <a href="https://redirect.github.com/tokio-rs/mio/pull/1761">tokio-rs/mio#1761</a>).</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
42042bb842 |
build(deps): Bump env_logger from 0.10.2 to 0.11.2 in /rust (#3904)
Bumps [env_logger](https://github.com/rust-cli/env_logger) from 0.10.2 to 0.11.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-cli/env_logger/releases">env_logger's releases</a>.</em></p> <blockquote> <h2>v0.11.2</h2> <h2>[0.11.2] - 2024-02-13</h2> <h2>v0.11.1</h2> <h2>What's Changed</h2> <ul> <li>fix(fmt): Fix passing of WriteStyle when using Target::Pipe by <a href="https://github.com/Bobo1239"><code>@Bobo1239</code></a> in <a href="https://redirect.github.com/rust-cli/env_logger/pull/302">rust-cli/env_logger#302</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Bobo1239"><code>@Bobo1239</code></a> made their first contribution in <a href="https://redirect.github.com/rust-cli/env_logger/pull/302">rust-cli/env_logger#302</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/rust-cli/env_logger/compare/v0.11.0...v0.11.1">https://github.com/rust-cli/env_logger/compare/v0.11.0...v0.11.1</a></p> <h2>v0.11.0</h2> <h2>What's Changed</h2> <ul> <li>refactor(fmt): More anstream prep by <a href="https://github.com/epage"><code>@epage</code></a> in <a href="https://redirect.github.com/rust-cli/env_logger/pull/297">rust-cli/env_logger#297</a></li> <li>fix(fmt): Improve terminal styling support by <a href="https://github.com/epage"><code>@epage</code></a> in <a href="https://redirect.github.com/rust-cli/env_logger/pull/298">rust-cli/env_logger#298</a></li> <li>refactor: Split out env_filter package by <a href="https://github.com/epage"><code>@epage</code></a> in <a href="https://redirect.github.com/rust-cli/env_logger/pull/299">rust-cli/env_logger#299</a></li> <li>feat(filter): Add a Logger decorator by <a href="https://github.com/epage"><code>@epage</code></a> in <a href="https://redirect.github.com/rust-cli/env_logger/pull/300">rust-cli/env_logger#300</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/rust-cli/env_logger/compare/v0.10.2...v0.11.0">https://github.com/rust-cli/env_logger/compare/v0.10.2...v0.11.0</a></p> </blockquote> </details> <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.11.2] - 2024-02-13</h2> <h2>[0.11.1] - 2024-01-27</h2> <h3>Fixes</h3> <ul> <li>Allow styling with <code>Target::Pipe</code></li> </ul> <h2>[0.11.0] - 2024-01-19</h2> <h3>Migration Guide</h3> <p><strong>env_logger::fmt::Style:</strong> The bespoke styling API, behind <code>color</code>, was removed, in favor of accepting any ANSI styled string and adapting it to the target stream's capabilities.</p> <p>Possible styling libraries include:</p> <ul> <li><a href="https://docs.rs/anstyle">anstyle</a> is a minimal, runtime string styling API and is re-exported as <code>env_logger::fmt::style</code></li> <li><a href="https://docs.rs/owo-colors">owo-colors</a> is a feature rich runtime string styling API</li> <li><a href="https://docs.rs/color-print">color-print</a> for feature-rich compile-time styling API</li> </ul> <p><a href="https://docs.rs/env_logger/latest/src/custom_format/custom_format.rs.html">custom_format.rs</a> uses <code>anstyle</code> via <a href="https://docs.rs/env_logger/latest/env_logger/fmt/struct.Formatter.html#method.default_level_style"><code>Formatter::default_level_style</code></a></p> <h3>Breaking Change</h3> <ul> <li>Removed bespoke styling API <ul> <li><code>env_logger::fmt::Formatter::style</code></li> <li><code>env_logger::fmt::Formatter::default_styled_level</code></li> <li><code>env_logger::fmt::Style</code></li> <li><code>env_logger::fmt::Color</code></li> <li><code>env_logger::fmt::StyledValue</code></li> </ul> </li> <li>Removed <code>env_logger::filter</code> in favor of <code>env_filter</code></li> </ul> <h3>Compatibility</h3> <p>MSRV changed to 1.71</p> <h3>Features</h3> <ul> <li>Automatically adapt ANSI escape codes in logged messages to the current terminal's capabilities</li> <li>Add support for <code>NO_COLOR</code> and <code>CLICOLOR_FORCE</code>, see <a href="https://bixense.com/clicolors/">https://bixense.com/clicolors/</a></li> </ul> <h3>Fixes</h3> <ul> <li>Print colors when <code>is_test(true)</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
fd78e711f0 |
chore(connlib): make some logs more meaningful (#3835)
Extracted out of: #3682. |
||
|
|
268e792f48 |
chore(ci): Use GH actions cache for Tauri builds (#3906)
Builds off #3905 and uses the GH actions cache for tauri builds in order to get around the `crate-type` problem sccache has with Tauri apps. Fixes #3456 |
||
|
|
f9e5f34eb8 |
build(deps): Bump arc-swap from 1.6.0 to 1.7.0 in /rust (#3903)
Bumps [arc-swap](https://github.com/vorner/arc-swap) from 1.6.0 to 1.7.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vorner/arc-swap/blob/master/CHANGELOG.md">arc-swap's changelog</a>.</em></p> <blockquote> <h1>1.7.1</h1> <ul> <li>Support for no-std builds with the <code>experimental-thread-local</code>. Needs nightly compiler. No stability guarantees with this feature (<a href="https://redirect.github.com/vorner/arc-swap/issues/93">#93</a>).</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/vorner/arc-swap/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 this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Reactor Scram <ReactorScram@users.noreply.github.com> |
||
|
|
9c93345885 |
chore(gui-client): log uptime and run ID when a window is shown (#3913)
I want to make sure there aren't bugs that prevent the GUI clients from reaching high uptime, so this makes it easy to check the uptime with e.g. `tail -f`. The run IDs would let us re-construct when the app restarts. "chore" doesn't seem right but it's not a user-facing feature, test, doc, fix, or refactor, either. Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com> |
||
|
|
74c74b5d3c |
refactor: correct event name, should be ShowWindow not ToggleWindow after… (#3912)
… PR 3769 Accidentally had the branch name as `docs` but it's more of a `refactor`. |
||
|
|
fc01a3c2d0 |
test(gui-client): fix missed mutations (#3753)
I added unit tests for these pure or mostly-pure functions that `cargo-mutants` said were not covered. It also picked up a lot of I/O-performing functions that I ignored for now. (They're hard to test) |
||
|
|
c6c4624b66 |
fix: use atomicwrites to back up /etc/resolv.conf more robustly (#3828)
Part of a small yak shave for #3817 The `atomicwrites` lib uses the atomic rename trick and does correct fsyncs for us, so if we lose power while rewriting or reverting `/etc/resolv.conf`, it should always be in a recoverable state. (Unless the hard drive lies about fsync, but then it's beyond our control.) --------- Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com> |
||
|
|
8c59ff7aa1 |
refactor: Reduce log levels for production releases to avoid filling customer's… (#3899)
Tuning the logging down a bit on our production releases. Prevents gathering data we don't need to be gathering and prevents filling up drive space with debug logs. refs #3618 |
||
|
|
5665253ee3 |
build(deps): Bump tempfile from 3.10.0 to 3.10.1 in /rust (#3878)
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.10.0 to 3.10.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md">tempfile's changelog</a>.</em></p> <blockquote> <h2>3.10.1</h2> <ul> <li>Handle potential integer overflows in 32-bit systems when seeking/truncating "spooled" temporary files past 4GiB (2³²).</li> <li>Handle a theoretical 32-bit overflow when generating a temporary file name larger than 4GiB. Now it'll panic (on allocation failure) rather than silently succeeding due to wraparound.</li> </ul> <p>Thanks to <a href="https://github.com/stoeckmann"><code>@stoeckmann</code></a> for finding and fixing both of these issues.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
ecefd173bb |
build(deps): Bump tauri from 1.6.0 to 1.6.1 in /rust (#3881)
Bumps [tauri](https://github.com/tauri-apps/tauri) from 1.6.0 to 1.6.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tauri-apps/tauri/releases">tauri's releases</a>.</em></p> <blockquote> <h2>tauri v1.6.1</h2> <p>Updating crates.io index</p> <!-- raw HTML omitted --> <pre><code>Fetching advisory database from `https://github.com/RustSec/advisory-db.git` Loaded 605 security advisories (from /home/runner/.cargo/advisory-db) Updating crates.io index Scanning Cargo.lock for vulnerabilities (583 crate dependencies) Crate: safemem Version: 0.3.3 Warning: unmaintained Title: safemem is unmaintained Date: 2023-02-14 ID: RUSTSEC-2023-0081 URL: https://rustsec.org/advisories/RUSTSEC-2023-0081 Dependency tree: safemem 0.3.3 └── line-wrap 0.1.1 └── plist 1.6.0 └── tauri-codegen 1.4.2 ├── tauri-macros 1.4.3 │ └── tauri 1.6.1 │ ├── tauri 1.6.1 │ ├── restart 0.1.0 │ └── app-updater 0.1.0 └── tauri-build 1.5.1 └── app-updater 0.1.0 <p>Crate: atty Version: 0.2.14 Warning: unsound Title: Potential unaligned read Date: 2021-07-04 ID: RUSTSEC-2021-0145 URL: <a href="https://rustsec.org/advisories/RUSTSEC-2021-0145">https://rustsec.org/advisories/RUSTSEC-2021-0145</a> Dependency tree: atty 0.2.14 └── clap 3.2.25 └── tauri 1.6.1 ├── tauri 1.6.1 ├── restart 0.1.0 └── app-updater 0.1.0</p> <p>warning: 2 allowed warnings found </code></pre></p> <!-- raw HTML omitted --> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
74ca194b10 |
build(deps): Bump walkdir from 2.4.0 to 2.5.0 in /rust (#3882)
Bumps [walkdir](https://github.com/BurntSushi/walkdir) from 2.4.0 to 2.5.0. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
18144ba9c4 |
fix(phoenix-channel): retain order of messages to be sent to the portal (#3834)
Extracted out of: #3682. Signed-off-by: Thomas Eizinger <thomas@eizinger.io> |
||
|
|
e9ef15dc43 |
feat(snownet): set wireguard keep-alive (#3829)
In my local testing, I noticed that not using the tunnel for a bit ends up expiring the WG session which causes a new handshake if you then run a ping or something else. Having the keep-alive should help with not paying that extra RT that is required for a new session, |
||
|
|
96ad6115f9 |
fix(tauri clients): apply auth base URL and API URL settings without app restart (#3868)
Closes #3862 I refactored the settings code, removing `_settings_` from some function names where it was redundant. The log level is more difficult to change live, so I added a `tracing::info!` noting that it will apply on next app start. ```[tasklist] ### Before merging - [x] Document whether pressing Enter on a field to apply settings is intended behavior - [x] Document that log levels don't apply until next app start - [x] Document that auth and API URL apply on next sign-in ``` |
||
|
|
789d2160de |
refactor(linux): make a place for reverting /etc/resolv.conf (#3822)
Makes progress towards #3817 --------- Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com> |
||
|
|
2df2ef13ba |
build(connlib): suppress clippy::unnecessary_cast lint on aarch64 Linux (#3824)
This took me 5 entire minutes at least to figure out: `c_char` is... - i8 on aarch64 Darwin: https://docs.rs/libc/latest/aarch64-apple-darwin/libc/type.c_char.html - i8 on aarch64 Windows: https://docs.rs/libc/latest/aarch64-pc-windows-msvc/libc/type.c_char.html - i8 on x86_64 Linux: https://docs.rs/libc/latest/libc/type.c_char.html - i8 on x86_64 Windows: https://docs.rs/libc/latest/x86_64-pc-windows-msvc/libc/type.c_char.html - **u8** on aarch64 Linux. Both GNU and musl: https://docs.rs/libc/latest/aarch64-unknown-linux-gnu/libc/type.c_char.html It is also u8 on Android aarch64, but we don't run CI on that so I guess Clippy never hit it there. |
||
|
|
9d8233a406 |
feat(phoenix-channel): remove concept of "inbound requests" (#3831)
We don't have a concept of "inbound requests", at least not natively in the phoenix channel JSON format. Thus, we don't need to match on `ref` for incoming messages. Extracted out of: #3682. |
||
|
|
7217f27af1 |
fix(phoenix-channel): don't double join room (#3833)
We are already joining this room within the eventloop when we reach the `Connected` state. Extracted out of: #3682. |
||
|
|
d31b555c1d |
feat(phoenix-channel): support the wire log target (#3832)
Extracted out of: #3682. |
||
|
|
f3817ddf14 |
feat(phoenix-channel): log host as part of connection (#3836)
The host itself does not contain any secrets and it makes the log slightly meaningful because it tells us, which portal we connected to. Extracted out of: #3682. |
||
|
|
0a6357927f |
deps: point to correct hash of str0m fork (#3827)
I accidentally force-pushed to the branch that we depend on in our str0m fork. |
||
|
|
e2cdde94b6 | feat(snownet): print some basic stats for STUN overhead (#3806) | ||
|
|
6d32e30133 |
fix(docs): Add DNS docs for Linux (#3810)
Signed-off-by: Jamil <jamilbk@users.noreply.github.com> Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com> Co-authored-by: Reactor Scram <ReactorScram@users.noreply.github.com> |
||
|
|
c5aab6ebba |
test(windows client): Add stack trace printing to smoke test (#3813)
Closes #3798 - After the crash test, the Windows smoke test runs `minidump-stackwalk` to print a stack trace: https://github.com/firezone/firezone/actions/runs/8100801373/job/22139592883#step:11:770 - This acts as runnable documentation for getting stack traces on Windows, and it should flunk the test if anything in the crash handling to stack trace pipeline is broken - I also updated the comment in the code since the minidump PR I was waiting on was put into their newest release |
||
|
|
bfe1fb0ff4 |
refactor(portal): unify format of error payloads in websocket connection (#3697)
Co-authored-by: Thomas Eizinger <thomas@eizinger.io> |