Commit Graph

724 Commits

Author SHA1 Message Date
Jamil
5650150b3f chore(portal): Enforce only internet resource in internet site (#8254)
Currently, it would theoretically be possible for an admin to connect
non-internet Resources to the Internet site. This PR fixes that by
enforcing only the `internet` Resource type can belong to the `Internet`
gateway group.


Related: #6834
2025-02-25 03:45:40 +00:00
Jamil
31111257e1 fix(portal): Fix layout of live_table filters controls (#8256)
Fixes layout of filters controls. A more permanent fix will be
introduced as part of #8255
2025-02-24 18:27:50 -08:00
Jamil
8bd94599a9 chore(portal): Remove dead ScimController (#8253)
This is leftover from a previous prototype and can be removed.
2025-02-24 22:58:38 +00:00
Jamil
c5929d4063 fix(portal): Show reload button when table data is stale (#8143)
Sentry uncovered a bug in the resources index liveview where it looks
like some code copy-pasted from the policies index view wasn't updated
properly to work in the resources live view, causing the view to crash
if an admin was viewing the table while the resources are changed in
another page.

In debugging that, I realized the best UX when viewing these tables is
usually just to show a `Reload` button and not update the data live
while the admin is viewing it, as this can cause missed clicks and other
annoyances.

This PR adds an optional `stale` component attribute that, if true, will
render a `Reload` button in the live table which upon clicking will
reload the live table.

Not all index views are updated with this - in some views there is
already logic to handle making an intelligent update without breaking
the view if the data is updated - for example for the clients table.

Ideally, we live-update things that don't reflow layout inline (such as
`online/offline` presence) and for things that do cause layout reflow
(create/delete), we show the `Reload` button.

However that work is saved for a future PR as this one fixes the
immediate bug and this is not the highest priority.

<img width="1195" alt="Screenshot 2025-02-16 at 8 44 43 AM"
src="https://github.com/user-attachments/assets/114efffa-85ea-490d-9cea-78c607081ce3"
/>
<img width="401" alt="Screenshot 2025-02-16 at 9 59 53 AM"
src="https://github.com/user-attachments/assets/8a570213-d4ec-4b6c-a489-dcd9ad1c351c"
/>
2025-02-24 15:39:16 +00:00
Jamil
29f0ac0a00 fix(portal): Handle missing params in idp callback (#8239)
It's possible for a client or admin to try and load the redirect URL
directly, or a misconfigured IdP may redirect back to us with missing
params. We should redirect with an error flash instead of 500'ing.
2025-02-24 13:38:10 +00:00
Jamil
d9a513fa54 fix(portal): optionally enable optimistic lock (#8229)
When the buffer is full, we want to update immediately, without locking.
2025-02-20 23:42:29 -08:00
Jamil
a797e350c0 fix(portal): Force update last_flushed_at for optimistic lock (#8228)
This PR fixes two issues:

1. Since we weren't updating any actual fields in the telemetry reporter
log record, it was never being updated, thus optimistic locking was not
taking effect. To fix this, we use `Repo.update(force: true)`.
2. If a buffer is full, we write immediately, but we provider an empty
`%Log{}` which causes a repetitive `the current value of last_flushed_at
is nil and will not be used as a filter for optimistic locking.`
2025-02-20 23:12:17 -08:00
Jamil
a07f1725c6 chore(portal): Refactor GCP labels logger to relax sentry alerts (#8213) 2025-02-20 11:20:45 +00:00
Jamil
2dae8bd656 fix(portal): move rename index before create internet site (#8209)
Otherwise prod won't run this migration...
2025-02-19 16:10:24 -08:00
Jamil
407085d7ec fix(portal): Add managed_by to gateway groups index (#8208)
Some customers have already picked the `Internet` name, which is making
our migrations fail.

This scopes the unique name index by `managed_by` so that our attempts
to create them succeed.
2025-02-19 15:55:51 -08:00
Jamil
80210a5093 fix(portal): fix typo on settings -> dns page (#8207) 2025-02-19 15:41:34 -08:00
Jamil
03558a5899 feat(website): Internet resource migration blogpost (#8150)
This is an announcement we will be linking to.
2025-02-19 15:28:52 -08:00
Jamil
0f4f20bd9c fix(elixir): Fix conditional in sentry clase in runtime.exs (#8188) 2025-02-18 17:50:18 -08:00
Jamil
6232f1a27e fix(elixir): Don't start sentry in unknown environments (#8185)
This ensures Sentry doesn't start in unknown `prod` environments.
2025-02-18 17:24:26 -08:00
Jamil
28559a317f chore(portal): Optionally drop NotFoundError to sentry (#8183)
By specifying the `before_send` hook, we can easily drop events based on
their data, such as `original_exception` which contains the original
exception instance raised.

Leveraging this, we can add a `report_to_sentry` parameter to
`Web.LiveErrors.NotFound` to optionally ignore certain not found errors
from going to Sentry.
2025-02-18 21:55:23 +00:00
Jamil
9b5a7e5fb3 fix(portal): Fix grammar on account lockout message (#8149) 2025-02-17 06:06:28 +00:00
Jamil
159e8e3dd5 fix(portal): Connect internet resource to internet site (#8151)
With the internet site changes now in, editing the Internet Resource is
impossible.

As such, the old instructions for using the Internet Resource no longer
apply, and we need to make sure the Internet Site and Internet Resource
are linked.

This migration ensures that's the case. However, if the internet
resource is currently connected to another site already, we don't move
it. This is only for internet resources that aren't connected to any
sites yet.
2025-02-16 17:30:48 -08:00
Jamil
d452e7d1b5 fix(portal): Parse string metric datetimes (#8148)
It turns out we can sometimes receive measurements with `DateTime`
fields, and other times they're strings. 🙃
2025-02-16 14:15:31 -08:00
Jamil
311988c5a2 fix(portal): Only compute diff for metrics with both start and end times (#8147)
A fix for a nil error from #8146
2025-02-16 12:57:03 -08:00
Jamil
36b887e98e fix(portal): Don't flush metrics when intervals < 5s (#8146) 2025-02-16 11:51:10 -08:00
Jamil
d29b210a63 chore(portal): Log metrics that failed to flush (#8142)
When flushing metrics to GCP, we sometimes get the following error:

```
{400, "{\n  \"error\": {\n    \"code\": 400,\n    \"message\": \"One or more TimeSeries could not be written: timeSeries[0-51]: write for resource=gce_instance{zone:us-east1-d,instance_id:6130184649770384727} failed with: One or more points were written more frequently than the maximum sampling period configured for the metric.\",\n    \"status\": \"INVALID_ARGUMENT\",\n    \"details\": [\n      {\n        \"@type\": \"type.googleapis.com/google.monitoring.v3.CreateTimeSeriesSummary\",\n        \"totalPointCount\": 52,\n        \"successPointCount\": 48,\n        \"errors\": [\n          {\n            \"status\": {\n              \"code\": 9\n            },\n            \"pointCount\": 4\n          }\n        ]\n      }\n    ]\n  }\n}\n"}
```

It would be helpful to know exactly which metrics are failing to flush
so we can further troubleshoot any issues.
2025-02-15 08:50:29 -08:00
Jamil
85ee37dfb3 Revert "fix(portal): Add node name key to metrics labels" (#8141)
The node_name label is already in the metrics.

Reverts firezone/firezone#8082
2025-02-15 08:47:45 -08:00
Jamil
5a3e940334 fix(portal): Fix typo in sites index (#8139)
Fixes a typo introduced in #6905
2025-02-15 07:25:08 -08:00
Andrew Dryga
bacb4596b7 feat(portal): Internet Sites (#6905)
Related #6834

Co-authored-by: Jamil Bou Kheir <jamilbk@users.noreply.github.com>
2025-02-15 00:34:30 +00:00
Jamil
5efb4b0fe2 fix(portal): Fix typo :dns -> :ip in seeds (#8134)
Fixes #8119
2025-02-14 20:32:28 +00:00
Jamil
93a88563f3 feat(portal): allow socket based postgres connections (#8044) (#8097)
This allows connections to the postgresql database via the standard
socket, which - opposed to TCP sockets - allows `peer` authentication
based on local unix users. This removes the need for a password and is
much simpler to deploy when running components locally.

In the current form, `DATABASE_SOCKET_DIR` takes precedence over
hostname, if the environment variable is present. I found that
`compile_config!` somehow enforces a value to be present which is
explicitly not what I want for some of these values (i think). I'd be
glad if anyone with more elixir experience can guide me as to how I can
make this more idiomatic.

---------

Supersedes: #8044

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
Co-authored-by: oddlama <oddlama@oddlama.org>
2025-02-11 19:25:00 -08:00
Jamil
e32d2b845f fix(portal): Add node name key to metrics labels (#8082)
Ok, the reason why we're still getting the error `One or more points
were written more frequently than the maximum sampling period configured
for the metric.` is because the metric points are identified by the
labels in the metric, and so are "aggregated" more frequently than our
API calls.

By adding the node name to the labels, we scope the metric by that node
and prevent inserting the points more often than our API calls.
2025-02-11 17:21:27 +00:00
Jamil
feb1ec5e17 chore: Update client URLs & redirects for consistency (#8056)
Whenever changing a URL we care about, we add an entry in
`website/redirects.js` to avoid breaking links to the old page. Most
search engines reindex these after 1 year, but other websites and places
won't, so we should generally keep them indefinitely since they don't
cost us much to keep around.
2025-02-11 03:30:41 +00:00
oddlama
62ece23968 chore(portal): harden systemd relay example (#8045)
This adds hardening to the relay example systemd service shown in the
admin portal. Instead of running the service as root to download the
relay binary, we can let systemd manage the state directory and run with
lower privileges at all times.

I've also removed a shell injection which would in theory allow a
malicious github api server to run commands as root in the pre start
phase.

That being said I have no idea how this script is intended to function,
since it downloads the relay binary from the latest release on GitHub
which currently is a `gui-client` release without any relay binaries
attached.
2025-02-10 14:04:30 -08:00
Jamil
5bac3f5ec2 fix(infra): Don't send more/faster metrics than Google accepts (#8028)
We are getting quite a few of these warnings on prod:

```
{400, "{\n  \"error\": {\n    \"code\": 400,\n    \"message\": \"One or more TimeSeries could not be written: timeSeries[0-39]: write for resource=gce_instance{zone:us-east1-d,instance_id:2678918148122610092} failed with: One or more points were written more frequently than the maximum sampling period configured for the metric.\",\n    \"status\": \"INVALID_ARGUMENT\",\n    \"details\": [\n      {\n        \"@type\": \"type.googleapis.com/google.monitoring.v3.CreateTimeSeriesSummary\",\n        \"totalPointCount\": 40,\n        \"successPointCount\": 31,\n        \"errors\": [\n          {\n            \"status\": {\n              \"code\": 9\n            },\n            \"pointCount\": 9\n          }\n        ]\n      }\n    ]\n  }\n}\n"}
```

Since the point count is _much_ less than our flush buffer size of 1000,
we can only surmise the limit we're hitting is the flush interval.

The telemetry metrics reporter is run on each node, so we run the risk
of violating Google's API limit regardless of what a single node's
`@flush_interval` is set to.

To solve this, we use a new table `telemetry_reporter_logs` that stores
the last time a particular `flush` occurred for a reporter module. This
tracks global state as to when the last flush occurred, and if too
recent, the timer-based flush is call is `no-op`ed until the next one.

**Note**: The buffer-based `flush` is left unchanged, this will always
be called when `buffer_size > max_buffer_size`.
2025-02-10 18:21:40 +00:00
Jamil
3f62eff4a1 feat(portal): add configuration for the healthz port (#8020) (#8030)
This is required to run multiple components on a single machine (even if
the processes are sandboxed), since they will share a network namespace
and thus cannot bind to the same port.

Currently port `4000` is hardcoded, this PR allows this to be configured
by an environment variable.

---------

Co-authored-by: oddlama <oddlama@oddlama.org>
2025-02-07 10:35:05 +00:00
Jamil
a93f40befd chore(portal): Bump elixir to 1.18.2 (#8009)
This is mostly to stay up to date with current Elixir and benefit from
the new included [JSON parser](https://hexdocs.pm/elixir/JSON.html).

Removing `Jason` in favor of the embedded `JSON` parser is saved for a
[future PR](https://github.com/firezone/firezone/issues/8011).

It found a couple type violations which were simple to fix, and some
formatting changes.
2025-02-05 23:52:58 +00:00
Jamil
006ea4c6fd fix(infra): Inline sentry logging config (#8031)
It appears that something is initializing the Sentry.LoggerHandler
before we try to load it when starting:

```
Invalid logger handler config: {:logger,
 {:invalid_handler, {:function_not_exported, {Sentry.LoggerHandler, :log, 2}}}}
```

This doesn't seem to actually inhibit the Sentry logger at all,
presumably because it initializes just fine in the application start
callback.

Instead of defining the config in the `config/` directory, we can pass
it directly to `:logger` on start which solves the above issue.
2025-02-05 23:36:06 +00:00
Jamil
d1761e5a5d fix(infra): Bust cache for already-reported min/max metrics (#8026)
On staging (only), we see these logs spammed:


```
{400, "{\n  \"error\": {\n    \"code\": 400,\n    \"message\": \"One or more TimeSeries could not be written: timeSeries[22]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/queue_time/min must be CUMULATIVE, but is GAUGE.; timeSeries[11]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/max must be CUMULATIVE, but is GAUGE.; timeSeries[8]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/idle_time/max must be CUMULATIVE, but is GAUGE.; timeSeries[7]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/idle_time/min must be CUMULATIVE, but is GAUGE.; timeSeries[10]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/min must be CUMULATIVE, but is GAUGE.; timeSeries[14]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/max must be CUMULATIVE, but is GAUGE.; timeSeries[13]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/min must be CUMULATIVE, but is GAUGE.; timeSeries[16]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/min must be CUMULATIVE, but is GAUGE.; timeSeries[23]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/queue_time/max must be CUMULATIVE, but is GAUGE.; timeSeries[20]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/max must be CUMULATIVE, but is GAUGE.; timeSeries[19]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/min must be CUMULATIVE, but is GAUGE.; timeSeries[17]: Metric kind for metric custom.googleapis.com/elixir/domain/repo/query/query_time/max must be CUMULATIVE, but is GAUGE.\",\n    \"status\": \"INVALID_ARGUMENT\",\n    \"details\": [\n      {\n        \"@type\": \"type.googleapis.com/google.monitoring.v3.CreateTimeSeriesSummary\",\n        \"totalPointCount\": 36,\n        \"successPointCount\": 24,\n        \"errors\": [\n          {\n            \"status\": {\n              \"code\": 3\n            },\n            \"pointCount\": 12\n          }\n        ]\n      }\n    ]\n  }\n}\n"}
```

This does not happen on prod. As far as I can tell, GCP will cache the
initial metric kind used when the metric ID was first used, which
appears to be `CUMULATIVE` here.

The correct metric kind for these is `GAUGE` since they're reporting a
min/max value.

Since GCP doesn't support resetting the auto-defined metric kind of a
particular metric ID, we need to alter the ID to "bust" the cache and
create a new definition.
2025-02-05 18:30:04 +00:00
Jamil
dec2b0ee81 fix(portal): Only configure Sentry.LoggerHandler once (#8025)
The applications within our umbrella are all joined into a single Erlang
cluster, and logger configuration is applied already to the entire
umbrella.

As such, registering the Sentry log handler in each application's
startup routine triggers duplicate handlers to be registered for the
cluster, resulting in warnings like this in GCP:

```
Event dropped due to being a duplicate of a previously-captured event.
```

As such, we can move the log handler configuration to the top-level
`:logger` key, under the `:logger` subkey for configuring a single
handler. We then load this handler config in the `domain` app only and
it applies to the entire cluster.
2025-02-05 13:41:19 +00:00
Jamil
6be7cf6b45 feat(portal): Add Sentry reporting (#8013)
This adds https://github.com/getsentry/sentry-elixir to the portal for
automatic process crash and exception trace reporting.

It also configures Logger reporting for the `warning` level and higher,
and sets the data scrubbing rules to allow all Logger metadata keys
(`logger_metadata.*` in the Sentry project settings).

Lastly, it configures automatic HTTP error reporting by tying into the
`api` and `web` endpoint modules with a custom `plug` middleware so we
get automatic reporting of unsuccessful Phoenix responses.

It is expected this will be noisy when we first deploy and we'll need to
tune it down a bit. This is the same approach used with other Sentry
platforms.
2025-02-04 18:35:52 +00:00
dependabot[bot]
bbbd6eded2 build(deps): bump phoenix_live_view from 1.0.0-rc.6 to 1.0.3 in /elixir (#7983)
Bumps
[phoenix_live_view](https://github.com/phoenixframework/phoenix_live_view)
from 1.0.0-rc.6 to 1.0.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/phoenixframework/phoenix_live_view/blob/v1.0.3/CHANGELOG.md">phoenix_live_view's
changelog</a>.</em></p>
<blockquote>
<h2>1.0.3 (2025-01-28)</h2>
<h3>Bug fixes</h3>
<ul>
<li>Fix regression where browser back/forward buttons used
<code>patch</code> instead of <code>navigate</code>, failing to update
the page (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3529">#3529</a>)</li>
<li>Fix client hooks inside streams that contain nested LiveViews (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3530">#3530</a>)</li>
<li>Fix LiveComponents in nested LiveViews not updating under certain
conditions (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3626">#3626</a>)</li>
<li>Fix client-side hooks not being cleared properly (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3628">#3628</a>)</li>
<li>Fix LiveUpload from client hook not auto uploading when immediately
followed by form event (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3647">#3647</a>)</li>
<li>Fix inputs being cleared in some cases when patching locked trees
(<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3647">#3647</a>)</li>
<li>Fix client hooks with dynamic IDs not being destroyed properly when
parts of the DOM are locked (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3651">#3651</a>)</li>
</ul>
<h3>Enhancements</h3>
<ul>
<li>Allow to configure if duplicate IDs / other detected errors should
warn or raise by passing <code>on_error</code> to
<code>Phoenix.LiveViewTest.live/3</code> /
<code>Phoenix.LiveViewTest.live_isolated/3</code> (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3653">#3653</a>)</li>
<li>Also detect duplicate LiveComponents that are added dynamically to
the page in LiveViewTest (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3653">#3653</a>)</li>
<li>Log an error in the JavaScript console when detecting a stream
container with missing <code>phx-update=&quot;stream&quot;</code>
attribute (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3645">#3645</a>)</li>
<li>Update documentation to mention <code>:fun</code> and <code>{:fun,
arity}</code> as valid attribute types for
<code>Phoenix.Component.attr/3</code> (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3635">#3635</a>)</li>
<li>Update documentation to mention ways for <a
href="https://hexdocs.pm/phoenix_live_view/1.0.3/Phoenix.Component.html#module-dynamic-component-rendering">dynamically
rendering function components</a> (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3632">#3632</a>)</li>
<li>Update documentation to mention <code>{:inner, selector}</code> and
<code>{:closest, selector}</code> as <a
href="https://hexdocs.pm/phoenix_live_view/1.0.3/Phoenix.LiveView.JS.html#module-dom-selectors">valid
options for <code>to</code></a> in JS commands (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3638">#3638</a>)</li>
</ul>
<h2>1.0.2 (2025-01-09)</h2>
<h3>Bug fixes</h3>
<ul>
<li>Fix inconsistency between <code>mix format</code> and <code>mix
format --check-formatted</code> with new curly interpolation syntax (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3590">#3590</a>)</li>
<li>Fix unnecessary compile time dependencies when using
<code>attr</code> / <code>on_mount</code> / <code>live</code> (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3592">#3592</a>)</li>
<li>Fix crash when testing LiveViews with embedded XML (e.g. SVGs) (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3594">#3594</a>)</li>
<li>Fix type warning when using <code>follow_redirect</code> (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3581">#3581</a>)</li>
<li>Prevent <code>phx-trigger-action</code> from clashing with locked
forms (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3591">#3591</a>)</li>
<li>Fix form recovery sending wrong event name when using JS commands in
<code>phx-change</code> (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3607">#3607</a>)</li>
</ul>
<h3>Enhancements</h3>
<ul>
<li>Deduplicate items on <code>stream/4</code> /
<code>steam_insert/4</code> (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3599">#3599</a>)</li>
<li>Restore scroll position on initial navigation (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3572">#3572</a>)</li>
<li>Change-track non existing keys in maps (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3584">#3584</a>)</li>
<li>Only warn instead of raising when detecting a duplicate ID in
LiveViewTest (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/pull/3603">#3603</a>)</li>
</ul>
<h2>1.0.1 (2024-12-13)</h2>
<h3>Bug fixes</h3>
<ul>
<li>Raise when duplicate DOM IDs are found when rendering a LiveView
during tests to avoid undefined behaviour</li>
<li>Fix live session verification causing logged errors, push_patch
failures, and failed mounts when a cold deploy occurs</li>
<li>Fix a bug where the <code>live_session</code>'s
<code>on_mount</code> hooks would be called for sticky live views on
connected mount. Now a <code>sticky</code> live view is consistently
marked as <code>:not_mounted_at_router</code></li>
</ul>
<h2>1.0.0 (2024-12-03) 🚀</h2>
<h2>1.0.0-rc.9 (2024-12-03)</h2>
<h3>Enhancements</h3>
<ul>
<li>Support <code>phx-no-curly-interpolation</code> to disable HEEx
curly interpolation in a specific tag body</li>
</ul>
<h2>1.0.0-rc.8 (2024-12-02)</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8ea6b487de"><code>8ea6b48</code></a>
Release 1.0.3</li>
<li><a
href="e419029347"><code>e419029</code></a>
mix format</li>
<li><a
href="df82b86f4b"><code>df82b86</code></a>
small refactor of on_error tests</li>
<li><a
href="f1b9d2b492"><code>f1b9d2b</code></a>
only raise by default in later release</li>
<li><a
href="aee1b64972"><code>aee1b64</code></a>
update tests to not use deprecated struct update syntax</li>
<li><a
href="7a69ff77ec"><code>7a69ff7</code></a>
update changelog</li>
<li><a
href="6ca0b8b655"><code>6ca0b8b</code></a>
Update assets</li>
<li><a
href="f100c75de3"><code>f100c75</code></a>
fail early when hook element is not owned by view (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3618">#3618</a>)</li>
<li><a
href="a414c2cdd9"><code>a414c2c</code></a>
Update assets</li>
<li><a
href="07e4340c30"><code>07e4340</code></a>
remove replaceRootHistory (<a
href="https://redirect.github.com/phoenixframework/phoenix_live_view/issues/3625">#3625</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/phoenixframework/phoenix_live_view/compare/v1.0.0-rc.6...v1.0.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=phoenix_live_view&package-manager=hex&previous-version=1.0.0-rc.6&new-version=1.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>
Co-authored-by: Jamil Bou Kheir <jamilbk@users.noreply.github.com>
2025-02-04 14:18:00 +00:00
Jamil
a44787cc13 chore(portal): Bump to Alpine 3.20.5 (#8010)
Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
2025-02-03 23:28:20 +00:00
Jamil
4ce1ddfd53 build(deps-dev): Bump esbuild cli to 0.24.2 (#8012) 2025-02-03 21:46:32 +00:00
Jamil
9838cd99c9 chore(portal): Bump erlang to 27.2.1 (#8008)
In preparation for upgrading to Elixir 1.18.
2025-02-03 21:46:00 +00:00
dependabot[bot]
e2392a35d8 build(deps): bump bandit from 1.5.7 to 1.6.7 in /elixir (#7981)
[//]: # (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 [bandit](https://github.com/mtrudel/bandit) from 1.5.7 to 1.6.7.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/mtrudel/bandit/blob/main/CHANGELOG.md">bandit's
changelog</a>.</em></p>
<blockquote>
<h2>1.6.7 (30 Jan 2025)</h2>
<h3>Changes</h3>
<ul>
<li>Consider timeouts when reading HTTP/1 headers as a connection error
and not an HTTP error</li>
<li>Enhance logging for WebSocket deflation errors</li>
</ul>
<h2>1.6.6 (25 Jan 2025)</h2>
<h3>Fixes</h3>
<ul>
<li>Consider closures during HTTP/1 header reading as a socket error to
silence them by default via <code>log_client_closures</code> config
flag</li>
<li>Send <code>connection: close</code> when closing connection on error
per RFC9112§9.6</li>
</ul>
<h3>Enhancements</h3>
<ul>
<li>Add experimental opt-in trace logging to help diagnose hard to
reproduce errors</li>
<li>Move CI to 1.18 &amp; improve tests (<a
href="https://redirect.github.com/mtrudel/bandit/issues/459">#459</a>,
<a
href="https://redirect.github.com/mtrudel/bandit/issues/461">#461</a>,
thanks <a
href="https://github.com/grzuy"><code>@​grzuy</code></a>!)</li>
</ul>
<h2>1.6.5 (15 Jan 2025)</h2>
<h3>Fixes</h3>
<ul>
<li>Fix regression introduced in 1.6.1 where we would not send headers
set by the Plug during WebSocket upgrades (<a
href="https://redirect.github.com/mtrudel/bandit/issues/458">#458</a>)</li>
</ul>
<h3>Enhancements</h3>
<ul>
<li>Properly normalize Erlang errors before emitting telemetry and
logged crash_reason (<a
href="https://redirect.github.com/mtrudel/bandit/issues/455">#455</a>,
thanks <a
href="https://github.com/grzuy"><code>@​grzuy</code></a>!)</li>
</ul>
<h2>1.6.4 (11 Jan 2025)</h2>
<h3>Fixes</h3>
<ul>
<li>Fix error in socket setup error handling introduced in 1.6.2 (thanks
<a
href="https://github.com/danielspofford"><code>@​danielspofford</code></a>!)</li>
</ul>
<h2>1.6.3 (8 Jan 2025)</h2>
<h3>Fixes</h3>
<ul>
<li>Always close HTTP/1 connection in any case where an error comes out
of the plug (<a
href="https://redirect.github.com/mtrudel/bandit/issues/452">#452</a>,
thanks <a
href="https://github.com/zookzook"><code>@​zookzook</code></a>!)</li>
<li>Fix dialyzer warning introduced by Thousand Island 1.3.9</li>
</ul>
<h2>1.6.2 (4 Jan 2025)</h2>
<h3>Enhancements</h3>
<ul>
<li>Send telemetry events on Plugs that throw or exit (<a
href="https://redirect.github.com/mtrudel/bandit/issues/443">#443</a>)</li>
<li>Improve test robustness &amp; speed (<a
href="https://redirect.github.com/mtrudel/bandit/issues/446">#446</a>)</li>
<li>Read a minimal number of bytes when sniffing for protocol (<a
href="https://redirect.github.com/mtrudel/bandit/issues/449">#449</a>)</li>
<li>Add <code>plug</code> and <code>websock</code> to logging metadata
whenever possible (<a
href="https://redirect.github.com/mtrudel/bandit/issues/448">#448</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5879549e6a"><code>5879549</code></a>
Version bump to 1.6.7</li>
<li><a
href="2f55abc702"><code>2f55abc</code></a>
Include details of websocket deflation error</li>
<li><a
href="8f257f1213"><code>8f257f1</code></a>
Consider HTTP/1 header read timeouts as connection errors</li>
<li><a
href="575c396d0b"><code>575c396</code></a>
Version bump to 1.6.6</li>
<li><a
href="137ff68657"><code>137ff68</code></a>
Fixup dialyzer warning under 1.18</li>
<li><a
href="9e6ba262e1"><code>9e6ba26</code></a>
Don't credo test files</li>
<li><a
href="f62faab84a"><code>f62faab</code></a>
Version bump CI to 1.18/27</li>
<li><a
href="a5fcb83590"><code>a5fcb83</code></a>
Minor typo</li>
<li><a
href="5adc828d8c"><code>5adc828</code></a>
Trace tooling (<a
href="https://redirect.github.com/mtrudel/bandit/issues/453">#453</a>)</li>
<li><a
href="bc0a4fdfed"><code>bc0a4fd</code></a>
Use an apply when inducing runtime crashes in order to fool the
increasingly ...</li>
<li>Additional commits viewable in <a
href="https://github.com/mtrudel/bandit/compare/1.5.7...1.6.7">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 17:14:30 +00:00
dependabot[bot]
4bb844bcb8 build(deps): bump tailwind from 0.2.3 to 0.2.4 in /elixir (#7980)
Bumps [tailwind](https://github.com/phoenixframework/tailwind) from
0.2.3 to 0.2.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/phoenixframework/tailwind/blob/main/CHANGELOG.md">tailwind's
changelog</a>.</em></p>
<blockquote>
<h2>v0.2.4 (2024-10-18)</h2>
<ul>
<li>Add version check flag</li>
<li>Fallback to ipv4/ipv6 for unreachable hosts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="194ab0f979"><code>194ab0f</code></a>
Release v0.2.4</li>
<li><a
href="bcc196ae31"><code>bcc196a</code></a>
Release v0.2.3</li>
<li><a
href="f13003fba9"><code>f13003f</code></a>
fallback to ipv4/ipv6 in the event of an unreachable host error (<a
href="https://redirect.github.com/phoenixframework/tailwind/issues/101">#101</a>)</li>
<li><a
href="f729dc3258"><code>f729dc3</code></a>
Add version check flag (<a
href="https://redirect.github.com/phoenixframework/tailwind/issues/100">#100</a>)</li>
<li><a
href="a4133dd2d5"><code>a4133dd</code></a>
Bump changelog</li>
<li><a
href="9b5ca917ba"><code>9b5ca91</code></a>
Fixup</li>
<li><a
href="271d19526e"><code>271d195</code></a>
Merge pull request <a
href="https://redirect.github.com/phoenixframework/tailwind/issues/98">#98</a>
from Gigitsu/hotfix/version-wiht-path</li>
<li><a
href="2b7417e628"><code>2b7417e</code></a>
Don't check version if path is present</li>
<li><a
href="e2d8d3b4db"><code>e2d8d3b</code></a>
Update main.yml</li>
<li><a
href="b8382fbd95"><code>b8382fb</code></a>
Update ExDoc</li>
<li>Additional commits viewable in <a
href="https://github.com/phoenixframework/tailwind/compare/v0.2.3...v0.2.4">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 17:00:09 +00:00
dependabot[bot]
56c2cbdd30 build(deps-dev): bump wallaby from 0.30.9 to 0.30.10 in /elixir (#7982)
Bumps [wallaby](https://github.com/elixir-wallaby/wallaby) from 0.30.9
to 0.30.10.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-wallaby/wallaby/releases">wallaby's
releases</a>.</em></p>
<blockquote>
<h2>v0.30.10</h2>
<h2>What's Changed</h2>
<ul>
<li>Only spawn a browser when using the <code>feature</code> macro, not
normal <code>test</code>s by <a
href="https://github.com/s3cur3"><code>@​s3cur3</code></a> in <a
href="https://redirect.github.com/elixir-wallaby/wallaby/pull/795">elixir-wallaby/wallaby#795</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/elixir-wallaby/wallaby/compare/v0.30.9...v0.30.10">https://github.com/elixir-wallaby/wallaby/compare/v0.30.9...v0.30.10</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-wallaby/wallaby/blob/main/CHANGELOG.md">wallaby's
changelog</a>.</em></p>
<blockquote>
<h2>v0.30.10</h2>
<ul>
<li>only automatically start sessions for <code>feature</code> test
macros and not every test in a file by <a
href="https://github.com/s3cur3"><code>@​s3cur3</code></a> in <a
href="https://redirect.github.com/elixir-wallaby/wallaby/pull/795">elixir-wallaby/wallaby#795</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="70c9e84357"><code>70c9e84</code></a>
chore: bump v0.30.10</li>
<li><a
href="337485e073"><code>337485e</code></a>
chore: update flake.lock</li>
<li><a
href="90c3ca5369"><code>90c3ca5</code></a>
chore: update tool versions</li>
<li><a
href="368cd84506"><code>368cd84</code></a>
docs: add chromedriver issue tracker to readme</li>
<li><a
href="79481d004a"><code>79481d0</code></a>
chore: add flake</li>
<li><a
href="4e87275400"><code>4e87275</code></a>
Only spawn a browser when using the <code>feature</code> macro, not
normal <code>test</code>s (<a
href="https://redirect.github.com/elixir-wallaby/wallaby/issues/795">#795</a>)</li>
<li>See full diff in <a
href="https://github.com/elixir-wallaby/wallaby/compare/v0.30.9...v0.30.10">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 16:42:21 +00:00
dependabot[bot]
31f80e6aec build(deps): bump ex_cldr_numbers from 2.33.3 to 2.33.5 in /elixir (#7984)
Bumps [ex_cldr_numbers](https://github.com/elixir-cldr/cldr_numbers)
from 2.33.3 to 2.33.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-cldr/cldr_numbers/releases">ex_cldr_numbers's
releases</a>.</em></p>
<blockquote>
<h2>Cldr Numbers version 2.33.5</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Fix formatting currencies when the CLDR regex for &quot;before
currency match&quot; is invalid in the Erlang regex engine. Thanks to <a
href="https://github.com/Terbium-135"><code>@​Terbium-135</code></a> for
the issue. Closes [ex_money issue <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/178">#178</a>](<a
href="https://redirect.github.com/kipcole9/money/issues/178">kipcole9/money#178</a>).</li>
</ul>
<h2>Cldr Numbers version 2.33.4</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Fixes unquoting invalid AST on the upcoming Elixir 1.18. Thanks very
much to <a
href="https://github.com/sabiwara"><code>@​sabiwara</code></a> for the
<a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/pull/52">PR</a>.
Thanks too to <a
href="https://github.com/SteffenDE"><code>@​SteffenDE</code></a> for the
report. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/53">#53</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-cldr/cldr_numbers/blob/main/CHANGELOG.md">ex_cldr_numbers's
changelog</a>.</em></p>
<blockquote>
<h2>Cldr Numbers v2.33.5</h2>
<p>This is the changelog for Cldr v2.33.5 released on January 26th,
2025. For older changelogs please consult the release tag on <a
href="https://github.com/elixir-cldr/cldr_numbers/tags">GitHub</a></p>
<h3>Bug Fixes</h3>
<ul>
<li>Fix formatting currencies when the CLDR regex for &quot;before
currency match&quot; is invalid in the Erlang regex engine. Thanks to <a
href="https://github.com/Terbium-135"><code>@​Terbium-135</code></a> for
the issue. Closes [ex_money issue <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/178">#178</a>](<a
href="https://redirect.github.com/kipcole9/money/issues/178">kipcole9/money#178</a>).</li>
</ul>
<h2>Cldr Numbers v2.33.4</h2>
<p>This is the changelog for Cldr v2.33.4 released on November 13th,
2024. For older changelogs please consult the release tag on <a
href="https://github.com/elixir-cldr/cldr_numbers/tags">GitHub</a></p>
<h3>Bug Fixes</h3>
<ul>
<li>Fixes unquoting invalid AST on the upcoming Elixir 1.18. Thanks very
much to <a
href="https://github.com/sabiwara"><code>@​sabiwara</code></a> for the
<a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/pull/52">PR</a>.
Thanks too to <a
href="https://github.com/SteffenDE"><code>@​SteffenDE</code></a> for the
report. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/53">#53</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f6522aed44"><code>f6522ae</code></a>
Fix deps to be all hex based</li>
<li><a
href="77f72cdd18"><code>77f72cd</code></a>
Fix formatting currency when invalid erl regex</li>
<li><a
href="0c7571330f"><code>0c75713</code></a>
Fix unquoting invalid AST. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/53">#53</a></li>
<li><a
href="2afd9955e1"><code>2afd995</code></a>
Merge pull request <a
href="https://redirect.github.com/elixir-cldr/cldr_numbers/issues/52">#52</a>
from sabiwara/fix-elixir1.18</li>
<li><a
href="fa8ad1354f"><code>fa8ad13</code></a>
Fix compile error in Elixir 1.18 due to unquoting invalid AST</li>
<li>See full diff in <a
href="https://github.com/elixir-cldr/cldr_numbers/compare/v2.33.3...v2.33.5">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 16:40:34 +00:00
dependabot[bot]
0a8730d797 build(deps): bump flowbite from 2.5.2 to 3.1.1 in /elixir/apps/web/assets (#7991)
Bumps [flowbite](https://github.com/themesberg/flowbite) from 2.5.2 to
3.1.1.
<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.1</h2>
<ul>
<li>fixed CSS variables markup in plugin</li>
</ul>
<h2>v3.1.0</h2>
<ul>
<li>use CSS variables instead of hex codes in plugin</li>
<li>remove setting dark mode via class strategy in plugin</li>
</ul>
<h2>v3.0.0</h2>
<ul>
<li>upgrade to Tailwind v4</li>
<li>refactor and adapt the Flowbite plugin and UI components to the new
deprecated changes from Tailwind v4</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4ba07d7173"><code>4ba07d7</code></a>
push fixed 3.1.1</li>
<li><a
href="284eb580e3"><code>284eb58</code></a>
fix(plugin): css variables</li>
<li><a
href="e8d4ec7ba7"><code>e8d4ec7</code></a>
docs(README): update</li>
<li><a
href="19c48c69d6"><code>19c48c6</code></a>
chore(3.1.0): upgrade to 3.1.0 release</li>
<li><a
href="89bba922ca"><code>89bba92</code></a>
docs(v4): fix typo</li>
<li><a
href="bf10fed156"><code>bf10fed</code></a>
docs(optimization): update optimization file</li>
<li><a
href="05b270938a"><code>05b2709</code></a>
docs(config): finish config page docs</li>
<li><a
href="6698d47ee2"><code>6698d47</code></a>
docs(configuration): add custom utilities docs</li>
<li><a
href="1a437a3b9c"><code>1a437a3</code></a>
docs(configuration): update config settings for Tailwind v4</li>
<li><a
href="672a8153fd"><code>672a815</code></a>
refactor(dark mode): set dark mode via CSS</li>
<li>Additional commits viewable in <a
href="https://github.com/themesberg/flowbite/compare/v2.5.2...v3.1.1">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 16:23:26 +00:00
Brian Manifold
ad9c8a28e5 docs(portal): Update google directory sync docs (#7965)
Add docs related to Google directory sync around why there is a need for
a Google Workspace super admin when setting up directory sync.

---------

Signed-off-by: Brian Manifold <bmanifold@users.noreply.github.com>
Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
2025-01-30 19:13:26 +00:00
dependabot[bot]
0ba326d4c3 build(deps-dev): bump credo from 1.7.7 to 1.7.11 in /elixir (#7925)
Bumps [credo](https://github.com/rrrene/credo) from 1.7.7 to 1.7.11.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rrrene/credo/releases">credo's
releases</a>.</em></p>
<blockquote>
<h2>v1.7.11</h2>
<p>Check it out on Hex: <a
href="https://hex.pm/packages/credo/1.7.11">https://hex.pm/packages/credo/1.7.11</a></p>
<ul>
<li>Fix compatibility &amp; compiler warnings with Elixir 1.18</li>
<li>Fix crashing for invalid strings in issue messages</li>
<li>Show required Elixir version for skipped checks</li>
<li>Add options <code>:exit_status</code> and <code>:category</code> to
<code>format_issue/2</code> when using <code>Credo.Check</code></li>
<li><code>Credo.Check.Readability.ModuleDoc</code> fixed false
positive</li>
<li><code>Credo.Check.Warning.UnusedEnumOperation</code> fixed false
positive</li>
<li><code>Credo.Check.Refactor.ABCSize</code> fixed false positive for
tuples and underscored matches (<code>_foo</code>)</li>
</ul>
<h2>v1.7.10</h2>
<p>Check it out on Hex: <a
href="https://hex.pm/packages/credo/1.7.10">https://hex.pm/packages/credo/1.7.10</a></p>
<ul>
<li>Maintenance release</li>
</ul>
<h2>v1.7.9</h2>
<p>Check it out on Hex: <a
href="https://hex.pm/packages/credo/1.7.9">https://hex.pm/packages/credo/1.7.9</a></p>
<ul>
<li><code>Credo.Check.Refactor.ABCSize</code> fixed false positive for
pin operator (<code>^</code>)</li>
<li><code>Credo.Check.Readability.FunctionNames</code> fixed false
positive for pow operator (<code>**</code>)</li>
<li>Fixed a bug in <code>Credo.Code.Parameters</code> when couting
parameters for functions with guards</li>
</ul>
<h2>v1.7.8</h2>
<p>Check it out on Hex: <a
href="https://hex.pm/packages/credo/1.7.8">https://hex.pm/packages/credo/1.7.8</a></p>
<ul>
<li><code>Credo.Check.Refactor.Apply</code> fixed false positive</li>
<li><code>Credo.Check.Warning.IoInspect</code> fixed false positive</li>
<li><code>Credo.Check.Warning.UnsafeToAtom</code> fixed false
positive</li>
<li><code>Credo.Check.Readability.FunctionNames</code> fixed false
positive</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rrrene/credo/blob/master/CHANGELOG.md">credo's
changelog</a>.</em></p>
<blockquote>
<h2>1.7.11</h2>
<ul>
<li>Fix compatibility &amp; compiler warnings with Elixir 1.18</li>
<li>Fix crashing for invalid strings in issue messages</li>
<li>Show required Elixir version for skipped checks</li>
<li>Add options <code>:exit_status</code> and <code>:category</code> to
<code>format_issue/2</code> when using <code>Credo.Check</code></li>
<li><code>Credo.Check.Readability.ModuleDoc</code> fixed false
positive</li>
<li><code>Credo.Check.Warning.UnusedEnumOperation</code> fixed false
positive</li>
<li><code>Credo.Check.Refactor.ABCSize</code> fixed false positive for
tuples and underscored matches (<code>_foo</code>)</li>
</ul>
<h2>1.7.10</h2>
<ul>
<li>Maintenance release</li>
</ul>
<h2>1.7.9</h2>
<ul>
<li><code>Credo.Check.Refactor.ABCSize</code> fixed false positive for
pin operator (<code>^</code>)</li>
<li><code>Credo.Check.Readability.FunctionNames</code> fixed false
positive for pow operator (<code>**</code>)</li>
<li>Fixed a bug in <code>Credo.Code.Parameters</code> when couting
parameters for functions with guards</li>
</ul>
<h2>1.7.8</h2>
<ul>
<li><code>Credo.Check.Refactor.Apply</code> fixed false positive</li>
<li><code>Credo.Check.Warning.IoInspect</code> fixed false positive</li>
<li><code>Credo.Check.Warning.UnsafeToAtom</code> fixed false
positive</li>
<li><code>Credo.Check.Readability.FunctionNames</code> fixed false
positive</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="965a59c0e7"><code>965a59c</code></a>
Bump version to 1.7.11</li>
<li><a
href="92a6814df9"><code>92a6814</code></a>
Update CHANGELOG</li>
<li><a
href="7482d13367"><code>7482d13</code></a>
Update GitHub actions</li>
<li><a
href="b02c29220d"><code>b02c292</code></a>
Update to Elixir 1.18.1</li>
<li><a
href="e69dc29f41"><code>e69dc29</code></a>
Merge pull request <a
href="https://redirect.github.com/rrrene/credo/issues/1166">#1166</a>
from Wigny/wigny/add-unusedvariablenames-checks</li>
<li><a
href="dd666fa331"><code>dd666fa</code></a>
Update GitHub actions</li>
<li><a
href="b8cdedc797"><code>b8cdedc</code></a>
Upgrade Elixir to 1.18 on CI etc.</li>
<li><a
href="1f5ae9e2dd"><code>1f5ae9e</code></a>
Merge pull request <a
href="https://redirect.github.com/rrrene/credo/issues/1165">#1165</a>
from rNoz/rnoz/check-format-issue-category</li>
<li><a
href="91350ade08"><code>91350ad</code></a>
Update deps for Elixir 1.18</li>
<li><a
href="327413252b"><code>3274132</code></a>
Check for invalid bytes in issue message</li>
<li>Additional commits viewable in <a
href="https://github.com/rrrene/credo/compare/v1.7.7...v1.7.11">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-29 18:26:23 +00:00
dependabot[bot]
0cb1278492 build(deps): bump observer_cli from 1.7.5 to 1.8.1 in /elixir (#7918)
Bumps [observer_cli](https://github.com/zhongwencool/observer_cli) from
1.7.5 to 1.8.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/zhongwencool/observer_cli/releases">observer_cli's
releases</a>.</em></p>
<blockquote>
<h2>1.8.1</h2>
<h2>What's Changed</h2>
<ul>
<li>chore: move xref from rebar.config to code attribute by <a
href="https://github.com/zhongwencool"><code>@​zhongwencool</code></a>
in <a
href="https://redirect.github.com/zhongwencool/observer_cli/pull/106">zhongwencool/observer_cli#106</a></li>
<li>feat: show node name in system pane by <a
href="https://github.com/zhongwencool"><code>@​zhongwencool</code></a>
in <a
href="https://redirect.github.com/zhongwencool/observer_cli/pull/107">zhongwencool/observer_cli#107</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/zhongwencool/observer_cli/compare/1.8.0...1.8.1">https://github.com/zhongwencool/observer_cli/compare/1.8.0...1.8.1</a></p>
<h2>Show process's label and node's dist_stats</h2>
<h2>New Feature:</h2>
<ul>
<li><strong>Process Label Display</strong>: Now shows the process's
label when set using proc_lib:set_label(Label).</li>
<li><strong>System View Update</strong>: Displays the number of bytes in
the output distribution queue, which sits between Erlang code and the
port driver, using the undocumented function
erlang:dist_get_stat/1.</li>
<li>Added support for <!-- raw HTML omitted --> to jump to a specific
process PID.</li>
</ul>
<h2>Bug Fix</h2>
<ul>
<li>Resolved an issue where the Doc View would not display when the OTP
version is 27.</li>
</ul>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0d33bc31ed"><code>0d33bc3</code></a>
feat: show node name in system pane</li>
<li><a
href="a5a35823f5"><code>a5a3582</code></a>
chore: move xref from rebar.config to code attribute</li>
<li><a
href="19b2011397"><code>19b2011</code></a>
bump to 1.8.0 (<a
href="https://redirect.github.com/zhongwencool/observer_cli/issues/105">#105</a>)</li>
<li><a
href="505b3acbaa"><code>505b3ac</code></a>
feat: display process label when otp 27 (<a
href="https://redirect.github.com/zhongwencool/observer_cli/issues/104">#104</a>)</li>
<li>See full diff in <a
href="https://github.com/zhongwencool/observer_cli/compare/1.7.5...1.8.1">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-29 16:04:39 +00:00
dependabot[bot]
f9876326d1 build(deps): bump ex_cldr from 2.40.1 to 2.40.2 in /elixir (#7940)
Bumps [ex_cldr](https://github.com/elixir-cldr/cldr) from 2.40.1 to
2.40.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-cldr/cldr/releases">ex_cldr's
releases</a>.</em></p>
<blockquote>
<h2>Cldr version 2.40.2</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Support (and automatically configure) Elixir 1.18's JSON module as a
<code>:json_library</code> in the global configuration. Thanks to <a
href="https://github.com/Neophen"><code>@​Neophen</code></a> for the
report. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr/issues/247">#247</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/elixir-cldr/cldr/blob/main/CHANGELOG.md">ex_cldr's
changelog</a>.</em></p>
<blockquote>
<h2>Cldr v2.40.2</h2>
<p>This is the changelog for Cldr v2.40.2 released on December 23rd,
2024. For older changelogs please consult the release tag on <a
href="https://github.com/elixir-cldr/cldr/tags">GitHub</a></p>
<h3>Bug Fixes</h3>
<ul>
<li>Support (and automatically configure) Elixir 1.18's JSON module as a
<code>:json_library</code> in the global configuration. Thanks to <a
href="https://github.com/Neophen"><code>@​Neophen</code></a> for the
report. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr/issues/247">#247</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a4699ef478"><code>a4699ef</code></a>
Support JSON.decode!/1 on Elixir 1.18. Closes <a
href="https://redirect.github.com/elixir-cldr/cldr/issues/147">#147</a></li>
<li><a
href="436c242d69"><code>436c242</code></a>
Merge pull request <a
href="https://redirect.github.com/elixir-cldr/cldr/issues/239">#239</a>
from WurmPeter/fix_cldr_version</li>
<li><a
href="2353141d22"><code>2353141</code></a>
Merge pull request <a
href="https://redirect.github.com/elixir-cldr/cldr/issues/240">#240</a>
from paynegreen/patch-1</li>
<li><a
href="9f0e9792bb"><code>9f0e979</code></a>
Fix changelog typo, add dev_helpers.ex</li>
<li><a
href="fabc4e24df"><code>fabc4e2</code></a>
Minor corrections in the README docs.</li>
<li><a
href="08cca8ed45"><code>08cca8e</code></a>
Bump version of cldr to 45 in README.md</li>
<li><a
href="29ba1d01ba"><code>29ba1d0</code></a>
Fix one more gettext dev backend config</li>
<li><a
href="976164893e"><code>9761648</code></a>
Use Gettext 0.26 and adjust test backends accordingly</li>
<li>See full diff in <a
href="https://github.com/elixir-cldr/cldr/compare/v2.40.1...v2.40.2">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-29 01:30:12 +00:00
dependabot[bot]
548661ffe1 build(deps): bump telemetry_metrics from 1.0.0 to 1.1.0 in /elixir (#7935)
Bumps
[telemetry_metrics](https://github.com/beam-telemetry/telemetry_metrics)
from 1.0.0 to 1.1.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/beam-telemetry/telemetry_metrics/blob/main/CHANGELOG.md">telemetry_metrics's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/beam-telemetry/telemetry_metrics/tree/v1.1.0">1.1.0</a></h2>
<h3>Changed</h3>
<p>Add support for measurements as second argument of keep/drop
callback.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="138d5322aa"><code>138d532</code></a>
Release v1.1.0</li>
<li><a
href="9e93f2e557"><code>9e93f2e</code></a>
Fix 'metadata' typo in moduledoc (<a
href="https://redirect.github.com/beam-telemetry/telemetry_metrics/issues/115">#115</a>)</li>
<li><a
href="f1fdb7c609"><code>f1fdb7c</code></a>
Fix typespec for <code>drop</code> option (<a
href="https://redirect.github.com/beam-telemetry/telemetry_metrics/issues/114">#114</a>)</li>
<li><a
href="b9675ffddb"><code>b9675ff</code></a>
CI housekeeping (<a
href="https://redirect.github.com/beam-telemetry/telemetry_metrics/issues/113">#113</a>)</li>
<li><a
href="7a21527c35"><code>7a21527</code></a>
Fix link, closes <a
href="https://redirect.github.com/beam-telemetry/telemetry_metrics/issues/112">#112</a></li>
<li><a
href="3fde830453"><code>3fde830</code></a>
Implement event filtering on measurements (<a
href="https://redirect.github.com/beam-telemetry/telemetry_metrics/issues/77">#77</a>)
(<a
href="https://redirect.github.com/beam-telemetry/telemetry_metrics/issues/111">#111</a>)</li>
<li><a
href="ab8616480c"><code>ab86164</code></a>
Console log measurement name with conversion fun name (<a
href="https://redirect.github.com/beam-telemetry/telemetry_metrics/issues/109">#109</a>)</li>
<li>See full diff in <a
href="https://github.com/beam-telemetry/telemetry_metrics/compare/v1.0.0...v1.1.0">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

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