]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commit
Add case insensitivity feature to GenericFunction.
authorAdrien Berchet <adrien.berchet@gmail.com>
Mon, 15 Apr 2019 17:59:18 +0000 (13:59 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Mon, 29 Apr 2019 21:24:32 +0000 (17:24 -0400)
commita10a4ea1248902349d789de7f5470bb8e437a584
tree536acae15894ae8f60ac2aedd784e37575ccba39
parent64865304051b2af1ee4f90c6bf5e93378d4f302c
Add case insensitivity feature to GenericFunction.

The :class:`.GenericFunction` namespace is being migrated so that function
names are looked up in a case-insensitive manner, as SQL  functions do not
collide on case sensitive differences nor is this something which would
occur with user-defined functions or stored procedures.   Lookups for
functions declared with :class:`.GenericFunction` now use a case
insensitive scheme,  however a deprecation case is supported which allows
two or more :class:`.GenericFunction` objects with the same name of
different cases to exist, which will cause case sensitive lookups to occur
for that particular name, while emitting a warning at function registration
time.  Thanks to Adrien Berchet for a lot of work on this complicated
feature.

Fixes: #4569
Closes: #4570
Pull-request: https://github.com/sqlalchemy/sqlalchemy/pull/4570
Pull-request-sha: 37d4f3322b6bace88c99b959cb1916dbbc57610e

Change-Id: Ief07c6eb55bf398f6aad85b60ef13ee6d1173109
doc/build/changelog/unreleased_13/4569.rst [new file with mode: 0644]
lib/sqlalchemy/sql/functions.py
test/sql/test_deprecations.py
test/sql/test_functions.py