Examples and tests for async support in `SQLModel`
- (2✅ of 15⏹️ ) asyncio Tutorials matching sync Tutorials.
- (2✅ of 15⏹️ ) pytest asyncio tutorial tests
- ✅above tests and tutorials passing
mypystatic analysis (see note below)
mypy static test dependencies
The work done in #58 resolves the mypy static type analysis issues "AsyncSession" has incompatible type "SelectOfScalar[Hero]"
with mypy docs_src\tutorial_async before: #58
after #58

Note the PR #435
This PR subclasses outstanding sqlalchemy dependencies and also provides some additional tutorial and pytest tests. I have not assessed those tutorials or tests, I have marked in each tutorial that this PR provides the TODO's to change on PR #435 or equivalent being merged, removing the requirement for sqlalchemy imports
Note on python < 3.9
Python 3.6 support should be retired even 3.7 is EOL 2021/12, have got a clean lint and test running for 3.7 but 3.6 required major dependency surgery on pyproject.toml that looked like it was getting there until I ran into

The dependency management for 3.6.15 that was working

Summary
I believe there is great value in the existing sync tutorials and so have proceeded with converting those to async tutorials as this provides a simple base for adding, extending and checking coverage
📝 Docs preview for commit 1151d8586d6b5215f4804e8cd7d2648999d3bdb5 at: https://634df5df2d0196544d59a3e1--sqlmodel.netlify.app
📝 Docs preview for commit 94527a65e1a389009bb78112327d6cfa76a0e9ee at: https://634e048b16d79567f08bfacd--sqlmodel.netlify.app
Codecov Report
Base: 97.76% // Head: 98.89% // Increases project coverage by +1.12% :tada:
Coverage data is based on head (
6d00e2c) compared to base (75ce455). Patch coverage: 100.00% of modified lines in pull request are covered.
Additional details and impacted files
@@ Coverage Diff @@
## main #471 +/- ##
==========================================
+ Coverage 97.76% 98.89% +1.12%
==========================================
Files 187 208 +21
Lines 6268 6680 +412
==========================================
+ Hits 6128 6606 +478
+ Misses 140 74 -66
| Impacted Files | Coverage Δ | |
|---|---|---|
| ...ect_async/create_tables_async/tutorial001_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/delete_async/tutorial001_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/insert_async/tutorial001_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/select_async/tutorial001_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/select_async/tutorial002_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/select_async/tutorial003_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/select_async/tutorial004_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/select_async/tutorial005_async.py | 100.00% <100.00%> (ø) |
|
| ...nc/connect_async/update_async/tutorial001_async.py | 100.00% <100.00%> (ø) |
|
| ...c/tutorial_async/select_async/tutorial001_async.py | 100.00% <100.00%> (ø) |
|
| ... and 17 more |
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.
:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
📝 Docs preview for commit 1846878ba05043eaa8f484fb3666db899aa1dc2d at: https://634e5720ac7f9d1fde6279d9--sqlmodel.netlify.app
📝 Docs preview for commit 5aed51e28317e8106dac9b1ab392e104aa109d96 at: https://634e81e23c20c3463fe7cccb--sqlmodel.netlify.app
📝 Docs preview for commit 6d00e2c1d367172346379cff872eb3b069de2e43 at: https://634f09db47ba242e98b80f08--sqlmodel.netlify.app
see comments regarding python < 3.9. I believe support for 3.6 should be retired.
Great addition, any progress?