vapor / fluent-mysql-driver

🖋🐬 Swift ORM (queries, models, relations, etc) built on MySQL.
MIT License
77 stars 52 forks source link

Update package for Sendable and 100% test coverage #223

Closed gwynne closed 6 months ago

gwynne commented 6 months ago

These changes are now available in 4.5.0

Adds Sendable correctness and ExistentialAny compliance, bumps min Swift version to 5.8, leverages the new SQLKit functionality, throws errors instead of crashes, updates CI, modernizes README, and achieves 100% test and documentation coverage.

codecov[bot] commented 6 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 98.87%. Comparing base (acfd0e7) to head (a6823fe). Report is 1 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #223 +/- ## =========================================== + Coverage 77.86% 98.87% +21.00% =========================================== Files 7 7 Lines 253 266 +13 =========================================== + Hits 197 263 +66 + Misses 56 3 -53 ``` | [Files](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor) | Coverage Δ | | |---|---|---| | [Sources/FluentMySQLDriver/Exports.swift](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?src=pr&el=tree&filepath=Sources%2FFluentMySQLDriver%2FExports.swift&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor#diff-U291cmNlcy9GbHVlbnRNeVNRTERyaXZlci9FeHBvcnRzLnN3aWZ0) | `100.00% <100.00%> (+100.00%)` | :arrow_up: | | [...s/FluentMySQLDriver/FluentMySQLConfiguration.swift](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?src=pr&el=tree&filepath=Sources%2FFluentMySQLDriver%2FFluentMySQLConfiguration.swift&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor#diff-U291cmNlcy9GbHVlbnRNeVNRTERyaXZlci9GbHVlbnRNeVNRTENvbmZpZ3VyYXRpb24uc3dpZnQ=) | `98.64% <100.00%> (+44.59%)` | :arrow_up: | | [...ources/FluentMySQLDriver/FluentMySQLDatabase.swift](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?src=pr&el=tree&filepath=Sources%2FFluentMySQLDriver%2FFluentMySQLDatabase.swift&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor#diff-U291cmNlcy9GbHVlbnRNeVNRTERyaXZlci9GbHVlbnRNeVNRTERhdGFiYXNlLnN3aWZ0) | `100.00% <100.00%> (+13.79%)` | :arrow_up: | | [Sources/FluentMySQLDriver/FluentMySQLDriver.swift](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?src=pr&el=tree&filepath=Sources%2FFluentMySQLDriver%2FFluentMySQLDriver.swift&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor#diff-U291cmNlcy9GbHVlbnRNeVNRTERyaXZlci9GbHVlbnRNeVNRTERyaXZlci5zd2lmdA==) | `100.00% <100.00%> (+16.66%)` | :arrow_up: | | [...ces/FluentMySQLDriver/MySQLConverterDelegate.swift](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?src=pr&el=tree&filepath=Sources%2FFluentMySQLDriver%2FMySQLConverterDelegate.swift&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor#diff-U291cmNlcy9GbHVlbnRNeVNRTERyaXZlci9NeVNRTENvbnZlcnRlckRlbGVnYXRlLnN3aWZ0) | `100.00% <100.00%> (ø)` | | | [...ources/FluentMySQLDriver/MySQLError+Database.swift](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?src=pr&el=tree&filepath=Sources%2FFluentMySQLDriver%2FMySQLError%2BDatabase.swift&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor#diff-U291cmNlcy9GbHVlbnRNeVNRTERyaXZlci9NeVNRTEVycm9yK0RhdGFiYXNlLnN3aWZ0) | `100.00% <ø> (+16.66%)` | :arrow_up: | | [Sources/FluentMySQLDriver/MySQLRow+Database.swift](https://app.codecov.io/gh/vapor/fluent-mysql-driver/pull/223?src=pr&el=tree&filepath=Sources%2FFluentMySQLDriver%2FMySQLRow%2BDatabase.swift&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=vapor#diff-U291cmNlcy9GbHVlbnRNeVNRTERyaXZlci9NeVNRTFJvdytEYXRhYmFzZS5zd2lmdA==) | `92.30% <100.00%> (+3.84%)` | :arrow_up: |