feat(any, sqlite): add unsigned ints + tinyint#4037
Closed
luan wants to merge 1 commit into
Closed
Conversation
36fffcb to
572bf75
Compare
572bf75 to
3620c80
Compare
Author
|
Welp, I just realized while going through the CI errors that UNSIGNED is not a thing in standard Postgres which explains why y'all didn't have this in Any to begin with. I don't feel like it's my place to decide to do the same "hack" I did for SQLite on postgres so going to leave this alone as a draft for now. |
Collaborator
|
We deliberately chose not to fake support for unsigned types in the other drivers because it could give misleading results. To not have the wrong results in SQL, we'd have to widen to the next larger type, but there isn't a common integer type to widen to for I'd accept support for |
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 free
to 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.
Adds handling of all unsigned types for
Type<Any>as well asi8(viaTINYINT).Support for SQLite is done by downcasting from unsigned to signed.
u8,u16, andu32all fit in completely in one type.u64is not available (easily) in SQLite, so I've intentionally let it fall through to:That seems undesirable, so I'm looking for input on what would be best for the
u64case.Is this a breaking change?
No. Behavior is additive and fixes issues with using Any with unsigned ints only.