• Tamir Duberstein's avatar
    database/sql/driver: remove string exclusion · 7162c4d0
    Tamir Duberstein authored
    The exclusion of string from IsScanValue prevents driver authors from
    writing their drivers in such a way that would allow users to
    distinguish between strings and byte arrays returned from a database.
    Such drivers are possible today, but require their authors to deviate
    from the guidance provided by the standard library.
    
    This exclusion has been in place since the birth of this package in
    https://github.com/golang/go/commit/357f2cb1a385f4d1418e48856f9abe0cce,
    but the fakedb implementation shipped in the same commit violates the
    exclusion!
    
    Strictly speaking this is a breaking change, but it increases the set
    of permissible Scan types, and should not cause breakage in practice.
    
    No test changes are necessary because fakedb already exercises this.
    
    Fixes #6497.
    
    Change-Id: I69dbd3a59d90464bcae8c852d7ec6c97bfd120f8
    Reviewed-on: https://go-review.googlesource.com/19439
    Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
    7162c4d0
driver.go 6.44 KB