summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add `postgresql_psycopg2binary` install extra that installs `psycopg2-binary`rel_1_@Alex Rothberg2018-07-181-0/+1
| | | | | | Fixes: #4306 Change-Id: I26edc1a4ac8a7f9f3f258bb03009ebfa4cc00e1a Pull-request: https://github.com/zzzeek/sqlalchemy/pull/465
* Don't apply no-traverse to query.statementMike Bayer2018-07-144-14/+54
| | | | | | | | | | | | | Fixed long-standing issue in :class:`.Query` where a scalar subquery such as produced by :meth:`.Query.exists`, :meth:`.Query.as_scalar` and other derivations from :attr:`.Query.statement` would not correctly be adapted when used in a new :class:`.Query` that required entity adaptation, such as when the query were turned into a union, or a from_self(), etc. The change removes the "no adaptation" annotation from the :func:`.select` object produced by the :attr:`.Query.statement` accessor. Change-Id: I554e0e909ac6ee785ec3b3b14aaec9d235aa28cf Fixes: #4304
* cherry-pick changelog update for 1.2.11Mike Bayer2018-07-131-0/+4
|
* cherry-pick changelog from 1.2.10Mike Bayer2018-07-134-26/+29
|
* Use exprs for bundle __clause_element__Mike Bayer2018-07-133-1/+48
| | | | | | | | | Fixed bug in :class:`.Bundle` construct where placing two columns of the same name would be de-duplicated, when the :class:`.Bundle` were used as part of the rendered SQL, such as in the ORDER BY or GROUP BY of the statement. Change-Id: Ia528c9fbb399a6beb5ea7cdd3a8a83ad530f5831 Fixes: #4295
* Correct the bug number for :ticket:`4288`, which was erroneouslyMike Bayer2018-07-131-1/+1
| | | | | | | given as :ticket:`4228`. Change-Id: I6525560c1bcf3f3d861d6254723f5facdba6adae Fixes: #4288
* - fix typoMike Bayer2018-07-131-1/+1
| | | | Change-Id: I78692e821e34afe654c1131cd3465e4a6dfe773f
* Correct fastexecutemany test for lower pyodbc versionMike Bayer2018-07-121-1/+5
| | | | | | | some builds on CI have a pyodbc that is < 4.0.19, make the check more specific Change-Id: I69b33c2367d4a03adb00bcf52fb6d1483b0327f8
* Merge "Don't null FK for collection-removed item with passive_deletes='all'"mike bayer2018-07-124-12/+77
|\
| * Don't null FK for collection-removed item with passive_deletes='all'Mike Bayer2018-07-114-12/+77
| | | | | | | | | | | | | | | | | | | | | | Fixed issue regarding passive_deletes="all", where the foreign key attribute of an object is maintained with its value even after the object is removed from its parent collection. Previously, the unit of work would set this to NULL even though passive_deletes indicated it should not be modified. Change-Id: I5ba98bc388cbdd6323d255b764e02506c2e66896 Fixes: #3844
* | Merge "Drop default-related structures after the Table is dropped."mike bayer2018-07-116-6/+113
|\ \
| * | Drop default-related structures after the Table is dropped.Mike Bayer2018-07-106-6/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed bug where a :class:`.Sequence` would be dropped explicitly before any :class:`.Table` that refers to it, which breaks in the case when the sequence is also involved in a server-side default for that table, when using :meth:`.MetaData.drop_all`. The step which processes sequences to be dropped via non server-side column default functions is now invoked after the table itself is dropped. Change-Id: I185f2cc76d2011ad4dd3ba9bde5d8aef0ec335ae Fixes: #4300
* | | Add pyodbc fast_executemanyMike Bayer2018-07-105-3/+116
| |/ |/| | | | | | | | | | | | | | | Added ``fast_executemany=True`` parameter to the SQL Server pyodbc dialect, which enables use of pyodbc's new performance feature of the same name when using Microsoft ODBC drivers. Change-Id: I743fa7280e8f709addd330cfc7682623701cbb2e Fixes: #4158
* | Merge "Add all "like", "between", "is" operators as comparison operators"mike bayer2018-07-102-7/+46
|\ \
| * | Add all "like", "between", "is" operators as comparison operatorsMike Bayer2018-07-102-7/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added "like" based operators as "comparison" operators, including :meth:`.ColumnOperators.startswith` :meth:`.ColumnOperators.endswith` :meth:`.ColumnOperators.ilike` :meth:`.ColumnOperators.notilike` among many others, so that all of these operators can be the basis for an ORM "primaryjoin" condition. Change-Id: Idb13961f0c74462a139fc3444626e042f798ff08 Fixes: #4302
* | | Sqlite jsonIlja Everilä2018-07-109-8/+213
|/ / | | | | | | | | | | | | | | | | | | | | Added support for SQLite's json functionality via the new SQLite implementation for :class:`.sqltypes.JSON`, :class:`.sqlite.JSON`. The name used for the type is ``JSON``, following an example found at SQLite's own documentation. Pull request courtesy Ilja Everilä. Fixes: #3850 Change-Id: I3d2714fb8655343a99d13dc751b16b93d05d7dda Pull-request: https://github.com/zzzeek/sqlalchemy/pull/434
* | Document sticky behavior of loader optionsMike Bayer2018-07-101-0/+34
| | | | | | | | | | | | References #4301 Change-Id: If921e3b8369e2cd5312b5964a99bcf7731b3ecfc
* | Merge "Use MySQL protocol-level ping."mike bayer2018-07-095-1/+55
|\ \
| * | Use MySQL protocol-level ping.Maxim Bublis2018-07-095-1/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Utilizes MySQL protocol-level pings for disconnection detection. This is just a 5-byte packet followed by a 7-byte response. Affects MySQLdb, MySQL Connector and PyMySQL dialects. Change-Id: I672f75e3746878d88987a31750444dde0cf8eb9b Pull-request: https://github.com/zzzeek/sqlalchemy/pull/460
* | | Merge "Expire memoizations on setattr/delattr, check in delattr"mike bayer2018-07-095-2/+99
|\ \ \ | |_|/ |/| |
| * | Expire memoizations on setattr/delattr, check in delattrMike Bayer2018-07-095-2/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed bug where declarative would not update the state of the :class:`.Mapper` as far as what attributes were present, when additional attributes were added or removed after the mapper attribute collections had already been called and memoized. Addtionally, a ``NotImplementedError`` is now raised if a fully mapped attribute (e.g. column, relationship, etc.) is deleted from a class that is currently mapped, since the mapper will not function correctly if the attribute has been removed. Change-Id: Idaca8e0237b31aa1d6564d94c3a179d7dc6b5df9 Fixes: #4133
* | | support functions "as binary comparison"Mike Bayer2018-07-097-3/+310
| | | | | | | | | | | | | | | | | | | | | | | | | | | Added new feature :meth:`.FunctionElement.as_comparison` which allows a SQL function to act as a binary comparison operation that can work within the ORM. Change-Id: I07018e2065d09775c0406cabdd35fc38cc0da699 Fixes: #3831
* | | Merge "Refactor pool.py into a package"mike bayer2018-07-098-589/+603
|\ \ \ | |/ / |/| |
| * | Refactor pool.py into a packageMike Bayer2018-07-098-589/+603
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for better separation of concerns split out the core pooling constructs from the implementations. also makes more room for new pool classes should we decide to add them. The DBProxy feature is never used so remove it from documentation and split it out. Change-Id: I04c9d7ae1882b17f3cf5c37ed05b781b05ef88fa Fixes: #4255
* | | - add docs for PG REGCLASSMike Bayer2018-07-091-8/+2
| | | | | | | | | | | | | | | | | | - remove __init__ docs for types without an init Change-Id: I254ecb3763eaeb29aa71743c87ce2e021507fe28
* | | - add changelog 13 and linksMike Bayer2018-07-093-2/+19
| | | | | | | | | | | | Change-Id: I658a5958c0b053a26308aba213d9da3a67b75a1c
* | | Check tokens in chop path for inspectionattr before calling is_mapperMike Bayer2018-07-083-3/+62
| |/ |/| | | | | | | | | | | | | | | Fixed regression in 1.2.9 due to :ticket:`4287` where using a :class::`.Load` option in conjunction with a string wildcard would result in a TypeError. Change-Id: I2997ead0b8b9fa0edd009aa6f3161f4618fab97b Fixes: #4298
* | - add some context to the declarative section indicating this is notMike Bayer2018-07-054-2/+25
| | | | | | | | | | | | the introductory material for these topics Change-Id: I358ba8c32520ce3950a727216bc019e33377e7b9
* | block cx_Oracle 6.4Mike Bayer2018-07-041-1/+1
| | | | | | | | | | | | Prevents https://github.com/oracle/python-cx_Oracle/issues/199 Change-Id: I0f94bde38919a027f094ca016621c1364e845332
* | - fix linking for the query.rst pageMike Bayer2018-07-041-3/+8
|/ | | | Change-Id: I269fdd72e372e1bf4f0f85e9fc8e6938adc4f686
* - add "leaks memory" to documented issues w/ mysqlconnector,Mike Bayer2018-06-301-0/+3
| | | | | | references #4296 Change-Id: I5b663d3444d3732a83a32443c128faffe62f11d9
* cherry-pick changelog update for 1.2.10Mike Bayer2018-06-291-0/+4
|
* cherry-pick changelog from 1.2.9Mike Bayer2018-06-2918-179/+196
|
* Merge "Add unique_constraint_name to MSSQL FK reflection"mike bayer2018-06-295-0/+57
|\
| * Add unique_constraint_name to MSSQL FK reflectionSean Dunn2018-06-295-0/+57
| | | | | | | | | | | | | | | | | | | | | | Fixed bug in MSSQL reflection where when two same-named tables in different schemas had same-named primary key constraints, foreign key constraints referring to one of the tables would have their columns doubled, causing errors. Pull request courtesy Sean Dunn. Fixes: #4228 Change-Id: I7dabaaee0944e1030048826ba39fc574b0d63031 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/457
* | Merge remote-tracking branch 'origin/pr/456'Mike Bayer2018-06-291-1/+1
|\ \ | |/ |/| | | Change-Id: Id1d26d756f26e8cece921f476bc3f49689a3b782
| * Fixed typoAlex Grönholm2018-06-251-1/+1
| | | | | | The name of the strategy is `raise_on_sql` as indicated elsewhere in the documentation.
* | Update URL for PyMySQL documentationLogan Rosen2018-06-281-1/+1
| |
* | Reflect ASC/DESC in MySQL index columnsMike Bayer2018-06-283-2/+74
| | | | | | | | | | | | | | | | | | | | Fixed bug in index reflection where on MySQL 8.0 an index that includes ASC or DESC in an indexed column specfication would not be correctly reflected, as MySQL 8.0 introduces support for returning this information in a table definition string. Change-Id: I21f64984ade690aac8c87dbe3aad0c1ee8e9727f Fixes: #4293
* | Merge "Vendor python3 formatargspec"mike bayer2018-06-283-13/+80
|\ \
| * | Vendor python3 formatargspecMike Bayer2018-06-283-13/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | Replaced the usage of inspect.formatargspec() with a vendored version copied from the Python standard library, as inspect.formatargspec() is deprecated and as of Python 3.7.0 is emitting a warning. Change-Id: I751652fac7f605a3a10b547ba8c5f34fef1de945 Fixes: #4291
* | | Merge "Add do_setinputsizes event for cx_Oracle"mike bayer2018-06-285-17/+163
|\ \ \ | |/ / |/| |
| * | Add do_setinputsizes event for cx_OracleMike Bayer2018-06-275-17/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added a new event currently used only by the cx_Oracle dialect, :meth:`.DialectEvents.setiputsizes`. The event passes a dictionary of :class:`.BindParameter` objects to DBAPI-specific type objects that will be passed, after conversion to parameter names, to the cx_Oracle ``cursor.setinputsizes()`` method. This allows both visibility into the setinputsizes process as well as the ability to alter the behavior of what datatypes are passed to this method. Change-Id: I43b97c8e3c840cad6f01edb274dc9cfed19cb5fc Fixes: #4290
* | | Try to get mysqlconnector somewhat workingMike Bayer2018-06-275-4/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add CI support for MySQL connector and try to fix some of the more obvious issues. CI tests will run against MySQL 5.7 only for starters as there appear to be issues with MySQL 8.0 Change-Id: Id8971143a8385a5c84f0646c21c4c21e793ce3a2
* | | Merge "Ensure BakedQuery is cloned before we add options to it"mike bayer2018-06-264-5/+186
|\ \ \ | |/ / |/| |
| * | Ensure BakedQuery is cloned before we add options to itMike Bayer2018-06-264-5/+186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed bug in new polymorphic selectin loading where the BakedQuery used internally would be mutated by the given loader options, which would both inappropriately mutate the subclass query as well as carry over the effect to subsequent queries. Change-Id: Iaceecb50557f78484d09e55b3029a0483dfe873f Fixes: #4286
* | | Merge "fix TypeReflectionTest for sqlite 3.24"mike bayer2018-06-252-1/+8
|\ \ \
| * | | fix TypeReflectionTest for sqlite 3.24Nils Philippsen2018-06-252-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed issue in test suite where SQLite 3.24 added a new reserved word that conflicted with a usage in TypeReflectionTest. Pull request courtesy Nils Philippsen. Change-Id: I396562cecb5ca774f29e9234845bcc6a399fc5cb Pull-request: https://github.com/zzzeek/sqlalchemy/pull/452
* | | | Merge "Look up adapter info for previous left side in chained query.join()"mike bayer2018-06-253-0/+120
|\ \ \ \
| * | | | Look up adapter info for previous left side in chained query.join()Mike Bayer2018-06-253-0/+120
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed issue where chaining multiple join elements inside of :meth:`.Query.join` might not correctly adapt to the previous left-hand side, when chaining joined inheritance classes that share the same base class. Change-Id: I4b846430b7362912dbebf50599ec15a1eb978fd4 Fixes: #3505