Commit Graph

8985 Commits

Author SHA1 Message Date
Daniel Harvey
056b1c18fc Stop Nix rebuilding (#1329)
<!-- The PR description should answer 2 important questions: -->

### What

Our Nix build was building all the workspace crates as part of it's deps
step. This means when any library crate is changed, we throw away all
the caching, which isn't ideal. This filters the source files out of
those builds, so that we get more cache hits. We also move all Cargo
features into the workspace, which I've been meaning to do for ages, so
things are more consistent, and again, we get more cache hits generally.

V3_GIT_ORIGIN_REV_ID: c724b152692575edf6c00ab426e48ecca13aa998
2024-11-11 12:06:31 +00:00
Daniel Harvey
9f28f41a0e Build: use native target CPU (#1330)
<!-- The PR description should answer 2 important questions: -->

### What

Have seen this advised in both the [Rust Performance
Book](https://nnethercote.github.io/perf-book/build-configuration.html#cpu-specific-instructions)
and in the [Datafusion
docs](https://datafusion.apache.org/user-guide/crate-configuration.html),
seems like there's no drawbacks and the possibility of extra juice. My
M1 Mac shows a no-op in benchmarks, but since it's going to change
depending on CPU plan to merge and take a look at the CI benchmarks too.

V3_GIT_ORIGIN_REV_ID: 7b5d5668b3a8949dd56b2a887f10d964d523bdd6
2024-11-11 11:49:20 +00:00
Daniel Harvey
41fb74faba Move boolean expression fields out of graphql config (#1319)
<!-- The PR description should answer 2 important questions: -->

### What

We only resolve boolean expression fields if there is a `graphql` name
defined, which is not helpful for using them in JSONAPI or SQL. This
makes the validation happen earlier.

This means users that have broken boolean expressions that did not have
a `graphql` field would have been allowed to sit broken, but now those
will error, so this is behind a new compatibility config flag.

### How

Move `scalar_fields` and `object_fields` resolve into `object` steps
instead of the `graphql` steps of resolve for
`ObjectBooleanExpressionType` and `BooleanExpressionType`.

Note: we really need to get `ObjectBooleanExpressionType` deprecated and
deleted, it causes so much extra work and complexity everywhere.
V3_GIT_ORIGIN_REV_ID: c6f0849d412b40f3484fb44c1b36ebdf77ac60c1
2024-11-11 11:46:23 +00:00
dependabot[bot]
cfda861bdc Bump serde from 1.0.210 to 1.0.214 (#1327)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.210 to
1.0.214.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/serde-rs/serde/releases">serde's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.214</h2>
<ul>
<li>Implement IntoDeserializer for all Deserializers in serde:🇩🇪:value
module (<a
href="https://redirect.github.com/serde-rs/serde/issues/2568">#2568</a>,
thanks <a
href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
</ul>
<h2>v1.0.213</h2>
<ul>
<li>Fix support for macro-generated <code>with</code> attributes inside
a newtype struct (<a
href="https://redirect.github.com/serde-rs/serde/issues/2847">#2847</a>)</li>
</ul>
<h2>v1.0.212</h2>
<ul>
<li>Fix hygiene of macro-generated local variable accesses in
serde(with) wrappers (<a
href="https://redirect.github.com/serde-rs/serde/issues/2845">#2845</a>)</li>
</ul>
<h2>v1.0.211</h2>
<ul>
<li>Improve error reporting about mismatched signature in
<code>with</code> and <code>default</code> attributes (<a
href="https://redirect.github.com/serde-rs/serde/issues/2558">#2558</a>,
thanks <a
href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
<li>Show variant aliases in error message when variant deserialization
fails (<a
href="https://redirect.github.com/serde-rs/serde/issues/2566">#2566</a>,
thanks <a
href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
<li>Improve binary size of untagged enum and internally tagged enum
deserialization by about 12% (<a
href="https://redirect.github.com/serde-rs/serde/issues/2821">#2821</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="418062165f"><code>4180621</code></a>
Release 1.0.214</li>
<li><a
href="210373b3b6"><code>210373b</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2568">#2568</a>
from Mingun/into_deserializer-for-deserializers</li>
<li><a
href="9cda015733"><code>9cda015</code></a>
Implement IntoDeserializer for all Deserializers in serde:🇩🇪:value
module</li>
<li><a
href="58a8d22931"><code>58a8d22</code></a>
Release 1.0.213</li>
<li><a
href="ef0ed22593"><code>ef0ed22</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/serde/issues/2847">#2847</a>
from dtolnay/newtypewith</li>
<li><a
href="79925ac394"><code>79925ac</code></a>
Ignore dead_code warning in regression test</li>
<li><a
href="b60e4092ec"><code>b60e409</code></a>
Hygiene for macro-generated newtype struct deserialization with 'with'
attr</li>
<li><a
href="fdc36e5c06"><code>fdc36e5</code></a>
Add regression test for issue 2846</li>
<li><a
href="49e11ce1ba"><code>49e11ce</code></a>
Ignore trivially_copy_pass_by_ref pedantic clippy lint in test</li>
<li><a
href="7ae1b5f8f3"><code>7ae1b5f</code></a>
Release 1.0.212</li>
<li>Additional commits viewable in <a
href="https://github.com/serde-rs/serde/compare/v1.0.210...v1.0.214">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: e363e42fbcc9826cdd38a8d81ef3f8f045875e34
2024-11-11 09:30:03 +00:00
dependabot[bot]
9b86af2486 Bump csv from 1.3.0 to 1.3.1 (#1326)
Bumps [csv](https://github.com/BurntSushi/rust-csv) from 1.3.0 to 1.3.1.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="00b80bdb54"><code>00b80bd</code></a>
1.3.1</li>
<li><a
href="ce01ae7fe4"><code>ce01ae7</code></a>
reader: tweak record trimming logic</li>
<li><a
href="06764b91b8"><code>06764b9</code></a>
github: add FUNDING</li>
<li><a
href="533d37b7c9"><code>533d37b</code></a>
ci: bump pinned to Rust 1.65</li>
<li>See full diff in <a
href="https://github.com/BurntSushi/rust-csv/compare/1.3.0...1.3.1">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: 47b43fedf3c883f0d69345d2954c6f5147e1b182
2024-11-11 09:29:57 +00:00
dependabot[bot]
13043ccd3e Bump thiserror from 1.0.64 to 1.0.69 (#1324)
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.64 to
1.0.69.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/thiserror/releases">thiserror's
releases</a>.</em></p>
<blockquote>
<h2>1.0.69</h2>
<ul>
<li>Backport 2.0.2 fixes</li>
</ul>
<h2>1.0.68</h2>
<ul>
<li>Handle incomplete expressions more robustly in format arguments,
such as while code is being typed (<a
href="https://redirect.github.com/dtolnay/thiserror/issues/341">#341</a>,
<a
href="https://redirect.github.com/dtolnay/thiserror/issues/344">#344</a>)</li>
</ul>
<h2>1.0.67</h2>
<ul>
<li>Improve expression syntax support inside format arguments (<a
href="https://redirect.github.com/dtolnay/thiserror/issues/335">#335</a>,
<a
href="https://redirect.github.com/dtolnay/thiserror/issues/337">#337</a>,
<a
href="https://redirect.github.com/dtolnay/thiserror/issues/339">#339</a>,
<a
href="https://redirect.github.com/dtolnay/thiserror/issues/340">#340</a>)</li>
</ul>
<h2>1.0.66</h2>
<ul>
<li>Improve compile error on malformed format attribute (<a
href="https://redirect.github.com/dtolnay/thiserror/issues/327">#327</a>)</li>
</ul>
<h2>1.0.65</h2>
<ul>
<li>Ensure OUT_DIR is left with deterministic contents after build
script execution (<a
href="https://redirect.github.com/dtolnay/thiserror/issues/325">#325</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="41938bd3a0"><code>41938bd</code></a>
Release 1.0.69</li>
<li><a
href="9d6506e860"><code>9d6506e</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/thiserror/issues/382">#382</a>
from dtolnay/hang</li>
<li><a
href="591a44d9a3"><code>591a44d</code></a>
Fix fallback fmt expression parser hang</li>
<li><a
href="5b36e375c2"><code>5b36e37</code></a>
Add ui test of invalid expression syntax in display attribute</li>
<li><a
href="8d06fb5549"><code>8d06fb5</code></a>
Release 1.0.68</li>
<li><a
href="372fd8a71a"><code>372fd8a</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/thiserror/issues/344">#344</a>
from dtolnay/binop</li>
<li><a
href="08f89925bf"><code>08f8992</code></a>
Disregard equality binop in fallback parser</li>
<li><a
href="d2a823d2ae"><code>d2a823d</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/thiserror/issues/343">#343</a>
from dtolnay/unnamed</li>
<li><a
href="b3bf7a6f69"><code>b3bf7a6</code></a>
Add logic to determine whether unnamed fmt arguments are present</li>
<li><a
href="490f9c017b"><code>490f9c0</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/thiserror/issues/342">#342</a>
from dtolnay/synfull</li>
<li>Additional commits viewable in <a
href="https://github.com/dtolnay/thiserror/compare/1.0.64...1.0.69">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: bfec7ed0b8622954c3fda247160a0facce2e1ec0
2024-11-11 08:53:09 +00:00
Brandon Simmons
efee881784 ENG-1227: mbs: reduce artifact size by omitting "default" values (#1323)
We get a 17% reduction in size for chinook.json, 14% for our big schema.

Benchmark is 8% faster for chinook.json

<!-- The PR description should answer 2 important questions: -->

### What

reduce artifact size

### How

remove certain common "default" fields on serialization, to be
repopulated on deserialization. Since this works at the serde level we
should still benefit if we manage to switch to e.g. bincode

I attempted to create a macro for this, but decided it wasn't worth it.
Fields were chosen by sorting and counting json fields, and adding these
annotations for the heaviest ones.

V3_GIT_ORIGIN_REV_ID: 4605016021fa6aafb97759e3bd5346116413a0ef
2024-11-07 16:35:05 +00:00
Poojan Savani
70b158e173 console: new prometheus monitoring banner added
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/11070
GitOrigin-RevId: 247731f7478e89bec9fc28036bdf14dfea2ea20d
2024-11-07 11:10:25 +00:00
Rakesh Emmadi
91f74550b5 metadata-resolve: refactor duplicate root field reporting in commands (#1320)
<!-- The PR description should answer 2 important questions: -->

### What

<!-- What is this PR trying to accomplish (and why, if it's not
obvious)? -->

<!-- Consider: do we need to add a changelog entry? -->

<!-- Does this PR introduce new validation that might break old builds?
-->

<!-- Consider: do we need to put new checks behind a flag? -->
No-op refactor. Just updates the error message.

### How

<!-- How is it trying to accomplish it (what are the implementation
steps)? -->
Define a type to track root fields and report error if the field is
already in use.

V3_GIT_ORIGIN_REV_ID: 91533ee0dd48087617e1950f1aeb42a1787edc16
2024-11-06 15:59:09 +00:00
Daniel Chambers
d3491fc9f6 Upgrade to NDC v0.2.0-rc.1 (#1291)
### What
This PR updates the engine to use the NDC Spec v0.2.0-rc.1 version. This
is very likely to be the final RC before release.

### How

The `ndc_models` crate got updated, which then resulted in the schema
migration code in `metadata_resolve` being updated. This affected a lot
of test results because connectors that used deprecated type
representations got migrated to other representations, and if a type
representation was missing then JSON was used instead.

The NDC request-sending code in `execute` was updated to send the
`X-Hasura-NDC-Version` header depending on the version of request
getting sent.

The custom connector was updated to be compatible with the new NDC
0.2.0-rc.1 types. This resulted in the schema changing, so a lot of
tests that contained the connector's schema were updated.

---------

Co-authored-by: Daniel Harvey <danieljamesharvey@gmail.com>
V3_GIT_ORIGIN_REV_ID: b1c7081eb1ee6cffdead08328a857903102332c6
2024-11-06 13:08:10 +00:00
Daniel Harvey
82489ad32f Update type representations (#1305)
<!-- The PR description should answer 2 important questions: -->

### What

These are no longer used since
https://github.com/hasura/v3-engine/pull/1301, let's remove them from
the metadata.

V3_GIT_ORIGIN_REV_ID: 17194f7fa30860738e99de6098fa84d212fee0d2
2024-11-06 11:44:07 +00:00
Daniel Harvey
9790e1fd86 JSONAPI filtering part 1 (#1314)
<!-- The PR description should answer 2 important questions: -->

### What

First iteration of JSONAPI filtering

What does it do?
- Field comparisons against values
- And
- Or

What doesn't it do
- Generate schema
- Use `BooleanExpressionType` to work out which operators are available
- Work for nested fields (which don't work anyway atm)

V3_GIT_ORIGIN_REV_ID: 71f490b2767275b5e57fa4bcf213f2339391c093
2024-11-05 18:09:02 +00:00
Rakesh Emmadi
b8629eaa58 server: implement protocol connection_init timeout
## Summary by CodeRabbit

## Release Notes

- **Documentation**
	- Updated the configuration documentation for the Hasura GraphQL Engine, including new flags and environment variables, with clarifications on WebSocket connection initialization and deprecated options.

- **Bug Fixes**
	- Enhanced WebSocket connection management and error handling, ensuring proper initialization and cleanup of connections across various components.

- **Tests**
	- Improved tests for WebSocket connection handling and logging, ensuring robust verification of connection states and error responses.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/11069
GitOrigin-RevId: 8ee25d702a64f3bb04077bbcf0f3e1bd10c916d6
2024-11-05 11:26:43 +00:00
Daniel Harvey
c62e5fed32 Enable strictDeps in our Nix builds (#1318)
<!-- The PR description should answer 2 important questions: -->

### What

All the docs examples have it, [it's recommended by the
author](https://github.com/ipetkov/crane/issues/403#issuecomment-1743416192),
and it should help with unnecessary rebuilds.

V3_GIT_ORIGIN_REV_ID: 3596dd987090756e0914f7babb1329c0d9c1a263
2024-11-05 10:13:28 +00:00
Daniel Harvey
9f7d961209 Update changelog for v2024.11.05 (#1317)
<!-- The PR description should answer 2 important questions: -->

### What

Changelog update.

V3_GIT_ORIGIN_REV_ID: 3162167208fd9cce1d5f5bda4f28ef3f65339ce9
2024-11-05 09:50:33 +00:00
Daniel Harvey
1b143c10ff Fix JSONAPI sparse fields (#1316)
<!-- The PR description should answer 2 important questions: -->

### What

Accidentally made the fallthrough to show all fields too liberal, so our
"include this field?" function became const true. Now we check properly.

V3_GIT_ORIGIN_REV_ID: a56ce76e1cdf57ea17856b9835128f75b3cf18c3
2024-11-05 09:50:27 +00:00
Rakesh Emmadi
d4465ce035 graphql-ws: fix stop all pollers when a connection is dropped (#1315)
<!-- The PR description should answer 2 important questions: -->

### What

<!-- What is this PR trying to accomplish (and why, if it's not
obvious)? -->

<!-- Consider: do we need to add a changelog entry? -->

<!-- Does this PR introduce new validation that might break old builds?
-->

<!-- Consider: do we need to put new checks behind a flag? -->
Fix a bug with pollers are not being stopped when the connection is
dropped.

### How
Fetch all poller operation ids at once from a mutex map and stop each
poller associated with them in a for-loop.
<!-- How is it trying to accomplish it (what are the implementation
steps)? -->

V3_GIT_ORIGIN_REV_ID: f17511d611b92ace3de2c83e606d26214649878b
2024-11-05 03:54:32 +00:00
Daniel Harvey
c8d43adb1c JSONAPI in multitenant (#1303)
V3_GIT_ORIGIN_REV_ID: 9be48c7e0fa948a1c36d94a48f0a2913984b24a7
2024-11-04 15:11:35 +00:00
Daniel Harvey
df79ec144c Print nix build debugging in build (#1313)
<!-- The PR description should answer 2 important questions: -->

### What

I feel like Nix builds more than it should, and I'm interested why.
[According to the crane
docs](https://crane.dev/faq/constant-rebuilds.html#debugging-with-just-nix),
we can use this to hopefully see what is going on, by diffing the output
between builds.

### How

Add `nix derivation show -r .#output` as a build step.

V3_GIT_ORIGIN_REV_ID: 32bce8315874b9effb075aa834a891cf0dcc00e2
2024-11-04 12:27:34 +00:00
Daniel Harvey
e537c88d4f Use BTreeSet to collect Role in metadata-resolve (#1312)
<!-- The PR description should answer 2 important questions: -->

### What

JSONAPI builds iterate over `roles` in metadata, and one was very slow,
realised it was because it was calculating for `admin` over and over.
This changes the `roles` in `metadata-resolve` to be collected in a
`BTreeSet` to remove duplicates, which fixes the problem.

### How

Change `Vec` to `BTreeSet`, fix type errors and snapshots.

V3_GIT_ORIGIN_REV_ID: c61ef9e490c3cde9d004c08ef71dc73e92cd6e7e
2024-11-04 11:42:46 +00:00
dependabot[bot]
1667c96c5d Bump derive_more from 0.99.18 to 1.0.0 (#1310)
Bumps [derive_more](https://github.com/JelteF/derive_more) from 0.99.18
to 1.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JelteF/derive_more/releases">derive_more's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.0 - Finally a stable release</h2>
<p><code>derive_more</code> is a library that adds derives for many of
the standard library traits. By using this library the following code
just works:</p>
<pre lang="rust"><code>use derive_more::{Add, Display, From, Into};
<p>#[derive(PartialEq, From, Add)]
struct MyInt(i32);</p>
<p>#[derive(PartialEq, From, Into)]
struct Point2D {
x: i32,
y: i32,
}</p>
<p>#[derive(PartialEq, From, Add, Display)]
enum MyEnum {
#[display(&quot;int: {_0}&quot;)]
Int(i32),
Uint(u32),
#[display(&quot;nothing&quot;)]
Nothing,
}</p>
<p>assert!(MyInt(11) == MyInt(5) + 6.into());
assert!((5, 6) == Point2D { x: 5, y: 6 }.into());
assert!(MyEnum::Int(15) == (MyEnum::Int(8) + 7.into()).unwrap());
assert!(MyEnum::Int(15).to_string() == &quot;int: 15&quot;);
assert!(MyEnum::Uint(42).to_string() == &quot;42&quot;);
assert!(MyEnum::Nothing.to_string() == &quot;nothing&quot;);
</code></pre></p>
<p>Now, more than 8 years after the first commit and almost 5 years
after the 0.99.0 release, <code>derive_more</code> has finally reached
its 1.0.0 release. This release contains a lot of changes (including
some breaking ones) to make it easier to use the derives and make it
possible to extend them without having to break backwards compatibility
again. There are five major changes that I would like to call out, but
there are many more changes that are documented below:</p>
<ol>
<li>There is a new <code>Debug</code> derive that can be used to easily
customize <code>Debug</code> formatting.</li>
<li>A greatly improved <code>Display</code> derive, which allows you to
do anything that <a
href="https://github.com/dtolnay/thiserror"><code>thiserror</code></a>
provides, but it works for any type not just errors. And by combining
the <code>Display</code> derive with the <code>Error</code> and
<code>From</code> derives, there shouldn't really be any need to use
<code>thiserror</code> anymore (if you are missing a feature/behaviour
from <code>thiserror</code> please report an issue).</li>
<li>Traits that can return errors now return a type that implements
<code>Error</code> when an error occurs instead of a <code>&amp;'static
str</code>.</li>
<li>When using <code>use derive_more::SomeTrait</code> the actual trait
is also imported not just the derive macro. This is especially useful
for <code>Error</code> and
<code>Display</code></li>
<li>The docs are now rendered on docs.rs and are much better
overall.</li>
</ol>
<h3>Breaking changes</h3>
<ul>
<li>The minimum supported Rust version (MSRV) is now Rust 1.75.</li>
<li>Add the <code>std</code> feature which should be disabled in
<code>no_std</code> environments.</li>
<li>All Cargo features, except <code>std</code>, are now disabled by
default. The <code>full</code> feature can be used to get the old
behavior of supporting all possible derives.</li>
<li>The <code>TryFrom</code>, <code>Add</code>, <code>Sub</code>,
<code>BitAnd</code>, <code>BitOr</code>, <code>BitXor</code>,
<code>Not</code> and <code>Neg</code> derives now return a dedicated
error type instead of a <code>&amp;'static str</code> on error.</li>
<li>The <code>FromStr</code> derive now uses a dedicated
<code>FromStrError</code> error type instead of generating unique one
each time.</li>
<li>The <code>Display</code> derive (and other <code>fmt</code>-like
ones) now uses <code>#[display(&quot;...&quot;,
(&lt;expr&gt;),*)]</code> syntax instead of <code>#[display(fmt =
&quot;...&quot;, (&quot;&lt;expr&gt;&quot;),*)]</code>, and
<code>#[display(bound(&lt;bound&gt;))]</code> instead of
<code>#[display(bound = &quot;&lt;bound&gt;&quot;)]</code>. So without
the double quotes around the expressions and bounds.</li>
<li>The <code>Debug</code> and <code>Display</code> derives (and other
<code>fmt</code>-like ones) now transparently delegate to the inner type
when <code>#[display(&quot;...&quot;, (&lt;expr&gt;),*)]</code>
attribute is trivially substitutable with a transparent call. (<a
href="https://redirect.github.com/JelteF/derive_more/pull/322">#322</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JelteF/derive_more/blob/master/CHANGELOG.md">derive_more's
changelog</a>.</em></p>
<blockquote>
<h2>1.0.0 - 2024-08-07</h2>
<p>More than 8 years after the first commit and almost 5 years after the
0.99.0
release, <code>derive_more</code> has finally reached its 1.0.0 release.
This release
contains a lot of changes (including some breaking ones) to make it
easier to
use the derives and make it possible to extend them without having to
break
backwards compatibility again. There are five major changes that I would
like
to call out, but there are many more changes that are documented
below:</p>
<ol>
<li>There is a new <code>Debug</code> derive that can be used to easily
customize <code>Debug</code>
formatting.</li>
<li>A greatly improved <code>Display</code> derive, which allows you to
do anything that
<a
href="https://github.com/dtolnay/thiserror"><code>thiserror</code></a>
provides, but it works
for any type not just errors. And by combining the <code>Display</code>
derive with the
<code>Error</code> and <code>From</code> derives, there shouldn't really
be any need to use
<code>thiserror</code> anymore (if you are missing a feature/behaviour
from <code>thiserror</code>
please report an issue).</li>
<li>Traits that can return errors now return a type that implements
<code>Error</code>
when an error occurs instead of a <code>&amp;'static str</code>.</li>
<li>When using <code>use derive_more::SomeTrait</code> the actual trait
is also imported
not just the derive macro. This is especially useful for
<code>Error</code> and
<code>Display</code></li>
<li>The docs are now rendered on docs.rs and are much better
overall.</li>
</ol>
<h3>Breaking changes</h3>
<ul>
<li>The minimum supported Rust version (MSRV) is now Rust 1.75.</li>
<li>Add the <code>std</code> feature which should be disabled in
<code>no_std</code> environments.</li>
<li>All Cargo features, except <code>std</code>, are now disabled by
default. The <code>full</code>
feature can be used to get the old behavior of supporting all possible
derives.</li>
<li>The <code>TryFrom</code>, <code>Add</code>, <code>Sub</code>,
<code>BitAnd</code>, <code>BitOr</code>, <code>BitXor</code>,
<code>Not</code> and <code>Neg</code>
derives now return a dedicated error type instead of a
<code>&amp;'static str</code> on
error.</li>
<li>The <code>FromStr</code> derive now uses a dedicated
<code>FromStrError</code> error type instead
of generating unique one each time.</li>
<li>The <code>Display</code> derive (and other <code>fmt</code>-like
ones) now uses
<code>#[display(&quot;...&quot;, (&lt;expr&gt;),*)]</code> syntax
instead of
<code>#[display(fmt = &quot;...&quot;,
(&quot;&lt;expr&gt;&quot;),*)]</code>, and
<code>#[display(bound(&lt;bound&gt;))]</code>
instead of <code>#[display(bound = &quot;&lt;bound&gt;&quot;)]</code>.
So without the double quotes
around the expressions and bounds.</li>
<li>The <code>Debug</code> and <code>Display</code> derives (and other
<code>fmt</code>-like ones) now transparently
delegate to the inner type when <code>#[display(&quot;...&quot;,
(&lt;expr&gt;),*)]</code> attribute is
trivially substitutable with a transparent call.
(<a
href="https://redirect.github.com/JelteF/derive_more/pull/322">#322</a>)</li>
<li>The <code>DebugCustom</code> derive is renamed to just
<code>Debug</code> (gated now under a separate
<code>debug</code> feature), and its semantics were changed to be a
superset of <code>std</code> variant
of <code>Debug</code>.</li>
<li>The <code>From</code> derive doesn't derive
<code>From&lt;()&gt;</code> for enum variants without any
fields anymore. This feature was removed because it was considered
useless in</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d7f5b9e94d"><code>d7f5b9e</code></a>
chore: Release</li>
<li><a
href="40201b1e2e"><code>40201b1</code></a>
Update release date to be correct</li>
<li><a
href="88863ca4e6"><code>88863ca</code></a>
Update changelog wording</li>
<li><a
href="b713835894"><code>b713835</code></a>
Improve error when not enabling any features</li>
<li><a
href="330e4252fb"><code>330e425</code></a>
Order features in Cargo.toml alphabetically</li>
<li><a
href="84f2cbb05f"><code>84f2cbb</code></a>
Update README and CHANGELOG in preparation of 1.0.0</li>
<li><a
href="e8d60cf0e5"><code>e8d60cf</code></a>
Add compile_fail test for on purpose limited bounds (<a
href="https://redirect.github.com/JelteF/derive_more/issues/393">#393</a>,
<a
href="https://redirect.github.com/JelteF/derive_more/issues/392">#392</a>)</li>
<li><a
href="f665d18125"><code>f665d18</code></a>
Make anyhow reference a bit less strong</li>
<li><a
href="6d632b2db2"><code>6d632b2</code></a>
Add release announcement (<a
href="https://redirect.github.com/JelteF/derive_more/issues/390">#390</a>)</li>
<li><a
href="e87ab1315f"><code>e87ab13</code></a>
Don't create git tags for derive_more-impl (<a
href="https://redirect.github.com/JelteF/derive_more/issues/391">#391</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/JelteF/derive_more/compare/v0.99.18...v1.0.0">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Daniel Harvey <danieljamesharvey@gmail.com>
V3_GIT_ORIGIN_REV_ID: 2a5d2033a90d16d5bf2096db5a717e31128b8c00
2024-11-04 11:13:21 +00:00
dependabot[bot]
fb5fd77b04 Bump anyhow from 1.0.91 to 1.0.92 (#1311)
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.91 to 1.0.92.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/anyhow/releases">anyhow's
releases</a>.</em></p>
<blockquote>
<h2>1.0.92</h2>
<ul>
<li>Support Rust 1.82's <code>&amp;raw const</code> and <code>&amp;raw
mut</code> syntax inside <code>ensure!</code> (<a
href="https://redirect.github.com/dtolnay/anyhow/issues/390">#390</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fd03a8e792"><code>fd03a8e</code></a>
Release 1.0.92</li>
<li><a
href="a16252b39b"><code>a16252b</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/anyhow/issues/390">#390</a>
from dtolnay/rawaddr</li>
<li><a
href="fcf2ef8da5"><code>fcf2ef8</code></a>
Compile &amp;raw test on Rust 1.82+ only</li>
<li><a
href="1e7e9fe1ed"><code>1e7e9fe</code></a>
Parse raw address expression syntax</li>
<li><a
href="7d1a8f9c1d"><code>7d1a8f9</code></a>
Add test of raw addr expression syntax</li>
<li>See full diff in <a
href="https://github.com/dtolnay/anyhow/compare/1.0.91...1.0.92">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: 3ed3791e3e2b35bdd1aa1cd5b72b00a65aa3248b
2024-11-04 09:21:06 +00:00
dependabot[bot]
f83c63c8e8 Bump serde_json from 1.0.128 to 1.0.132 (#1309)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.128 to
1.0.132.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/serde-rs/json/releases">serde_json's
releases</a>.</em></p>
<blockquote>
<h2>1.0.132</h2>
<ul>
<li>Improve binary size and compile time for JSON array and JSON object
deserialization by about 50% (<a
href="https://redirect.github.com/serde-rs/json/issues/1205">#1205</a>)</li>
<li>Improve performance of JSON array and JSON object deserialization by
about 8% (<a
href="https://redirect.github.com/serde-rs/json/issues/1206">#1206</a>)</li>
</ul>
<h2>1.0.131</h2>
<ul>
<li>Implement Deserializer and IntoDeserializer for <code>Map&lt;String,
Value&gt;</code> and <code>&amp;Map&lt;String, Value&gt;</code> (<a
href="https://redirect.github.com/serde-rs/json/issues/1135">#1135</a>,
thanks <a
href="https://github.com/swlynch99"><code>@​swlynch99</code></a>)</li>
</ul>
<h2>1.0.130</h2>
<ul>
<li>Support converting and deserializing <code>Number</code> from i128
and u128 (<a
href="https://redirect.github.com/serde-rs/json/issues/1141">#1141</a>,
thanks <a
href="https://github.com/druide"><code>@​druide</code></a>)</li>
</ul>
<h2>1.0.129</h2>
<ul>
<li>Add <a
href="https://docs.rs/serde_json/1/serde_json/struct.Map.html#method.sort_keys"><code>serde_json::Map::sort_keys</code></a>
and <a
href="https://docs.rs/serde_json/1/serde_json/enum.Value.html#method.sort_all_objects"><code>serde_json::Value::sort_all_objects</code></a>
(<a
href="https://redirect.github.com/serde-rs/json/issues/1199">#1199</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="86d933cfd7"><code>86d933c</code></a>
Release 1.0.132</li>
<li><a
href="f45b422a3b"><code>f45b422</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/json/issues/1206">#1206</a>
from dtolnay/hasnext</li>
<li><a
href="f2082d2a04"><code>f2082d2</code></a>
Clearer order of comparisons</li>
<li><a
href="0f54a1a0df"><code>0f54a1a</code></a>
Handle early return sooner on eof in seq or map</li>
<li><a
href="2a4cb44f7c"><code>2a4cb44</code></a>
Rearrange 'match peek'</li>
<li><a
href="4cb90ce66d"><code>4cb90ce</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/json/issues/1205">#1205</a>
from dtolnay/hasnext</li>
<li><a
href="b71ccd2d8f"><code>b71ccd2</code></a>
Reduce duplicative instantiation of logic in SeqAccess and
MapAccess</li>
<li><a
href="a810ba9850"><code>a810ba9</code></a>
Release 1.0.131</li>
<li><a
href="0d084c5038"><code>0d084c5</code></a>
Touch up PR 1135</li>
<li><a
href="b4954a9561"><code>b4954a9</code></a>
Merge pull request <a
href="https://redirect.github.com/serde-rs/json/issues/1135">#1135</a>
from swlynch99/map-deserializer</li>
<li>Additional commits viewable in <a
href="https://github.com/serde-rs/json/compare/1.0.128...1.0.132">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: e8b51e0d7f60a5759a4f0f91ee48886adc3b8d86
2024-11-04 09:17:17 +00:00
dependabot[bot]
6ec7a2fff0 Bump insta from 1.40.0 to 1.41.1 (#1307)
Bumps [insta](https://github.com/mitsuhiko/insta) from 1.40.0 to 1.41.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/mitsuhiko/insta/releases">insta's
releases</a>.</em></p>
<blockquote>
<h2>1.41.1</h2>
<h2>Release Notes</h2>
<ul>
<li>Re-release of 1.41.0 to generate release artifacts correctly.</li>
</ul>
<h2>Install cargo-insta 1.41.1</h2>
<h3>Install prebuilt binaries via shell script</h3>
<pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf
https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-installer.sh
| sh
</code></pre>
<h3>Install prebuilt binaries via powershell script</h3>
<pre lang="sh"><code>powershell -c &quot;irm
https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-installer.ps1
| iex&quot;
</code></pre>
<h2>Download cargo-insta 1.41.1</h2>
<table>
<thead>
<tr>
<th>File</th>
<th>Platform</th>
<th>Checksum</th>
</tr>
</thead>
<tbody>
<tr>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-aarch64-apple-darwin.tar.xz">cargo-insta-aarch64-apple-darwin.tar.xz</a></td>
<td>Apple Silicon macOS</td>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-aarch64-apple-darwin.tar.xz.sha256">checksum</a></td>
</tr>
<tr>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-apple-darwin.tar.xz">cargo-insta-x86_64-apple-darwin.tar.xz</a></td>
<td>Intel macOS</td>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-apple-darwin.tar.xz.sha256">checksum</a></td>
</tr>
<tr>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-pc-windows-msvc.zip">cargo-insta-x86_64-pc-windows-msvc.zip</a></td>
<td>x64 Windows</td>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-pc-windows-msvc.zip.sha256">checksum</a></td>
</tr>
<tr>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-unknown-linux-gnu.tar.xz">cargo-insta-x86_64-unknown-linux-gnu.tar.xz</a></td>
<td>x64 Linux</td>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-unknown-linux-gnu.tar.xz.sha256">checksum</a></td>
</tr>
<tr>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-unknown-linux-musl.tar.xz">cargo-insta-x86_64-unknown-linux-musl.tar.xz</a></td>
<td>x64 MUSL Linux</td>
<td><a
href="https://github.com/mitsuhiko/insta/releases/download/1.41.1/cargo-insta-x86_64-unknown-linux-musl.tar.xz.sha256">checksum</a></td>
</tr>
</tbody>
</table>
<h2>1.41.0</h2>
<ul>
<li>
<p>Experimental support for binary snapshots. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/610">#610</a>
(Florian Plattner)</p>
</li>
<li>
<p><code>--force-update-snapshots</code> now causes
<code>cargo-insta</code> to write every snapshot, regardless of whether
snapshots fully match, and now implies <code>--accept</code>. This
allows for <code>--force-update-snapshots</code> to update inline
snapshots' delimiters and indentation.</p>
<p>For the previous behavior of <code>--force-update-snapshots</code>,
which limited writes to snapshots which didn't fully match, use
<code>--require-full-match</code>. The main difference between
<code>--require-full-match</code> and the existing behavior of
<code>--force-update-snapshots</code>
is a non-zero exit code on any snapshots which don't fully match.</p>
<p>Like the previous behavior or <code>--force-update-snapshots</code>,
<code>--require-full-match</code> doesn't track inline snapshots'
delimiters or
indentation, so can't update if those don't match. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/644">#644</a></p>
</li>
<li>
<p>Inline snapshots only use <code>#</code> characters as delimiters
when required. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/603">#603</a></p>
</li>
<li>
<p>Warnings for undiscovered snapshots are more robust, and include
files with custom snapshot extensions. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/637">#637</a></p>
</li>
<li>
<p>Insta runs correctly on packages which reference rust files in a
parent path. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/626">#626</a></p>
</li>
<li>
<p>Warnings are printed when any snapshot uses a legacy format. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/599">#599</a></p>
</li>
<li>
<p><code>cargo insta --version</code> now prints a version. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/665">#665</a></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md">insta's
changelog</a>.</em></p>
<blockquote>
<h2>1.41.1</h2>
<ul>
<li>Re-release of 1.41.1 to generate release artifacts correctly.</li>
</ul>
<h2>1.41.0</h2>
<ul>
<li>
<p>Experimental support for binary snapshots. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/610">#610</a>
(Florian Plattner)</p>
</li>
<li>
<p><code>--force-update-snapshots</code> now causes
<code>cargo-insta</code> to write every snapshot, regardless of whether
snapshots fully match, and now implies <code>--accept</code>.  This
allows for <code>--force-update-snapshots</code> to update inline
snapshots'
delimiters and indentation.</p>
<p>For the previous behavior of <code>--force-update-snapshots</code>,
which limited writes to
snapshots which didn't fully match, use
<code>--require-full-match</code>.
The main difference between <code>--require-full-match</code> and the
existing behavior of <code>--force-update-snapshots</code>
is a non-zero exit code on any snapshots which don't fully match.</p>
<p>Like the previous behavior of <code>--force-update-snapshots</code>,
<code>--require-full-match</code>
doesn't track inline snapshots' delimiters or
indentation, so can't update if those don't match. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/644">#644</a></p>
</li>
<li>
<p>Inline snapshots only use <code>#</code> characters as delimiters
when required. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/603">#603</a></p>
</li>
<li>
<p>Warnings for undiscovered snapshots are more robust, and include
files with
custom snapshot extensions. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/637">#637</a></p>
</li>
<li>
<p>Insta runs correctly on packages which reference rust files in a
parent path. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/626">#626</a></p>
</li>
<li>
<p>Warnings are printed when any snapshot uses a legacy format. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/599">#599</a></p>
</li>
<li>
<p><code>cargo insta --version</code> now prints a version. <a
href="https://redirect.github.com/mitsuhiko/insta/issues/665">#665</a></p>
</li>
<li>
<p><code>insta</code> now internally uses
<code>INSTA_UPDATE=force</code> rather than
<code>INSTA_FORCE_UPDATE=1</code>. (This doesn't affect users of
<code>cargo-insta</code>, which
handles this internally.) <a
href="https://redirect.github.com/mitsuhiko/insta/issues/482">#482</a></p>
</li>
<li>
<p><code>cargo-insta</code>'s integration tests continue to grow over
the past couple of versions,
and now offer coverage of most of <code>cargo-insta</code>'s
interface.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="cb08d924f0"><code>cb08d92</code></a>
Bump version to 1.41.1 (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/681">#681</a>)</li>
<li><a
href="6d555d4fc4"><code>6d555d4</code></a>
Changelog for 1.41.1 (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/680">#680</a>)</li>
<li><a
href="0317928160"><code>0317928</code></a>
Refine changelog (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/675">#675</a>)</li>
<li><a
href="0e07a50b8b"><code>0e07a50</code></a>
Update a couple docstrings (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/669">#669</a>)</li>
<li><a
href="083ce14965"><code>083ce14</code></a>
Another small simplification of <code>prepare_test_runner</code> (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/667">#667</a>)</li>
<li><a
href="b7dea9b21d"><code>b7dea9b</code></a>
Small simplification of <code>prepare_test_runner</code> (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/666">#666</a>)</li>
<li><a
href="5fd34e6678"><code>5fd34e6</code></a>
Print a version with <code>--version</code> (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/665">#665</a>)</li>
<li><a
href="a8b6cc221c"><code>a8b6cc2</code></a>
Small refactors (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/664">#664</a>)</li>
<li><a
href="4f16d70a37"><code>4f16d70</code></a>
Show hidden files in functional tests (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/663">#663</a>)</li>
<li><a
href="2b8fce7be8"><code>2b8fce7</code></a>
Consolidate <code>Cargo.toml</code> creation in functional tests (<a
href="https://redirect.github.com/mitsuhiko/insta/issues/662">#662</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/mitsuhiko/insta/compare/1.40.0...1.41.1">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: 7a190bcc1f3737b8d1d00ab8d53e2457ad6e108a
2024-11-04 09:15:35 +00:00
dependabot[bot]
e151f2ab6e Bump tokio from 1.40.0 to 1.41.0 (#1308)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.40.0 to 1.41.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/tokio/releases">tokio's
releases</a>.</em></p>
<blockquote>
<h2>Tokio v1.41.0</h2>
<h1>1.41.0 (Oct 22th, 2024)</h1>
<h3>Added</h3>
<ul>
<li>metrics: stabilize <code>global_queue_depth</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6854">#6854</a>,
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6918">#6918</a>)</li>
<li>net: add conversions for unix <code>SocketAddr</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6868">#6868</a>)</li>
<li>sync: add <code>watch::Sender::sender_count</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6836">#6836</a>)</li>
<li>sync: add <code>mpsc::Receiver::blocking_recv_many</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6867">#6867</a>)</li>
<li>task: stabilize <code>Id</code> apis (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6793">#6793</a>,
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6891">#6891</a>)</li>
</ul>
<h3>Added (unstable)</h3>
<ul>
<li>metrics: add H2 Histogram option to improve histogram granularity
(<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6897">#6897</a>)</li>
<li>metrics: rename some histogram apis (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6924">#6924</a>)</li>
<li>runtime: add <code>LocalRuntime</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6808">#6808</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>runtime: box futures larger than 16k on release mode (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6826">#6826</a>)</li>
<li>sync: add <code>#[must_use]</code> to <code>Notified</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6828">#6828</a>)</li>
<li>sync: make <code>watch</code> cooperative (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6846">#6846</a>)</li>
<li>sync: make <code>broadcast::Receiver</code> cooperative (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6870">#6870</a>)</li>
<li>task: add task size to tracing instrumentation (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6881">#6881</a>)</li>
<li>wasm: enable <code>cfg_fs</code> for <code>wasi</code> target (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6822">#6822</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>net: fix regression of abstract socket path in unix socket (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6838">#6838</a>)</li>
</ul>
<h3>Documented</h3>
<ul>
<li>io: recommend <code>OwnedFd</code> with <code>AsyncFd</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6821">#6821</a>)</li>
<li>io: document cancel safety of <code>AsyncFd</code> methods (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6890">#6890</a>)</li>
<li>macros: render more comprehensible documentation for
<code>join</code> and <code>try_join</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6814">#6814</a>,
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6841">#6841</a>)</li>
<li>net: fix swapped examples for <code>TcpSocket::set_nodelay</code>
and <code>TcpSocket::nodelay</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6840">#6840</a>)</li>
<li>sync: document runtime compatibility (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6833">#6833</a>)</li>
</ul>
<p><a
href="https://redirect.github.com/tokio-rs/tokio/issues/6793">#6793</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6793">tokio-rs/tokio#6793</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6808">#6808</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6808">tokio-rs/tokio#6808</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6810">#6810</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6810">tokio-rs/tokio#6810</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6814">#6814</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6814">tokio-rs/tokio#6814</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6821">#6821</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6821">tokio-rs/tokio#6821</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6822">#6822</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6822">tokio-rs/tokio#6822</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6826">#6826</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6826">tokio-rs/tokio#6826</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6828">#6828</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6828">tokio-rs/tokio#6828</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6833">#6833</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6833">tokio-rs/tokio#6833</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6836">#6836</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6836">tokio-rs/tokio#6836</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6838">#6838</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6838">tokio-rs/tokio#6838</a>
<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6840">#6840</a>:
<a
href="https://redirect.github.com/tokio-rs/tokio/pull/6840">tokio-rs/tokio#6840</a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="01e04daaa1"><code>01e04da</code></a>
chore: prepare Tokio v1.41.0 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6917">#6917</a>)</li>
<li><a
href="92ccadeb3c"><code>92ccade</code></a>
runtime: fix stability feature flags for docs (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6909">#6909</a>)</li>
<li><a
href="fbfeb9a68a"><code>fbfeb9a</code></a>
metrics: rename <code>*_poll_count_*</code> to
<code>*_poll_time_*</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6924">#6924</a>)</li>
<li><a
href="da745ff335"><code>da745ff</code></a>
metrics: add H2 Histogram option to improve histogram granularity (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6897">#6897</a>)</li>
<li><a
href="ce1c74f1cc"><code>ce1c74f</code></a>
metrics: fix deadlock in injection_queue_depth_multi_thread test (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6916">#6916</a>)</li>
<li><a
href="28c9a14a2e"><code>28c9a14</code></a>
metrics: rename <code>injection_queue_depth</code> to
<code>global_queue_depth</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6918">#6918</a>)</li>
<li><a
href="32e0b4325f"><code>32e0b43</code></a>
ci: freeze FreeBSD and wasm-unknown-unknown on rustc 1.81 (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6911">#6911</a>)</li>
<li><a
href="1656d8e231"><code>1656d8e</code></a>
sync: add <code>mpsc::Receiver::blocking_recv_many</code> (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6867">#6867</a>)</li>
<li><a
href="c9e998e4b3"><code>c9e998e</code></a>
ci: print the correct sort order of the dictionary on failure (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6905">#6905</a>)</li>
<li><a
href="512e9decfb"><code>512e9de</code></a>
rt: add LocalRuntime (<a
href="https://redirect.github.com/tokio-rs/tokio/issues/6808">#6808</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tokio-rs/tokio/compare/tokio-1.40.0...tokio-1.41.0">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: 1d3830af98e2d9e0e3e5bd479a27e2c8c71af377
2024-11-04 09:06:31 +00:00
Daniel Harvey
a9f6610691 Split resolved metadata from SQL catalog (#1304)
V3_GIT_ORIGIN_REV_ID: 8e64fd6200e207336d18ed6b7c61559fe4b1470d
2024-11-01 09:30:58 +00:00
Vamshi Surabhi
6c7ffc270c sql introspection: unsupported metadata objects (#1301)
<!-- The PR description should answer 2 important questions: -->

### What

This allows for querying the metadata objects that couldn't be exposed
to the sql layer: such as models, commands, object types, fields of
object types and scalar types. This will help users in debugging their
graph.

### How

Instead of ignoring unsupported metadata objects, we propagate them
through call stacks as required and capture them as part of
introspection tables. Eg. on the duckduckemail API:

```bash
❯ echo 'select * from hasura.unsupported_commands;' | jq --null-input --rawfile sql /dev/stdin '{"sql": $sql}' | curl --silent -XPOST -H 'Content-Type: application/json' -d @- 'http://localhost:3000/v1/sql' | jq
[
  {
    "subgraph": "app",
    "name": "Bye",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "DdaCalendarLoaderInit",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "DdaCalendarLoaderStatus",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "DdaGmailLoaderInit",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "DdaGmailLoaderStatus",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "DdaMyLoaderInit",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "DdaMyLoaderStatus",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "Hello",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "SendEmail",
    "reason": "Return type not supported: String! (reason: scalar return types are not supported)"
  },
  {
    "subgraph": "app",
    "name": "TestCalendar",
    "reason": "Return type not supported: Json! (in subgraph app) (reason: scalar return types are not supported)"
  }
]

❯ echo 'select * from hasura.unsupported_scalars;' | jq --null-input --rawfile sql /dev/stdin '{"sql": $sql}' | curl --silent -XPOST -H 'Content-Type: application/json' -d @- 'http://localhost:3000/v1/sql' | jq
[
  {
    "subgraph": "app",
    "name": "Json",
    "reason": "No NDC representation found for scalar type 'Json'"
  }
]

❯ echo 'select * from hasura.unsupported_object_type_fields;' | jq --null-input --rawfile sql /dev/stdin '{"sql": $sql}' | curl --silent -XPOST -H 'Content-Type: application/json' -d @- 'http://localhost:3000/v1/sql' | jq
[
  {
    "subgraph": "app",
    "object": "CalendarEvents",
    "field_name": "attachments",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "CalendarEvents",
    "field_name": "conferenceData",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "CalendarEvents",
    "field_name": "extendedProperties",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "CalendarEvents",
    "field_name": "recurrence",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "CalendarEvents",
    "field_name": "reminders",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "GmailMessages",
    "field_name": "attachments",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "GmailMessages",
    "field_name": "bccAddresses",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "GmailMessages",
    "field_name": "ccAddresses",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "GmailMessages",
    "field_name": "headers",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "GmailMessages",
    "field_name": "labelIds",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  },
  {
    "subgraph": "app",
    "object": "GmailMessages",
    "field_name": "toAddresses",
    "reason": "Unsupported scalar type: No NDC representation found for scalar type 'Json'"
  }
]

❯ echo 'select * from hasura.unsupported_models;' | jq --null-input --rawfile sql /dev/stdin '{"sql": $sql}' | curl --silent -XPOST -H 'Content-Type: application/json' -d @- 'http://localhost:3000/v1/sql' | jq
[]

❯ echo 'select * from hasura.unsupported_object_types;' | jq --null-input --rawfile sql /dev/stdin '{"sql": $sql}' | curl --silent -XPOST -H 'Content-Type: application/json' -d @- 'http://localhost:3000/v1/sql' | jq
[]
```

V3_GIT_ORIGIN_REV_ID: 01aae03d80b0cd15773812fa05a2fd9a57223250
2024-10-31 15:01:11 +00:00
Daniel Harvey
ae25f249a2 Add more JSONAPI spans (#1297)
<!-- The PR description should answer 2 important questions: -->

### What

Lets be a bit more granular about our spans for JSONAPI endpoint.

<img width="1508" alt="Screenshot 2024-10-29 at 16 46 32"
src="https://github.com/user-attachments/assets/97f67ae3-ac27-4dcd-84a4-083dc6ef5e67">
V3_GIT_ORIGIN_REV_ID: d5c0342c0c9dae2f50e78c7f529a54eeedb541a9
2024-10-30 14:37:03 +00:00
Rakesh Emmadi
e15574de67 Release v2024.10.30 (#1299)
Update changelog for release v2024.10.30

V3_GIT_ORIGIN_REV_ID: 2bece667c6dedcd596f1ca684d09d42ecf38c1b2
2024-10-30 09:53:28 +00:00
Daniel Harvey
5790c088b1 Tidy up engine crate (#1296)
<!-- The PR description should answer 2 important questions: -->

### What

Needed to reuse some stuff when putting JSONAPI into multitenant, and
everything is a big tangled mess, so thought it was finally time to
clean up shop. Moves a bunch of stuff from `/bin` into the library in
`src` and splits it into files.

Functional no-op.

V3_GIT_ORIGIN_REV_ID: 87406e3fb63a1f90347782abeda3d4db14386270
2024-10-29 17:04:26 +00:00
Daniel Harvey
d5f70fd56a More JSONAPI schema tweaks (#1293)
<!-- The PR description should answer 2 important questions: -->

### What

A few tweaks to make OpenAPI validators happy.

V3_GIT_ORIGIN_REV_ID: a1ff6c7180f1ee02d0e6f53c83aeeceea964e5d8
2024-10-29 13:31:37 +00:00
Varun Choudhary
59406c4ee2 Console: add prometheus metrics link on monitoring tab
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/11065
Co-authored-by: Poojan Savani <33199323+savanipoojan78@users.noreply.github.com>
Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: 207d6d85becaa4bfe265ec0b59bfd5b40536cd53
2024-10-29 13:10:41 +00:00
Rakesh Emmadi
a759db7d5a graphql-ws: consider comma separated values for protocol header (#1295)
<!-- The PR description should answer 2 important questions: -->

### What

<!-- What is this PR trying to accomplish (and why, if it's not
obvious)? -->

<!-- Consider: do we need to add a changelog entry? -->

<!-- Does this PR introduce new validation that might break old builds?
-->

<!-- Consider: do we need to put new checks behind a flag? -->
Consider the possibility of multiple and comma separated header values
when validating the protocol name.

### How

<!-- How is it trying to accomplish it (what are the implementation
steps)? -->

V3_GIT_ORIGIN_REV_ID: 4431eda71e6dcbdbcc2df4520af1ed9cbfe8950d
2024-10-29 12:48:35 +00:00
Daniel Harvey
1b31f73d26 Combine graphql crates together (#1290)
<!-- The PR description should answer 2 important questions: -->

### What

Move `lang-graphql`, `graphql-ws` and `frontends/graphql` into the
`graphql` folder. Functional no-op.

V3_GIT_ORIGIN_REV_ID: c9d6c5db6693dbe9213569443a102a3b3b2e39f6
2024-10-29 10:16:46 +00:00
Rakesh Emmadi
1fce83f445 graphql-ws: Add Metrics (#1278)
<!-- The PR description should answer 2 important questions: -->

### What

Add the following metrics for GraphQL websockets:
- active connections
- active pollers
- total connections

<!-- What is this PR trying to accomplish (and why, if it's not
obvious)? -->

<!-- Consider: do we need to add a changelog entry? -->

<!-- Does this PR introduce new validation that might break old builds?
-->

<!-- Consider: do we need to put new checks behind a flag? -->

### How
This is a bit involved that I initially thought. In normal HTTP
requests, metrics are recorded in middleware. In websockets, metrics
have to be recorded in deeper layers of code. So made the websocket
metrics a part of the `Context` as it is available for each connection.
Defined a trait that impls a few methods to record metrics on connection
& poller managements, and use them in relevant code paths.

<!-- How is it trying to accomplish it (what are the implementation
steps)? -->

V3_GIT_ORIGIN_REV_ID: bbaf63fd7ef3274bf5fe72bb86aa8e07a28f6fe2
2024-10-29 09:23:15 +00:00
Daniel Harvey
4b285a7460 Release OrderByExpression (#1289)
<!-- The PR description should answer 2 important questions: -->

### What

Release `OrderByExpression` and version 2 of `Model`. These have been
working behind feature flags for a while.

### How

Remove feature flags, remove `hidden` pragmas on `open-dds` metadata.

V3_GIT_ORIGIN_REV_ID: dfb7e9316171c11d2605dfbf01552db093d81d63
2024-10-28 17:35:50 +00:00
Daniel Harvey
84bec972ce Add scalar operand for OrderByExpression (#1274)
<!-- The PR description should answer 2 important questions: -->

### What

Previously we stored scalar values for `OrderByExpression` inline, now
we break them out into their own discreet metadata items.

### How

Mostly fixing tests.

V3_GIT_ORIGIN_REV_ID: e3ee1c1c9c5ae05113cf82c10627cc89b8b9894c
2024-10-28 15:20:59 +00:00
Rakesh Emmadi
a6ed625cd7 graphql-ws: Implement connection expiry (#1281)
<!-- The PR description should answer 2 important questions: -->
TODO:
- ~Add a test for parsing connection expiry from headers~

### What

<!-- What is this PR trying to accomplish (and why, if it's not
obvious)? -->

<!-- Consider: do we need to add a changelog entry? -->

<!-- Does this PR introduce new validation that might break old builds?
-->

<!-- Consider: do we need to put new checks behind a flag? -->
Expire the connection if the duration is set in the `Context`.

### How
Spawn a background thread to wait until the expiry. Send a close message
after waiting completes.

<!-- How is it trying to accomplish it (what are the implementation
steps)? -->

V3_GIT_ORIGIN_REV_ID: a9d06c57d75cc87abc3c470ee096a99a8f378a9a
2024-10-28 15:03:59 +00:00
Daniel Harvey
161f40636c Check relationships exist in order_by_expressions resolve step (#1288)
<!-- The PR description should answer 2 important questions: -->

### What

Now when resolving `orderableRelationship` in `order_by_expressions` we
check the relationship name refers to a real relationship on that type,
and throw an error if not.

If we lookup the relationship and it refers to an unknown subgraph, we
exclude it but do not error.

V3_GIT_ORIGIN_REV_ID: 4d310c6e800cf830860efce30e28fc5f258bf39b
2024-10-28 13:46:52 +00:00
dependabot[bot]
dfcbef9fcf Bump flate2 from 1.0.32 to 1.0.34 (#1286)
Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.32 to
1.0.34.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/flate2-rs/releases">flate2's
releases</a>.</em></p>
<blockquote>
<h2>1.0.34</h2>
<h2>What's Changed</h2>
<ul>
<li>Add minimum build test back in to CI by <a
href="https://github.com/jongiddy"><code>@​jongiddy</code></a> in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/426">rust-lang/flate2-rs#426</a></li>
<li>docs: fix compression level range from 0-9 to 0-10 by <a
href="https://github.com/ByteBaker"><code>@​ByteBaker</code></a> in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/427">rust-lang/flate2-rs#427</a></li>
<li>Document backend differences in compression levels by <a
href="https://github.com/Shnatsel"><code>@​Shnatsel</code></a> in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/430">rust-lang/flate2-rs#430</a></li>
<li>Upgrade zlib-rs to 0.3.0 to get multiple bugfixes by <a
href="https://github.com/Shnatsel"><code>@​Shnatsel</code></a> in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/428">rust-lang/flate2-rs#428</a></li>
<li>Better wording in compression level docs by <a
href="https://github.com/Shnatsel"><code>@​Shnatsel</code></a> in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/431">rust-lang/flate2-rs#431</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/ByteBaker"><code>@​ByteBaker</code></a>
made their first contribution in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/427">rust-lang/flate2-rs#427</a></li>
<li><a href="https://github.com/Shnatsel"><code>@​Shnatsel</code></a>
made their first contribution in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/430">rust-lang/flate2-rs#430</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rust-lang/flate2-rs/compare/1.0.33...1.0.34">https://github.com/rust-lang/flate2-rs/compare/1.0.33...1.0.34</a></p>
<h2>1.0.33 - fix minimal manifest versions</h2>
<h2>What's Changed</h2>
<ul>
<li>Fix msrv: Run msrv checks with minimal versions by <a
href="https://github.com/NobodyXu"><code>@​NobodyXu</code></a> in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/425">rust-lang/flate2-rs#425</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/NobodyXu"><code>@​NobodyXu</code></a>
made their first contribution in <a
href="https://redirect.github.com/rust-lang/flate2-rs/pull/425">rust-lang/flate2-rs#425</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rust-lang/flate2-rs/compare/1.0.32...1.0.33">https://github.com/rust-lang/flate2-rs/compare/1.0.32...1.0.33</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1a28821dc1"><code>1a28821</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/flate2-rs/issues/431">#431</a>
from Shnatsel/better-wording</li>
<li><a
href="2c29780e50"><code>2c29780</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/flate2-rs/issues/428">#428</a>
from Shnatsel/upgrade-zlib-rs</li>
<li><a
href="423981aede"><code>423981a</code></a>
Better wording in compression level docs</li>
<li><a
href="da5c8cfd91"><code>da5c8cf</code></a>
Bump version</li>
<li><a
href="eeee4c6411"><code>eeee4c6</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/flate2-rs/issues/430">#430</a>
from Shnatsel/detailed-level-docs</li>
<li><a
href="731df32113"><code>731df32</code></a>
Update Cargo.toml</li>
<li><a
href="8210288eaa"><code>8210288</code></a>
Document backend differences</li>
<li><a
href="1f78c5c413"><code>1f78c5c</code></a>
Upgrade zlib-rs to 0.3.0 to get multiple bugfixes:</li>
<li><a
href="6fbd6d2115"><code>6fbd6d2</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/flate2-rs/issues/427">#427</a>
from ByteBaker/main</li>
<li><a
href="936aa35f45"><code>936aa35</code></a>
docs: correctly mention compression level</li>
<li>Additional commits viewable in <a
href="https://github.com/rust-lang/flate2-rs/compare/1.0.32...1.0.34">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: 2a093c7421bce953bf737ef4ad0e1e4bf0fb1688
2024-10-28 05:56:03 +00:00
dependabot[bot]
94d29107e4 Bump bytes from 1.7.2 to 1.8.0 (#1285)
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.7.2 to 1.8.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/bytes/releases">bytes's
releases</a>.</em></p>
<blockquote>
<h2>Bytes 1.8.0</h2>
<h1>1.8.0 (October 21, 2024)</h1>
<ul>
<li>Guarantee address in <code>split_off</code>/<code>split_to</code>
for empty slices (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/740">#740</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md">bytes's
changelog</a>.</em></p>
<blockquote>
<h1>1.8.0 (October 21, 2024)</h1>
<ul>
<li>Guarantee address in <code>split_off</code>/<code>split_to</code>
for empty slices (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/740">#740</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c45697ce42"><code>c45697c</code></a>
chore: prepare bytes v1.8.0 (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/741">#741</a>)</li>
<li><a
href="0ac54ca706"><code>0ac54ca</code></a>
Guarantee address in split_off/split_to for empty slices (<a
href="https://redirect.github.com/tokio-rs/bytes/issues/740">#740</a>)</li>
<li>See full diff in <a
href="https://github.com/tokio-rs/bytes/compare/v1.7.2...v1.8.0">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: 4812aa75c3858809831b0ab5d13343edc3ddebc1
2024-10-28 05:55:09 +00:00
dependabot[bot]
22c075a27c Bump regex from 1.11.0 to 1.11.1 (#1284)
Bumps [regex](https://github.com/rust-lang/regex) from 1.11.0 to 1.11.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's
changelog</a>.</em></p>
<blockquote>
<h1>1.11.1 (2024-10-24)</h1>
<p>This is a new patch release of <code>regex</code> that fixes
compilation on nightly
Rust when the unstable <code>pattern</code> crate feature is enabled.
Users on nightly
Rust without this feature enabled are unaffected.</p>
<p>Bug fixes:</p>
<ul>
<li>[BUG <a
href="https://redirect.github.com/rust-lang/regex/issues/1231">#1231</a>](<a
href="https://redirect.github.com/rust-lang/regex/issues/1231">rust-lang/regex#1231</a>):
Fix the <code>Pattern</code> trait implementation as a result of nightly
API breakage.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9870c06e6c"><code>9870c06</code></a>
1.11.1</li>
<li><a
href="80df54e4b9"><code>80df54e</code></a>
changelog: 1.11.1</li>
<li><a
href="991ba8836b"><code>991ba88</code></a>
unstable: fix <code>Pattern</code> trait implementation</li>
<li>See full diff in <a
href="https://github.com/rust-lang/regex/compare/1.11.0...1.11.1">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: a689680e9a9dc1e1ea771822bf9a8344bba47f75
2024-10-28 05:54:18 +00:00
dependabot[bot]
e6a70b6edf Bump anyhow from 1.0.89 to 1.0.91 (#1283)
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.89 to 1.0.91.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/anyhow/releases">anyhow's
releases</a>.</em></p>
<blockquote>
<h2>1.0.91</h2>
<ul>
<li>Ensure OUT_DIR is left with deterministic contents after build
script execution (<a
href="https://redirect.github.com/dtolnay/anyhow/issues/388">#388</a>)</li>
</ul>
<h2>1.0.90</h2>
<ul>
<li>Documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6c52daaa79"><code>6c52daa</code></a>
Release 1.0.91</li>
<li><a
href="4986853bea"><code>4986853</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/anyhow/issues/388">#388</a>
from dtolnay/outdir</li>
<li><a
href="f130b76204"><code>f130b76</code></a>
Clean up dep-info files from OUT_DIR</li>
<li><a
href="a0b868a60c"><code>a0b868a</code></a>
Release 1.0.90</li>
<li><a
href="0f741692fa"><code>0f74169</code></a>
Improve rendering of inline code in macros documentation</li>
<li><a
href="8ce4560fa4"><code>8ce4560</code></a>
Ignore needless_lifetimes clippy lint</li>
<li><a
href="be64707850"><code>be64707</code></a>
Resolve used_underscore_items pedantic clippy lint</li>
<li>See full diff in <a
href="https://github.com/dtolnay/anyhow/compare/1.0.89...1.0.91">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: 1f0c410bc81ca7bf9508b9fc6ff927d86f3c121a
2024-10-28 05:54:14 +00:00
dependabot[bot]
62673ef84a Bump proc-macro2 from 1.0.86 to 1.0.89 (#1282)
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2) from 1.0.86
to 1.0.89.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dtolnay/proc-macro2/releases">proc-macro2's
releases</a>.</em></p>
<blockquote>
<h2>1.0.89</h2>
<ul>
<li>Ensure OUT_DIR is left with deterministic contents after build
script execution (<a
href="https://redirect.github.com/dtolnay/proc-macro2/issues/474">#474</a>)</li>
</ul>
<h2>1.0.88</h2>
<ul>
<li>Return accurate line and column from <code>Span::start</code> and
<code>Span::end</code> inside proc macros on nightly (<a
href="https://redirect.github.com/dtolnay/proc-macro2/issues/472">#472</a>)</li>
</ul>
<h2>1.0.87</h2>
<ul>
<li>Check valid punctuation character in <code>Punct::new</code> (<a
href="https://redirect.github.com/dtolnay/proc-macro2/issues/470">#470</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="671d87da32"><code>671d87d</code></a>
Release 1.0.89</li>
<li><a
href="9574d983ae"><code>9574d98</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/proc-macro2/issues/474">#474</a>
from dtolnay/outdir</li>
<li><a
href="3e8962cc14"><code>3e8962c</code></a>
Clean up dep-info files from OUT_DIR</li>
<li><a
href="6b3395a280"><code>6b3395a</code></a>
Release 1.0.88</li>
<li><a
href="faee27e2ee"><code>faee27e</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/proc-macro2/issues/472">#472</a>
from dtolnay/startend</li>
<li><a
href="44f8ff2be1"><code>44f8ff2</code></a>
Restore nightly behavior of Span::start and Span::end</li>
<li><a
href="50b477d6dc"><code>50b477d</code></a>
Release 1.0.87</li>
<li><a
href="f0b6802512"><code>f0b6802</code></a>
Merge pull request <a
href="https://redirect.github.com/dtolnay/proc-macro2/issues/471">#471</a>
from dtolnay/punctnew</li>
<li><a
href="98ea26129e"><code>98ea261</code></a>
Check valid punctuation character in Punct::new</li>
<li><a
href="d60aaad1a5"><code>d60aaad</code></a>
Ignore missing_panics_doc pedantic clippy lint</li>
<li>Additional commits viewable in <a
href="https://github.com/dtolnay/proc-macro2/compare/1.0.86...1.0.89">compare
view</a></li>
</ul>
</details>
<br />

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

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

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

---

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

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

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
V3_GIT_ORIGIN_REV_ID: e0dac3bc669a7b5da2a95045e0e933446e30a11d
2024-10-28 05:39:15 +00:00
Vamshi Surabhi
5866fd176d sql: error detail for disallowed mutations (#1280)
<!-- The PR description should answer 2 important questions: -->

### What

We want to change this error message
```json
{
  "error": "error in data fusion: External error: Mutations are requested to be disallowed as part of the request"
}
```

to this

```json
{
  "error": "error in data fusion: External error: Mutations are requested to be disallowed as part of the request",
  "detail": {
    "subgraph": "default",
    "commandName": "uppercase_actor_name_by_id",
    "arguments": {
      "id": {
        "literal": 1
      }
    }
  }
}

```

<!-- What is this PR trying to accomplish (and why, if it's not
obvious)? -->

<!-- Consider: do we need to add a changelog entry? -->

<!-- Does this PR introduce new validation that might break old builds?
-->

<!-- Consider: do we need to put new checks behind a flag? -->

### How

<!-- How is it trying to accomplish it (what are the implementation
steps)? -->

V3_GIT_ORIGIN_REV_ID: 5d1f712c039ac9a4685c480634f1e7e17ff94c4b
2024-10-26 16:14:36 +00:00
Vamshi Surabhi
e5f1befba8 sql: allow inexact scalar conversion (#1279)
<!-- The PR description should answer 2 important questions: -->

### What

Float literals in SQL are represented as `Float64` values. We were check
for precision loss when converting these Float64 values into Float32
values. We now only check if there is an overflow.

<!-- Consider: do we need to add a changelog entry? -->

<!-- Does this PR introduce new validation that might break old builds?
-->

<!-- Consider: do we need to put new checks behind a flag? -->

### How

<!-- How is it trying to accomplish it (what are the implementation
steps)? -->

V3_GIT_ORIGIN_REV_ID: 1630e6130591df19f16be7cc97bbc6515537d951
2024-10-26 08:07:15 +00:00
Daniel Harvey
9678718981 Release v2024.10.25 (#1277)
Update changelog.

V3_GIT_ORIGIN_REV_ID: 9868f5be5147b5c54396e7891c998730517cf579
2024-10-25 14:41:00 +00:00
Daniel Harvey
ec4de00a8d Add introspection tests for order by with ModelV1 and ModelV21 (#1276)
<!-- The PR description should answer 2 important questions: -->

### What

Before making the scalar order by expressions changes, adding a few more
introspection tests to the current thing so we can check we don't break
these.

V3_GIT_ORIGIN_REV_ID: d15efd3b98e2c058d77e443e5cc218034f3b3e6d
2024-10-25 12:10:15 +00:00
Daniel Harvey
8b34768c27 Revert "More general nix build" (#1273)
Reverts hasura/v3-engine#1265

Tried this for a bit and it seems to have made our cache usage worse, so
let's not.

V3_GIT_ORIGIN_REV_ID: cb1e33d568da49a9af80591ec1db111fb62bf6ca
2024-10-25 11:14:35 +00:00
Daniel Harvey
35d606f276 Bump Rust to 1.82.0 (#1270)
<!-- The PR description should answer 2 important questions: -->

### What

As a treat.

V3_GIT_ORIGIN_REV_ID: 23369acdd1da6d5df828921818e4b9676e143b92
2024-10-25 10:52:05 +00:00