Uh oh!
There was an error while loading. Please reload this page.
docs: rewrite the README in a tighter voice - #4
Open
lfrancke wants to merge 1 commit into
Open
Conversation
Cuts the prose by a third without dropping any facts. The length came from stacking two or three clauses of justification behind every claim, plus three facts stated twice: the deprecated ODBC 2.x rationale (What you get and Conformance), "the compiler names what is still missing" (What you get and Writing a driver), and UTF-16 conversion. Limits becomes a table, which is what that section always was. One sentence per line throughout, and `-` bullets to match every other document in the repo.
adwk67
requested changes
Aug 6, 2026
| interleaving rather than the one that happened to occur, and cargo-fuzz throws | ||
| random input at the buffer-copying code under AddressSanitizer. All three run | ||
| on every pull request, alongside the unit tests on Linux and Windows. | ||
| - **We handle (sic!) the Handles.** |
Member
There was a problem hiding this comment.
I think sic is only used to acknowledge an error (like a typo):
Suggested change
| -**We handle (sic!) the Handles.** | |
| -**We handle the Handles.** |
| random input at the buffer-copying code under AddressSanitizer. All three run | ||
| on every pull request, alongside the unit tests on Linux and Windows. | ||
| - **We handle (sic!) the Handles.** | ||
| If you don't know what a Handle is in ODBC-land you're lucky. |
Member
There was a problem hiding this comment.
Suggested change
| If you don't know what a Handle is in ODBC-land you're lucky. | |
| If you don't know what a Handle is in ODBC-land, you're lucky. |
| Driver Manager checklist. | ||
| That one line expands to every exported `SQL*` entry point, plus `ConfigDSNW` on Windows. | ||
| Most of `Backend` is one-line capability declarations such as `supports_catalogs` and `identifier_case`. |
Member
There was a problem hiding this comment.
Suggested change
| Most of `Backend`is one-line capability declarations such as `supports_catalogs` and `identifier_case`. | |
| `Backend`consists mostly of one-line capability declarations such as `supports_catalogs` and `identifier_case`. |
| That one line expands to every exported `SQL*` entry point, plus `ConfigDSNW` on Windows. | ||
| Most of `Backend` is one-line capability declarations such as `supports_catalogs` and `identifier_case`. | ||
| None of them are defaulted, because a default would be a claim about your database that nobody ever checked, and a wrong one is invisible. |
Member
There was a problem hiding this comment.
Suggested change
| None of them are defaulted, because a default would be a claim about your database that nobody ever checked, and a wrong one is invisible. | |
| None of them are defaulted, because a default would be a de facto and untested assumption about how your database behaves, and if it's wrong it is easy to overloook. |
| would, so exporting your own version switches that off rather than adding | ||
| anything. `SQLExtendedFetch` is the exception the Driver Manager does not map, | ||
| so core exports it. | ||
| ODBC 3.80 at the `SQL_OIC_CORE` level, which is the base of the standard's three interface-conformance levels and the one an application may assume of any driver. |
Member
There was a problem hiding this comment.
Suggested change
| ODBC 3.80 at the `SQL_OIC_CORE` level, which is the base of the standard's three interface-conformance levels and the one an application may assume of any driver. | |
| ODBC 3.80 is implemented at the `SQL_OIC_CORE` level, which is the base of the standard's three interface-conformance levels and the one an application may assume of any driver. |
| `SQLCancel` still interrupts one. `Backend` is synchronous too, so a driver | ||
| built on an async client library bridges to it internally, for example with | ||
| a current-thread tokio runtime and `block_on`. | ||
| Each of these limits is actually reported back to an application that tries to use one of these features so they can react to it. |
Member
There was a problem hiding this comment.
Suggested change
| Each of these limits is actually reported back to an application that tries to use one of these features so they can react to it. | |
| Each of these limits is actually reported back to an application that tries to use one of these features so it can react to it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
README only. I removed a whole lot of the typical AI-waffling and made it more human sounding (because it now was mostly written by a human :) )
Also: one sentence per line throughout
Checklist
pre-commit run --all-filespassesCHANGELOG.md— not applicable, no public type, trait method or FFI contract changed