Commit Graph

118 Commits

Author SHA1 Message Date
Alexa Amundson
750c540092 chore: bump redis from 5.0.1 to 7.3.0 (#192)
[//]: # (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 [redis](https://github.com/redis/redis-py) from 5.0.1 to 7.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/redis/redis-py/releases">redis's
releases</a>.</em></p>
<blockquote>
<h2>7.3.0</h2>
<h1>Changes</h1>
<p><strong>OpenTelemetry Native Metrics Support for asynchronous
clients</strong>
Added comprehensive OpenTelemetry metrics support for asynchronous
clients following the <a
href="https://opentelemetry.io/docs/specs/semconv/database/database-metrics/">OpenTelemetry
Database Client Semantic Conventions</a>.
Metric groups include:</p>
<ul>
<li>Command metrics: Operation duration with retry tracking</li>
<li>Connection basic: Connection count and creation time</li>
<li>Resiliency: Errors, handoffs, timeout relaxation</li>
<li>Connection advanced: Wait time and use time</li>
<li>Pubsub metrics: Published and received messages</li>
<li>Stream metrics: Processing duration and maintenance
notifications</li>
</ul>
<h2>🚀 New Features</h2>
<ul>
<li>Added OTel instrumentation and metrics export for async client (<a
href="https://redirect.github.com/redis/redis-py/issues/3977">#3977</a>)</li>
</ul>
<h2>🐛 Bug Fixes</h2>
<ul>
<li>[async] Adding access to cluster client's nodes_manager and
set_response_callback in ClusterPipeline objects (<a
href="https://redirect.github.com/redis/redis-py/issues/3989">#3989</a>)</li>
<li>fix(connection): Ensure we have an initialized protocol in
connection (<a
href="https://redirect.github.com/redis/redis-py/issues/3981">#3981</a>)</li>
</ul>
<h2>🧰 Maintenance</h2>
<ul>
<li>fix: use KeysT for blpop and brpop keys parameter type annotation
(<a
href="https://redirect.github.com/redis/redis-py/issues/3987">#3987</a>
<a
href="https://redirect.github.com/redis/redis-py/issues/3990">#3990</a>)</li>
<li>Bump actions/upload-artifact from 6 to 7 (<a
href="https://redirect.github.com/redis/redis-py/issues/3985">#3985</a>)</li>
<li>fix: replace 3 bare except clauses with except Exception (<a
href="https://redirect.github.com/redis/redis-py/issues/3980">#3980</a>)</li>
</ul>
<p>We'd like to thank all the contributors who worked on this release!
<a href="https://github.com/mitre88"><code>@​mitre88</code></a> <a
href="https://github.com/turanalmammadov"><code>@​turanalmammadov</code></a>
<a
href="https://github.com/haosenwang1018"><code>@​haosenwang1018</code></a>
<a href="https://github.com/Medno"><code>@​Medno</code></a> <a
href="https://github.com/vladvildanov"><code>@​vladvildanov</code></a>
<a
href="https://github.com/petyaslavova"><code>@​petyaslavova</code></a></p>
<h2>7.2.1</h2>
<h1>Changes</h1>
<h2>🐛 Bug Fixes</h2>
<ul>
<li>Handle connection attributes conditionally for metrics and set
connection data on exceptions in cluster error handling (<a
href="https://redirect.github.com/redis/redis-py/issues/3964">#3964</a>)</li>
</ul>
<h2>⚠️ Deprecations</h2>
<ul>
<li>Removed batch_size and consumer_name attributes from OTel metrics
(<a
href="https://redirect.github.com/redis/redis-py/issues/3978">#3978</a>)</li>
</ul>
<h2>🧰 Maintenance</h2>
<ul>
<li>Fixing error handling of connection buffer purging of closed
connections. Enabling troubleshooting logging for maintenance
notifications e2e tests. (<a
href="https://redirect.github.com/redis/redis-py/issues/3971">#3971</a>)</li>
<li>Fix protocol validation: replace finally with else and store parsed
int (<a
href="https://redirect.github.com/redis/redis-py/issues/3965">#3965</a>)</li>
<li>Return copies from _get_free/in_use_connections and fix async _mock
(<a
href="https://redirect.github.com/redis/redis-py/issues/3967">#3967</a>)</li>
<li>Add missing shard channel message types to async PubSub (<a
href="https://redirect.github.com/redis/redis-py/issues/3966">#3966</a>)</li>
<li>Fix issues with ClusterPipeline connection management (<a
href="https://redirect.github.com/redis/redis-py/issues/3804">#3804</a>)</li>
<li>fix(pubsub): avoid UnicodeDecodeError on reconnect with binary
channel names (<a
href="https://redirect.github.com/redis/redis-py/issues/3944">#3944</a>)</li>
<li>Hold references to ClusterNode disconnect task (<a
href="https://redirect.github.com/redis/redis-py/issues/3826">#3826</a>)</li>
<li>remove remaining imports of typing_extensions (<a
href="https://redirect.github.com/redis/redis-py/issues/3873">#3873</a>)</li>
</ul>
<p>We'd like to thank all the contributors who worked on this release!
<a href="https://github.com/dotlambda"><code>@​dotlambda</code></a> <a
href="https://github.com/rhoboro"><code>@​rhoboro</code></a> <a
href="https://github.com/skylarkoo7"><code>@​skylarkoo7</code></a> <a
href="https://github.com/praboud"><code>@​praboud</code></a> <a
href="https://github.com/bysiber"><code>@​bysiber</code></a> <a
href="https://github.com/vladvildanov"><code>@​vladvildanov</code></a>
<a
href="https://github.com/petyaslavova"><code>@​petyaslavova</code></a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8ecbc7a728"><code>8ecbc7a</code></a>
Updating lib version to 7.3.0</li>
<li><a
href="11043df86e"><code>11043df</code></a>
typing: accept single-key input for blpop and brpop (<a
href="https://redirect.github.com/redis/redis-py/issues/3990">#3990</a>)</li>
<li><a
href="d958125020"><code>d958125</code></a>
fix: use KeysT for blpop and brpop keys parameter type annotation (<a
href="https://redirect.github.com/redis/redis-py/issues/3987">#3987</a>)</li>
<li><a
href="75bf91b8a2"><code>75bf91b</code></a>
[async] Adding access to cluster client's nodes_manager and
set_response_call...</li>
<li><a
href="abf5bcb2de"><code>abf5bcb</code></a>
Bump actions/upload-artifact from 6 to 7 (<a
href="https://redirect.github.com/redis/redis-py/issues/3985">#3985</a>)</li>
<li><a
href="5b0303bf90"><code>5b0303b</code></a>
fix: replace 3 bare except clauses with except Exception (<a
href="https://redirect.github.com/redis/redis-py/issues/3980">#3980</a>)</li>
<li><a
href="e9fba8689f"><code>e9fba86</code></a>
Added OTel instrumentation and metrics export for async client (<a
href="https://redirect.github.com/redis/redis-py/issues/3977">#3977</a>)</li>
<li><a
href="7ce513d262"><code>7ce513d</code></a>
fix(connection): Ensure we have an initialized protocol in connection
(<a
href="https://redirect.github.com/redis/redis-py/issues/3981">#3981</a>)</li>
<li><a
href="8e3a5b2f10"><code>8e3a5b2</code></a>
remove remaining imports of typing_extensions (<a
href="https://redirect.github.com/redis/redis-py/issues/3873">#3873</a>)</li>
<li><a
href="5b46430e23"><code>5b46430</code></a>
Hold references to ClusterNode disconnect task (<a
href="https://redirect.github.com/redis/redis-py/issues/3826">#3826</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/redis/redis-py/compare/v5.0.1...v7.3.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=redis&package-manager=pip&previous-version=5.0.1&new-version=7.3.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 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>
2026-03-15 20:28:09 -05:00
Alexa Amundson
a5266fb72a chore: bump pydantic-settings from 2.1.0 to 2.13.1 (#193)
[//]: # (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 [pydantic-settings](https://github.com/pydantic/pydantic-settings)
from 2.1.0 to 2.13.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pydantic/pydantic-settings/releases">pydantic-settings's
releases</a>.</em></p>
<blockquote>
<h2>v2.13.0</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: Deterministic alias selection when using validate_by_name by <a
href="https://github.com/chbndrhnns"><code>@​chbndrhnns</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/707">pydantic/pydantic-settings#707</a></li>
<li>add deep merge functionality to config file sources by <a
href="https://github.com/pmeier"><code>@​pmeier</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/698">pydantic/pydantic-settings#698</a></li>
<li>Add support for AWS Secrets Manager VersionId parameter by <a
href="https://github.com/jcyamacho"><code>@​jcyamacho</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/708">pydantic/pydantic-settings#708</a></li>
<li>bugfix: Return <code>None</code> for inaccessible GCP Secret Manager
secrets by <a
href="https://github.com/zaphod72"><code>@​zaphod72</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/712">pydantic/pydantic-settings#712</a></li>
<li>Bugfix for cli_kebab_case=&quot;all&quot; and CliImplicitFlag[bool]
by <a href="https://github.com/Digity101"><code>@​Digity101</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/702">pydantic/pydantic-settings#702</a></li>
<li>Unpack type alisases when looking for <code>NoDecode</code> by <a
href="https://github.com/tselepakis"><code>@​tselepakis</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/695">pydantic/pydantic-settings#695</a></li>
<li>CliToggleFlag and CliDualFlag by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/717">pydantic/pydantic-settings#717</a></li>
<li>Fix for CLI duplicate enum field values. by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/722">pydantic/pydantic-settings#722</a></li>
<li>fixed load nested config from env by <a
href="https://github.com/Sube-py"><code>@​Sube-py</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/723">pydantic/pydantic-settings#723</a></li>
<li>Add non-Path files support (for example Traversable) and open files
using Path.open method by <a
href="https://github.com/mahenzon"><code>@​mahenzon</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/724">pydantic/pydantic-settings#724</a></li>
<li>add one more traversable test by <a
href="https://github.com/mahenzon"><code>@​mahenzon</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/725">pydantic/pydantic-settings#725</a></li>
<li>CLI fix fox external list args. by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/727">pydantic/pydantic-settings#727</a></li>
<li>fix: handle case-insensitive retrieval in
GoogleSecretManagerSettingsSource by <a
href="https://github.com/ezwiefel"><code>@​ezwiefel</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/730">pydantic/pydantic-settings#730</a></li>
<li>CLI test fixes for help text formatting. by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/735">pydantic/pydantic-settings#735</a></li>
<li>Avoid conflicts with the <code>NAME</code> environment variable in
WSL by <a href="https://github.com/kzrnm"><code>@​kzrnm</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/747">pydantic/pydantic-settings#747</a></li>
<li>fix: When restoring init kwargs, use deterministic order by <a
href="https://github.com/chbndrhnns"><code>@​chbndrhnns</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/746">pydantic/pydantic-settings#746</a></li>
<li>Add env_prefix_target by <a
href="https://github.com/kzrnm"><code>@​kzrnm</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/749">pydantic/pydantic-settings#749</a></li>
<li>Remove <code>(default: …)</code> in the help message for
<code>CliToggleFlag</code> by <a
href="https://github.com/kzrnm"><code>@​kzrnm</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/740">pydantic/pydantic-settings#740</a></li>
<li>Add support for CLI serialize styles. by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/755">pydantic/pydantic-settings#755</a></li>
<li>Add support for overriding default help on CLI internal parser. by
<a href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/758">pydantic/pydantic-settings#758</a></li>
<li>CLI format_help method support by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/759">pydantic/pydantic-settings#759</a></li>
<li>feat(gcp): support SecretVersion annotation for per-field secret
versioning by <a
href="https://github.com/ezwiefel"><code>@​ezwiefel</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/763">pydantic/pydantic-settings#763</a></li>
<li>Allow <code>snake_case_conversion</code> with
<code>env_prefix</code> for Azure Key Vault source by <a
href="https://github.com/cstarkers"><code>@​cstarkers</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/762">pydantic/pydantic-settings#762</a></li>
<li>fix: Only override preferred_key when no value was found by <a
href="https://github.com/chbndrhnns"><code>@​chbndrhnns</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/767">pydantic/pydantic-settings#767</a></li>
<li>Update deps by <a
href="https://github.com/hramezani"><code>@​hramezani</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/768">pydantic/pydantic-settings#768</a></li>
<li>CLI coerce numeric types. by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/769">pydantic/pydantic-settings#769</a></li>
<li>CLI Union Discriminator Choices in Help by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/764">pydantic/pydantic-settings#764</a></li>
<li>Add nested path support for yaml_config_section (fixes <a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/772">#772</a>)
by <a
href="https://github.com/hugo-romero-mm"><code>@​hugo-romero-mm</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/773">pydantic/pydantic-settings#773</a></li>
<li>Prepare release 2.13.0 by <a
href="https://github.com/hramezani"><code>@​hramezani</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/777">pydantic/pydantic-settings#777</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/pmeier"><code>@​pmeier</code></a> made
their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/698">pydantic/pydantic-settings#698</a></li>
<li><a href="https://github.com/jcyamacho"><code>@​jcyamacho</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/708">pydantic/pydantic-settings#708</a></li>
<li><a href="https://github.com/zaphod72"><code>@​zaphod72</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/712">pydantic/pydantic-settings#712</a></li>
<li><a href="https://github.com/Digity101"><code>@​Digity101</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/702">pydantic/pydantic-settings#702</a></li>
<li><a href="https://github.com/Sube-py"><code>@​Sube-py</code></a> made
their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/723">pydantic/pydantic-settings#723</a></li>
<li><a href="https://github.com/mahenzon"><code>@​mahenzon</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/724">pydantic/pydantic-settings#724</a></li>
<li><a href="https://github.com/kzrnm"><code>@​kzrnm</code></a> made
their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/747">pydantic/pydantic-settings#747</a></li>
<li><a href="https://github.com/cstarkers"><code>@​cstarkers</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/762">pydantic/pydantic-settings#762</a></li>
<li><a
href="https://github.com/hugo-romero-mm"><code>@​hugo-romero-mm</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/773">pydantic/pydantic-settings#773</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/pydantic/pydantic-settings/compare/v2.12.0...v2.13.0">https://github.com/pydantic/pydantic-settings/compare/v2.12.0...v2.13.0</a></p>
<h2>v2.12.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Support for enum kebab case. by <a
href="https://github.com/kschwab"><code>@​kschwab</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/686">pydantic/pydantic-settings#686</a></li>
<li>Apply source order: init &gt; env &gt; dotenv &gt; secrets &gt;
defaults and pres… by <a
href="https://github.com/chbndrhnns"><code>@​chbndrhnns</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/688">pydantic/pydantic-settings#688</a></li>
<li>Add NestedSecretsSettings source by <a
href="https://github.com/makukha"><code>@​makukha</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic-settings/pull/690">pydantic/pydantic-settings#690</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e87d12df0f"><code>e87d12d</code></a>
v2.13.1 (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/790">#790</a>)</li>
<li><a
href="acf8c14f5e"><code>acf8c14</code></a>
Fix JSON decoding for parameterized PEP 695 type aliases (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/780">#780</a>)</li>
<li><a
href="58b236a364"><code>58b236a</code></a>
Fix AttributeError with nested env vars for dict fields (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/785">#785</a>)
(<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/786">#786</a>)</li>
<li><a
href="4933f06402"><code>4933f06</code></a>
Fix CLI parsing error for set field types since 2.13.0 (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/787">#787</a>)
(<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/788">#788</a>)</li>
<li><a
href="bd0ebe6215"><code>bd0ebe6</code></a>
Fix RecursionError with self-referential models in CliApp (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/783">#783</a>)</li>
<li><a
href="eb7840e9f5"><code>eb7840e</code></a>
Fix regression for bool fields since 2.13.0 (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/784">#784</a>)</li>
<li><a
href="198e71cf0c"><code>198e71c</code></a>
Prepare release 2.13.0 (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/777">#777</a>)</li>
<li><a
href="de71e84057"><code>de71e84</code></a>
Add nested path support for yaml_config_section (fixes <a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/772">#772</a>)
(<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/773">#773</a>)</li>
<li><a
href="0f8f951b89"><code>0f8f951</code></a>
CLI Union Discriminator Choices in Help (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/764">#764</a>)</li>
<li><a
href="ce9804c462"><code>ce9804c</code></a>
CLI coerce numeric types. (<a
href="https://redirect.github.com/pydantic/pydantic-settings/issues/769">#769</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pydantic/pydantic-settings/compare/v2.1.0...v2.13.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pydantic-settings&package-manager=pip&previous-version=2.1.0&new-version=2.13.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 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>
2026-03-15 20:28:07 -05:00
Alexa Amundson
969adac141 chore: bump alembic from 1.12.1 to 1.18.4 (#197)
Bumps [alembic](https://github.com/sqlalchemy/alembic) from 1.12.1 to
1.18.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sqlalchemy/alembic/releases">alembic's
releases</a>.</em></p>
<blockquote>
<h1>1.18.4</h1>
<p>Released: February 10, 2026</p>
<h2>bug</h2>
<ul>
<li>
<p><strong>[bug] [operations]</strong> Reverted the behavior of
<code>Operations.add_column()</code> that would
automatically render the &quot;PRIMARY KEY&quot; keyword inline when a
<code>Column</code> with <code>primary_key=True</code> is added. The
automatic
behavior, added in version 1.18.2, is now opt-in via the new
<code>Operations.add_column.inline_primary_key</code> parameter. This
change restores the ability to render a PostgreSQL SERIAL column, which
is
required to be <code>primary_key=True</code>, while not impacting the
ability to
render a separate primary key constraint. This also provides consistency
with the <code>Operations.add_column.inline_references</code> parameter
and
gives users explicit control over SQL generation.</p>
<p>To render PRIMARY KEY inline, use the
<code>Operations.add_column.inline_primary_key</code> parameter set to
<code>True</code>:</p>
<p>op.add_column(
&quot;my_table&quot;,
Column(&quot;id&quot;, Integer, primary_key=True),
inline_primary_key=True
)References: <a
href="https://redirect.github.com/sqlalchemy/alembic/issues/1232">#1232</a></p>
</li>
</ul>
<h1>1.18.3</h1>
<p>Released: January 29, 2026</p>
<h2>bug</h2>
<ul>
<li>
<p><strong>[bug] [autogenerate]</strong> Fixed regression in version
1.18.0 due to <a
href="https://redirect.github.com/sqlalchemy/alembic/issues/1771">#1771</a>
where autogenerate
would raise <code>NoReferencedTableError</code> when a foreign key
constraint
referenced a table that was not part of the initial table load,
including
tables filtered out by the
<code>EnvironmentContext.configure.include_name</code> callable or
tables
in remote schemas that were not included in the initial reflection
run.</p>
<p>The change in <a
href="https://redirect.github.com/sqlalchemy/alembic/issues/1771">#1771</a>
was a performance optimization that eliminated
additional reflection queries for tables that were only referenced by
foreign keys but not explicitly included in the main reflection run.
However, this optimization inadvertently removed the creation of
<code>Table</code> objects for these referenced tables, causing
autogenerate
to fail when processing foreign key constraints that pointed to
them.</p>
<p>The fix creates placeholder <code>Table</code> objects for foreign
key targets</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/sqlalchemy/alembic/commits">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=alembic&package-manager=pip&previous-version=1.12.1&new-version=1.18.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 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>
2026-03-15 20:28:00 -05:00
Alexa Amundson
c519a53adb chore: bump botocore from 1.35.99 to 1.42.66 (#199)
Bumps [botocore](https://github.com/boto/botocore) from 1.35.99 to
1.42.66.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="537c33eaa6"><code>537c33e</code></a>
Merge branch 'release-1.42.66'</li>
<li><a
href="c640bbbedc"><code>c640bbb</code></a>
Bumping version to 1.42.66</li>
<li><a
href="8e7a97f138"><code>8e7a97f</code></a>
Update endpoints model</li>
<li><a
href="8eba3d800b"><code>8eba3d8</code></a>
Update to latest models</li>
<li><a
href="685dba3e59"><code>685dba3</code></a>
Update documentation.yml (<a
href="https://redirect.github.com/boto/botocore/issues/3638">#3638</a>)</li>
<li><a
href="9ed5c2f873"><code>9ed5c2f</code></a>
Merge branch 'release-1.42.65'</li>
<li><a
href="028c88334d"><code>028c883</code></a>
Merge branch 'release-1.42.65' into develop</li>
<li><a
href="df66c0c632"><code>df66c0c</code></a>
Bumping version to 1.42.65</li>
<li><a
href="51583f17b5"><code>51583f1</code></a>
Update to latest models</li>
<li><a
href="af281813f1"><code>af28181</code></a>
Add logic to skip invalid checksum feature id (<a
href="https://redirect.github.com/boto/botocore/issues/3639">#3639</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/boto/botocore/compare/1.35.99...1.42.66">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=botocore&package-manager=pip&previous-version=1.35.99&new-version=1.42.66)](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 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>
2026-03-15 20:27:56 -05:00
Alexa Amundson
175f422058 chore: bump aiosqlite from 0.19.0 to 0.22.1 (#200)
Bumps [aiosqlite](https://github.com/omnilib/aiosqlite) from 0.19.0 to
0.22.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/omnilib/aiosqlite/blob/main/CHANGELOG.md">aiosqlite's
changelog</a>.</em></p>
<blockquote>
<h2>v0.22.1</h2>
<p>Bug fix release</p>
<p>NOTE: Starting with <code>v0.22.0</code>, the
<code>aiosqlite.Connection</code> object no longer
inherits from <code>threading.Thread</code>. If not using aiosqlite as a
context manager,
clients must <code>await connection.close()</code> or call
<code>connection.stop()</code> to ensure
the helper thread is completed and terminated correctly. A
<code>ResourceWarning</code>
will be emitted for any connection that is garbage collected without
being
closed or stopped.</p>
<ul>
<li>Added synchronous <code>stop()</code> method to
<code>aiosqlite.Connection</code> to enable safe
cleanup and termination of the background thread without dependence
on having an active event loop (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/370">#370</a>)</li>
</ul>
<pre lang="text"><code>$ git shortlog -s v0.22.0...v0.22.1
     2	Amethyst Reese
</code></pre>
<h2>v0.22.0</h2>
<p>Feature release</p>
<ul>
<li>Support <code>set_authorizer</code> query access controls (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/349">#349</a>)</li>
<li>Wait for transaction queue to complete when closing connection (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/305">#305</a>)</li>
<li>Emit warning when connection goes out of scope without being closed
(<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/355">#355</a>)</li>
<li>Remove dependency on <code>typing_extensions</code> (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/365">#365</a>)</li>
</ul>
<pre lang="text"><code>$ git shortlog -s v0.21.0...v0.22.0
     1	Alec Berryman
     1	Amethyst Reese
     1	David Andreoletti
     1	Markus Heidelberg
     1	beerpsi
    19	dependabot[bot]
</code></pre>
<h2>v0.21.0</h2>
<p>Maintenance release</p>
<ul>
<li>Fix: close connection correctly when BaseException raised in
connection (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/317">#317</a>)</li>
<li>Metadata improvements</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9b127cecc7"><code>9b127ce</code></a>
Version bump v0.22.1</li>
<li><a
href="5c3f61c1ea"><code>5c3f61c</code></a>
Improve stop semantics for connections (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/370">#370</a>)</li>
<li><a
href="a869d73678"><code>a869d73</code></a>
Version bump v0.22.0</li>
<li><a
href="1cd60adcab"><code>1cd60ad</code></a>
Emit warning if connection is deleted before it is closed (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/355">#355</a>)</li>
<li><a
href="611d7b4f29"><code>611d7b4</code></a>
Add set_authorizer support for fine-grained access control (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/349">#349</a>)</li>
<li><a
href="81d00c8f16"><code>81d00c8</code></a>
Bump actions/setup-python from 5 to 6 (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/357">#357</a>)</li>
<li><a
href="7a26722f7e"><code>7a26722</code></a>
Bump coverage[toml] from 7.8.0 to 7.10.7 (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/358">#358</a>)</li>
<li><a
href="445754087e"><code>4457540</code></a>
Bump flake8 from 7.2.0 to 7.3.0 (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/346">#346</a>)</li>
<li><a
href="b650dad318"><code>b650dad</code></a>
Bump actions/checkout from 5 to 6 (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/366">#366</a>)</li>
<li><a
href="065ffdd129"><code>065ffdd</code></a>
Bump mypy from 1.15.0 to 1.19.0 (<a
href="https://redirect.github.com/omnilib/aiosqlite/issues/367">#367</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/omnilib/aiosqlite/compare/v0.19.0...v0.22.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aiosqlite&package-manager=pip&previous-version=0.19.0&new-version=0.22.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 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>
2026-03-15 20:27:54 -05:00
Alexa Amundson
099b06aa0d chore: bump python-jose[cryptography] from 3.3.0 to 3.5.0 (#201)
Bumps
[python-jose[cryptography]](https://github.com/mpdavis/python-jose) from
3.3.0 to 3.5.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/mpdavis/python-jose/releases">python-jose[cryptography]'s
releases</a>.</em></p>
<blockquote>
<h2>3.5.0</h2>
<ul>
<li>Remove support for Python 3.8</li>
<li>Added support for Python 3.12 &amp; 3.13</li>
<li>Upgrade to pyasn1 0.5.1+</li>
<li>Upgrade to pytest and other dependencies</li>
<li>Add RTD config file to silence emailed deprecation warnings</li>
</ul>
<h3>Bug fixes and Improvements</h3>
<ul>
<li>Remove get_random_bytes from cryptography backend</li>
<li>Do not use <code>utc_now</code> on module level</li>
<li>Remove key data (sensitive information) from JWKError
exceptions</li>
<li>Added possibility to call jwk.construct() with a private RSA
key</li>
</ul>
<p><a
href="https://pypi.org/project/python-jose/3.5.0/">https://pypi.org/project/python-jose/3.5.0/</a></p>
<h2>3.4.0</h2>
<h3>News</h3>
<ul>
<li>Remove support for Python 3.6 and 3.7</li>
<li>Added support for Python 3.10 and 3.11</li>
</ul>
<h3>Bug fixes and Improvements</h3>
<ul>
<li>Updating <code>CryptographyAESKey::encrypt</code> to generate 96 bit
IVs for GCM block
cipher mode</li>
<li>Fix for PEM key comparisons caused by line lengths and new
lines</li>
<li>Fix for CVE-2024-33664 - JWE limited to 250KiB</li>
<li>Fix for CVE-2024-33663 - signing JWT with public key is now
forbidden</li>
<li>Replace usage of deprecated datetime.utcnow() with
datetime.now(UTC)</li>
</ul>
<h3>Housekeeping</h3>
<ul>
<li>Updated Github Actions Workflows</li>
<li>Updated to use tox 4.x</li>
<li>Revise codecov integration</li>
<li>Fixed DeprecationWarnings</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/mpdavis/python-jose/blob/master/CHANGELOG.md">python-jose[cryptography]'s
changelog</a>.</em></p>
<blockquote>
<h2>3.5.0 -- 2025-05-28</h2>
<h3>News</h3>
<ul>
<li>Remove support for Python 3.8</li>
<li>Added support for Python 3.12 &amp; 3.13</li>
<li>Upgrade to pyasn1 0.5.1+</li>
<li>Upgrade to pytest and other dependencies</li>
<li>Add RTD config file to silence emailed deprecation warnings</li>
</ul>
<h3>Bug fixes and Improvements</h3>
<ul>
<li>Remove get_random_bytes from cryptography backend</li>
<li>Do not use <code>utc_now</code> on module level</li>
<li>Remove key data (sensitive information) from JWKError
exceptions</li>
<li>Added possibility to call jwk.construct() with a private RSA
key</li>
</ul>
<h2>3.4.0 -- 2025-02-14</h2>
<h3>News</h3>
<ul>
<li>Remove support for Python 3.6 and 3.7</li>
<li>Added support for Python 3.10 and 3.11</li>
</ul>
<h3>Bug fixes and Improvements</h3>
<ul>
<li>Updating <code>CryptographyAESKey::encrypt</code> to generate 96 bit
IVs for GCM block
cipher mode</li>
<li>Fix for PEM key comparisons caused by line lengths and new
lines</li>
<li>Fix for CVE-2024-33664 - JWE limited to 250KiB</li>
<li>Fix for CVE-2024-33663 - signing JWT with public key is now
forbidden</li>
<li>Replace usage of deprecated datetime.utcnow() with
datetime.now(UTC)</li>
</ul>
<h3>Housekeeping</h3>
<ul>
<li>Updated Github Actions Workflows</li>
<li>Updated to use tox 4.x</li>
<li>Revise codecov integration</li>
<li>Fixed DeprecationWarnings</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="018b310ddb"><code>018b310</code></a>
Prepare release 3.5.0 (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/388">#388</a>)</li>
<li><a
href="393c37476c"><code>393c374</code></a>
Improve jwt.decode key doc (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/198">#198</a>)</li>
<li><a
href="50d43908ff"><code>50d4390</code></a>
utils.py: fix types in docstrings for base64url_encode/decode (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/269">#269</a>)</li>
<li><a
href="8fd0b63186"><code>8fd0b63</code></a>
Add RTD config file to silence emailed deprecation warnings (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/333">#333</a>)</li>
<li><a
href="6f03385e53"><code>6f03385</code></a>
Added possibility to call jwk.construct() with a private key (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/295">#295</a>)</li>
<li><a
href="2f0aca6e2e"><code>2f0aca6</code></a>
Add python_requires arg to setup.cfg (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/273">#273</a>)</li>
<li><a
href="895777e04a"><code>895777e</code></a>
Updated pyasn version to match latest (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/338">#338</a>)</li>
<li><a
href="45bd1248f1"><code>45bd124</code></a>
Update jwk.py (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/328">#328</a>)</li>
<li><a
href="1f0ae0a208"><code>1f0ae0a</code></a>
docs: Fix a few typos (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/299">#299</a>)</li>
<li><a
href="ceaac3665d"><code>ceaac36</code></a>
Do not use <code>utc_now</code> on module level (<a
href="https://redirect.github.com/mpdavis/python-jose/issues/372">#372</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/mpdavis/python-jose/compare/3.3.0...3.5.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=python-jose[cryptography]&package-manager=pip&previous-version=3.3.0&new-version=3.5.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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

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

---

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

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot 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>
2026-03-15 20:27:52 -05:00
Alexa Amundson
761bd19474 chore: bump pytest from 7.4.3 to 9.0.2 (#202)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.3 to
9.0.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest/releases">pytest's
releases</a>.</em></p>
<blockquote>
<h2>9.0.2</h2>
<h1>pytest 9.0.2 (2025-12-06)</h1>
<h2>Bug fixes</h2>
<ul>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13896">#13896</a>:
The terminal progress feature added in pytest 9.0.0 has been disabled by
default, except on Windows, due to compatibility issues with some
terminal emulators.</p>
<p>You may enable it again by passing <code>-p terminalprogress</code>.
We may enable it by default again once compatibility improves in the
future.</p>
<p>Additionally, when the environment variable <code>TERM</code> is
<code>dumb</code>, the escape codes are no longer emitted, even if the
plugin is enabled.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13904">#13904</a>:
Fixed the TOML type of the <code>tmp_path_retention_count</code>
settings in the API reference from number to string.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13946">#13946</a>:
The private <code>config.inicfg</code> attribute was changed in a
breaking manner in pytest 9.0.0.
Due to its usage in the ecosystem, it is now restored to working order
using a compatibility shim.
It will be deprecated in pytest 9.1 and removed in pytest 10.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13965">#13965</a>:
Fixed quadratic-time behavior when handling <code>unittest</code>
subtests in Python 3.10.</p>
</li>
</ul>
<h2>Improved documentation</h2>
<ul>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/4492">#4492</a>:
The API Reference now contains cross-reference-able documentation of
<code>pytest's command-line flags
&lt;command-line-flags&gt;</code>.</li>
</ul>
<h2>9.0.1</h2>
<h1>pytest 9.0.1 (2025-11-12)</h1>
<h2>Bug fixes</h2>
<ul>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13895">#13895</a>:
Restore support for skipping tests via <code>raise
unittest.SkipTest</code>.</li>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13896">#13896</a>:
The terminal progress plugin added in pytest 9.0 is now automatically
disabled when iTerm2 is detected, it generated desktop notifications
instead of the desired functionality.</li>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13904">#13904</a>:
Fixed the TOML type of the verbosity settings in the API reference from
number to string.</li>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13910">#13910</a>:
Fixed <!-- raw HTML omitted -->UserWarning: Do not expect
file_or_dir<!-- raw HTML omitted --> on some earlier Python 3.12 and
3.13 point versions.</li>
</ul>
<h2>Packaging updates and notes for downstreams</h2>
<ul>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13933">#13933</a>:
The tox configuration has been adjusted to make sure the desired
version string can be passed into its <code>package_env</code> through
the <code>SETUPTOOLS_SCM_PRETEND_VERSION_FOR_PYTEST</code> environment
variable as a part of the release process -- by
<code>webknjaz</code>.</li>
</ul>
<h2>Contributor-facing changes</h2>
<ul>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13891">#13891</a>,
<a
href="https://redirect.github.com/pytest-dev/pytest/issues/13942">#13942</a>:
The CI/CD part of the release automation is now capable of
creating GitHub Releases without having a Git checkout on
disk -- by <code>bluetech</code> and <code>webknjaz</code>.</li>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/13933">#13933</a>:
The tox configuration has been adjusted to make sure the desired
version string can be passed into its <code>package_env</code> through
the <code>SETUPTOOLS_SCM_PRETEND_VERSION_FOR_PYTEST</code> environment
variable as a part of the release process -- by
<code>webknjaz</code>.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3d10b5148e"><code>3d10b51</code></a>
Prepare release version 9.0.2</li>
<li><a
href="188750b725"><code>188750b</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/14030">#14030</a>
from pytest-dev/patchback/backports/9.0.x/1e4b01d1f...</li>
<li><a
href="b7d7bef90c"><code>b7d7bef</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/14014">#14014</a>
from bluetech/compat-note</li>
<li><a
href="bd08e85ac7"><code>bd08e85</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/14013">#14013</a>
from pytest-dev/patchback/backports/9.0.x/922b60377...</li>
<li><a
href="bc78386299"><code>bc78386</code></a>
Add CLI options reference documentation (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/13930">#13930</a>)</li>
<li><a
href="5a4e398ce8"><code>5a4e398</code></a>
Fix docs typo (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/14005">#14005</a>)
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/14008">#14008</a>)</li>
<li><a
href="d7ae6df394"><code>d7ae6df</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/14006">#14006</a>
from pytest-dev/maintenance/update-plugin-list-tmpl...</li>
<li><a
href="556f6a22e1"><code>556f6a2</code></a>
pre-commit: fix rst-lint after new release (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/13999">#13999</a>)
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/14001">#14001</a>)</li>
<li><a
href="c60fbe63a2"><code>c60fbe6</code></a>
Fix quadratic-time behavior when handling <code>unittest</code> subtests
in Python 3.10 ...</li>
<li><a
href="73d9b01118"><code>73d9b01</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/13995">#13995</a>
from nicoddemus/patchback/backports/9.0.x/1b5200c0f...</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest/compare/7.4.3...9.0.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest&package-manager=pip&previous-version=7.4.3&new-version=9.0.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 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>
2026-03-15 20:27:49 -05:00
dependabot[bot]
31d451053e chore: bump pyjwt from 2.8.0 to 2.11.0
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.8.0 to 2.11.0.
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.8.0...2.11.0)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-version: 2.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-12 01:21:56 +00:00
dependabot[bot]
d643254517 chore: bump pytest from 7.4.3 to 9.0.2
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.4.3 to 9.0.2.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.4.3...9.0.2)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-12 01:21:52 +00:00
dependabot[bot]
86fa477cce chore: bump python-jose[cryptography] from 3.3.0 to 3.5.0
Bumps [python-jose[cryptography]](https://github.com/mpdavis/python-jose) from 3.3.0 to 3.5.0.
- [Release notes](https://github.com/mpdavis/python-jose/releases)
- [Changelog](https://github.com/mpdavis/python-jose/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mpdavis/python-jose/compare/3.3.0...3.5.0)

---
updated-dependencies:
- dependency-name: python-jose[cryptography]
  dependency-version: 3.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-12 01:21:47 +00:00
dependabot[bot]
739f45d970 chore: bump aiosqlite from 0.19.0 to 0.22.1
Bumps [aiosqlite](https://github.com/omnilib/aiosqlite) from 0.19.0 to 0.22.1.
- [Changelog](https://github.com/omnilib/aiosqlite/blob/main/CHANGELOG.md)
- [Commits](https://github.com/omnilib/aiosqlite/compare/v0.19.0...v0.22.1)

---
updated-dependencies:
- dependency-name: aiosqlite
  dependency-version: 0.22.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-12 01:21:44 +00:00
dependabot[bot]
220555a114 chore: bump botocore from 1.35.99 to 1.42.66
Bumps [botocore](https://github.com/boto/botocore) from 1.35.99 to 1.42.66.
- [Commits](https://github.com/boto/botocore/compare/1.35.99...1.42.66)

---
updated-dependencies:
- dependency-name: botocore
  dependency-version: 1.42.66
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-12 01:21:41 +00:00
dependabot[bot]
c3f63c2044 chore: bump alembic from 1.12.1 to 1.18.4
Bumps [alembic](https://github.com/sqlalchemy/alembic) from 1.12.1 to 1.18.4.
- [Release notes](https://github.com/sqlalchemy/alembic/releases)
- [Changelog](https://github.com/sqlalchemy/alembic/blob/main/CHANGES)
- [Commits](https://github.com/sqlalchemy/alembic/commits)

---
updated-dependencies:
- dependency-name: alembic
  dependency-version: 1.18.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-11 02:08:56 +00:00
dependabot[bot]
7baebc608f chore: bump pydantic-settings from 2.1.0 to 2.13.1
Bumps [pydantic-settings](https://github.com/pydantic/pydantic-settings) from 2.1.0 to 2.13.1.
- [Release notes](https://github.com/pydantic/pydantic-settings/releases)
- [Commits](https://github.com/pydantic/pydantic-settings/compare/v2.1.0...v2.13.1)

---
updated-dependencies:
- dependency-name: pydantic-settings
  dependency-version: 2.13.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-11 02:08:36 +00:00
dependabot[bot]
70947c59d9 chore: bump redis from 5.0.1 to 7.3.0
Bumps [redis](https://github.com/redis/redis-py) from 5.0.1 to 7.3.0.
- [Release notes](https://github.com/redis/redis-py/releases)
- [Changelog](https://github.com/redis/redis-py/blob/master/CHANGES)
- [Commits](https://github.com/redis/redis-py/compare/v5.0.1...v7.3.0)

---
updated-dependencies:
- dependency-name: redis
  dependency-version: 7.3.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-11 02:08:33 +00:00
40341c3e0c fix: resolve TypeScript and pip build errors
- tsconfig.json: remove duplicate target, add missing comma
- requirements.txt: fix boto3/botocore version conflict
- deployAll.ts, deployService.ts: remove duplicate concatenated code

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

RoadChain-SHA2048: f3e2c6a6f3c323b4
RoadChain-Identity: alexa@sovereign
RoadChain-Full: f3e2c6a6f3c323b4d200ae278824975d0b102ec0ee1708560ccae57bf0f31819f19805317aa33b967b58b06750443394fafd250e40985dc35d2d89c12f369ef2083bcd4b0496043e87bfa1ef7ec7d307065d63190fa31461367dc3f2d76410326c1bd9602aac1587084f3d7ec068b6abffb94ff1bf18ce5408a4cd7523ff9a078c60c6f0050434c562b18b9f9ac81af72a23590e6d8e2ed79ea7de61cf2b9a1e1e44051ee2a151cb0c57f23b04db771944889473eb0ec2bf5d42bbd3727422c6e28987af96fb6006ee55604dfbded15a70cbe196da844945f373d838d446f33c0465e463f244992bc506e4ca6b414cc8b935e7d5fe993297444805dddb9af436
2026-03-10 20:54:56 -05:00
dependabot[bot]
8a86a7240f chore: bump stripe from 7.8.0 to 14.4.0
Bumps [stripe](https://github.com/stripe/stripe-python) from 7.8.0 to 14.4.0.
- [Release notes](https://github.com/stripe/stripe-python/releases)
- [Changelog](https://github.com/stripe/stripe-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-python/compare/v7.8.0...v14.4.0)

---
updated-dependencies:
- dependency-name: stripe
  dependency-version: 14.4.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 06:37:27 +00:00
Alexa Amundson
80d20263c4 chore: bump python-dotenv from 1.0.0 to 1.2.2 (#173)
Bumps [python-dotenv](https://github.com/theskumar/python-dotenv) from
1.0.0 to 1.2.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/theskumar/python-dotenv/releases">python-dotenv's
releases</a>.</em></p>
<blockquote>
<h2>v1.2.2</h2>
<h3>Added</h3>
<ul>
<li>Support for Python 3.14, including the free-threaded (3.14t) build.
(#)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>The <code>dotenv run</code> command now forwards flags directly to
the specified command by <a
href="https://github.com/bbc2"><code>@​bbc2</code></a> in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/607">theskumar/python-dotenv#607</a></li>
<li>Improved documentation clarity regarding override behavior and the
reference page.</li>
<li>Updated PyPy support to version 3.11.</li>
<li>Documentation for FIFO file support.</li>
<li>Support for Python 3.9.</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Improved <code>set_key</code> and <code>unset_key</code> behavior
when interacting with symlinks by <a
href="https://github.com/bbc2"><code>@​bbc2</code></a> in <a
href="790c5c0299">#790c5</a></li>
<li>Corrected the license specifier and added missing Python 3.14
classifiers in package metadata by <a
href="https://github.com/JYOuyang"><code>@​JYOuyang</code></a> in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/590">theskumar/python-dotenv#590</a></li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li>
<p><code>dotenv.set_key</code> and <code>dotenv.unset_key</code> used to
follow symlinks in some
situations. This is no longer the case. For that behavior to be restored
in
all cases, <code>follow_symlinks=True</code> should be used.</p>
</li>
<li>
<p>In the CLI, <code>set</code> and <code>unset</code> used to follow
symlinks in some situations. This
is no longer the case.</p>
</li>
<li>
<p><code>dotenv.set_key</code>, <code>dotenv.unset_key</code> and the
CLI commands <code>set</code> and <code>unset</code>
used to reset the file mode of the modified .env file to
<code>0o600</code> in some
situations. This is no longer the case: The original mode of the file is
now
preserved. Is the file needed to be created or wasn't a regular file,
mode
<code>0o600</code> is used.</p>
</li>
</ul>
<h3>Misc</h3>
<ul>
<li>skip 000 permission tests for root user by <a
href="https://github.com/burnout-projects"><code>@​burnout-projects</code></a>
in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/561">theskumar/python-dotenv#561</a></li>
<li>Bump actions/checkout from 5 to 6 in the github-actions group by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/593">theskumar/python-dotenv#593</a></li>
<li>Add Windows testing to CI by <a
href="https://github.com/bbc2"><code>@​bbc2</code></a> in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/604">theskumar/python-dotenv#604</a></li>
<li>Improve workflow efficiency with best practices by <a
href="https://github.com/theskumar"><code>@​theskumar</code></a> in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/609">theskumar/python-dotenv#609</a></li>
<li>Remove the use of <code>sh</code> in tests by <a
href="https://github.com/bbc2"><code>@​bbc2</code></a> in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/612">theskumar/python-dotenv#612</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/JYOuyang"><code>@​JYOuyang</code></a>
made their first contribution in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/590">theskumar/python-dotenv#590</a></li>
<li><a
href="https://github.com/burnout-projects"><code>@​burnout-projects</code></a>
made their first contribution in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/561">theskumar/python-dotenv#561</a></li>
<li><a
href="https://github.com/cpackham-atlnz"><code>@​cpackham-atlnz</code></a>
made their first contribution in <a
href="https://redirect.github.com/theskumar/python-dotenv/pull/597">theskumar/python-dotenv#597</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/theskumar/python-dotenv/compare/v1.2.1...v1.2.2">https://github.com/theskumar/python-dotenv/compare/v1.2.1...v1.2.2</a></p>
<h2>v1.2.1</h2>
<h2>What's Changed</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md">python-dotenv's
changelog</a>.</em></p>
<blockquote>
<h2>[1.2.2] - 2026-03-01</h2>
<h3>Added</h3>
<ul>
<li>Support for Python 3.14, including the free-threaded (3.14t) build.
(<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/588">#588</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>The <code>dotenv run</code> command now forwards flags directly to
the specified command by [<a
href="https://github.com/bbc2"><code>@​bbc2</code></a>] in <a
href="https://redirect.github.com/theskumar/python-dotenv/issues/607">#607</a></li>
<li>Improved documentation clarity regarding override behavior and the
reference page.</li>
<li>Updated PyPy support to version 3.11.</li>
<li>Documentation for FIFO file support.</li>
<li>Dropped Support for Python 3.9.</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Improved <code>set_key</code> and <code>unset_key</code> behavior
when interacting with symlinks by [<a
href="https://github.com/bbc2"><code>@​bbc2</code></a>] in
[790c5c0]</li>
<li>Corrected the license specifier and added missing Python 3.14
classifiers in package metadata by [<a
href="https://github.com/JYOuyang"><code>@​JYOuyang</code></a>] in <a
href="https://redirect.github.com/theskumar/python-dotenv/issues/590">#590</a></li>
</ul>
<h3>Breaking Changes</h3>
<ul>
<li>
<p><code>dotenv.set_key</code> and <code>dotenv.unset_key</code> used to
follow symlinks in some
situations. This is no longer the case. For that behavior to be restored
in
all cases, <code>follow_symlinks=True</code> should be used.</p>
</li>
<li>
<p>In the CLI, <code>set</code> and <code>unset</code> used to follow
symlinks in some situations. This
is no longer the case.</p>
</li>
<li>
<p><code>dotenv.set_key</code>, <code>dotenv.unset_key</code> and the
CLI commands <code>set</code> and <code>unset</code>
used to reset the file mode of the modified .env file to
<code>0o600</code> in some
situations. This is no longer the case: The original mode of the file is
now
preserved. Is the file needed to be created or wasn't a regular file,
mode
<code>0o600</code> is used.</p>
</li>
</ul>
<h2>[1.2.1] - 2025-10-26</h2>
<ul>
<li>Move more config to <code>pyproject.toml</code>, removed
<code>setup.cfg</code></li>
<li>Add support for reading <code>.env</code> from FIFOs (Unix) by [<a
href="https://github.com/sidharth-sudhir"><code>@​sidharth-sudhir</code></a>]
in <a
href="https://redirect.github.com/theskumar/python-dotenv/issues/586">#586</a></li>
</ul>
<h2>[1.2.0] - 2025-10-26</h2>
<ul>
<li>Upgrade build system to use PEP 517 &amp; PEP 518 to use
<code>build</code> and <code>pyproject.toml</code> by [<a
href="https://github.com/EpicWink"><code>@​EpicWink</code></a>] in <a
href="https://redirect.github.com/theskumar/python-dotenv/issues/583">#583</a></li>
<li>Add support for Python 3.14 by [<a
href="https://github.com/23f3001135"><code>@​23f3001135</code></a>] in
<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/579">#579</a></li>
<li>Add support for disabling of <code>load_dotenv()</code> using
<code>PYTHON_DOTENV_DISABLED</code> env var. by [<a
href="https://github.com/matthewfranglen"><code>@​matthewfranglen</code></a>]
in <a
href="https://redirect.github.com/theskumar/python-dotenv/issues/569">#569</a></li>
</ul>
<h2>[1.1.1] - 2025-06-24</h2>
<h3>Fixed</h3>
<ul>
<li>CLI: Ensure <code>find_dotenv</code> work reliably on python 3.13 by
[<a href="https://github.com/theskumar"><code>@​theskumar</code></a>] in
<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/563">#563</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="36004e0e34"><code>36004e0</code></a>
Bump version: 1.2.1 → 1.2.2</li>
<li><a
href="eb202520e5"><code>eb20252</code></a>
docs: update changelog for v1.2.2</li>
<li><a
href="790c5c0299"><code>790c5c0</code></a>
Merge commit from fork</li>
<li><a
href="43340da220"><code>43340da</code></a>
Remove the use of <code>sh</code> in tests (<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/612">#612</a>)</li>
<li><a
href="09d7cee324"><code>09d7cee</code></a>
docs: clarify override behavior and document FIFO support (<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/610">#610</a>)</li>
<li><a
href="c8de2887c0"><code>c8de288</code></a>
ci: improve workflow efficiency with best practices (<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/609">#609</a>)</li>
<li><a
href="7bd9e3dbfe"><code>7bd9e3d</code></a>
Add Windows testing to CI (<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/604">#604</a>)</li>
<li><a
href="1baaf04f33"><code>1baaf04</code></a>
Drop Python 3.9 support and update to PyPy 3.11 (<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/608">#608</a>)</li>
<li><a
href="4a22cf8993"><code>4a22cf8</code></a>
ci: enable testing on Python 3.14t (free-threaded) (<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/588">#588</a>)</li>
<li><a
href="e2e8e776b4"><code>e2e8e77</code></a>
Fix license specifier (<a
href="https://redirect.github.com/theskumar/python-dotenv/issues/597">#597</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/theskumar/python-dotenv/compare/v1.0.0...v1.2.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=python-dotenv&package-manager=pip&previous-version=1.0.0&new-version=1.2.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 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>
2026-03-09 01:32:43 -05:00
dependabot[bot]
e6d495d182 chore: bump python-dotenv from 1.0.0 to 1.2.2
Bumps [python-dotenv](https://github.com/theskumar/python-dotenv) from 1.0.0 to 1.2.2.
- [Release notes](https://github.com/theskumar/python-dotenv/releases)
- [Changelog](https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md)
- [Commits](https://github.com/theskumar/python-dotenv/compare/v1.0.0...v1.2.2)

---
updated-dependencies:
- dependency-name: python-dotenv
  dependency-version: 1.2.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 05:05:55 +00:00
dependabot[bot]
0122157027 chore(deps): bump the pip group across 2 directories with 5 updates
Bumps the pip group with 5 updates in the /backend directory:

| Package | From | To |
| --- | --- | --- |
| [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.6` | `0.0.22` |
| [jinja2](https://github.com/pallets/jinja) | `3.1.2` | `3.1.6` |
| [cryptography](https://github.com/pyca/cryptography) | `41.0.7` | `46.0.5` |
| [ecdsa](https://github.com/tlsfuzzer/python-ecdsa) | `0.18.0` | `0.19.1` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `1.39.1` | `1.45.1` |

Bumps the pip group with 1 update in the /templates/minimal-service directory: [python-multipart](https://github.com/Kludex/python-multipart).


Updates `python-multipart` from 0.0.6 to 0.0.22
- [Release notes](https://github.com/Kludex/python-multipart/releases)
- [Changelog](https://github.com/Kludex/python-multipart/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Kludex/python-multipart/compare/0.0.6...0.0.22)

Updates `jinja2` from 3.1.2 to 3.1.6
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.2...3.1.6)

Updates `cryptography` from 41.0.7 to 46.0.5
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/41.0.7...46.0.5)

Updates `ecdsa` from 0.18.0 to 0.19.1
- [Release notes](https://github.com/tlsfuzzer/python-ecdsa/releases)
- [Changelog](https://github.com/tlsfuzzer/python-ecdsa/blob/master/NEWS)
- [Commits](https://github.com/tlsfuzzer/python-ecdsa/compare/python-ecdsa-0.18.0...python-ecdsa-0.19.1)

Updates `sentry-sdk` from 1.39.1 to 1.45.1
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/1.45.1/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/1.39.1...1.45.1)

Updates `python-multipart` from 0.0.6 to 0.0.22
- [Release notes](https://github.com/Kludex/python-multipart/releases)
- [Changelog](https://github.com/Kludex/python-multipart/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Kludex/python-multipart/compare/0.0.6...0.0.22)

Updates `python-multipart` from 0.0.6 to 0.0.22
- [Release notes](https://github.com/Kludex/python-multipart/releases)
- [Changelog](https://github.com/Kludex/python-multipart/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Kludex/python-multipart/compare/0.0.6...0.0.22)

Updates `python-multipart` from 0.0.6 to 0.0.22
- [Release notes](https://github.com/Kludex/python-multipart/releases)
- [Changelog](https://github.com/Kludex/python-multipart/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Kludex/python-multipart/compare/0.0.6...0.0.22)

---
updated-dependencies:
- dependency-name: python-multipart
  dependency-version: 0.0.22
  dependency-type: direct:production
  dependency-group: pip
- dependency-name: jinja2
  dependency-version: 3.1.6
  dependency-type: direct:production
  dependency-group: pip
- dependency-name: cryptography
  dependency-version: 46.0.5
  dependency-type: direct:production
  dependency-group: pip
- dependency-name: ecdsa
  dependency-version: 0.19.1
  dependency-type: direct:production
  dependency-group: pip
- dependency-name: sentry-sdk
  dependency-version: 1.45.1
  dependency-type: direct:production
  dependency-group: pip
- dependency-name: python-multipart
  dependency-version: 0.0.22
  dependency-type: direct:production
  dependency-group: pip
- dependency-name: python-multipart
  dependency-version: 0.0.22
  dependency-type: direct:production
  dependency-group: pip
- dependency-name: python-multipart
  dependency-version: 0.0.22
  dependency-type: direct:production
  dependency-group: pip
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 04:57:30 +00:00
Alexa Amundson
6c55a8f488 chore: bump botocore from 1.32.7 to 1.42.59 (#177)
Bumps [botocore](https://github.com/boto/botocore) from 1.32.7 to
1.42.59.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c204bb1da1"><code>c204bb1</code></a>
Merge branch 'release-1.42.59'</li>
<li><a
href="7e59865407"><code>7e59865</code></a>
Bumping version to 1.42.59</li>
<li><a
href="b38a03ce4d"><code>b38a03c</code></a>
Update to latest models</li>
<li><a
href="97336ff38f"><code>97336ff</code></a>
Merge customizations for ARC Region switch</li>
<li><a
href="f76046b4bd"><code>f76046b</code></a>
Merge branch 'release-1.42.58'</li>
<li><a
href="be2689a1ee"><code>be2689a</code></a>
Merge branch 'release-1.42.58' into develop</li>
<li><a
href="47f8789f55"><code>47f8789</code></a>
Bumping version to 1.42.58</li>
<li><a
href="14bc74f6f6"><code>14bc74f</code></a>
Update to latest models</li>
<li><a
href="8c0427aaab"><code>8c0427a</code></a>
Add support for None values in list parsing (<a
href="https://redirect.github.com/boto/botocore/issues/3618">#3618</a>)</li>
<li><a
href="86d9ec3b0f"><code>86d9ec3</code></a>
Merge branch 'release-1.42.57'</li>
<li>Additional commits viewable in <a
href="https://github.com/boto/botocore/compare/1.32.7...1.42.59">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=botocore&package-manager=pip&previous-version=1.32.7&new-version=1.42.59)](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 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>
2026-03-08 23:50:13 -05:00
Alexa Amundson
60a65e137f chore: bump email-validator from 2.1.0.post1 to 2.3.0 (#178)
Bumps
[email-validator](https://github.com/JoshData/python-email-validator)
from 2.1.0.post1 to 2.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JoshData/python-email-validator/releases">email-validator's
releases</a>.</em></p>
<blockquote>
<h2>v2.3.0</h2>
<ul>
<li>The package name is changed from using an underscore
(email_validator) to a dash (email-validator) to match PyPi's normalized
package name.</li>
<li>The library no longer checks that the local part is at most 64
characters because a more careful reading of RFC 5321 indicates the
limit is optional and such email addresses have been found in the wild.
However the check can be restored using a new <code>strict=True</code>
parameter, and the overall 254 character email address length limit is
still in place.</li>
<li>New EmailSyntaxError messages are used for some exiting syntax
errors related to @-sign homoglyphs and invalid characters in
internationalized domains.</li>
<li>When using <code>allow_display_name=True</code>, display names are
now returned with Unicode NFC normalization.</li>
<li>TypeError is now raised if something other than str (or bytes) is
passed as the email address.</li>
</ul>
<h2>2.2.0 (June 20, 2024)</h2>
<ul>
<li>Email addresses with internationalized local parts could, with rare
Unicode characters, be returned as valid but actually be invalid in
their normalized form (returned in the <code>normalized</code> field).
Local parts now re-validated after Unicode NFC normalization to ensure
that invalid characters cannot be injected into the normalized address
and that characters with length-increasing NFC normalizations cannot
cause a local part to exceed the maximum length after
normalization.</li>
<li>The length check for email addresses with internationalized local
parts is now also applied to the original address string prior to
Unicode NFC normalization, which may be longer and could exceed the
maximum email address length, to protect callers who do not use the
returned normalized address.</li>
<li>Improved error message for IDNA domains that are too long or have
invalid characters after Unicode normalization.</li>
<li>A new option to parse <code>My Name &lt;address@domain&gt;</code>
strings, i.e. a display name plus an email address in angle brackets, is
now available. It is off by default.</li>
<li>Improvements to Python typing.</li>
<li>Some additional tests added.</li>
</ul>
<h2>v2.1.2</h2>
<h2>2.1.2 (June 16, 2024)</h2>
<ul>
<li>The domain name length limit is corrected from 255 to 253 IDNA ASCII
characters. I misread the RFCs.</li>
<li>When a domain name has no MX record but does have an A or AAAA
record, if none of the IP addresses in the response are globally
reachable (i.e. not Private-Use, Loopback, etc.), the response is
treated as if there was no A/AAAA response and the email address will
fail the deliverability check.</li>
<li>When a domain name has no MX record but does have an A or AAAA
record, the mx field in the object returned by validate_email
incorrectly held the IP addresses rather than the domain itself.</li>
<li>Fixes in tests.</li>
</ul>
<h2>v2.1.1 (February 26, 2024)</h2>
<ul>
<li>Fixed typo 'marking' instead of 'marketing' in case-insensitive
mailbox name list.</li>
<li>When DNS-based deliverability checks fail, in some cases exceptions
are now thrown with <code>raise ... from</code> for better nested
exception tracking.</li>
<li>Fixed tests to work when no local resolver can be configured.</li>
<li>This project is now licensed under the Unlicense (instead of
CC0).</li>
<li>Minor improvements to tests.</li>
<li>Minor improvements to code style.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JoshData/python-email-validator/blob/main/CHANGELOG.md">email-validator's
changelog</a>.</em></p>
<blockquote>
<h2>2.3.0 (August 26, 2025)</h2>
<ul>
<li>The package name is changed from using an underscore
(email_validator) to a dash (email-validator) to match PyPi's normalized
package name.</li>
<li>The library no longer checks that the local part is at most 64
characters because a more careful reading of RFC 5321 indicates the
limit is optional and such email addresses have been found in the wild.
However the check can be restored using a new <code>strict=True</code>
parameter, and the overall 254 character email address length limit is
still in place.</li>
<li>New EmailSyntaxError messages are used for some exiting syntax
errors related to @-sign homoglyphs and invalid characters in
internationalized domains.</li>
<li>When using <code>allow_display_name=True</code>, display names are
now returned with Unicode NFC normalization.</li>
<li>TypeError is now raised if something other than str (or bytes) is
passed as the email address.</li>
</ul>
<h2>2.2.0 (June 20, 2024)</h2>
<ul>
<li>Email addresses with internationalized local parts could, with rare
Unicode characters, be returned as valid but actually be invalid in
their normalized form (returned in the <code>normalized</code> field).
In particular, it is possible to get a normalized address with a
&quot;;&quot; character, which is not valid and could change the
interpretation of the address. Local parts now re-validated after
Unicode NFC normalization to ensure that invalid characters cannot be
injected into the normalized address and that characters with
length-increasing NFC normalizations cannot cause a local part to exceed
the maximum length after normalization. Thanks to <a
href="mailto:khanh@calif.io">khanh@calif.io</a> from <a
href="https://calif.io">https://calif.io</a> for reporting the
issue.</li>
<li>The length check for email addresses with internationalized local
parts is now also applied to the original address string prior to
Unicode NFC normalization, which may be longer and could exceed the
maximum email address length, to protect callers who do not use the
returned normalized address.</li>
<li>Improved error message for IDNA domains that are too long or have
invalid characters after Unicode normalization.</li>
<li>A new option to parse <code>My Name &lt;address@domain&gt;</code>
strings, i.e. a display name plus an email address in angle brackets, is
now available. It is off by default.</li>
<li>Improvements to Python typing.</li>
<li>Some additional tests added.</li>
</ul>
<h2>2.1.2 (June 16, 2024)</h2>
<ul>
<li>The domain name length limit is corrected from 255 to 253 IDNA ASCII
characters. I misread the RFCs.</li>
<li>When a domain name has no MX record but does have an A or AAAA
record, if none of the IP addresses in the response are globally
reachable (i.e. not Private-Use, Loopback, etc.), the response is
treated as if there was no A/AAAA response and the email address will
fail the deliverability check.</li>
<li>When a domain name has no MX record but does have an A or AAAA
record, the mx field in the object returned by validate_email
incorrectly held the IP addresses rather than the domain itself.</li>
<li>Fixes in tests.</li>
</ul>
<h2>2.1.1 (February 26, 2024)</h2>
<ul>
<li>Fixed typo 'marking' instead of 'marketing' in case-insensitive
mailbox name list.</li>
<li>When DNS-based deliverability checks fail, in some cases exceptions
are now thrown with <code>raise ... from</code> for better nested
exception tracking.</li>
<li>Fixed tests to work when no local resolver can be configured.</li>
<li>This project is now licensed under the Unlicense (instead of
CC0).</li>
<li>Minor improvements to tests.</li>
<li>Minor improvements to code style.</li>
</ul>
<h2>2.1.0 (October 22, 2023)</h2>
<ul>
<li>Python 3.8+ is now required (support for Python 3.7 was
dropped).</li>
<li>The old <code>email</code> field on the returned
<code>ValidatedEmail</code> object, which in the previous version was
superseded by <code>normalized</code>, will now raise a deprecation
warning if used. See <a
href="https://stackoverflow.com/q/879173">https://stackoverflow.com/q/879173</a>
for strategies to suppress the DeprecationWarning.</li>
<li>A <code>__version__</code> module attribute is added.</li>
<li>The email address argument to validate_email is now marked as
positional-only to better reflect the documented usage using the new
Python 3.8 feature.</li>
</ul>
<h2>2.0.0 (April 15, 2023)</h2>
<p>This is a major update to the library, but since email address specs
haven't changed there should be no significant changes to which email
addresses are considered valid or invalid with default options. There
are new options for accepting unusual email addresses that were
previously always rejected, some changes to how DNS errors are handled,
many changes in error message text, and major internal improvements
including the addition of type annotations. Python 3.7+ is now required.
Details follow:</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/JoshData/python-email-validator/commits/v2.3.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=email-validator&package-manager=pip&previous-version=2.1.0.post1&new-version=2.3.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 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>
2026-03-08 23:50:11 -05:00
Alexa Amundson
e3284bea4f chore: bump hiredis from 2.2.3 to 3.3.0 (#180)
Bumps [hiredis](https://github.com/redis/hiredis-py) from 2.2.3 to
3.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/redis/hiredis-py/releases">hiredis's
releases</a>.</em></p>
<blockquote>
<h2>3.3.0</h2>
<h1>Changes</h1>
<ul>
<li>Add Python 3.14 to CI and wheels (<a
href="https://redirect.github.com/redis/hiredis-py/issues/213">#213</a>
by <a
href="https://github.com/zweizeichen"><code>@​zweizeichen</code></a>)</li>
</ul>
<h2>Contributors</h2>
<p>We'd like to thank all the contributors who worked on this
release!</p>
<h2>3.2.1</h2>
<h1>Changes</h1>
<ul>
<li>Fix assertion in reader.c (<a
href="https://redirect.github.com/redis/hiredis-py/issues/212">#212</a>)</li>
</ul>
<h2>Contributors</h2>
<p>We'd like to thank all the contributors who worked on this
release!</p>
<p><a href="https://github.com/uglide"><code>@​uglide</code></a></p>
<h2>3.2.0</h2>
<h1>Changes</h1>
<ul>
<li>Introduce new type for RESP3 PUSH notifications (<a
href="https://redirect.github.com/redis/hiredis-py/issues/208">#208</a>)</li>
<li>Run integration workflow on version branches (<a
href="https://redirect.github.com/redis/hiredis-py/issues/210">#210</a>)</li>
<li>Update hiredis to 1.3.0 (<a
href="https://redirect.github.com/redis/hiredis-py/issues/203">#203</a>)</li>
</ul>
<h2>Contributors</h2>
<p>We'd like to thank all the contributors who worked on this
release!</p>
<p><a href="https://github.com/uglide"><code>@​uglide</code></a></p>
<h2>3.1.1</h2>
<h2>Summary</h2>
<p>This is a maintenance release that addresses issues in RESP3
parsing.</p>
<h2>Changes</h2>
<ul>
<li>Fix memory leaks and segfaults in RESP3 map parsing (<a
href="https://redirect.github.com/redis/hiredis-py/issues/204">#204</a>,
<a
href="https://redirect.github.com/redis/hiredis-py/issues/205">#205</a>,
<a
href="https://redirect.github.com/redis/hiredis-py/issues/206">#206</a>)</li>
</ul>
<h2>3.1.0</h2>
<h1>Changes</h1>
<ul>
<li>Update Python 3.13 compatibility (<a
href="https://redirect.github.com/redis/hiredis-py/issues/199">#199</a>)</li>
</ul>
<h2>Contributors</h2>
<p>We'd like to thank all the contributors who worked on this
release!</p>
<p><a href="https://github.com/DeD1rk"><code>@​DeD1rk</code></a></p>
<h2>3.0.0</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="187d0f387a"><code>187d0f3</code></a>
Version 3.3.0</li>
<li><a
href="3efcf037ed"><code>3efcf03</code></a>
Add Python 3.14 to CI and wheels (<a
href="https://redirect.github.com/redis/hiredis-py/issues/213">#213</a>)
(<a
href="https://redirect.github.com/redis/hiredis-py/issues/215">#215</a>)</li>
<li><a
href="966cede2c0"><code>966cede</code></a>
Fix assertion in reader.c (<a
href="https://redirect.github.com/redis/hiredis-py/issues/212">#212</a>)</li>
<li><a
href="78def309e5"><code>78def30</code></a>
Bump version to 3.3.0-dev</li>
<li><a
href="f715de2e7c"><code>f715de2</code></a>
Version 3.2.0</li>
<li><a
href="d5548270b6"><code>d554827</code></a>
Introduce new type for RESP3 PUSH notifications (<a
href="https://redirect.github.com/redis/hiredis-py/issues/208">#208</a>)</li>
<li><a
href="58fe9603cd"><code>58fe960</code></a>
Run integration workflow on version branches (<a
href="https://redirect.github.com/redis/hiredis-py/issues/210">#210</a>)</li>
<li><a
href="8608965483"><code>8608965</code></a>
Update hiredis to 1.3.0 (<a
href="https://redirect.github.com/redis/hiredis-py/issues/203">#203</a>)</li>
<li><a
href="ac31d58c5f"><code>ac31d58</code></a>
Bump version to 3.2.0-dev (<a
href="https://redirect.github.com/redis/hiredis-py/issues/207">#207</a>)</li>
<li><a
href="7e77f22963"><code>7e77f22</code></a>
Fix memory leak in RESP3 map parsing (<a
href="https://redirect.github.com/redis/hiredis-py/issues/204">#204</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/redis/hiredis-py/compare/v2.2.3...v3.3.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=hiredis&package-manager=pip&previous-version=2.2.3&new-version=3.3.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 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>
2026-03-08 23:50:09 -05:00
Alexa Amundson
9d74f47acf chore: bump psycopg2-binary from 2.9.9 to 2.9.11 (#181)
Bumps [psycopg2-binary](https://github.com/psycopg/psycopg2) from 2.9.9
to 2.9.11.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/psycopg/psycopg2/blob/master/NEWS">psycopg2-binary's
changelog</a>.</em></p>
<blockquote>
<h2>Current release</h2>
<p>What's new in psycopg 2.9.11
^^^^^^^^^^^^^^^^^^^^^^^^^^^^</p>
<ul>
<li>Add support for Python 3.14.</li>
<li>Avoid a segfault passing more arguments than placeholders if Python
is built
with assertions enabled
(🎫<code>[#1791](https://github.com/psycopg/psycopg2/issues/1791)</code>).</li>
<li>Add riscv64 platform binary packages
(🎫<code>[#1813](https://github.com/psycopg/psycopg2/issues/1813)</code>).</li>
<li><code>~psycopg2.errorcodes</code> map and
<code>~psycopg2.errors</code> classes updated to
PostgreSQL 18.</li>
<li>Drop support for Python 3.8.</li>
</ul>
<p>What's new in psycopg 2.9.10
^^^^^^^^^^^^^^^^^^^^^^^^^^^^</p>
<ul>
<li>Add support for Python 3.13.</li>
<li>Receive notifications on commit
(🎫<code>[#1728](https://github.com/psycopg/psycopg2/issues/1728)</code>).</li>
<li><code>~psycopg2.errorcodes</code> map and
<code>~psycopg2.errors</code> classes updated to
PostgreSQL 17.</li>
<li>Drop support for Python 3.7.</li>
</ul>
<p>What's new in psycopg 2.9.9
^^^^^^^^^^^^^^^^^^^^^^^^^^^</p>
<ul>
<li>Add support for Python 3.12.</li>
<li>Drop support for Python 3.6.</li>
</ul>
<p>What's new in psycopg 2.9.8
^^^^^^^^^^^^^^^^^^^^^^^^^^^</p>
<ul>
<li>Wheel package bundled with PostgreSQL 16 libpq in order to add
support for
recent features, such as <code>sslcertmode</code>.</li>
</ul>
<p>What's new in psycopg 2.9.7
^^^^^^^^^^^^^^^^^^^^^^^^^^^</p>
<ul>
<li>Fix propagation of exceptions raised during module initialization

(🎫<code>[#1598](https://github.com/psycopg/psycopg2/issues/1598)</code>).</li>
<li>Fix building when pg_config returns an empty string
(🎫<code>[#1599](https://github.com/psycopg/psycopg2/issues/1599)</code>).</li>
<li>Wheel package bundled with OpenSSL 1.1.1v.</li>
</ul>
<p>What's new in psycopg 2.9.6
^^^^^^^^^^^^^^^^^^^^^^^^^^^</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fd9ae8cad2"><code>fd9ae8c</code></a>
chore: bump to version 2.9.11</li>
<li><a
href="d923840546"><code>d923840</code></a>
chore: update docs requirements</li>
<li><a
href="d42dc7169d"><code>d42dc71</code></a>
Merge branch 'fix-1791'</li>
<li><a
href="4fde6560c3"><code>4fde656</code></a>
fix: avoid failed assert passing more arguments than placeholders</li>
<li><a
href="8308c19d6a"><code>8308c19</code></a>
fix: drop warning about the use of deprecated PyWeakref_GetObject
function</li>
<li><a
href="1a1eabf098"><code>1a1eabf</code></a>
build(deps): bump actions/github-script from 7 to 8</li>
<li><a
href="897af8b38b"><code>897af8b</code></a>
build(deps): bump peter-evans/repository-dispatch from 3 to 4</li>
<li><a
href="ceefd30511"><code>ceefd30</code></a>
build(deps): bump actions/checkout from 4 to 5</li>
<li><a
href="4dc585430c"><code>4dc5854</code></a>
build(deps): bump actions/setup-python from 5 to 6</li>
<li><a
href="1945788dcf"><code>1945788</code></a>
Merge pull request <a
href="https://redirect.github.com/psycopg/psycopg2/issues/1802">#1802</a>
from edgarrmondragon/cp314-wheels</li>
<li>Additional commits viewable in <a
href="https://github.com/psycopg/psycopg2/compare/2.9.9...2.9.11">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=psycopg2-binary&package-manager=pip&previous-version=2.9.9&new-version=2.9.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 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>
2026-03-08 23:50:06 -05:00
Alexa Amundson
63d0e0aa0e chore: bump hashlib-additional from 1.0.0 to 1.1 (#182)
Bumps
[hashlib-additional](https://github.com/rfinnie/python-hashlib-additional)
from 1.0.0 to 1.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rfinnie/python-hashlib-additional/releases">hashlib-additional's
releases</a>.</em></p>
<blockquote>
<h2>hashlib-additional 1.1</h2>
<ul>
<li>Fix setup.py encoding issue on Windows</li>
<li>Add new checksums: cksum, sysv, fletcher16, fletcher32,
fletcher64</li>
<li>Additional build/CI/test improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="42c209ed4b"><code>42c209e</code></a>
hashlib-additional 1.1</li>
<li><a
href="02f80b372e"><code>02f80b3</code></a>
Small fix, if -&gt; elif</li>
<li><a
href="1ea6ae2d8f"><code>1ea6ae2</code></a>
Add Fletcher checksums</li>
<li><a
href="f38943cb7e"><code>f38943c</code></a>
Test Python 3.9</li>
<li><a
href="96a7e305d9"><code>96a7e30</code></a>
Enforce coverage</li>
<li><a
href="9682c93ccf"><code>9682c93</code></a>
Remove unneeded flake8 C901 ignore</li>
<li><a
href="baf2a07ddf"><code>baf2a07</code></a>
setup.py: force UTF-8 README for Windows</li>
<li><a
href="189ef49eb2"><code>189ef49</code></a>
100% code coverage</li>
<li><a
href="005805d2bc"><code>005805d</code></a>
Implement tox, CI</li>
<li><a
href="26523727ca"><code>2652372</code></a>
Doc updates</li>
<li>Additional commits viewable in <a
href="https://github.com/rfinnie/python-hashlib-additional/compare/v1.0...v1.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=hashlib-additional&package-manager=pip&previous-version=1.0.0&new-version=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 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>
2026-03-08 23:50:04 -05:00
Alexa Amundson
c36bd72d38 chore: bump psutil from 5.9.6 to 7.2.2 (#183)
Bumps [psutil](https://github.com/giampaolo/psutil) from 5.9.6 to 7.2.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/giampaolo/psutil/blob/master/HISTORY.rst">psutil's
changelog</a>.</em></p>
<blockquote>
<h1>7.2.2</h1>
<p>2026-01-28</p>
<p><strong>Enhancements</strong></p>
<ul>
<li>2705_: [Linux]: <code>Process.wait()</code>_ now uses
<code>pidfd_open()</code> + <code>poll()</code> for
waiting, resulting in no busy loop and faster response times. Requires
Linux &gt;= 5.3 and Python &gt;= 3.9. Falls back to traditional polling
if
unavailable.</li>
<li>2705_: [macOS], [BSD]: <code>Process.wait()</code>_ now uses
<code>kqueue()</code> for waiting,
resulting in no busy loop and faster response times.</li>
</ul>
<p><strong>Bug fixes</strong></p>
<ul>
<li>2701_, [macOS]: fix compilation error on macOS &lt; 10.7. (patch by
Sergey
Fedorov)</li>
<li>2707_, [macOS]: fix potential memory leaks in error paths of
<code>Process.memory_full_info()</code> and
<code>Process.threads()</code>.</li>
<li>2708_, [macOS]: Process.cmdline()<code>_ and
</code>Process.environ()<code>_ may fail with ``OSError: [Errno 0]
Undefined error`` (from ``sysctl(KERN_PROCARGS2)``). They now raise
</code>AccessDenied`_ instead.</li>
</ul>
<h1>7.2.1</h1>
<p>2025-12-29</p>
<p><strong>Bug fixes</strong></p>
<ul>
<li>2699_, [FreeBSD], [NetBSD]: <code>heap_info()</code>_ does not
detect small allocations
(&lt;= 1K). In order to fix that, we now flush internal jemalloc cache
before
fetching the metrics.</li>
</ul>
<h1>7.2.0</h1>
<p>2025-12-23</p>
<p><strong>Enhancements</strong></p>
<ul>
<li>1275_: new <code>heap_info()</code>_ and <code>heap_trim()</code>_
functions, providing direct
access to the platform's native C heap allocator (glibc, mimalloc,
libmalloc). Useful to create tools to detect memory leaks.</li>
<li>2403_, [Linux]: publish wheels for Linux musl.</li>
<li>2680_: unit tests are no longer installed / part of the
distribution. They
now live under <code>tests/</code> instead of
<code>psutil/tests</code>.</li>
</ul>
<p><strong>Bug fixes</strong></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9eea97dd6f"><code>9eea97d</code></a>
Pre-release</li>
<li><a
href="938ac64741"><code>938ac64</code></a>
Rm sphinxcontrib.googleanalytics; override layout.html</li>
<li><a
href="9dcbb7e60e"><code>9dcbb7e</code></a>
Add sphinxcontrib-googleanalytics to requirements.txt</li>
<li><a
href="76eaf9ae0f"><code>76eaf9a</code></a>
Try to add google analytics to doc</li>
<li><a
href="de1cafa56f"><code>de1cafa</code></a>
Update doc mentioning Process.wait() internal details</li>
<li><a
href="bb30943b03"><code>bb30943</code></a>
Refact can_use_pidfd_open() and can_use_kqueue()</li>
<li><a
href="a571717d65"><code>a571717</code></a>
<a
href="https://redirect.github.com/giampaolo/psutil/issues/2708">#2708</a>,
macos / cmdline / environ; raise AD instead of OSError(0) (<a
href="https://redirect.github.com/giampaolo/psutil/issues/2709">#2709</a>)</li>
<li><a
href="8b98c3effc"><code>8b98c3e</code></a>
Pre-release</li>
<li><a
href="700b7e6a41"><code>700b7e6</code></a>
[macOS] fix potential leaks in error paths (<a
href="https://redirect.github.com/giampaolo/psutil/issues/2707">#2707</a>)</li>
<li><a
href="7cc7923a14"><code>7cc7923</code></a>
Windows / cmdline(): be more defensive in free()ing in case of
error</li>
<li>Additional commits viewable in <a
href="https://github.com/giampaolo/psutil/compare/release-5.9.6...release-7.2.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=psutil&package-manager=pip&previous-version=5.9.6&new-version=7.2.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 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>
2026-03-08 23:50:01 -05:00
Alexa Amundson
09a2e9f5bf chore: bump aiohttp from 3.9.1 to 3.13.3 (#184)
[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aiohttp&package-manager=pip&previous-version=3.9.1&new-version=3.13.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 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>
2026-03-08 23:49:59 -05:00
copilot-swe-agent[bot]
dce3811506 fix: health-check workflow, add Ollama local LLM, revive active README with dynamic stats
Co-authored-by: blackboxprogramming <118287761+blackboxprogramming@users.noreply.github.com>
2026-03-03 05:28:15 +00:00
dependabot[bot]
85beb444a6 chore: bump aiohttp from 3.9.1 to 3.13.3
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 02:23:51 +00:00
dependabot[bot]
9b7fafd11d chore: bump psutil from 5.9.6 to 7.2.2
Bumps [psutil](https://github.com/giampaolo/psutil) from 5.9.6 to 7.2.2.
- [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst)
- [Commits](https://github.com/giampaolo/psutil/compare/release-5.9.6...release-7.2.2)

---
updated-dependencies:
- dependency-name: psutil
  dependency-version: 7.2.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 02:23:39 +00:00
dependabot[bot]
8163222cb0 chore: bump hashlib-additional from 1.0.0 to 1.1
Bumps [hashlib-additional](https://github.com/rfinnie/python-hashlib-additional) from 1.0.0 to 1.1.
- [Release notes](https://github.com/rfinnie/python-hashlib-additional/releases)
- [Commits](https://github.com/rfinnie/python-hashlib-additional/compare/v1.0...v1.1)

---
updated-dependencies:
- dependency-name: hashlib-additional
  dependency-version: '1.1'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 02:23:37 +00:00
dependabot[bot]
e8dab23cba chore: bump psycopg2-binary from 2.9.9 to 2.9.11
Bumps [psycopg2-binary](https://github.com/psycopg/psycopg2) from 2.9.9 to 2.9.11.
- [Changelog](https://github.com/psycopg/psycopg2/blob/master/NEWS)
- [Commits](https://github.com/psycopg/psycopg2/compare/2.9.9...2.9.11)

---
updated-dependencies:
- dependency-name: psycopg2-binary
  dependency-version: 2.9.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 02:23:35 +00:00
dependabot[bot]
4ba4a810ff chore: bump hiredis from 2.2.3 to 3.3.0
Bumps [hiredis](https://github.com/redis/hiredis-py) from 2.2.3 to 3.3.0.
- [Release notes](https://github.com/redis/hiredis-py/releases)
- [Changelog](https://github.com/redis/hiredis-py/blob/master/CHANGELOG.md)
- [Commits](https://github.com/redis/hiredis-py/compare/v2.2.3...v3.3.0)

---
updated-dependencies:
- dependency-name: hiredis
  dependency-version: 3.3.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 02:23:32 +00:00
dependabot[bot]
c78dd6607b chore: bump email-validator from 2.1.0.post1 to 2.3.0
Bumps [email-validator](https://github.com/JoshData/python-email-validator) from 2.1.0.post1 to 2.3.0.
- [Release notes](https://github.com/JoshData/python-email-validator/releases)
- [Changelog](https://github.com/JoshData/python-email-validator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/JoshData/python-email-validator/commits/v2.3.0)

---
updated-dependencies:
- dependency-name: email-validator
  dependency-version: 2.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 02:23:30 +00:00
dependabot[bot]
296b7f583f chore: bump botocore from 1.32.7 to 1.42.59
Bumps [botocore](https://github.com/boto/botocore) from 1.32.7 to 1.42.59.
- [Commits](https://github.com/boto/botocore/compare/1.32.7...1.42.59)

---
updated-dependencies:
- dependency-name: botocore
  dependency-version: 1.42.59
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 02:23:28 +00:00
Alexa Amundson
1ce5c946ed Merge branch origin/codex/explore-next-steps into main 2025-12-15 02:57:04 -06:00
Claude
23882ce526 feat: Implement window maximize functionality (v0.2.0)
Add full window maximize support to the BlackRoad OS window manager:

- Toggle maximize with button click or double-click on titlebar
- Store original window bounds for proper restore behavior
- Update maximize button icon (□ → ❐) when maximized
- Prevent window dragging when maximized
- Emit window:maximized and window:unmaximized events
- Add comprehensive CSS styles for maximized state
- CSS styles are injected dynamically to ensure availability

This completes the v0.2.0 window maximize feature marked as TODO.
2025-12-11 23:59:19 +00:00
Alexa Amundson
cccd6f588d Consolidate version info and system uptime 2025-12-11 01:18:59 -06:00
Alexa Louise
3aab32229b style: apply official BlackRoad brand color palette to BR-95 UI
Update the BR-95 Edition with the official brand gradient colors:
- #FF9D00 (orange) → #FF6B00 (deep orange) → #FF0066 (hot pink)
- → #FF006B (magenta-pink) → #D600AA (magenta)
- → #7700FF (electric purple) → #0066FF (electric blue)

Applied across boot logo, menu bar, and taskbar road logo
for cohesive brand identity throughout the interface.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 21:55:05 -06:00
Alexa Amundson
e96703ae56 Add focused window management to BR-95 desktop 2025-11-20 19:03:25 -06:00
Alexa Amundson
99b8a1841e Merge branch origin/codex/fix-repository-issues into main 2025-11-20 17:44:15 -06:00
Alexa Amundson
fa1347e286 Expand Railway allowed origins 2025-11-20 16:47:02 -06:00
Alexa Amundson
6a93dd62d2 Fix sqlite compatibility for cognition models 2025-11-20 16:45:53 -06:00
Alexa Amundson
7f59578c3f Add populated backend environment configuration 2025-11-20 16:16:49 -06:00
Claude
d551d0c6df Add BR-95 Desktop API backend with real-time data and WebSocket support
This commit implements the complete backend infrastructure for the BR-95
Desktop Operating System interface.

## New Features

1. **BR-95 Router** (`backend/app/routers/br95.py`):
   - Data simulator for OS statistics
   - 11+ API endpoints for real-time data
   - WebSocket support for live updates
   - Pydantic models for type safety

2. **API Endpoints** (`/api/br95`):
   - `/lucidia` - AI orchestration stats (1000 agents)
   - `/agents` - Agent performance metrics
   - `/roadchain` - Blockchain statistics
   - `/wallet` - RoadCoin wallet balance
   - `/miner` - Mining performance
   - `/raspberry-pi` - IoT device management
   - `/github` - GitHub integration stats
   - `/roadmail` - Email statistics
   - `/roadcraft` - Game statistics
   - `/road-city` - Metaverse statistics
   - `/terminal` - Command execution (simulated)

3. **WebSocket** (`/api/br95/ws`):
   - Real-time miner updates
   - Live blockchain sync
   - Wallet balance streaming
   - Auto-reconnect on disconnect

4. **Frontend Integration**:
   - Updated BR-95 HTML with API calls
   - WebSocket client for live updates
   - Auto-refresh every 30 seconds
   - Real-time stat updates in windows

5. **Railway Deployment**:
   - Already configured via railway.toml
   - Health check at /health
   - Version endpoint at /version
   - Documentation in docs/RAILWAY_BR95.md

## Technical Details

- **Data Simulation**: Uses DataSimulator class for realistic stats
- **WebSocket Manager**: ConnectionManager for broadcast messaging
- **Type Safety**: Full Pydantic model validation
- **Performance**: psutil for real CPU/memory metrics
- **Error Handling**: Graceful fallbacks and reconnection

## Deployment

Service runs on:
- Primary: https://app.blackroad.systems
- Railway: https://blackroad-operating-system-production.up.railway.app

Health check: GET /health
Version info: GET /version
API docs: GET /api/docs

## Files Changed

- backend/app/main.py - Registered br95 router
- backend/requirements.txt - Added psutil==5.9.6
- backend/static/index.html - API integration + WebSocket
- backend/app/routers/br95.py - New BR-95 router (700+ lines)
- docs/RAILWAY_BR95.md - Deployment guide

Closes #133 (if exists) - BR-95 backend implementation
2025-11-20 21:48:22 +00:00
Claude
f9e1d7234e Fix domain configuration for app.blackroad.systems and blackroad.systems
Updates:
- Add app.blackroad.systems to ALLOWED_ORIGINS in both .env.example and config.py
- Add blackroad-operating-system-production.up.railway.app to ALLOWED_ORIGINS
- Update DNS.md to reflect current domain routing (both root and app subdomains point to same service)
- Ensures CORS works correctly for all production domains

This fixes CORS issues when accessing the application via app.blackroad.systems or blackroad.systems
on the Railway project 'gregarious-wonder' (blackroad-operating-system-production service).
2025-11-20 21:28:34 +00:00
Claude
c6eb02e399 Fix Railway deployment for monorepo as single web service
This commit fixes the Railway build failure by:

1. **Root requirements.txt**: Added root-level requirements.txt that
   references backend/requirements.txt, enabling Railway's Nixpacks
   to auto-detect Python project and install dependencies correctly.
   Fixes "pip: not found" error.

2. **backend/__init__.py**: Created package init file to make backend
   a proper Python package, allowing uvicorn to import backend.app.main.

3. **railway.toml**: Simplified configuration for single-service
   monorepo deployment:
   - Uses NIXPACKS builder (auto-detects Python)
   - Starts with: uvicorn backend.app.main:app --host 0.0.0.0 --port $PORT
   - Health check at /health
   - Configured for app.blackroad.systems deployment

Technical details:
- Backend entrypoint: backend/app/main.py:app (FastAPI)
- Health endpoint: /health returns JSON with service status
- Frontend: BR-95 desktop UI served at / from backend/static/index.html
- API health: /api/health provides comprehensive integration status

Deployment target:
- Railway project: gregarious-wonder
- Service: BlackRoad-Operating-System
- Domain: app.blackroad.systems
2025-11-20 20:50:29 +00:00
Alexa Amundson
061289ef39 Redesign BR-95 desktop UI 2025-11-20 14:15:35 -06:00
Alexa Amundson
09a1c15c85 Merge commit '5b5412dfba177e0a6e80aa43f7327754e832f000' 2025-11-20 12:37:02 -06:00
Alexa Amundson
f4416deda3 Merge branch origin/codex/implement-unified-status-page-for-apis-8w9cw1 into main 2025-11-20 12:36:14 -06:00