mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 18:18:55 +00:00
aaa278f6ce04fa2a15e7fc89ff8b2ce7d206889c
6730 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
aaa278f6ce |
build(rust): bump ring dependency (#8379)
Resolves: https://rustsec.org/advisories/RUSTSEC-2025-0009 |
||
|
|
cb0283f00c |
fix(android): Ensure Android layouts fitsSystemWindows (#8376)
- Sets the `fitsSystemWindows` var to avoid overlapping any system controls - Makes all margin padding consistent at `@dimen/spacing_medium` so that no controls are right on the edge of the view Fixes: https://firezonehq.slack.com/archives/C08FPHECLUF/p1741266356394749 Fixes: #7094 |
||
|
|
25ed48114a |
fix(portal): Use explicit UTC timezone for NOW() (#8374)
Fixes #8373 |
||
|
|
3273abf64b |
fix(connlib): use TCP as well to pick fastest nameserver (#8372)
UDP is an unreliable transport and thus it can happen that a UDP DNS query gets lost in transit. Our current algorithm for picking a nameserver of all provided ones only uses UDP DNS and thus, we may run into a scenario where we falsely claim to not have nameservers simply because the UDP request or response got lost in transit. To mitigate this, we also perform a TCP DNS query to every nameserver. TCP is reliable and will perform retransmissions in case of packet loss. --------- Signed-off-by: Thomas Eizinger <thomas@eizinger.io> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> |
||
|
|
eacf67f2bc |
feat(gateway): forward queries to local nameserver (#8350)
The DNS server added in #8285 was only a dummy DNS server that added infrastructure to actually receive DNS queries on the IP of the TUN device at port 53535 and it returns SERVFAIL for all queries. For this DNS server to be useful, we need to take those queries and replay them towards a DNS server that is configured locally on the Gateway. To achieve this, we parse `/etc/resolv.conf` during startup of the Gateway and pass the contained nameservers into the tunnel. From there, the Gateway's event-loop can receive the queries, feed them into the already existing machinery for performing recursive DNS queries that we use on the Client and resolve the records. In its current implementation, we only use the first nameserver defined in `/etc/resolv.conf`. If the lookup fails, we send back a SERVFAIL error and log a message. Resolves: #8221 |
||
|
|
e4ab0f1cb4 |
fix(portal): Gracefully handle missing params in auth callbacks (#8346)
Rather than the current behavior of raising a 500 when we receive
missing / invalid params in IdP auth callbacks, it would be helpful to
show the user which params were provided, in case the IdP has set
anything useful to aid the user.
For example, we recently received these params from `okta` for a pilot
account (and subsequently rendered them a 500):
```
%{"account_id_or_slug" => "<redacted>", "error" => "access_denied", "error_description" => "User is not assigned to the client application.", "provider_id" => "<redacted>", "state" => "<redacted>"}
```
|
||
|
|
7bf401ee8d |
fix(connlib): always reset TCP DNS client connections (#8364)
Prior to #8334, we had some logic within the test-suite to only reset the TCP DNS client if the DNS mapping actually changed. This is problematic because adding / removing CIDR resources from `connlib` may cause packets to suddenly be re-routed to a different site. Consider the case where the Internet Resource is active and we make a DNS query. The query will be routed to the Internet site. If we then add a CIDR resource to `connlib` that happens to match the DNS server that is set as an upstream server, all new packets emitted by the TCP DNS client will be routed to that new site. However, the DNS server we are talking to doesn't recognise the new source port as it is routed via a different Gateway. This is in fact also a problem with TCP connections in general within `connlib` when changes to the routing table happen and already tracked in #7081. To fix the tests, we need to always reset the DNS servers and the TCP DNS client whenever any changes to the routes or the DNS mapping happens. |
||
|
|
b1128566e9 |
chore(portal): Decrease portal instance sizes to e2-micro (#8349)
These are currently woefully underutilized. If anything, our DB instance size matters the most. Thus, this PR updates the environments pointer to a sha that: - Decreases all portal instance sizes to `e2-micro`, which are about 10x cheaper than our current `n4-standard-2`. - Doubles the number of each `api, web, domain` instances to `4` instead of `2` - in case one of each goes down, we'll still have high availability of 3 instances - Removes some leftover client-logs cruft we no longer used Fixes #8344 |
||
|
|
2cb85e0269 |
build(deps): bump postgrex from 0.19.3 to 0.20.0 in /elixir (#8306)
Bumps [postgrex](https://github.com/elixir-ecto/postgrex) from 0.19.3 to 0.20.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/elixir-ecto/postgrex/blob/master/CHANGELOG.md">postgrex's changelog</a>.</em></p> <blockquote> <h2>v0.20.0 (2025-02-05)</h2> <ul> <li> <p>Deprecations</p> <ul> <li>Deprecate <code>:search_path</code> and use <code>:parameters</code> option instead</li> </ul> </li> <li> <p>Bug fixes</p> <ul> <li>Ensure <code>Duration</code> type returns same units as <code>Postgrex.Interval</code></li> <li>Call disconnect on protocol when reconnecting in <code>Postgrex.ReplicationConnection</code></li> <li>Call disconnect only if there is protocol in <code>Postgrex.SimpleConnection</code></li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
e534207bbd |
refactor(connlib): remove SocketHandle from TCP DNS server API (#8360)
At present, the TCP DNS server we use in `connlib` exposes an opaque `SocketHandle` with each received query. This handle refers to the socket that the query was received on. The response needs to be sent back on the same socket because it effectively refers to the TCP stream that was established. We need to track this `SocketHandle` all the way through to our user-space DNS client in `connlib` which actually resolves queries with a DNS server. In order to be able to reuse this DNS client on the Gateway where we receive DNS queries using a user-space socket (and thus don't have such a `SocketHandle`), we need to remove this abstraction from the public API of the TCP DNS server. A TCP stream is effectively identified by the source and destination socket address: A given 4-tuple (source IP, source port, destination IP, destination port) can only ever hold a single TCP connection. As such, returning the local and remote `SocketAddr` with the query is sufficient to uniquely identify the socket. |
||
|
|
383a67ef09 |
fix(portal): Use href when navigating out of liveview (#8363)
Not a major issue, but LiveView emits a warning for these that cause monitoring noise. |
||
|
|
c3a9bac465 |
feat(portal): Add client endpoints to REST API (#8355)
Adds the following endpoints: - `PUT /clients/:id` for updating the `name` - `PUT /clients/:client_id/verify` for verifying a client - `PUT /clients/:client_id/unverify` for unverifying a client - `GET /clients` for listing clients in an account - `GET /clients/:id` for getting a single client - `DELETE /clients/:id` for deleting a client Related: #8081 |
||
|
|
e064cf5821 |
fix(portal): Debounce relays_presence (#8302)
If the websocket connection between a relay and the portal experiences a temporary network split, the portal will immediately send the disconnected id of the relay to any connected clients and gateways, and all relayed connections (and current allocations) will be immediately revoked by connlib. This tight coupling is needlessly disruptive. As we've seen in staging and production logs, relay disconnects can happen randomly, and in the vast majority of cases immediately reconnect. Currently we see about 1-2 dozen of these **per day**. To better account for this, we introduce a debounce mechanism in the portal for `relays_presence` disconnects that works as follows: - When a relay disconnects, record its `stamp_secret` (this is somewhat tricky as we don't get this at the time of disconnect - we need to cache it by relay_id beforehand) - If the same `relay_id` reconnects again with the same `stamp_secret` within `relays_presence_debounce_timeout` -> no-op - If the same `relay_id` reconnects again with a **different** `stamp_secret` -> disconnect immediately - If it doesn't reconnect, **then** send the `relays_presence` with the disconnected_id after the `relays_presence_debounce_timeout` There are several ways connlib detects a relay is down: 1. Binding requests time out. These happen every 25s, so on average we don't know a Relay is down for 12.5s + backoff timer. 2. `relays_presence` - this is currently the fastest way to detect relays are down. With this change, the caveat is we will now detect this with a delay of `relays_presence_debounce_timer`. Fixes #8301 |
||
|
|
91a92f1773 |
feat(portal): Enable 1G of swap on portal instances (#8348)
The `e2-micro` instances we'll be rolling out have 1G of memory (which should be plenty), but it would be helpful to be able to handle small spikes without getting OOM-killed. Related #8344 |
||
|
|
99d8fcb8fc |
feat(connlib): resolve SRV & TXT queries for resources in sites (#8335)
## Description We want to resolve DNS queries of type SRV & TXT for DNS resources within the network context of the site that is hosting the DNS resource itself. This allows admins to e.g. deploy dedicated nameservers into those sites and have them resolve their SRV and TXT records to names that are scoped to that particular site. SRV records themselves return more domains which - if they are configured as DNS resources - will be intercepted and then routed to the correct site. Prior to this PR, SRV & TXT records got resolved by the DNS server configured on the client (or the server defined in the Firezone portal), even if the domain in question was a DNS resource. This effectively meant that those SRV records have to be valid globally and could not be specific to the site that the DNS resource is hosted in. ## Example Say we have these wildcard DNS resources: - `**.department-a.example.com` - `**.department-b.example.com` Each of these DNS resources is assigned to a different site. If we now issue an SRV DNS query to `_my-service.department-a.example.com`, we may receive back the following records: - `_my-service.department-a.example.com. 86400 IN SRV 10 60 8080 my-service1.department-a.example.com.` - `_my-service.department-a.example.com. 86400 IN SRV 10 60 8080 my-service2.department-a.example.com.` - `_my-service.department-a.example.com. 86400 IN SRV 10 60 8080 my-service3.department-a.example.com.` Notice how the SRV records point to domains that will also match the wildcard DNS resource above! If that is the case, Firezone will also intercept A & AAAA queries for this service (which are a natural follow-up from an application making an SRV query). As a result, traffic for `my-service1.department-a.example.com` will be routed to the same site the DNS resource is defined in. If the returned domains don't match the wildcard DNS resource, the traffic will either not be intercepted at all (if it is not a DNS resource) or routed to whichever site defines the corresponding DNS resource. All of these scenarios may be what the admin wants. If the SRV records defined for the DNS resource are globally valid (and e.g. not even resources), then resolving them using the Client's system resolver may be all that is needed. If the services are running in a dedicated site, that traffic should indeed be routed to that site. As such, Firezone itself cannot make any assumption about the structure of these records at all. The only thing that is enabled with this PR is that IF the structure happens to match the same DNS resource, it allows admins to deploy site-specific services that resolve their concrete domains via SRV records. ## Testing The implementation is tested using our property-based testing framework. In order to cover these cases, we introduce the notion of site-specific DNS records which are sampled when we create each individual Gateway. When selecting a domain to query for, all global DNS records and the site-specific ones are merged and a domain name and query type is chosen at random. At present, this testing framework does not assert that the DNS response itself is correct, i.e. that it actually returned the site-specific record. We don't assert this for any other DNS queries, hence this is left for a future extension. We do assert using our regression grep's that we hit the codepath of querying an SRV or TXT record for a DNS resource. Related: #8221 |
||
|
|
1fe38bb272 |
build(deps): Bump esbuild to from 0.8.1 to 0.9.0 (#8347)
Dependabot is having issue with that for some reason Supersedes #8303 |
||
|
|
f5d4d86412 |
fix(portal): Don't use liveview navigate for mailtos (#8345)
These cause full page reloads along with a warning. These should be `link href` instead. |
||
|
|
2fdbdf3701 |
build(deps): bump plug_cowboy from 2.7.2 to 2.7.3 in /elixir (#8307)
Bumps [plug_cowboy](https://github.com/elixir-plug/plug_cowboy) from 2.7.2 to 2.7.3. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/elixir-plug/plug_cowboy/blob/master/CHANGELOG.md">plug_cowboy's changelog</a>.</em></p> <blockquote> <h2>v2.7.3</h2> <h3>Enhancements</h3> <ul> <li>Ensure errors from Cowboy 2.13 are correctly translated</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
67c6f6fb62 |
build(deps): bump react-icons from 5.4.0 to 5.5.0 in /website (#8322)
Bumps [react-icons](https://github.com/react-icons/react-icons) from 5.4.0 to 5.5.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/react-icons/react-icons/releases">react-icons's releases</a>.</em></p> <blockquote> <h2>v5.5.0</h2> <h2>What's Changed</h2> <ul> <li>[React 19] Update IconType type to return React.ReactNode by <a href="https://github.com/diaz-hfc"><code>@diaz-hfc</code></a> in <a href="https://redirect.github.com/react-icons/react-icons/pull/1004">react-icons/react-icons#1004</a></li> <li>Bump vite from 5.2.10 to 5.4.11 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/react-icons/react-icons/pull/996">react-icons/react-icons#996</a></li> <li>Bump nanoid from 3.3.7 to 3.3.8 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/react-icons/react-icons/pull/1005">react-icons/react-icons#1005</a></li> <li>Bump vite from 5.4.11 to 5.4.14 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/react-icons/react-icons/pull/1021">react-icons/react-icons#1021</a></li> <li>Bump esbuild from 0.20.2 to 0.25.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/react-icons/react-icons/pull/1027">react-icons/react-icons#1027</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/diaz-hfc"><code>@diaz-hfc</code></a> made their first contribution in <a href="https://redirect.github.com/react-icons/react-icons/pull/1004">react-icons/react-icons#1004</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/react-icons/react-icons/compare/v5.4.0...v5.5.0">https://github.com/react-icons/react-icons/compare/v5.4.0...v5.5.0</a></p> <table> <thead> <tr> <th>Icon Library</th> <th>License</th> <th>Version</th> <th align="right">Count</th> </tr> </thead> <tbody> <tr> <td><a href="https://circumicons.com/">Circum Icons</a></td> <td><a href="https://github.com/Klarr-Agency/Circum-Icons/blob/main/LICENSE">MPL-2.0 license</a></td> <td>1.0.0</td> <td align="right">288</td> </tr> <tr> <td><a href="https://fontawesome.com/">Font Awesome 5</a></td> <td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0 License</a></td> <td>5.15.4-3-gafecf2a</td> <td align="right">1612</td> </tr> <tr> <td><a href="https://fontawesome.com/">Font Awesome 6</a></td> <td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0 License</a></td> <td>6.6.0</td> <td align="right">2050</td> </tr> <tr> <td><a href="https://ionicons.com/">Ionicons 4</a></td> <td><a href="https://github.com/ionic-team/ionicons/blob/master/LICENSE">MIT</a></td> <td>4.6.3</td> <td align="right">696</td> </tr> <tr> <td><a href="https://ionicons.com/">Ionicons 5</a></td> <td><a href="https://github.com/ionic-team/ionicons/blob/master/LICENSE">MIT</a></td> <td>5.5.4</td> <td align="right">1332</td> </tr> <tr> <td><a href="http://google.github.io/material-design-icons/">Material Design icons</a></td> <td><a href="https://github.com/google/material-design-icons/blob/master/LICENSE">Apache License Version 2.0</a></td> <td>4.0.0-125-gef43291c4d</td> <td align="right">4341</td> </tr> <tr> <td><a href="http://s-ings.com/typicons/">Typicons</a></td> <td><a href="https://creativecommons.org/licenses/by-sa/3.0/">CC BY-SA 3.0</a></td> <td>2.1.2</td> <td align="right">336</td> </tr> <tr> <td><a href="https://octicons.github.com/">Github Octicons icons</a></td> <td><a href="https://github.com/primer/octicons/blob/master/LICENSE">MIT</a></td> <td>18.3.0</td> <td align="right">264</td> </tr> <tr> <td><a href="https://feathericons.com/">Feather</a></td> <td><a href="https://github.com/feathericons/feather/blob/master/LICENSE">MIT</a></td> <td>4.29.2</td> <td align="right">287</td> </tr> <tr> <td><a href="https://lucide.dev/">Lucide</a></td> <td><a href="https://github.com/lucide-icons/lucide/blob/main/LICENSE">ISC</a></td> <td>0.462.0</td> <td align="right">1541</td> </tr> <tr> <td><a href="https://game-icons.net/">Game Icons</a></td> <td><a href="https://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a></td> <td>12920d6565588f0512542a3cb0cdfd36a497f910</td> <td align="right">4040</td> </tr> <tr> <td><a href="https://erikflowers.github.io/weather-icons/">Weather Icons</a></td> <td><a href="http://scripts.sil.org/OFL">SIL OFL 1.1</a></td> <td>2.0.12</td> <td align="right">219</td> </tr> <tr> <td><a href="https://vorillaz.github.io/devicons/">Devicons</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>1.8.0</td> <td align="right">192</td> </tr> <tr> <td><a href="https://github.com/ant-design/ant-design-icons">Ant Design Icons</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>4.4.2</td> <td align="right">831</td> </tr> <tr> <td><a href="https://github.com/twbs/icons">Bootstrap Icons</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>1.11.3</td> <td align="right">2716</td> </tr> <tr> <td><a href="https://github.com/Remix-Design/RemixIcon">Remix Icon</a></td> <td><a href="http://www.apache.org/licenses/">Apache License Version 2.0</a></td> <td>4.5.0</td> <td align="right">3020</td> </tr> <tr> <td><a href="https://github.com/icons8/flat-color-icons">Flat Color Icons</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>1.0.2</td> <td align="right">329</td> </tr> <tr> <td><a href="https://github.com/grommet/grommet-icons">Grommet-Icons</a></td> <td><a href="http://www.apache.org/licenses/">Apache License Version 2.0</a></td> <td>4.12.1</td> <td align="right">635</td> </tr> <tr> <td><a href="https://github.com/tailwindlabs/heroicons">Heroicons</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>1.0.6</td> <td align="right">460</td> </tr> <tr> <td><a href="https://github.com/tailwindlabs/heroicons">Heroicons 2</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>2.2.0</td> <td align="right">972</td> </tr> <tr> <td><a href="https://simpleicons.org/">Simple Icons</a></td> <td><a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0 Universal</a></td> <td>13.19.0</td> <td align="right">3275</td> </tr> <tr> <td><a href="https://thesabbir.github.io/simple-line-icons/">Simple Line Icons</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>2.5.5</td> <td align="right">189</td> </tr> <tr> <td><a href="https://github.com/Keyamoon/IcoMoon-Free">IcoMoon Free</a></td> <td><a href="https://github.com/Keyamoon/IcoMoon-Free/blob/master/License.txt">CC BY 4.0 License</a></td> <td>d006795ede82361e1bac1ee76f215cf1dc51e4ca</td> <td align="right">491</td> </tr> <tr> <td><a href="https://github.com/atisawd/boxicons">BoxIcons</a></td> <td><a href="https://github.com/atisawd/boxicons/blob/master/LICENSE">MIT</a></td> <td>2.1.4</td> <td align="right">1634</td> </tr> <tr> <td><a href="https://github.com/astrit/css.gg">css.gg</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>2.1.4</td> <td align="right">704</td> </tr> <tr> <td><a href="https://github.com/microsoft/vscode-codicons">VS Code Icons</a></td> <td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a></td> <td>0.0.36</td> <td align="right">466</td> </tr> <tr> <td><a href="https://github.com/tabler/tabler-icons">Tabler Icons</a></td> <td><a href="https://opensource.org/licenses/MIT">MIT</a></td> <td>3.24.0</td> <td align="right">5754</td> </tr> <tr> <td><a href="https://github.com/lykmapipo/themify-icons">Themify Icons</a></td> <td><a href="https://github.com/thecreation/standard-icons/blob/master/modules/themify-icons/LICENSE">MIT</a></td> <td>v0.1.2-2-g9600186</td> <td align="right">352</td> </tr> <tr> <td><a href="https://icons.radix-ui.com">Radix Icons</a></td> <td><a href="https://github.com/radix-ui/icons/blob/master/LICENSE">MIT</a></td> <td><code>@radix-ui/react-icons</code><a href="https://github.com/1"><code>@1</code></a>.3.2</td> <td align="right">318</td> </tr> <tr> <td><a href="https://github.com/phosphor-icons/core">Phosphor Icons</a></td> <td><a href="https://github.com/phosphor-icons/core/blob/main/LICENSE">MIT</a></td> <td>2.1.1</td> <td align="right">9072</td> </tr> <tr> <td><a href="https://icons8.com/line-awesome">Icons8 Line Awesome</a></td> <td><a href="https://github.com/icons8/line-awesome/blob/master/LICENSE.md">MIT</a></td> <td>1.3.1</td> <td align="right">1544</td> </tr> </tbody> </table> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
b8a5afc8da |
build(deps): bump react-markdown from 9.0.3 to 10.0.0 in /website (#8321)
Bumps [react-markdown](https://github.com/remarkjs/react-markdown) from 9.0.3 to 10.0.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/remarkjs/react-markdown/releases">react-markdown's releases</a>.</em></p> <blockquote> <h2>10.0.0</h2> <ul> <li>aaaa40b Remove support for <code>className</code> prop see <a href="https://github.com/remarkjs/react-markdown/blob/main/changelog.md#remove-classname">“Remove className”</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/remarkjs/react-markdown/compare/9.1.0...10.0.0">https://github.com/remarkjs/react-markdown/compare/9.1.0...10.0.0</a></p> <h2>9.1.0</h2> <ul> <li>6ce120e Add support for async plugins by <a href="https://github.com/wooorm"><code>@wooorm</code></a> in <a href="https://redirect.github.com/remarkjs/react-markdown/pull/890">remarkjs/react-markdown#890</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/remarkjs/react-markdown/compare/9.0.3...9.1.0">https://github.com/remarkjs/react-markdown/compare/9.0.3...9.1.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/remarkjs/react-markdown/blob/main/changelog.md">react-markdown's changelog</a>.</em></p> <blockquote> <h2>10.0.0 - 2025-02-20</h2> <ul> <li><a href="https://github.com/remarkjs/react-markdown/commit/aaaa40b"><code>aaaa40b</code></a> Remove support for <code>className</code> prop <strong>migrate</strong>: see “Remove <code>className</code>” below</li> </ul> <h3>Remove <code>className</code></h3> <p>The <code>className</code> prop was removed. If you want to add classes to some element that wraps the markdown you can explicitly write that element and add the class to it. You can then choose yourself which tag name to use and whether to add other props.</p> <p>Before:</p> <pre lang="js"><code><Markdown className="markdown-body">{markdown}</Markdown> </code></pre> <p>After:</p> <pre lang="js"><code><div className="markdown-body"> <Markdown>{markdown}</Markdown> </div> </code></pre> <h2>9.1.0 - 2025-02-20</h2> <ul> <li><a href="https://github.com/remarkjs/react-markdown/commit/6ce120e"><code>6ce120e</code></a> Add support for async plugins</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
374a0ae1b2 |
build(deps): bump @next/mdx from 15.1.6 to 15.2.0 in /website (#8323)
Bumps [@next/mdx](https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx) from 15.1.6 to 15.2.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vercel/next.js/releases"><code>@next/mdx</code>'s releases</a>.</em></p> <blockquote> <h2>v15.2.0</h2> <h3>Core Changes</h3> <ul> <li>Fix <code>unstable_allowDynamic</code> when used with pnpm: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73732">#73732</a></li> <li>[dynamicIO] use new heuristic to track whether server render is dynamic: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73751">#73751</a></li> <li>Fix receiveExpiredTags not always called: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73759">#73759</a></li> <li>error-overlay: Rename "Error" to "Issue": <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/72817">#72817</a></li> <li>remove redundant segment collection call: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73773">#73773</a></li> <li>Metadata resolvers can be fetched synchronously: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73771">#73771</a></li> <li>Turbopack: migrate client references to single-graph-traversal: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73322">#73322</a></li> <li>next-codemod: update gitignore file for parity for yarn recommendations: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/71963">#71963</a></li> <li>feat: error code: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73332">#73332</a></li> <li>Detach next-error-code-swc-plugin from workspace: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73806">#73806</a></li> <li>[CI] Prominent error message for check_error_codes: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73807">#73807</a></li> <li>[Segment Cache] Add PPR header to segment prefetch: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73756">#73756</a></li> <li>fix: path escaping issue on windows: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73843">#73843</a></li> <li>Rename variables in LayoutRouter for clarity: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73826">#73826</a></li> <li>[Segment Cache] Skip prefetched segments on server: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73626">#73626</a></li> <li>[Segment Cache] No data on tree prefetch if no PPR: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73767">#73767</a></li> <li>Remove segmentPath from RSC payload: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73827">#73827</a></li> <li>build: better error if fetching AMP validator fails: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73851">#73851</a></li> <li>Escape the '.' in '.json' when making static data routes.: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73850">#73850</a></li> <li>fix(next@15): use the asset prefix when loading a CSS in App Router: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/72095">#72095</a></li> <li>Exclude <code>.test.</code> files from using error code plugin: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73868">#73868</a></li> <li>Refactor telemetry API: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73865">#73865</a></li> <li>Add additional error classes and error codes: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73862">#73862</a></li> <li>refactor: collectAppPageSegments: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73908">#73908</a></li> <li>cleanup unnecessary map in dev server: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73745">#73745</a></li> <li>Retry manifest file loading only in dev mode: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73900">#73900</a></li> <li>Turbopack: ignore empty NEXT_TURBOPACK_TRACING var: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73903">#73903</a></li> <li>Ignore RSC fetch errors after hard navigation: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73975">#73975</a></li> <li>Fix error code check in windows: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73981">#73981</a></li> <li>Separate viewport and metadata in rsc and cache: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73867">#73867</a></li> <li>Add feature flag for new dev overlay: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73977">#73977</a></li> <li>Restore RSC fetch error handling after navigating back: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73985">#73985</a></li> <li>refactor: make locales array immutable: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/74037">#74037</a></li> <li>fix: skip rendering dynamic root segment routes: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/74039">#74039</a></li> <li>refactor: cache lowercasing all the locales: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/74038">#74038</a></li> <li>Add SRI support for Node.js Runtime : <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73891">#73891</a></li> <li>Separate bots detection utils: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/74000">#74000</a></li> <li>docs: remove a duplicated word in redirect code comment: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/74043">#74043</a></li> <li>examples: update gitignore files for parity for yarn recommendations: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/71956">#71956</a></li> <li>chore: update turbopack document path in the warning message: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/72597">#72597</a></li> <li>Clean up <code>react-dev-overlay</code> before fork: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/74016">#74016</a></li> <li>chore(next/image): improve imgopt api bypass detection for unsupported images: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73909">#73909</a></li> <li>[Segment Cache] Add CacheStatus.Empty: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73667">#73667</a></li> <li>chore: move static paths utils into own folder: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73928">#73928</a></li> <li>Delete unused <code>GroupedStackFrames.tsx</code>: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/74028">#74028</a></li> <li>[Segment Cache] Move cache key creation to client : <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73853">#73853</a></li> <li>feat: added partial shell generation using root params: <a href="https://github.com/vercel/next.js/tree/HEAD/packages/next-mdx/issues/73816">#73816</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
150e1da475 |
build(deps): bump fast-xml-parser from 4.5.1 to 5.0.8 in /website (#8320)
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 4.5.1 to 5.0.8. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/NaturalIntelligence/fast-xml-parser/releases">fast-xml-parser's releases</a>.</em></p> <blockquote> <h2>Summary update on all the previous releases from v4.2.4</h2> <ul> <li>Multiple minor fixes provided in the validator and parser</li> <li>v6 is added for experimental use.</li> <li>ignoreAttributes support function, and array of string or regex</li> <li>Add support for parsing HTML numeric entities</li> <li>v5 of the application is ESM module now. However, JS is also supported</li> </ul> <p><strong>Note</strong>: Release section in not updated frequently. Please check <a href="https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md">CHANGELOG</a> or <a href="https://github.com/NaturalIntelligence/fast-xml-parser/tags">Tags</a> for latest release information.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md">fast-xml-parser's changelog</a>.</em></p> <blockquote> <p><!-- raw HTML omitted -->Note: If you find missing information about particular minor version, that version must have been changed without any functional change in this library.<!-- raw HTML omitted --></p> <p><strong>5.0.8 / 2025-02-27</strong></p> <ul> <li>fix parsing 0 if skiplike option is used. <ul> <li>updating strnum dependency</li> </ul> </li> </ul> <p><strong>5.0.7 / 2025-02-25</strong></p> <ul> <li>fix (<a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/724">#724</a>) typings for cjs.</li> </ul> <p><strong>5.0.6 / 2025-02-20</strong></p> <ul> <li>fix cli output (By <a href="https://github.com/angeld7">Angel Delgado</a>) <ul> <li>remove multiple JSON parsing</li> </ul> </li> </ul> <p><strong>5.0.5 / 2025-02-20</strong></p> <ul> <li>fix parsing of string starting with 'e' or 'E' by updating strnum</li> </ul> <p><strong>5.0.4 / 2025-02-20</strong></p> <ul> <li>fix CLI to support all the versions of node js when displaying library version.</li> <li>fix CJS import in v5 <ul> <li>by fixing webpack config</li> </ul> </li> </ul> <p><strong>5.0.3 / 2025-02-20</strong></p> <ul> <li>Using strnum ESM module <ul> <li>new fixes in strum may break your experience</li> </ul> </li> </ul> <p><strong>5.0.2 / 2025-02-20</strong></p> <ul> <li>fix: include CommonJS resources in the npm package <a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/714">#714</a> (By <a href="https://github.com/tbouffard">Thomas Bouffard</a>)</li> <li>fix: move babel deps to dev deps</li> </ul> <p><strong>5.0.1 / 2025-02-19</strong></p> <ul> <li>fix syntax error for CLI command</li> </ul> <p><strong>5.0.0 / 2025-02-19</strong></p> <ul> <li>ESM support <ul> <li>no change in the functionality, syntax, APIs, options, or documentation.</li> </ul> </li> </ul> <p><strong>4.5.2 / 2025-02-18</strong></p> <ul> <li>Fix null CDATA to comply with undefined behavior (<a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/701">#701</a>) (By <a href="https://github.com/Kelgors">Matthieu BOHEAS</a>)</li> <li>Fix(performance): Update check for leaf node in saveTextToParentTag function in OrderedObjParser.js (<a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/707">#707</a>) (By <a href="https://github.com/tomingtoming">...</a>)</li> <li>Fix: emit full JSON string from CLI when no output filename specified (<a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/710">#710</a>) (By <a href="https://github.com/mbenson">Matt Benson</a>)</li> </ul> <p><strong>4.5.1 / 2024-12-15</strong></p> <ul> <li>Fix empty tag key name for v5 (<a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/697">#697</a>). no impact on v4</li> <li>Fixes entity parsing when used in strict mode (<a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/699">#699</a>)</li> </ul> <p><strong>4.5.0 / 2024-09-03</strong></p> <ul> <li>feat <a href="https://redirect.github.com/NaturalIntelligence/fast-xml-parser/issues/666">#666</a>: ignoreAttributes support function, and array of string or regex (By <a href="https://github.com/mav-rik">ArtemM</a>)</li> </ul> <p><strong>4.4.1 / 2024-07-28</strong></p> <ul> <li>v5 fix: maximum length limit to currency value</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
72f5d181ff |
build(deps): bump remark-gfm from 4.0.0 to 4.0.1 in /website (#8319)
Bumps [remark-gfm](https://github.com/remarkjs/remark-gfm) from 4.0.0 to 4.0.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/remarkjs/remark-gfm/releases">remark-gfm's releases</a>.</em></p> <blockquote> <h2>4.0.1</h2> <h4>Types</h4> <ul> <li>4af823a Refactor to use <code>interface</code> for exposed types</li> <li>3a57a5b Add declaration maps</li> <li>76559f9 Refactor to use <code>@import</code>s</li> </ul> <h4>Docs</h4> <ul> <li>173394d Add docs on footnote option</li> <li>21cae6a Fix typo by <a href="https://github.com/leafac"><code>@leafac</code></a> in <a href="https://redirect.github.com/remarkjs/remark-gfm/pull/73">remarkjs/remark-gfm#73</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/remarkjs/remark-gfm/compare/4.0.0...4.0.1">https://github.com/remarkjs/remark-gfm/compare/4.0.0...4.0.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
c64c54a95b |
build(deps): bump flowbite from 3.1.1 to 3.1.2 in /elixir/apps/web/assets (#8313)
Bumps [flowbite](https://github.com/themesberg/flowbite) from 3.1.1 to 3.1.2. <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>v3.1.2</h2> <ul> <li>create new theme file to move CSS variables</li> <li>update quickstart guide to reflect this change</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
33c1fa1e93 |
build(deps): bump androidx.constraintlayout:constraintlayout from 2.2.0 to 2.2.1 in /kotlin/android in the androidx group (#8309)
Bumps the androidx group in /kotlin/android with 1 update: androidx.constraintlayout:constraintlayout. Updates `androidx.constraintlayout:constraintlayout` from 2.2.0 to 2.2.1 [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <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> |
||
|
|
eadc83e98d |
build(deps): bump com.android.application from 8.8.0 to 8.8.2 in /kotlin/android in the com-android group (#8308)
Bumps the com-android group in /kotlin/android with 1 update: com.android.application. Updates `com.android.application` from 8.8.0 to 8.8.2 [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
d94a16b583 |
build(deps): bump argon2_elixir from 4.0.0 to 4.1.2 in /elixir (#8305)
Bumps [argon2_elixir](https://github.com/riverrun/argon2_elixir) from 4.0.0 to 4.1.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/riverrun/argon2_elixir/blob/master/CHANGELOG.md">argon2_elixir's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <p>All notable changes to this project will be documented in this file.</p> <p>The format is based on <a href="https://keepachangelog.com/en/1.0.0/">Keep a Changelog</a>, and this project adheres to <a href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>.</p> <h2>v4.1.1 (2025-02-04)</h2> <ul> <li>Bug fixes <ul> <li>fixed unnecessary raise that results in warnings in Elixir 1.18</li> </ul> </li> </ul> <h2>v4.1.0 (2024-10-04)</h2> <ul> <li>Changes <ul> <li>Updated dependencies and made changes to silence warnings in Elixir 1.17</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
75b11cf7ad |
build(deps): bump phoenix_html from 4.2.0 to 4.2.1 in /elixir (#8304)
Bumps [phoenix_html](https://github.com/phoenixframework/phoenix_html) from 4.2.0 to 4.2.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/phoenixframework/phoenix_html/blob/main/CHANGELOG.md">phoenix_html's changelog</a>.</em></p> <blockquote> <h2>4.2.1 (2025-02-21)</h2> <ul> <li>Enhancements <ul> <li>Add type to <code>Phoenix.HTML.FormField</code></li> <li>Allow keyword lists in options to use nil as key/value</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
1650671508 |
build(deps-dev): bump @types/node from 22.13.0 to 22.13.9 in /rust/gui-client (#8343)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.13.0 to 22.13.9. <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> |
||
|
|
6953e90d97 |
build(deps): bump anyhow from 1.0.95 to 1.0.97 in /rust (#8338)
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.95 to 1.0.97. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/anyhow/releases">anyhow's releases</a>.</em></p> <blockquote> <h2>1.0.97</h2> <ul> <li>Documentation improvements</li> </ul> <h2>1.0.96</h2> <ul> <li>Documentation improvements</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
883c8c173d |
build(deps): bump log from 0.4.25 to 0.4.26 in /rust (#8337)
Bumps [log](https://github.com/rust-lang/log) from 0.4.25 to 0.4.26. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/log/releases">log's releases</a>.</em></p> <blockquote> <h2>0.4.26</h2> <h2>What's Changed</h2> <ul> <li>Derive <code>Clone</code> for <code>kv::Value</code> by <a href="https://github.com/SpriteOvO"><code>@SpriteOvO</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/668">rust-lang/log#668</a></li> <li>Add <code>spdlog-rs</code> link to crate doc by <a href="https://github.com/SpriteOvO"><code>@SpriteOvO</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/669">rust-lang/log#669</a></li> <li>Prepare for 0.4.26 release by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/670">rust-lang/log#670</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/rust-lang/log/compare/0.4.25...0.4.26">https://github.com/rust-lang/log/compare/0.4.25...0.4.26</a></p> </blockquote> </details> <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.26] - 2025-02-18</h2> <h2>What's Changed</h2> <ul> <li>Derive <code>Clone</code> for <code>kv::Value</code> by <a href="https://github.com/SpriteOvO"><code>@SpriteOvO</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/668">rust-lang/log#668</a></li> <li>Add <code>spdlog-rs</code> link to crate doc by <a href="https://github.com/SpriteOvO"><code>@SpriteOvO</code></a> in <a href="https://redirect.github.com/rust-lang/log/pull/669">rust-lang/log#669</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/rust-lang/log/compare/0.4.25...0.4.26">https://github.com/rust-lang/log/compare/0.4.25...0.4.26</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
fee808bc62 |
chore(portal): Log error for unknown channel messages (#8299)
Instead of crashing, it would make sense to log these and let the connected entity maintain its WebSocket connection. This should never happen in practice if we maintain our version compatibility matrix properly, but it will help reduce the blast radius of a channel message bug that happens to slip out into the wild. Fixes #4679 |
||
|
|
a6110d7f5f |
build(deps): bump the tauri group in /rust/gui-client with 2 updates (#8324)
Bumps the tauri group in /rust/gui-client with 2 updates: [@tauri-apps/api](https://github.com/tauri-apps/tauri) and [@tauri-apps/cli](https://github.com/tauri-apps/tauri). Updates `@tauri-apps/api` from 2.2.0 to 2.3.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tauri-apps/tauri/releases"><code>@tauri-apps/api</code>'s releases</a>.</em></p> <blockquote> <h2><code>@tauri-apps/api</code> v2.3.0</h2> <!-- raw HTML omitted --> <pre><code>No known vulnerabilities found </code></pre> <!-- raw HTML omitted --> <h2>[2.3.0]</h2> <h3>Enhancements</h3> <ul> <li><a href=" |
||
|
|
91c6242ccc |
refactor(connlib): dynamic sockets for upstream TCP DNS servers (#8334)
Currently - because we know all our upstream DNS servers at the time of initialisation - we configure them on the TCP DNS client in `connlib` upfront. This allocates the necessary ports and sockets to emit TCP packets for queries that we want to send to upstream DNS servers, e.g. if the Internet Resource is active or if the Firezone-configured upstream DNS server is also a CIDR resource. In order to resolve SRV and TXT records within the DNS context of a site (#8221), we need to send DNS queries to the Gateway's TUN device which now hosts a DNS server on port 53535 (#8285). The IPs of Gateway's aren't known until we connect to them, meaning we cannot include them in the set of upstream resolver IPs that we want our DNS-over-TCP client to connect to. To be able to reuse the same library, we refactor the `dns_over_tcp::Client` implementation to dynamically allocate sockets for upstream resolvers. With that in place, we will be able to send DNS-over-TCP queries to Gateway's in case the application requests SRV or TXT records for a DNS resource. Related: #8221 |
||
|
|
8d8b57fa29 |
build(deps): bump androidx.fragment:fragment-testing from 1.8.5 to 1.8.6 in /kotlin/android (#8311)
Bumps androidx.fragment:fragment-testing from 1.8.5 to 1.8.6. [](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> |
||
|
|
3931497f9e |
build(deps): bump docker/metadata-action from 5.6.1 to 5.7.0 (#8318)
[//]: # (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 [docker/metadata-action](https://github.com/docker/metadata-action) from 5.6.1 to 5.7.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/docker/metadata-action/releases">docker/metadata-action's releases</a>.</em></p> <blockquote> <h2>v5.7.0</h2> <ul> <li>Global expressions support for labels and annotations by <a href="https://github.com/crazy-max"><code>@crazy-max</code></a> in <a href="https://redirect.github.com/docker/metadata-action/pull/489">docker/metadata-action#489</a></li> <li>Support disabling outputs as environment variables by <a href="https://github.com/omus"><code>@omus</code></a> in <a href="https://redirect.github.com/docker/metadata-action/pull/497">docker/metadata-action#497</a></li> <li>Bump <code>@docker/actions-toolkit</code> from 0.44.0 to 0.56.0 in <a href="https://redirect.github.com/docker/metadata-action/pull/507">docker/metadata-action#507</a> <a href="https://redirect.github.com/docker/metadata-action/pull/509">docker/metadata-action#509</a></li> <li>Bump csv-parse from 5.5.6 to 5.6.0 in <a href="https://redirect.github.com/docker/metadata-action/pull/482">docker/metadata-action#482</a></li> <li>Bump moment-timezone from 0.5.46 to 0.5.47 in <a href="https://redirect.github.com/docker/metadata-action/pull/501">docker/metadata-action#501</a></li> <li>Bump semver from 7.6.3 to 7.7.1 in <a href="https://redirect.github.com/docker/metadata-action/pull/504">docker/metadata-action#504</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/docker/metadata-action/compare/v5.6.1...v5.7.0">https://github.com/docker/metadata-action/compare/v5.6.1...v5.7.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
36cefe3f20 |
test(connlib): don't generate CIDR resources in CG-NAT range (#8333)
Strategy for generating CIDR resources needs adjustment to not generate IPs in the CG-NAT range that we use for peers. Related: #8294 |
||
|
|
3978661fbc |
feat(gateway): run a DNS resolver on $tun_ip:53535 (#8285)
To support resolving SRV and TXT records for DNS-resources, we host a DNS server on UDP/53535 and TCP/53535 on the IPv4 and IPv6 IP of the Gateway's TUN device. This will later be used by connlib to send DNS queries of particular types (concretely SRV and TXT) to the Gateway itself. With this PR, this DNS server is already functional and reachable but it will answer all queries with SERVFAIL. Actual handling of these queries is left to a future PR. We listen on port 53535 because: - Port 53 may be taken by another DNS server running on the customer's machine where they deploy the Gateway - Port 5353 is the standard port for mDNS - I could not find anything on the Internet about it being used by a specific application In theory, we could also bind to a random port but then we'd have to communicate this port somehow to the client. This could be done using a control protocol message but it just makes things more complicated. For example, there would be additional buffering needed on the Client side for the time-period where we've established a connection to the Gateway already but haven't received the control protocol message yet, at which port the Gateway is hosting the DNS server. If one knows the Gateway's IP (and has a connection to it already), this DNS server will be usable by users with standard DNS tools such as `dig`: ```sh dig @100.76.212.99 -p 53535 example.com ``` Related: #8221 |
||
|
|
e5ae00ab99 |
fix(portal): norely -> noreply in gateway/channel.ex (#8329)
Fixes a typo that snuck in in #8267 |
||
|
|
eac2516e18 |
refactor(connlib): decouple mangled DNS queries from DNS mapping (#8331)
When `connlib` receives a UDP packet for one of its DNS resolver IPs and determines that it needs to be forwarded to another resolver through the tunnel, it mangles the destination IP + port to point to this new resolver. In order for the response to be correctly recognised by the application, the response packet needs its _source_ IP + port mangled. This information is currently stored in a `HashMap` together with an expiry timestamp. To be precise, the information that is captured is only the new destination socket, not the current one. The old socket is then later implied by the DNS mapping that we remember internally, i.e. which one of `connlib`'s DNS resolver IPs maps to which upstream DNS server. For the usecase of forwarding DNS queries of type SRV and TXT to the site that hosts the DNS resource in question, we want to send those DNS queries to a Gateway within that site. For UDP DNS queries, this requires the same data structure as we do for DNS queries that are tunneled to another DNS resolver _beyond_ the Gateway. In fact, from the perspective of the Client, there is no difference between a packet that is handled by the Gateway or by a resolver behind the Gateway. The only difference is in the new destination IP + port. In the case where the Gateway is targeted with the DNS query, we won't be able to resolve the original destination socket from the DNS mapping data structure because the Gateway's IP isn't explicitly configured as a DNS resolver. To handle both of these cases with the same data structure, we refactor this temporary mapping to simply store the original destination socket. To make the data structure less complicated to use, we introduce an `ExpiringMap` that automatically removes entries after a certain deadline. This is important for UDP DNS queries to ensure this map doesn't in an unbounded manner if for some reason, the configured DNS resolver never replies. Related: #8221 |
||
|
|
e63f1cb4da |
feat(connlib): allow and route packets to Gateway TUN IPs (#8294)
At the moment, `connlib` doesn't allow routing packets directly to Gateways because the subnet we've chosen for the tunnel IPs isn't part of the routing table. In addition, all traffic within `connlib` is expected to be targeting a resource _beyond_ a Gateway. In order to resolve SRV and TXT records within a certain site, we've opted to host a DNS server on the Gateway's TUN device. See #8285 for details on that. To actually reach that DNS server, we need to add a few new control flows to `connlib` where we detect whether a packet is directly for the tunnel IP of a Gateway or for a resource. We only know a Gateway's IP once we are connected to it, meaning we cannot route those packets prior to that. We also cannot establish a connection when the user attempts to as every connection intent sent to the portal needs to reference a Resource. For the usecase of resolving SRV and TXT records, the packets will be associated with the DNS resource for which we are trying to resolve records. This patch only established the base connectivity and necessary exceptions to the Client's filter rules in order to route packets to the Gateway's TUN device. The following commands have been issued against a staging Gateway, demonstrating connectivity to the Gateway's TUN device from a Client after establishing a connection to it: ``` ❯ ping github.com -c 1 PING github.com (fd00:2021:1111:8000::) 56 data bytes 64 bytes from github.com (fd00:2021:1111:8000::): icmp_seq=1 ttl=50 time=1441 ms --- github.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 1440.614/1440.614/1440.614/0.000 ms ❯ ping 100.72.145.83 -c 1 PING 100.72.145.83 (100.72.145.83) 56(84) bytes of data. 64 bytes from 100.72.145.83: icmp_seq=1 ttl=64 time=213 ms --- 100.72.145.83 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 212.574/212.574/212.574/0.000 ms ``` Related: #8221 |
||
|
|
f512853c09 |
build(deps): bump com.google.firebase.crashlytics from 3.0.2 to 3.0.3 in /kotlin/android (#8312)
Bumps com.google.firebase.crashlytics from 3.0.2 to 3.0.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> |
||
|
|
857ad54760 |
build(deps): bump the navigation group in /kotlin/android with 4 updates (#8310)
Bumps the navigation group in /kotlin/android with 4 updates: androidx.navigation:navigation-safe-args-gradle-plugin, androidx.navigation:navigation-fragment-ktx, androidx.navigation:navigation-ui-ktx and androidx.navigation:navigation-testing. Updates `androidx.navigation:navigation-safe-args-gradle-plugin` from 2.8.6 to 2.8.8 Updates `androidx.navigation:navigation-fragment-ktx` from 2.8.6 to 2.8.8 Updates `androidx.navigation:navigation-ui-ktx` from 2.8.6 to 2.8.8 Updates `androidx.navigation:navigation-testing` from 2.8.6 to 2.8.8 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> |
||
|
|
7c0812d8d3 |
build(deps): bump docker/build-push-action from 6.13.0 to 6.15.0 (#8316)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.13.0 to 6.15.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/docker/build-push-action/releases">docker/build-push-action's releases</a>.</em></p> <blockquote> <h2>v6.15.0</h2> <ul> <li>Bump <code>@docker/actions-toolkit</code> from 0.55.0 to 0.56.0 in <a href="https://redirect.github.com/docker/build-push-action/pull/1330">docker/build-push-action#1330</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/docker/build-push-action/compare/v6.14.0...v6.15.0">https://github.com/docker/build-push-action/compare/v6.14.0...v6.15.0</a></p> <h2>v6.14.0</h2> <ul> <li>Bump <code>@docker/actions-toolkit</code> from 0.53.0 to 0.55.0 in <a href="https://redirect.github.com/docker/build-push-action/pull/1324">docker/build-push-action#1324</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/docker/build-push-action/compare/v6.13.0...v6.14.0">https://github.com/docker/build-push-action/compare/v6.13.0...v6.14.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
ac61be40b1 |
build(deps): bump lycheeverse/lychee-action from 2.2.0 to 2.3.0 (#8315)
Bumps [lycheeverse/lychee-action](https://github.com/lycheeverse/lychee-action) from 2.2.0 to 2.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/lycheeverse/lychee-action/releases">lycheeverse/lychee-action's releases</a>.</em></p> <blockquote> <h2>Version 2.3.0</h2> <h2>What's Changed</h2> <ul> <li>feat: support ARM workers by <a href="https://github.com/LesnyRumcajs"><code>@LesnyRumcajs</code></a> in <a href="https://redirect.github.com/lycheeverse/lychee-action/pull/273">lycheeverse/lychee-action#273</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/LesnyRumcajs"><code>@LesnyRumcajs</code></a> made their first contribution in <a href="https://redirect.github.com/lycheeverse/lychee-action/pull/273">lycheeverse/lychee-action#273</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/lycheeverse/lychee-action/compare/v2...v2.3.0">https://github.com/lycheeverse/lychee-action/compare/v2...v2.3.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
5c87cfc5ca |
build(deps): bump actions/upload-artifact from 4.6.0 to 4.6.1 (#8317)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.6.0 to 4.6.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/upload-artifact/releases">actions/upload-artifact's releases</a>.</em></p> <blockquote> <h2>v4.6.1</h2> <h2>What's Changed</h2> <ul> <li>Update to use artifact 2.2.2 package by <a href="https://github.com/yacaovsnc"><code>@yacaovsnc</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/673">actions/upload-artifact#673</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/upload-artifact/compare/v4...v4.6.1">https://github.com/actions/upload-artifact/compare/v4...v4.6.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
9972352e9d |
build(deps): bump taiki-e/install-action from 2.47.32 to 2.49.9 (#8314)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.47.32 to 2.49.9. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/taiki-e/install-action/releases">taiki-e/install-action's releases</a>.</em></p> <blockquote> <h2>2.49.9</h2> <ul> <li>Update <code>typos@latest</code> to 1.30.0.</li> </ul> <h2>2.49.8</h2> <ul> <li> <p>Update <code>cargo-binstall@latest</code> to 1.11.2.</p> </li> <li> <p>Update <code>cargo-audit@latest</code> to 0.21.2.</p> </li> </ul> <h2>2.49.7</h2> <ul> <li>Update <code>cargo-deny@latest</code> to 0.18.1.</li> </ul> <h2>2.49.6</h2> <ul> <li>Update <code>cargo-lambda@latest</code> to 1.7.0.</li> </ul> <h2>2.49.5</h2> <ul> <li> <p>Update <code>wasmtime@latest</code> to 30.0.2.</p> </li> <li> <p>Update <code>release-plz@latest</code> to 0.3.123.</p> </li> </ul> <h2>2.49.4</h2> <ul> <li>Update <code>typos@latest</code> to 1.29.10.</li> </ul> <h2>2.49.3</h2> <ul> <li> <p>Update <code>wash@latest</code> to 0.39.0.</p> </li> <li> <p>Update <code>cargo-nextest@latest</code> to 0.9.92.</p> </li> </ul> <h2>2.49.2</h2> <ul> <li> <p>Update <code>sccache@latest</code> to 0.10.0.</p> </li> <li> <p>Update <code>cargo-machete@latest</code> to 0.8.0.</p> </li> </ul> <h2>2.49.1</h2> <ul> <li>Update <code>cargo-deny@latest</code> to 0.18.0.</li> </ul> <h2>2.49.0</h2> <ul> <li>Allow installing pre-release versions using binstall. (<a href="https://redirect.github.com/taiki-e/install-action/pull/868">#868</a>)</li> </ul> <h2>2.48.22</h2> <ul> <li> <p>Update <code>cargo-binstall@latest</code> to 1.11.1.</p> </li> <li> <p>Update <code>release-plz@latest</code> to 0.3.122.</p> </li> </ul> <h2>2.48.21</h2> <ul> <li> <p>Update <code>wasmtime@latest</code> to 30.0.1.</p> </li> <li> <p>Update <code>syft@latest</code> to 1.20.0.</p> </li> </ul> <h2>2.48.20</h2> <ul> <li>Update <code>cargo-udeps@latest</code> to 0.1.55.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md">taiki-e/install-action's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <p>All notable changes to this project will be documented in this file.</p> <p>This project adheres to <a href="https://semver.org">Semantic Versioning</a>.</p> <!-- raw HTML omitted --> <h2>[Unreleased]</h2> <h2>[2.49.9] - 2025-03-01</h2> <ul> <li>Update <code>typos@latest</code> to 1.30.0.</li> </ul> <h2>[2.49.8] - 2025-02-28</h2> <ul> <li> <p>Update <code>cargo-binstall@latest</code> to 1.11.2.</p> </li> <li> <p>Update <code>cargo-audit@latest</code> to 0.21.2.</p> </li> </ul> <h2>[2.49.7] - 2025-02-27</h2> <ul> <li>Update <code>cargo-deny@latest</code> to 0.18.1.</li> </ul> <h2>[2.49.6] - 2025-02-27</h2> <ul> <li>Update <code>cargo-lambda@latest</code> to 1.7.0.</li> </ul> <h2>[2.49.5] - 2025-02-25</h2> <ul> <li> <p>Update <code>wasmtime@latest</code> to 30.0.2.</p> </li> <li> <p>Update <code>release-plz@latest</code> to 0.3.123.</p> </li> </ul> <h2>[2.49.4] - 2025-02-25</h2> <ul> <li>Update <code>typos@latest</code> to 1.29.10.</li> </ul> <h2>[2.49.3] - 2025-02-25</h2> <ul> <li> <p>Update <code>wash@latest</code> to 0.39.0.</p> </li> <li> <p>Update <code>cargo-nextest@latest</code> to 0.9.92.</p> </li> </ul> <h2>[2.49.2] - 2025-02-25</h2> <ul> <li>Update <code>sccache@latest</code> to 0.10.0.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
7957d671c5 |
build(deps-dev): bump tailwindcss from 4.0.3 to 4.0.9 in /rust/gui-client (#8326)
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) from 4.0.3 to 4.0.9. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tailwindlabs/tailwindcss/releases">tailwindcss's releases</a>.</em></p> <blockquote> <h2>v4.0.9</h2> <h3>Fixed</h3> <ul> <li>Make JS APIs available to plugins and configs in the Standalone CLI (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/15934">#15934</a>)</li> <li>Vite: Don't crash when importing a virtual module from JavaScript that ends in <code>.css</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16780">#16780</a>)</li> <li>Fix an issue where <code>@reference "…"</code> would sometimes omit keyframe animations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> <li>Ensure <code>z-*!</code> utilities are properly marked as <code>!important</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16795">#16795</a>)</li> <li>Read UTF-8 CSS files that start with a byte-order mark (BOM) (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16800">#16800</a>)</li> <li>Ensure nested functions in selectors used with JavaScript plugins are not truncated (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16802">#16802</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Emit variable fallbacks when using <code>@reference "…"</code> instead of duplicate CSS variable declarations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> </ul> <h2>v4.0.8</h2> <h3>Added</h3> <ul> <li>Allow <code>@import</code> with <code>theme(…)</code> options for stylesheets that contain more than just <code>@theme</code> rules (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16514">#16514</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Don't add <code>!important</code> to CSS variable declarations when using the important modifier (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16668">#16668</a>)</li> <li>Vite: Ignore files and directories specified in your <code>.gitignore</code> file when using automatic source detection(<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Don't rely on the module graph for detecting candidates to ensure setups with multiple Vite builds work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Ensure Astro production builds always contain classes used in client-only components (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Always scan raw file contents for utility classes before any other transforms have been applied to ensure utility classes are scanned without any additional escaping (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Ensure utilities with more declarations are always sorted before utilities with fewer declarations when utilities only define CSS variables (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16715">#16715</a>)</li> <li>Only include <code>translate-z-px</code> utilities once in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16718">#16718</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Don't include theme variables that aren't used in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16211">#16211</a>, <a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16676">#16676</a>)</li> </ul> <h2>v4.0.7</h2> <h3>Fixed</h3> <ul> <li>Export <code>tailwindcss/lib/util/flattenColorPalette.js</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16411">#16411</a>)</li> <li>Fix sorting of numeric utility suggestions when they have different magnitudes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16414">#16414</a>)</li> <li>Show suggestions for fractions in IntelliSense (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16353">#16353</a>)</li> <li>Don’t replace <code>_</code> in suggested theme keys (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16433">#16433</a>)</li> <li>Ensure <code>--default-outline-width</code> can be used to change the <code>outline-width</code> value of the <code>outline</code> utility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16469">#16469</a>)</li> <li>Ensure drop shadow utilities don't inherit unexpectedly (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16471">#16471</a>)</li> <li>Export config and plugin types from <code>tailwindcss/plugin</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16505">#16505</a>)</li> <li>Ensure JavaScript plugins that emit nested rules referencing the utility name work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16539">#16539</a>)</li> <li>Statically link Visual Studio redistributables in <code>@tailwindcss/oxide</code> Windows builds (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16602">#16602</a>)</li> <li>Ensure that Next.js splat routes are scanned for classes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16457">#16457</a>)</li> <li>Pin exact version of <code>tailwindcss</code> in <code>@tailwindcss/*</code> packages (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16623">#16623</a>)</li> <li>Upgrade: Report errors when updating dependencies (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16504">#16504</a>)</li> <li>Upgrade: Ensure a <code>darkMode</code> JS config setting with block syntax converts to use <code>@slot</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16507">#16507</a>)</li> <li>Upgrade: Ensure the latest version of <code>tailwindcss</code> and <code>@tailwindcss/postcss</code> are installed when upgrading (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16620">#16620</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md">tailwindcss's changelog</a>.</em></p> <blockquote> <h2>[4.0.9] - 2025-02-25</h2> <h3>Fixed</h3> <ul> <li>Make JS APIs available to plugins and configs in the Standalone CLI (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/15934">#15934</a>)</li> <li>Vite: Don't crash when importing a virtual module from JavaScript that ends in <code>.css</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16780">#16780</a>)</li> <li>Fix an issue where <code>@reference "…"</code> would sometimes omit keyframe animations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> <li>Ensure <code>z-*!</code> utilities are properly marked as <code>!important</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16795">#16795</a>)</li> <li>Read UTF-8 CSS files that start with a byte-order mark (BOM) (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16800">#16800</a>)</li> <li>Ensure nested functions in selectors used with JavaScript plugins are not truncated (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16802">#16802</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Emit variable fallbacks when using <code>@reference "…"</code> instead of duplicate CSS variable declarations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> </ul> <h2>[4.0.8] - 2025-02-21</h2> <h3>Added</h3> <ul> <li>Allow <code>@import</code> with <code>theme(…)</code> options for stylesheets that contain more than just <code>@theme</code> rules (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16514">#16514</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Don't add <code>!important</code> to CSS variable declarations when using the important modifier (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16668">#16668</a>)</li> <li>Vite: Ignore files and directories specified in your <code>.gitignore</code> file when using automatic source detection(<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Don't rely on the module graph for detecting candidates to ensure setups with multiple Vite builds work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Ensure Astro production builds always contain classes used in client-only components (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Always scan raw file contents for utility classes before any other transforms have been applied to ensure utility classes are scanned without any additional escaping (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Ensure utilities with more declarations are always sorted before utilities with fewer declarations when utilities only define CSS variables (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16715">#16715</a>)</li> <li>Only include <code>translate-z-px</code> utilities once in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16718">#16718</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Don't include theme variables that aren't used in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16211">#16211</a>, <a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16676">#16676</a>)</li> </ul> <h2>[4.0.7] - 2025-02-18</h2> <h3>Fixed</h3> <ul> <li>Export <code>tailwindcss/lib/util/flattenColorPalette.js</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16411">#16411</a>)</li> <li>Fix sorting of numeric utility suggestions when they have different magnitudes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16414">#16414</a>)</li> <li>Show suggestions for fractions in IntelliSense (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16353">#16353</a>)</li> <li>Don’t replace <code>_</code> in suggested theme keys (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16433">#16433</a>)</li> <li>Ensure <code>--default-outline-width</code> can be used to change the <code>outline-width</code> value of the <code>outline</code> utility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16469">#16469</a>)</li> <li>Ensure drop shadow utilities don't inherit unexpectedly (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16471">#16471</a>)</li> <li>Export config and plugin types from <code>tailwindcss/plugin</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16505">#16505</a>)</li> <li>Ensure JavaScript plugins that emit nested rules referencing the utility name work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16539">#16539</a>)</li> <li>Statically link Visual Studio redistributables in <code>@tailwindcss/oxide</code> Windows builds (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16602">#16602</a>)</li> <li>Ensure that Next.js splat routes are scanned for classes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16457">#16457</a>)</li> <li>Pin exact version of <code>tailwindcss</code> in <code>@tailwindcss/*</code> packages (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16623">#16623</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
eab3a8888d |
build(deps): bump @tailwindcss/cli from 4.0.3 to 4.0.9 in /rust/gui-client (#8327)
Bumps [@tailwindcss/cli](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli) from 4.0.3 to 4.0.9. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tailwindlabs/tailwindcss/releases"><code>@tailwindcss/cli</code>'s releases</a>.</em></p> <blockquote> <h2>v4.0.9</h2> <h3>Fixed</h3> <ul> <li>Make JS APIs available to plugins and configs in the Standalone CLI (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/15934">#15934</a>)</li> <li>Vite: Don't crash when importing a virtual module from JavaScript that ends in <code>.css</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16780">#16780</a>)</li> <li>Fix an issue where <code>@reference "…"</code> would sometimes omit keyframe animations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> <li>Ensure <code>z-*!</code> utilities are properly marked as <code>!important</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16795">#16795</a>)</li> <li>Read UTF-8 CSS files that start with a byte-order mark (BOM) (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16800">#16800</a>)</li> <li>Ensure nested functions in selectors used with JavaScript plugins are not truncated (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16802">#16802</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Emit variable fallbacks when using <code>@reference "…"</code> instead of duplicate CSS variable declarations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> </ul> <h2>v4.0.8</h2> <h3>Added</h3> <ul> <li>Allow <code>@import</code> with <code>theme(…)</code> options for stylesheets that contain more than just <code>@theme</code> rules (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16514">#16514</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Don't add <code>!important</code> to CSS variable declarations when using the important modifier (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16668">#16668</a>)</li> <li>Vite: Ignore files and directories specified in your <code>.gitignore</code> file when using automatic source detection(<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Don't rely on the module graph for detecting candidates to ensure setups with multiple Vite builds work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Ensure Astro production builds always contain classes used in client-only components (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Always scan raw file contents for utility classes before any other transforms have been applied to ensure utility classes are scanned without any additional escaping (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Ensure utilities with more declarations are always sorted before utilities with fewer declarations when utilities only define CSS variables (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16715">#16715</a>)</li> <li>Only include <code>translate-z-px</code> utilities once in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16718">#16718</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Don't include theme variables that aren't used in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16211">#16211</a>, <a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16676">#16676</a>)</li> </ul> <h2>v4.0.7</h2> <h3>Fixed</h3> <ul> <li>Export <code>tailwindcss/lib/util/flattenColorPalette.js</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16411">#16411</a>)</li> <li>Fix sorting of numeric utility suggestions when they have different magnitudes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16414">#16414</a>)</li> <li>Show suggestions for fractions in IntelliSense (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16353">#16353</a>)</li> <li>Don’t replace <code>_</code> in suggested theme keys (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16433">#16433</a>)</li> <li>Ensure <code>--default-outline-width</code> can be used to change the <code>outline-width</code> value of the <code>outline</code> utility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16469">#16469</a>)</li> <li>Ensure drop shadow utilities don't inherit unexpectedly (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16471">#16471</a>)</li> <li>Export config and plugin types from <code>tailwindcss/plugin</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16505">#16505</a>)</li> <li>Ensure JavaScript plugins that emit nested rules referencing the utility name work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16539">#16539</a>)</li> <li>Statically link Visual Studio redistributables in <code>@tailwindcss/oxide</code> Windows builds (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16602">#16602</a>)</li> <li>Ensure that Next.js splat routes are scanned for classes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16457">#16457</a>)</li> <li>Pin exact version of <code>tailwindcss</code> in <code>@tailwindcss/*</code> packages (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16623">#16623</a>)</li> <li>Upgrade: Report errors when updating dependencies (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16504">#16504</a>)</li> <li>Upgrade: Ensure a <code>darkMode</code> JS config setting with block syntax converts to use <code>@slot</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16507">#16507</a>)</li> <li>Upgrade: Ensure the latest version of <code>tailwindcss</code> and <code>@tailwindcss/postcss</code> are installed when upgrading (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16620">#16620</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md"><code>@tailwindcss/cli</code>'s changelog</a>.</em></p> <blockquote> <h2>[4.0.9] - 2025-02-25</h2> <h3>Fixed</h3> <ul> <li>Make JS APIs available to plugins and configs in the Standalone CLI (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/15934">#15934</a>)</li> <li>Vite: Don't crash when importing a virtual module from JavaScript that ends in <code>.css</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16780">#16780</a>)</li> <li>Fix an issue where <code>@reference "…"</code> would sometimes omit keyframe animations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> <li>Ensure <code>z-*!</code> utilities are properly marked as <code>!important</code> (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16795">#16795</a>)</li> <li>Read UTF-8 CSS files that start with a byte-order mark (BOM) (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16800">#16800</a>)</li> <li>Ensure nested functions in selectors used with JavaScript plugins are not truncated (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16802">#16802</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Emit variable fallbacks when using <code>@reference "…"</code> instead of duplicate CSS variable declarations (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16774">#16774</a>)</li> </ul> <h2>[4.0.8] - 2025-02-21</h2> <h3>Added</h3> <ul> <li>Allow <code>@import</code> with <code>theme(…)</code> options for stylesheets that contain more than just <code>@theme</code> rules (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16514">#16514</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Don't add <code>!important</code> to CSS variable declarations when using the important modifier (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16668">#16668</a>)</li> <li>Vite: Ignore files and directories specified in your <code>.gitignore</code> file when using automatic source detection(<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Don't rely on the module graph for detecting candidates to ensure setups with multiple Vite builds work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Ensure Astro production builds always contain classes used in client-only components (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Vite: Always scan raw file contents for utility classes before any other transforms have been applied to ensure utility classes are scanned without any additional escaping (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16631">#16631</a>)</li> <li>Ensure utilities with more declarations are always sorted before utilities with fewer declarations when utilities only define CSS variables (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16715">#16715</a>)</li> <li>Only include <code>translate-z-px</code> utilities once in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16718">#16718</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Don't include theme variables that aren't used in compiled CSS (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16211">#16211</a>, <a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16676">#16676</a>)</li> </ul> <h2>[4.0.7] - 2025-02-18</h2> <h3>Fixed</h3> <ul> <li>Export <code>tailwindcss/lib/util/flattenColorPalette.js</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16411">#16411</a>)</li> <li>Fix sorting of numeric utility suggestions when they have different magnitudes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16414">#16414</a>)</li> <li>Show suggestions for fractions in IntelliSense (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16353">#16353</a>)</li> <li>Don’t replace <code>_</code> in suggested theme keys (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16433">#16433</a>)</li> <li>Ensure <code>--default-outline-width</code> can be used to change the <code>outline-width</code> value of the <code>outline</code> utility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16469">#16469</a>)</li> <li>Ensure drop shadow utilities don't inherit unexpectedly (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16471">#16471</a>)</li> <li>Export config and plugin types from <code>tailwindcss/plugin</code> for backward compatibility (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16505">#16505</a>)</li> <li>Ensure JavaScript plugins that emit nested rules referencing the utility name work as expected (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16539">#16539</a>)</li> <li>Statically link Visual Studio redistributables in <code>@tailwindcss/oxide</code> Windows builds (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16602">#16602</a>)</li> <li>Ensure that Next.js splat routes are scanned for classes (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16457">#16457</a>)</li> <li>Pin exact version of <code>tailwindcss</code> in <code>@tailwindcss/*</code> packages (<a href="https://redirect.github.com/tailwindlabs/tailwindcss/pull/16623">#16623</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
4ea455a66e |
build(deps-dev): bump vite from 6.0.11 to 6.2.0 in /rust/gui-client (#8328)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.0.11 to 6.2.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/releases">vite's releases</a>.</em></p> <blockquote> <h2>create-vite@6.2.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/create-vite@6.2.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.2.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.2.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.2.0-beta.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.2.0-beta.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.2.0-beta.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.2.0-beta.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>create-vite@6.1.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/create-vite@6.1.1/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.1.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.1.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>create-vite@6.1.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/create-vite@6.1.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.1.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.1.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.1.0-beta.2</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.1.0-beta.2/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.1.0-beta.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.1.0-beta.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v6.1.0-beta.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v6.1.0-beta.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md">vite's changelog</a>.</em></p> <blockquote> <h2>6.2.0 (2025-02-25)</h2> <ul> <li>fix(deps): update all non-major dependencies (<a href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19501">#19501</a>) (<a href=" |