summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy
Commit message (Collapse)AuthorAgeFilesLines
* Fix sessionmaker.__repr__pr/45Timur2013-11-161-1/+1
| | | A comma separating 'class_' from the other args. It's still there even when kw is empty, which is syntactically correct.
* Merge branch 'master' of github.com:vrajmohan/sqlalchemy into mmMike Bayer2013-11-1414-26/+29
|\
| * Fix cross referencespr/44Vraj Mohan2013-11-142-3/+3
| |
| * Fix method nameVraj Mohan2013-11-141-2/+2
| |
| * Remove references to (previously removed) AbstractTypeVraj Mohan2013-11-141-1/+1
| |
| * Import CTE so that API doc can be generatedVraj Mohan2013-11-141-1/+1
| |
| * Change CompileException references to ConpileErrorVraj Mohan2013-11-141-1/+1
| |
| * Fix references to exceptionsVraj Mohan2013-11-142-5/+5
| |
| * Fix cross referenceVraj Mohan2013-11-142-4/+4
| |
| * Ensure API generation and fix cross referencesVraj Mohan2013-11-132-4/+7
| |
| * Ensure API doc for make_url and resolve referencesVraj Mohan2013-11-131-2/+2
| |
| * Fix indentation and escape *args and **kwargsVraj Mohan2013-11-132-3/+3
| |
* | Fixed bug where usage of new :class:`.Bundle` object would causeMike Bayer2013-11-131-1/+1
|/ | | | the :attr:`.Query.column_descriptions` attribute to fail.
* Fix indentation issues in docstringspr/43Vraj Mohan2013-11-127-16/+18
|
* Fix cross referencesVraj Mohan2013-11-125-13/+17
|
* - Fixed a regression introduced by the join rewriting feature ofMike Bayer2013-11-011-2/+5
| | | | | | | :ticket:`2369` and :ticket:`2587` where a nested join with one side already an aliased select would fail to translate the ON clause on the outside correctly; in the ORM this could be seen when using a SELECT statement as a "secondary" table. [ticket:2858]
* - Fixed a regression introduced by :ticket:`2818` where the EXISTSMike Bayer2013-10-301-1/+1
| | | | | | query being generated would produce a "columns being replaced" warning for a statement with two same-named columns, as the internal SELECT wouldn't have use_labels set.
* Super-minor doc fixpr/39Jacob Magnusson2013-10-281-1/+1
|
* - Fixed bug where index reflection would mis-interpret indkey valuesMike Bayer2013-10-272-2/+5
| | | | | | when using the pypostgresql adapter, which returns these values as lists vs. psycopg2's return type of string. [ticket:2855]
* - add copyright to source files missing itMike Bayer2013-10-2625-2/+136
|
* will call this 0.9.0b1Mike Bayer2013-10-261-1/+1
|
* - Fixed bug where Oracle table reflection using synonyms would failMike Bayer2013-10-251-5/+7
| | | | | if the synonym and the table were in different remote schemas. Patch to fix courtesy Kyle Derr. [ticket:2853]
* - catch the metadata on ScalarTest.test_scalar_proxy, this has been leaving ↵Mike Bayer2013-10-251-1/+5
| | | | | | | | itself around for a long time - association proxy now returns None for proxied scalar that is also None, rather than raising AttributeError. [ticket:2810]
* - Fix and test parsing of MySQL foreign key options within reflection;Mike Bayer2013-10-251-1/+1
| | | | | | this complements the work in :ticket:`2183` where we begin to support reflection of foreign key options such as ON UPDATE/ON DELETE cascade. [ticket:2839]
* Merge branch 'master' of github.com:ijl/sqlalchemy into merge_2183Mike Bayer2013-10-254-8/+34
|\
| * #2183: Metadata.reflect() foreign keys include options when the dialect ↵ijl2013-10-133-3/+10
| | | | | | | | exposes it
| * PostgreSQL foreign key inspection includes optionsijl2013-10-111-5/+24
| |
* | - :func:`.attributes.get_history()` when used with a scalar column-mappedMike Bayer2013-10-252-6/+43
| | | | | | | | | | | | | | | | | | attribute will now honor the "passive" flag passed to it; as this defaults to ``PASSIVE_OFF``, the function will by default query the database if the value is not present. This is a behavioral change vs. 0.8. [ticket:2787] - Added new method :meth:`.AttributeState.load_history`, works like :attr:`.AttributeState.history` but also fires loader callables.
* | - add migration notes for [ticket:2838]Mike Bayer2013-10-241-0/+18
| | | | | | | | | | - have TypeDecorator use process_bind_param for literal values if no process_literal_param is set
* | An overhaul of expression handling for special symbols particularlyMike Bayer2013-10-2311-91/+286
| | | | | | | | | | | | | | | | | | | | with conjunctions, e.g. ``None`` :func:`.expression.null` :func:`.expression.true` :func:`.expression.false`, including consistency in rendering NULL in conjunctions, "short-circuiting" of :func:`.and_` and :func:`.or_` expressions which contain boolean constants, and rendering of boolean constants and expressions as compared to "1" or "0" for backends that don't feature ``true``/``false`` constants. [ticket:2804]
* | - The regexp used by the :func:`.url.make_url` function now parsesMike Bayer2013-10-231-2/+11
| | | | | | | | ipv6 addresses, e.g. surrounded by brackets. [ticket:2851]
* | - use a different approach here since oracle isn't doing it either, just ↵Mike Bayer2013-10-211-3/+6
| | | | | | | | round it
* | - oursql returns a pure FP here which isn't exactMike Bayer2013-10-211-1/+2
| |
* | - A :func:`.bindparam` construct with a "null" type (e.g. no typeMike Bayer2013-10-212-13/+16
| | | | | | | | | | | | | | | | | | specified) is now copied when used in a typed expression, and the new copy is assigned the actual type of the compared column. Previously, this logic would occur on the given :func:`.bindparam` in place. Additionally, a similar process now occurs for :func:`.bindparam` constructs passed to :meth:`.ValuesBase.values` for a :class:`.Insert` or :class:`.Update` construct. [ticket:2850]
* | - Fixed bug where :func:`.type_coerce` would not interpret ORMMike Bayer2013-10-211-2/+2
| | | | | | | | | | elements with a ``__clause_element__()`` method properly. [ticket:2849]
* | - The typing system now handles the task of rendering "literal bind" values,Mike Bayer2013-10-209-63/+279
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e.g. values that are normally bound parameters but due to context must be rendered as strings, typically within DDL constructs such as CHECK constraints and indexes (note that "literal bind" values become used by DDL as of :ticket:`2742`). A new method :meth:`.TypeEngine.literal_processor` serves as the base, and :meth:`.TypeDecorator.process_literal_param` is added to allow wrapping of a native literal rendering method. [ticket:2838] - enhance _get_colparams so that we can send flags like literal_binds into INSERT statements - add support in PG for inspecting standard_conforming_strings - add a new series of roundtrip tests based on INSERT of literal plus SELECT for basic literal rendering in dialect suite
* | - add a type_coerce() step within Enum, Boolean to the CHECK constraint,Mike Bayer2013-10-202-3/+6
| | | | | | | | | | | | | | | | so that the custom type isn't exposed to an operation that is against the "impl" type's constraint, [ticket:2842] - this change showed up as some recursion overflow in pickling with labels, add a __reduce__() there....pickling of expressions is less and less something that's very viable...
* | - The :meth:`.Table.tometadata` method now produces copies ofMike Bayer2013-10-181-13/+15
| | | | | | | | | | | | | | | | | | | | all :attr:`.SchemaItem.info` dictionaries from all :class:`.SchemaItem` objects within the structure including columns, constraints, foreign keys, etc. As these dictionaries are copies, they are independent of the original dictionary. Previously, only the ``.info`` dictionary of :class:`.Column` was transferred within this operation, and it was only linked in place, not copied. [ticket:2716]
* | - attempt to clarify what mutable extension does for HSTORE, [ticket:2803]Mike Bayer2013-10-181-2/+9
| |
* | - Removed a 128-character truncation from the reflection of theMike Bayer2013-10-181-2/+1
| | | | | | | | | | | | server default for a column; this code was original from PG system views which truncated the string for readability. [ticket:2844]
* | - The change in :ticket:`2721`, which is that the ``deferrable`` keywordMike Bayer2013-10-181-1/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of :class:`.ForeignKeyConstraint` is silently ignored on the MySQL backend, will be reverted as of 0.9; this keyword will now render again, raising errors on MySQL as it is not understood - the same behavior will also apply to the ``initially`` keyword. In 0.8, the keywords will remain ignored but a warning is emitted. Additionally, the ``match`` keyword now raises a :class:`.CompileError` on 0.9 and emits a warning on 0.8; this keyword is not only silently ignored by MySQL but also breaks the ON UPDATE/ON DELETE options. To use a :class:`.ForeignKeyConstraint` that does not render or renders differently on MySQL, use a custom compilation option. An example of this usage has been added to the documentation, see :ref:`mysql_foreign_keys`. [ticket:2721] [ticket:2839]
* | - Added support for rendering ``SMALLSERIAL`` when a :class:`.SmallInteger`Mike Bayer2013-10-151-1/+11
| | | | | | | | | | | | type is used on a primary key autoincrement column, based on server version detection of Postgresql version 9.2 or greater. [ticket:2840]
* | The MySQL :class:`.mysql.SET` type now features the same auto-quotingMike Bayer2013-10-143-88/+115
| | | | | | | | | | | | | | behavior as that of :class:`.mysql.ENUM`. Quotes are not required when setting up the value, but quotes that are present will be auto-detected along with a warning. This also helps with Alembic where the SET type doesn't render with quotes. [ticket:2817]
* | The ``.unique`` flag on :class:`.Index` could be produced as ``None``Mike Bayer2013-10-141-1/+6
| | | | | | | | | | | | if it was generated from a :class:`.Column` that didn't specify ``unique`` (where it defaults to ``None``). The flag will now always be ``True`` or ``False``. [ticket:2825]
* | workaround for #2838 here. still need to figure out why an ENUM test is ↵Mike Bayer2013-10-141-0/+7
| | | | | | | | suddenly hitting this.
* | Merge pull request #35 from alex/less-dictsmike bayer2013-10-141-5/+4
|\ \ | | | | | | Perform fewer dict lookups - tiny microoptimization
| * | Perform fewer dict lookups - tiny microoptimizationpr/35Alex Gaynor2013-10-141-5/+4
| | |
* | | these are in alphabetical orderMike Bayer2013-10-131-21/+21
|/ /
* | - Added new option to :func:`.relationship` ``distinct_target_key``.Mike Bayer2013-10-132-5/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This enables the subquery eager loader strategy to apply a DISTINCT to the innermost SELECT subquery, to assist in the case where duplicate rows are generated by the innermost query which corresponds to this relationship (there's not yet a general solution to the issue of dupe rows within subquery eager loading, however, when joins outside of the innermost subquery produce dupes). When the flag is set to ``True``, the DISTINCT is rendered unconditionally, and when it is set to ``None``, DISTINCT is rendered if the innermost relationship targets columns that do not comprise a full primary key. The option defaults to False in 0.8 (e.g. off by default in all cases), None in 0.9 (e.g. automatic by default). Thanks to Alexander Koval for help with this. [ticket:2836]
* | MySQL-connector dialect now allows options in the create_engineMike Bayer2013-10-131-2/+3
| | | | | | | | | | | | query string to override those defaults set up in the connect, including "buffered" and "raise_on_warnings". [ticket:2515]