mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-15 09:22:43 +03:00
16118760fd
244 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
Daniel Harvey
|
79decc86e2 |
Fix a few small JSONAPI bugs (#1230)
<!-- The PR description should answer 2 important questions: --> Fixes - offset / limit didn't work - fixed by updating the `hasura/jsonapi` library to use `offset` / `limit` instead of `number` / `page` - this was a change in JSONAPI 1.1 - Render type names as `subgraph_typename` - Send `OrderBy` as `None` when it contains no columns - `Some(vec![])` was upsetting Mongo, so let's be more stringent. No functional changes as feature is behind flag. V3_GIT_ORIGIN_REV_ID: 419993a3acd955ef74872078d11769f564c7fc36 |
||
Vamshi Surabhi
|
77c6f9b7ca |
/sql endpoint on multi-tenant (#1219)
<!-- 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? --> ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> --------- Co-authored-by: Abhinav Gupta <127770473+abhinav-hasura@users.noreply.github.com> V3_GIT_ORIGIN_REV_ID: 05adb2015efda4d5244b93cfe337991370f0b27e |
||
dependabot[bot]
|
6d2376648c |
Bump indexmap from 2.5.0 to 2.6.0 (#1214)
Bumps [indexmap](https://github.com/indexmap-rs/indexmap) from 2.5.0 to 2.6.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/indexmap-rs/indexmap/blob/master/RELEASES.md">indexmap's changelog</a>.</em></p> <blockquote> <h2>2.6.0 (2024-10-01)</h2> <ul> <li>Implemented <code>Clone</code> for <code>map::IntoIter</code> and <code>set::IntoIter</code>.</li> <li>Updated the <code>hashbrown</code> dependency to version 0.15.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
35c29fff5a |
Bump serde_with from 3.9.0 to 3.11.0 (#1213)
Bumps [serde_with](https://github.com/jonasbb/serde_with) from 3.9.0 to 3.11.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/jonasbb/serde_with/releases">serde_with's releases</a>.</em></p> <blockquote> <h2>serde_with v3.11.0</h2> <h3>Added</h3> <ul> <li> <p>Add support for <code>hashbrown</code> v0.15 (<a href="https://redirect.github.com/jonasbb/serde_with/issues/787">#787</a>/<a href="https://redirect.github.com/jonasbb/serde_with/issues/790">#790</a>)</p> <p>This extends the existing support for <code>hashbrown</code> v0.14 to the newly released version.</p> </li> </ul> <h2>serde_with v3.10.0</h2> <h3>Added</h3> <ul> <li> <p>Add newline separator by <a href="https://github.com/jayvdb"><code>@jayvdb</code></a> (<a href="https://redirect.github.com/jonasbb/serde_with/issues/777">#777</a>)</p> <p>The <code>UnixLineSeparator</code> and <code>DosLineSeparator</code> can be used together with <code>StringWithSeparator</code>.</p> </li> </ul> <h3>Fixed</h3> <ul> <li> <p>Proper handling of <code>cfg_attr</code> in the <code>serde_as</code> macro by <a href="https://github.com/sivizius"><code>@sivizius</code></a> (<a href="https://redirect.github.com/jonasbb/serde_with/issues/782">#782</a>)</p> <p>This allows to parse more valid forms of the <code>cfg_attr</code> macro, including multiple values and attribute that do not follow the <code>key = value</code> schema.</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
025ceac68e |
Bump clap from 4.5.18 to 4.5.19 (#1212)
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.18 to 4.5.19. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.5.19</h2> <h2>[4.5.19] - 2024-10-01</h2> <h3>Internal</h3> <ul> <li>Update dependencies</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.5.19] - 2024-10-01</h2> <h3>Internal</h3> <ul> <li>Update dependencies</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
9314e3b7dc |
Bump tokio-tungstenite from 0.20.1 to 0.24.0 (#1211)
Bumps [tokio-tungstenite](https://github.com/snapview/tokio-tungstenite) from 0.20.1 to 0.24.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/snapview/tokio-tungstenite/blob/master/CHANGELOG.md">tokio-tungstenite's changelog</a>.</em></p> <blockquote> <h1>0.24.0</h1> <ul> <li>Update dependencies (TLS, tungstenite).</li> <li>Return a runtime error when WSS URLs are used without a proper TLS feature enabled.</li> </ul> <h1>0.23.1</h1> <ul> <li>Introduce a <code>url</code> feature (proxies to <code>tungstenite/url</code>).</li> </ul> <h1>0.23.0</h1> <ul> <li>Update <code>tungstenite</code> to <code>0.23.0</code>.</li> <li>Disable default features on TLS crates.</li> </ul> <h1>0.22.0</h1> <ul> <li>Update TLS dependencies.</li> <li><del>Update <code>tungstenite</code> to match <code>0.22.0</code>.</del></li> </ul> <h1>0.21.0</h1> <ul> <li>Update TLS dependencies.</li> <li>Update <code>tungstenite</code> to <code>0.21.0</code>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
5a7906a788 |
Bump futures-util from 0.3.30 to 0.3.31 (#1210)
Bumps [futures-util](https://github.com/rust-lang/futures-rs) from 0.3.30 to 0.3.31. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/futures-rs/releases">futures-util's releases</a>.</em></p> <blockquote> <h2>0.3.31</h2> <ul> <li>Fix use after free of task in <code>FuturesUnordered</code> when dropped future panics (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2886">#2886</a>)</li> <li>Fix soundness bug in <code>task::waker_ref</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2830">#2830</a>) This is a breaking change but allowed because it is soundness bug fix.</li> <li>Fix bugs in <code>AsyncBufRead::read_line</code> and <code>AsyncBufReadExt::lines</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2884">#2884</a>)</li> <li>Fix parsing issue in <code>select!</code>/<code>select_biased!</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2832">#2832</a>) This is technically a breaking change as it will now reject a very odd undocumented syntax that was previously accidentally accepted.</li> <li>Work around issue due to upstream <code>Waker::will_wake</code> change (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2865">#2865</a>)</li> <li>Add <code>stream::Iter::{get_ref,get_mut,into_inner}</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2875">#2875</a>)</li> <li>Add <code>future::AlwaysReady</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2825">#2825</a>)</li> <li>Relax trait bound on non-constructor methods of <code>io::{BufReader,BufWriter}</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2848">#2848</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md">futures-util's changelog</a>.</em></p> <blockquote> <h1>0.3.31 - 2024-10-05</h1> <ul> <li>Fix use after free of task in <code>FuturesUnordered</code> when dropped future panics (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2886">#2886</a>)</li> <li>Fix soundness bug in <code>task::waker_ref</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2830">#2830</a>) This is a breaking change but allowed because it is soundness bug fix.</li> <li>Fix bugs in <code>AsyncBufRead::read_line</code> and <code>AsyncBufReadExt::lines</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2884">#2884</a>)</li> <li>Fix parsing issue in <code>select!</code>/<code>select_biased!</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2832">#2832</a>) This is technically a breaking change as it will now reject a very odd undocumented syntax that was previously accidentally accepted.</li> <li>Work around issue due to upstream <code>Waker::will_wake</code> change (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2865">#2865</a>)</li> <li>Add <code>stream::Iter::{get_ref,get_mut,into_inner}</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2875">#2875</a>)</li> <li>Add <code>future::AlwaysReady</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2825">#2825</a>)</li> <li>Relax trait bound on non-constructor methods of <code>io::{BufReader,BufWriter}</code> (<a href="https://redirect.github.com/rust-lang/futures-rs/issues/2848">#2848</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
Brandon Simmons
|
62d9cbacdb |
ENG-1071: add detailed traces for MBS validate/ and some benchmarks (#1209)
<!-- The PR description should answer 2 important questions: --> ### What Set us up for more visibility into performance on prod. ### How Add traces V3_GIT_ORIGIN_REV_ID: 0ea011c1233a08bf4f9d55a9084809a6ffcd934d |
||
Rakesh Emmadi
|
66ab5b201d |
graphql-ws: Implement Plugins (#1195)
<!-- 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? --> Execute configured pre-parse and pre-response plugins for GraphQL operations over websockets. ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> When a `type: subscribe` message is received, similar to HTTP requests, run pre-parse plugins. If the plugins' response results in "continue", then proceed with handling the GraphQL query. Otherwise, return the plugin response or error. For pre-response plugins, a task is spawned for handling plugins before sending the response to the client. The task is run in a new trace, linked to the poll trace. V3_GIT_ORIGIN_REV_ID: ceb7ffd6da9235b3897ef4198729c07492c13d5e |
||
Daniel Harvey
|
ad6c47a070 |
Move plan types out of GraphQL IR (#1203)
<!-- The PR description should answer 2 important questions: --> ### What A lot of the `graphql_ir` is generally useful and not GraphQL specific. Before we can move it into `plan` and share it we need to pull a few shared types out of the package and somewhere more general too. ### How Functional no-op. V3_GIT_ORIGIN_REV_ID: 3fe8ca737ef3d8c7ce09ea695453645e303d7030 |
||
Daniel Harvey
|
e313123ed7 |
Move commands from sql to plan (#1188)
<!-- The PR description should answer 2 important questions: --> ### What Move the function/procedure planning from `sql` to the shared OpenDD IR pipeline in `plan`. This should be a no-op for `sql` ### How Move code, fix type errors. V3_GIT_ORIGIN_REV_ID: 7da797ffedbc40a44692670679aa176817f2c65e |
||
Daniel Harvey
|
629d48a086 |
Bump all the packages (#1199)
<!-- The PR description should answer 2 important questions: --> ### What We need to bump `tonic` because of `cargo audit`, and to do so we need to bump OpenTelemetry, and to do that we need to finally bump `http`, and to do that... ### How Follow the breadcrumb trail, fix the errors. Checked, trace propagation still works: <img width="1781" alt="Screenshot 2024-10-02 at 15 56 28" src="https://github.com/user-attachments/assets/4c3f8763-e646-445d-84de-f507da15ad2e"> V3_GIT_ORIGIN_REV_ID: aa219e91375aa310dc656183948edc33f77cdfdc |
||
Rakesh Emmadi
|
454ca0575f |
graphql-ws: Tests for WebSocket server (#1191)
<!-- 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? --> Write tests to confirm websocket connection behavior in conjunction with [graphl-ws](https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md) subprotocol. ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> Test the websocket by spinning up a server in an async tokio task. Use tokio-tungstenite for websocket client. V3_GIT_ORIGIN_REV_ID: 32c19298b6a5b23649b22d8d820ef8d47ef1d293 |
||
Tom Harding
|
188cd437a4 |
Implement error contexts for MBS (#1192)
### What This PR allows MBS errors to provide a larger "context". Our notion of context is an ordered list of annotated paths. An example would be for a name conflict, where we want to say `["this name was used here", "... and also here"]`, so reporting two paths would be helpful. Note that the actual format of `path` is a structured data type, not a string. An example of the first instance introduced by this PR can be seen here: ```json { "errors": [ { "context": [ { "message": "Data connector name given here", "path": [ { "Index": 11 }, { "Key": "definition" }, { "Key": "source" }, { "Key": "dataConnectorName" } ] } ], "code": "opendds-validation", "message": "invalid metadata: error building schema: invalid metadata: the source data connector b (in subgraph default) for model Artists (in subgraph default) has not been defined", "path": null } ] } ``` The `path` key is already generated by other parts of the MBS process, so we preserve it for now to avoid breaking changes. ### How * A new crate, `error-context`, to hold the type of the context structure. * Otherwise essentially the same as the path mechanism. V3_GIT_ORIGIN_REV_ID: 0bb529542ba0a7f6774c08fa6adb7d7c608d6c5b |
||
Rakesh Emmadi
|
c7e3e8b0d3 |
enable tracing on graphql-ws (#1165)
<!-- 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? --> Add traces to `graphql-ws` crate. Since websockets are implemented by running multiple parallel tasks, we are using span links to establish relation between traces emitted by those tasks. Refactor by moving code into new modules and updating function names and types. ### How - Define a new `in_span_async_with_link()` in tracing-util to enable creating a span with a link. - Wrap spans around necessary code sections with attaching required attributes. - Small no-op refactor in `common.rs` test file. <!-- How is it trying to accomplish it (what are the implementation steps)? --> V3_GIT_ORIGIN_REV_ID: 33cd313b94421097f3c1bb1bcf165f04c1a9cd65 |
||
Daniel Harvey
|
f3f0e113ba |
Basic OpenDD pipeline execution testing for GraphQL (#1178)
<!-- The PR description should answer 2 important questions: --> ### What Add basic NDC execution testing for the new pipeline to the existing `engine/tests/execution.rs` tests. Grabs rows from NDC and snapshots the results, but good enough to eyeball and see things are somewhat working. Somewhat interesting: we can't test `selectUnique` queries using the new pipeline, because the primary key argument isn't an actual model argument (and thus fails in the `argument_mappings` lookup). It's actually taken as an argument in GraphQL, but turned into an additional filter expression and `AND`ed onto whatever filters are there. Will need to have a think about this, but not now. Functional no-op. ### How Copy the execution step from JSONAPI and use it in engine tests. V3_GIT_ORIGIN_REV_ID: 5b1ea8c1f08048b563db694b618c8823e4139383 |
||
paritosh-08
|
18697ae98d |
pre-response engine plugin (#1033)
<!-- The PR description should answer 2 important questions: --> ### What This PR adds the pre-response plugins to the engine and engine multitenant. We have also added a new flag/env var to get the pre-response plugin artifacts: - `PRE_RESPONSE_PLUGIN_CONFIG_ARTIFACT_URL_TEMPLATE` A sample metadata for pre-response plugin is: ```json { "kind": "LifecyclePluginHook", "version": "v1", "definition": { "name": "logging", "url": { "value": "http://localhost:5001/log" }, "pre": "response", "config": { "request": { "headers": { "additional": { "hasura-m-auth": { "value": "your-strong-m-auth-key" } } }, "session": {}, "rawRequest": { "query": {}, "variables": {} }, "rawResponse": {} } } } } ``` Please note that the execution of pre-response plugins happens on a new tokio thread ([tokio::spawn](https://docs.rs/tokio/latest/tokio/task/fn.spawn.html)) which will run in the background. We will NOT wait for any of the task to complete before sending the response to the user. An example of the trace with 5 pre-response plugin calls: ![image](https://github.com/user-attachments/assets/380a262a-2b83-4d82-9bc4-85362c8aa5f4) ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> We have added this in the plugin middleware. V3_GIT_ORIGIN_REV_ID: 270d77c45d5e8cc85a5f281f59f981f210eb4547 |
||
dependabot[bot]
|
d6c8f5906b |
Bump syn from 2.0.77 to 2.0.79 (#1174)
Bumps [syn](https://github.com/dtolnay/syn) from 2.0.77 to 2.0.79. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/syn/releases">syn's releases</a>.</em></p> <blockquote> <h2>2.0.79</h2> <ul> <li>Fix infinite loop on parsing chained ranges (<a href="https://redirect.github.com/dtolnay/syn/issues/1741">#1741</a>)</li> <li>Fix panic in parsing <code>use</code> items containing absolute paths (<a href="https://redirect.github.com/dtolnay/syn/issues/1742">#1742</a>)</li> </ul> <h2>2.0.78</h2> <ul> <li>Fix infinite loop on chained comparison (<a href="https://redirect.github.com/dtolnay/syn/issues/1739">#1739</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
34ce39fa94 |
Bump async-trait from 0.1.82 to 0.1.83 (#1175)
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.82 to 0.1.83. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/async-trait/releases">async-trait's releases</a>.</em></p> <blockquote> <h2>0.1.83</h2> <ul> <li>Prevent needless_arbitrary_self_type lint being produced in generated code (<a href="https://redirect.github.com/dtolnay/async-trait/issues/278">#278</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
3473fc5663 |
Bump async-graphql-parser from 7.0.9 to 7.0.11 (#1176)
Bumps [async-graphql-parser](https://github.com/async-graphql/async-graphql) from 7.0.9 to 7.0.11. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/async-graphql/async-graphql/blob/master/CHANGELOG.md">async-graphql-parser's changelog</a>.</em></p> <blockquote> <h1>[7.0.11] 2024-09-26</h1> <ul> <li>fix <a href="https://redirect.github.com/async-graphql/async-graphql/issues/1598">#1598</a></li> </ul> <h1>[7.0.10] 2024-09-24</h1> <ul> <li>add <code>SchemeBuilder.limit_directives</code> method to set the maximum number of directives on a single field.</li> <li>remove needless ?Sized <a href="https://redirect.github.com/async-graphql/async-graphql/pull/1593">#1593</a></li> <li>fix: generate each variant description correctly. <a href="https://redirect.github.com/async-graphql/async-graphql/pull/1589">#1589</a></li> <li>Make <code>From<T></code> for [Error] set source <a href="https://redirect.github.com/async-graphql/async-graphql/pull/1561">#1561</a></li> <li>feat(graphiql): add support for WS connection params <a href="https://redirect.github.com/async-graphql/async-graphql/pull/1597">#1597</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/async-graphql/async-graphql/commits">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=async-graphql-parser&package-manager=cargo&previous-version=7.0.9&new-version=7.0.11)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> V3_GIT_ORIGIN_REV_ID: 49257197190f6dd1a1a207d058245a582592a4d4 |
||
Daniel Harvey
|
649b3c29b0 |
Move model planning from sql to plan (#1166)
<!-- The PR description should answer 2 important questions: --> ### What We're building a new OpenDD IR pipeline. The `sql` crate already has a lot of what we need, so let's take the model selection parts (ie, not aggregates yet), pull them into the `plan` crate, and re-use them for both `sql` and the `jsonapi` pipelines. The broad idea here is that the shared `plan` will get incrementally bigger, and `sql` will get smaller. This is a functional no-op for `sql`, and slightly improves the WIP JSONAPI pipeline as we enjoy better permission checks. ### How - Copy model planning and helper functions from `sql` into `plan` - Replace instances `DataFusionError` with a smaller local `PlanError` - Fix JSONAPI to use these new `plan` functions - Remove the code in `sql`, instead using the shared `plan` functions in planning, mapping back into `DataFusionError` as appropriate. V3_GIT_ORIGIN_REV_ID: 50314442b9b56f31d2b38a0cf6f104e265bc3886 |
||
Daniel Harvey
|
b13cd460ae |
Move NdcFieldAlias to new plan-types crate (#1161)
### What We'd like to use `NdcFieldAlias` in the `plan` crate, however because of the ways deps between `graphql_ir` and `execute` work we cannot without a cycle. Functional no-op. ### How Create a new crate that depends on nothing for planning-related domain types. V3_GIT_ORIGIN_REV_ID: c441f2de2eba01bda59ce16e1e4b0e4d9f765d78 |
||
Rakesh Emmadi
|
d58ce08c19 |
Bump opentelemetry to 0.23 (#1160)
And bump other opentelemetry-* deps to compatible with 0.23 <!-- 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? --> Need [add_link](https://docs.rs/opentelemetry/0.23.0/opentelemetry/trace/trait.Span.html#tymethod.add_link) API on Spans for tracing `graphql-ws` websockets code. It is available opentelementry version `0.23` and above. This also bumps all the dependents of the opentelemetry crate (`opentelemetry-*`) ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> By updating root `Cargo.toml`. V3_GIT_ORIGIN_REV_ID: 87c1bedde35f5e8e91366aceb1379ab5d43b5b99 |
||
Daniel Harvey
|
a3efbc98d7 |
Start of GraphQL -> OpenDD IR pipeline (#1156)
<!-- The PR description should answer 2 important questions: --> ### What We are going to need tests for our OpenDD IR pipeline, and we are going to need to convert GraphQL requests into OpenDD IR at some point, so this makes the most basic `normalized_ast -> OpenDD IR QueryRequest` pipeline and implements / tests it for the simplest possible query. This only affects tests at this point, so is a functional no-op. ### How This PR adds the most basic `normalized_ast -> OpenDD IR QueryRequest` pipeline and implements / tests it for the simplest possible query. ```rust enum TestOpenDDPipeline { Skip, GenerateOpenDDQuery, GenerateExecutionPlan, } ``` It adds a flag for each engine test to opt-in for testing with the new pipeline. Currently one passes `GenerateOpenDDQuery`, and tests the result against a snapshot, and the rest pass `Skip`. The unblocks two following steps: - we can improve the GraphQL -> OpenDD IR generation, enabling more tests by passing `GenerateOpenDDQuery` - once the main new `plan` pipeline generates the same types as the existing `execute` crate, we can compare the old `execute::plan` with the new one, and enable that per test by passing `GenerateExecutionPlan`. Once all the tests are passing `GenerateExecutionPlan` we can remove the flag and we know we'll have parity in plan creation. V3_GIT_ORIGIN_REV_ID: 607dfce77b68849c7fc66fc652e38182fa0c83ea |
||
Rakesh Emmadi
|
601771c4fc |
Test execute_request from graphql_ws crate (#1155)
<!-- 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? --> This PR enables "unit" testing for `execute_request` function from `graphql-ws` crate which is responsible for executing graphql operations. It is tested in conjunction with the `graphql_frontend`'s `execute_query` by comparing responses from the both. ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> Briefly ``` http_response = graphql_frontend::execute_query ws_response = graphql_ws::execute_request compare(http_response, ws_response) ``` V3_GIT_ORIGIN_REV_ID: 371ac3de1136732d7dc2e88dbd093264a96a7d2e |
||
Rakesh Emmadi
|
29eacdf3c3 |
Introduce graphql-ws crate that implements GraphQL over websockets (#1134)
<!-- 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? --> - Introduce a brand new `graphql-ws` crate that implements - WebSocket request handling by `WebSocketServer` struct - [graphql-ws](https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md) protocol and handles subscriptions in async tokio tasks. - OSS engine now handles GraphQL websockets through `GET /graphql` handshakes. ### How Refer to added [architecture.md](https://github.com/hasura/v3-engine/blob/rakeshkky/graphql-ws-crate/crates/graphql-ws/architecture.md) file. <!-- How is it trying to accomplish it (what are the implementation steps)? --> V3_GIT_ORIGIN_REV_ID: 3032cbe50267d3f0102c450be2749c09fb3992bf |
||
Daniel Harvey
|
2839170ddf |
Create plan crate (#1149)
<!-- The PR description should answer 2 important questions: --> ### What We are creating a new build pipeline. This makes a new crate for it called `plan` and puts the existing work from JSONAPI into it. JSONAPI uses the new plan so we have a quick way of testing it works. ### How Mostly moving code around. All behind feature flags, so functional no-op. V3_GIT_ORIGIN_REV_ID: af4901c93415c7ced2b0f537e600512d28fc5766 |
||
Tom Harding
|
c3be5cbc8e |
Carry the parsing path through the OpenDD parsers (#1146)
### What We want to be able to reference the path within parsers even if the parser succeeds. This allows us to do things like generate source spans to help users make updates. ### How We add `path` as a currently ignored argument to `deserialize`, and then every time we want to decorate the error path, we replace that call with a bidirectional decorator. V3_GIT_ORIGIN_REV_ID: 18ddede2db84801f995b64f17bfb29893acb4657 |
||
dependabot[bot]
|
59c5b39447 |
Bump bson from 2.12.0 to 2.13.0 (#1139)
Bumps [bson](https://github.com/mongodb/bson-rust) from 2.12.0 to 2.13.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/mongodb/bson-rust/releases">bson's releases</a>.</em></p> <blockquote> <h2>v2.13.0</h2> <p>The MongoDB Rust driver team is pleased to announce the v2.13.0 release of the <code>bson</code> crate.</p> <h2>Highlighted Changes</h2> <p>This release introduces a utility type for deserializing from UTF-8 lossy BSON bytes.</p> <h2>Full Release Notes</h2> <h3>New Features</h3> <ul> <li>RUST-2023 Add wrapper type for utf-8 lossy deserialization (<a href="https://redirect.github.com/mongodb/bson-rust/issues/497">#497</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
dc18ff6202 |
Bump bytes from 1.7.1 to 1.7.2 (#1138)
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.7.1 to 1.7.2. <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.7.2</h2> <h1>1.7.2 (September 17, 2024)</h1> <h3>Fixed</h3> <ul> <li>Fix default impl of <code>Buf::{get_int, get_int_le}</code> (<a href="https://redirect.github.com/tokio-rs/bytes/issues/732">#732</a>)</li> </ul> <h3>Documented</h3> <ul> <li>Fix double spaces in comments and doc comments (<a href="https://redirect.github.com/tokio-rs/bytes/issues/731">#731</a>)</li> </ul> <h3>Internal changes</h3> <ul> <li>Ensure BytesMut::advance reduces capacity (<a href="https://redirect.github.com/tokio-rs/bytes/issues/728">#728</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.7.2 (September 17, 2024)</h1> <h3>Fixed</h3> <ul> <li>Fix default impl of <code>Buf::{get_int, get_int_le}</code> (<a href="https://redirect.github.com/tokio-rs/bytes/issues/732">#732</a>)</li> </ul> <h3>Documented</h3> <ul> <li>Fix double spaces in comments and doc comments (<a href="https://redirect.github.com/tokio-rs/bytes/issues/731">#731</a>)</li> </ul> <h3>Internal changes</h3> <ul> <li>Ensure BytesMut::advance reduces capacity (<a href="https://redirect.github.com/tokio-rs/bytes/issues/728">#728</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
fc786a264c |
Bump thiserror from 1.0.63 to 1.0.64 (#1137)
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.63 to 1.0.64. <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.64</h2> <ul> <li>Exclude derived impls from coverage instrumentation (<a href="https://redirect.github.com/dtolnay/thiserror/issues/322">#322</a>, thanks <a href="https://github.com/oxalica"><code>@oxalica</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
4ed35177f9 |
Bump clap from 4.5.17 to 4.5.18 (#1136)
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.17 to 4.5.18. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.5.18</h2> <h2>[4.5.18] - 2024-09-20</h2> <h3>Features</h3> <ul> <li><em>(builder)</em> Expose <code>Arg::get_display_order</code> and <code>Command::get_display_order</code></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.5.18] - 2024-09-20</h2> <h3>Features</h3> <ul> <li><em>(builder)</em> Expose <code>Arg::get_display_order</code> and <code>Command::get_display_order</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
Rakesh Emmadi
|
10b6aecb95 |
no-op: Pull out auth related code from engine crate (#1133)
<!-- 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? --> Authentication related code lies in `engine` crate. It is needed by upcoming graphql websockets crate, which will be dep for `engine` crate (for oss engine bin). To avoid cyclic dependency, moving out the authentication code from `engine` crate now. ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> Move `crates/engine/src/authentication.rs` to new `crates/auth/hasura-authn` crate. This also needs to move the `auth_config.jsonschema` file from `engine` crate. V3_GIT_ORIGIN_REV_ID: d2c320c3a26512ad8ab8e5c3312a64bc69d8a200 |
||
Daniel Harvey
|
ccd6cf793b |
Rename schema crate to graphql-schema (#1117)
<!-- The PR description should answer 2 important questions: --> ### What Much like https://github.com/hasura/v3-engine/pull/1116, make clearer what is and is not graphql-centric in engine by renaming `schema` to `graphql-schema`. ### How Moving file around, no functional changes. V3_GIT_ORIGIN_REV_ID: ec06c33a964c16a53c1a4ed306de3fdccd2e8efc |
||
Daniel Harvey
|
434d56ca20 |
JSONAPI build plan (#1114)
<!-- The PR description should answer 2 important questions: --> ### What Let's get to a very basic end-to-end pipeline. This introduces (extremely-happy-path) planning, execution and response processing so that we have a rough end to end API. V3_GIT_ORIGIN_REV_ID: 57ce28eb5ad20f061e0ede37b0bf43fbaddaaf2a |
||
Daniel Harvey
|
6574ed7da0 |
Rename ir crate to graphql-ir crate (#1116)
<!-- The PR description should answer 2 important questions: --> ### What Make what is and is not graphql-centric a little clearer by renaming this crate and moving it into a `crates/graphql` folder. ### How No functional changes V3_GIT_ORIGIN_REV_ID: 3644ce32059e16db9b467b010430ba23fc436ed9 |
||
Rakesh Emmadi
|
e5d7822086 |
Define subscription request plan (#1097)
<!-- The PR description should answer 2 important questions: --> Closes: https://linear.app/hasura/issue/APIPG-876/live-queries-or-ir-and-requestplan-for-subscriptions ### 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? --> - Define and generate request plan for subscriptions. - Define filter expression resolving context to allow/reject remote relationships. ### How <!-- How is it trying to accomplish it (what are the implementation steps)? --> - Modifying existing enums, defining new types and functions. V3_GIT_ORIGIN_REV_ID: 1e1a248c74d210cf45288002e1fe13ce6a868fe6 |
||
dependabot[bot]
|
84d4f65ec0 |
Bump anyhow from 1.0.87 to 1.0.89 (#1110)
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.87 to 1.0.89. <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.89</h2> <ul> <li>Make anyhow::Error's <code>UnwindSafe</code> and <code>RefUnwindSafe</code> impl consistently available between versions of Rust newer and older than 1.72 (<a href="https://redirect.github.com/dtolnay/anyhow/issues/386">#386</a>)</li> </ul> <h2>1.0.88</h2> <ul> <li>Documentation improvements</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
3f1e39373e |
Bump pretty_assertions from 1.4.0 to 1.4.1 (#1108)
Bumps [pretty_assertions](https://github.com/rust-pretty-assertions/rust-pretty-assertions) from 1.4.0 to 1.4.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-pretty-assertions/rust-pretty-assertions/releases">pretty_assertions's releases</a>.</em></p> <blockquote> <h2>v1.4.1</h2> <h2>Fixed</h2> <ul> <li>Show feature-flagged code in documentation. Thanks to <a href="https://github.com/sandydoo"><code>@sandydoo</code></a> for the fix! (<a href="https://redirect.github.com/rust-pretty-assertions/rust-pretty-assertions/pull/130">#130</a>)</li> </ul> <h2>Internal</h2> <ul> <li>Bump <code>yansi</code> version to <code>1.x</code>. Thanks to <a href="https://github.com/SergioBenitez"><code>@SergioBenitez</code></a> for the update, and maintaining this library! (<a href="https://redirect.github.com/rust-pretty-assertions/rust-pretty-assertions/pull/121">#121</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rust-pretty-assertions/rust-pretty-assertions/blob/main/CHANGELOG.md">pretty_assertions's changelog</a>.</em></p> <blockquote> <h1>v1.4.1</h1> <h2>Fixed</h2> <ul> <li>Show feature-flagged code in documentation. Thanks to <a href="https://github.com/sandydoo"><code>@sandydoo</code></a> for the fix! (<a href="https://redirect.github.com/rust-pretty-assertions/rust-pretty-assertions/pull/130">#130</a>)</li> </ul> <h2>Internal</h2> <ul> <li>Bump <code>yansi</code> version to <code>1.x</code>. Thanks to <a href="https://github.com/SergioBenitez"><code>@SergioBenitez</code></a> for the update, and maintaining this library! (<a href="https://redirect.github.com/rust-pretty-assertions/rust-pretty-assertions/pull/121">#121</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
2b59652a9c |
Bump bson from 2.11.0 to 2.12.0 (#1109)
Bumps [bson](https://github.com/mongodb/bson-rust) from 2.11.0 to 2.12.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/mongodb/bson-rust/releases">bson's releases</a>.</em></p> <blockquote> <h2>v2.12.0</h2> <p>The MongoDB Rust driver team is pleased to announce the v2.12.0 release of the <code>bson</code> crate.</p> <h2>Highlighted Changes</h2> <p>This release was largely driven by external contributions!</p> <ul> <li>An optional implementation of <code>Hash</code> and <code>Eq</code> for the <code>Bson</code> family of types</li> <li><code>ObjectId::from_parts</code>, allowing direct construction of an <code>ObjectId</code> from its component values</li> <li>Helpers for serializing <code>Option<chrono::DateTime<_>></code> as <code>Option<bson::DateTime></code></li> <li>A fix for a panic when parsing specific malformed input data into a <code>Decimal128</code></li> </ul> <p>We've also added optional (off by default) integration with the <code>serde_path_to_error</code> crate, which provides paths to the precise point of failure for deserialization of nested data structures.</p> <h2>Full Release Notes</h2> <h2>New Features</h2> <ul> <li>RUST-2027 Impl Hash/Eq for BSON (thanks @<a href="https://github.com/NineLord"><code>@NineLord</code></a>!)</li> <li>RUST-2017 Allow constructing an ObjectId from its parts (thanks <a href="https://github.com/tyilo"><code>@tyilo</code></a>!)</li> <li>RUST-1987 Support serializing <code>Option<chrono::DateTime<_>></code> as <code>Option<bson::DateTime></code> (thanks <a href="https://github.com/lazureykis"><code>@lazureykis</code></a>!)</li> <li>RUST-1874 Add optional integration with serde_path_to_error</li> </ul> <h2>Improvements</h2> <ul> <li>RUST-1773 Merge duplicate extjson map parsing between OwnedOrBorrowedRawBsonVisitor and SeededVisitor</li> </ul> <h2>Bugfixes</h2> <ul> <li>RUST-2028 Fix Decimal128 panic when parsing strings w/o a char boundary at idx 34 (thanks <a href="https://github.com/arthurprs"><code>@arthurprs</code></a>!)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
Tom Harding
|
7db107921e |
Factor out jsonpath into its own crate (#1101)
<!-- The PR description should answer 2 important questions: --> ### What We're going to start carrying around more `JSONPath` values, so let's tidy up. <!-- 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 I copied Dan's code. <!-- How is it trying to accomplish it (what are the implementation steps)? --> V3_GIT_ORIGIN_REV_ID: 26aebcab7b40b672bac71d20aa3a072995519be3 |
||
Daniel Harvey
|
50e1ab5a67 |
frontends/graphql crate (#1049)
<!-- The PR description should answer 2 important questions: --> ### What This extracts a GraphQL frontend crate from the `execute` crate. This contains all the top level functions, as opposed to what remains in `execute`, which concerns itself with the creation and execution of plans. This only moves code around and organises it a little more neatly, and so makes no functional changes. The follow up will be to create and expose a neater API. Next steps: - Arguably what is left in `execute` is now better named `plan`, but this PR was already big enough. - Once we have more than one `frontend`, the functions in `steps.rs` in this crate should probably be shared somewhere. ### How Moving files around. V3_GIT_ORIGIN_REV_ID: 0e54310a27d06905ed1967395e97ab47751b65dc |
||
Daniel Harvey
|
a275966b7b |
Basic test framework for jsonapi (#1091)
<!-- The PR description should answer 2 important questions: --> ### What Let's add a test! (and check it still works 👍 ) <img width="405" alt="Screenshot 2024-09-10 at 13 05 01" src="https://github.com/user-attachments/assets/6a49feaa-bd0b-4137-a9d5-a1e1336d9fa6"> ### How Glob a folder for test files, parse them and run them against the functions. V3_GIT_ORIGIN_REV_ID: cc3e0d8cfb6f5eaa58cf72dab97e7220a57e7673 |
||
Anon Ray
|
745c1d53b2 |
wip: create an axum router for jsonapi (#1089)
<!-- The PR description should answer 2 important questions: --> ### What WIP PoC of a dynamic router for json api. There is no actual execution. This only implements a dynamic router, which can validate any path/URL against the metadata. The `json_api` module exports an `axum::Router` which is added to the main router. It is currently hidden behind an unstable feature flag `--enable-json-api`. Added some clippy allow annotations as its WIP. ### How Create an axum router which matches on any path. And then inside the handler check and validate with an own internal state if the route is valid. This internal state is derived from metadata and is built during start-up. V3_GIT_ORIGIN_REV_ID: b2ee0a3419bd9292af9acf1787381099d20da2ab |
||
Daniel Harvey
|
6449161d67 |
Empty jsonapi crate (#1088)
<!-- The PR description should answer 2 important questions: --> ### What Somewhere to put the `jsonapi` proof of concept. ### How Empty crate V3_GIT_ORIGIN_REV_ID: 5675b6fff57e54faa00f05630ae69f8d3471eb7f |
||
dependabot[bot]
|
4b0cc1f3d8 |
Bump async-graphql-parser from 7.0.8 to 7.0.9 (#1087)
Bumps [async-graphql-parser](https://github.com/async-graphql/async-graphql) from 7.0.8 to 7.0.9. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/async-graphql/async-graphql/blob/master/CHANGELOG.md">async-graphql-parser's changelog</a>.</em></p> <blockquote> <h1>[7.0.9] 2024-09-02</h1> <ul> <li>add <code>on_ping</code> callback to <code>WebSocket</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/async-graphql/async-graphql/commits">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=async-graphql-parser&package-manager=cargo&previous-version=7.0.8&new-version=7.0.9)](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: 0af1fd351dc4c0107f4bf36647ff123db862a3eb |
||
dependabot[bot]
|
2f4d882377 |
Bump serde from 1.0.209 to 1.0.210 (#1086)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.209 to 1.0.210. <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.210</h2> <ul> <li>Support serializing and deserializing <code>IpAddr</code> and <code>SocketAddr</code> in no-std mode on Rust 1.77+ (<a href="https://redirect.github.com/serde-rs/serde/issues/2816">#2816</a>, thanks <a href="https://github.com/MathiasKoch"><code>@MathiasKoch</code></a>)</li> <li>Make <code>serde::ser::StdError</code> and <code>serde:🇩🇪:StdError</code> equivalent to <code>core::error::Error</code> on Rust 1.81+ (<a href="https://redirect.github.com/serde-rs/serde/issues/2818">#2818</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
6d4e3c7852 |
Bump similar-asserts from 1.5.0 to 1.6.0 (#1085)
Bumps [similar-asserts](https://github.com/mitsuhiko/similar-asserts) from 1.5.0 to 1.6.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/mitsuhiko/similar-asserts/blob/main/CHANGELOG.md">similar-asserts's changelog</a>.</em></p> <blockquote> <h2>1.6.0</h2> <ul> <li>Loosen static lifetime bounds for labels. <a href="https://redirect.github.com/mitsuhiko/similar-asserts/issues/9">#9</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
ce6d92eff3 |
Bump tokio-util from 0.7.11 to 0.7.12 (#1084)
Bumps [tokio-util](https://github.com/tokio-rs/tokio) from 0.7.11 to 0.7.12. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
dependabot[bot]
|
a2f7ce23c7 |
Bump async-trait from 0.1.81 to 0.1.82 (#1083)
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.81 to 0.1.82. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/async-trait/releases">async-trait's releases</a>.</em></p> <blockquote> <h2>0.1.82</h2> <ul> <li>Prevent elided_named_lifetimes lint being produced in generated code (<a href="https://redirect.github.com/dtolnay/async-trait/issues/276">#276</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |