Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for nested subpath (JSON) expressions #169

Merged
merged 4 commits into from Jul 11, 2023

Conversation

gwynne
Copy link
Member

@gwynne gwynne commented Jul 10, 2023

Adds a new (defaulted) SQLDialect method for correctly generating JSON subpath syntax on a per-dialect basis. Add SQLNestedSubpathExpression to enable actually invoking the method.

Related PRs for PostgresKit, MySQLKit, and SQLiteKit will be forthcoming, followed by a series of PRs against FluentKit, FluentPostgresDriver, FluentMySQLDriver, and FluentSQLiteDriver. (Yep, gotta update everything to properly leverage this, thanks to it having been handled incorrectly all this time!)

… (JSON paths) and a SQLNestedSubpathExpression expression for actually using it.
@gwynne gwynne added the semver-minor Contains new APIs label Jul 10, 2023
gwynne added a commit to vapor/postgres-kit that referenced this pull request Jul 10, 2023
@codecov-commenter
Copy link

Codecov Report

Merging #169 (3b7b760) into main (5026e7c) will decrease coverage by 1.09%.
The diff coverage is 19.23%.

❗ Current head 3b7b760 differs from pull request most recent head 00e83ac. Consider uploading reports for the commit 00e83ac to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #169      +/-   ##
==========================================
- Coverage   71.44%   70.35%   -1.09%     
==========================================
  Files          94       96       +2     
  Lines        2444     2496      +52     
==========================================
+ Hits         1746     1756      +10     
- Misses        698      740      +42     
Impacted Files Coverage Δ
Sources/SQLKit/SQLDialect.swift 73.46% <0.00%> (-1.54%) ⬇️
...urces/SQLKitBenchmark/SQLBenchmark+JSONPaths.swift 0.00% <0.00%> (ø)
Sources/SQLKitBenchmark/SQLBenchmarker.swift 80.00% <0.00%> (-5.72%) ⬇️
Sources/SQLKit/Query/SQLDataType.swift 82.35% <100.00%> (+1.10%) ⬆️
...rces/SQLKit/Query/SQLNestedSubpathExpression.swift 100.00% <100.00%> (ø)

@gwynne gwynne merged commit b2f128c into main Jul 11, 2023
7 of 12 checks passed
@gwynne gwynne deleted the nested-subpath-expressions branch July 11, 2023 02:03
cgrindel-self-hosted-renovate bot added a commit to cgrindel/rules_swift_package_manager that referenced this pull request Aug 25, 2023
…543)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[vapor/fluent-sqlite-driver](https://togithub.com/vapor/fluent-sqlite-driver)
| minor | `4.3.0` -> `4.5.0` |

---

### Release Notes

<details>
<summary>vapor/fluent-sqlite-driver
(vapor/fluent-sqlite-driver)</summary>

###
[`v4.5.0`](https://togithub.com/vapor/fluent-sqlite-driver/releases/tag/4.5.0):
- Update for the nested subpath changes in FluentKit

[Compare
Source](https://togithub.com/vapor/fluent-sqlite-driver/compare/4.4.0...4.5.0)

###### *This patch was authored and released by
[@&#8203;gwynne](https://togithub.com/gwynne).*


[vapor/fluent-kit#572](https://togithub.com/vapor/fluent-kit/issues/572)
takes advantage of the new support added to SQLKit in
[vapor/sql-kit#169](https://togithub.com/vapor/sql-kit/issues/169), so
remove the obsolete legacy support here.

Also does some minor tidying.

(Note: Since we now depend on a version of FluentKit that is multiple
minor versions newer than before, this must also be semver-minor.)
[vapor/fluent-sqlite-driver#87

###
[`v4.4.0`](https://togithub.com/vapor/fluent-sqlite-driver/releases/tag/4.4.0):
Update min Swift version to 5.6 and make platform versions consistent

[Compare
Source](https://togithub.com/vapor/fluent-sqlite-driver/compare/4.3.1...4.4.0)

###### *This patch was authored and released by
[@&#8203;gwynne](https://togithub.com/gwynne).*

###
[`v4.3.1`](https://togithub.com/vapor/fluent-sqlite-driver/releases/tag/4.3.1):
Add experimental support for watchOS

[Compare
Source](https://togithub.com/vapor/fluent-sqlite-driver/compare/4.3.0...4.3.1)

###### *This patch was authored by
[@&#8203;hyouuu](https://togithub.com/hyouuu) and released by
[@&#8203;0xTim](https://togithub.com/0xTim).*

Adds watchOS adds a target platform to enable it to be built for that
platform.

**Note:** watchOS support is very much experimental and not currently a
supported platform, though there is no reason why it shouldn't work

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi41Ny4zIiwidXBkYXRlZEluVmVyIjoiMzYuNTcuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: Self-hosted Renovate Bot <361546+cgrindel-self-hosted-renovate[bot]@users.noreply.github.enterprise.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver-minor Contains new APIs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants