summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/sql
Commit message (Collapse)AuthorAgeFilesLines
* Provided a new attribute for :class:`.TypeDecorator`Mike Bayer2013-06-221-2/+5
| | | | | | | | | called :attr:`.TypeDecorator.coerce_to_is_types`, to make it easier to control how comparisons using ``==`` or ``!=`` to ``None`` and boolean types goes about producing an ``IS`` expression, or a plain equality expression with a bound parameter. [ticket:2744]
* cleanupMike Bayer2013-06-082-15/+6
|
* - tests for the alias() APIMike Bayer2013-06-081-11/+90
| | | | - docs docs docs
* - Fixed an obscure bug where the wrong results would beMike Bayer2013-06-071-0/+2
| | | | | | | | | | | fetched when joining/joinedloading across a many-to-many relationship to a single-table-inheriting subclass with a specific discriminator value, due to "secondary" rows that would come back. The "secondary" and right-side tables are now inner joined inside of parenthesis for all ORM joins on many-to-many relationships so that the left->right join can accurately filtered. [ticket:2369]
* dial back the default "flatness" a bit, it will be there for joinedload and ↵Mike Bayer2013-06-061-6/+5
| | | | | | | query.join(), but if you're dealing with aliased() or with_polymorphic() you need to say "flat=True". Just the one flag though, "flat" implies "aliased".
* Merge branch 'ticket_2587'Mike Bayer2013-06-044-31/+170
|\ | | | | | | | | | | Conflicts: test/profiles.txt test/sql/test_selectable.py
| * - add coverage for result map rewritingMike Bayer2013-06-041-1/+6
| | | | | | | | | | - fix the result map rewriter for col mismatches, since the rewritten select at the moment typically has more columns than the original
| * - if the select() does not have use_labels on, then we just renderMike Bayer2013-06-041-0/+1
| | | | | | | | | | | | the joins as is, regardless of the dialect not supporting it. use_labels=True indicates a higher level of automation and also can maintain the labels between rewritten and not. use_labels=False indicates a manual use case.
| * - support for a__b_dc, i.e. two levels of nestingMike Bayer2013-06-041-4/+19
| |
| * - improve overlapping selectables, apply to both query and relationshipMike Bayer2013-06-042-6/+20
| | | | | | | | | | | | - clean up inspect() calls within query._join() - make sure join.alias(flat) propagates - fix almost all assertion tests
| * here's the flat join thing. it just works. Changing the existing compiled ↵Mike Bayer2013-06-041-5/+14
| | | | | | | | | | | | SQL assertions might even be most of the tests we need (though dedicated sql tests would be needed anyway)
| * and this commentMike Bayer2013-06-041-0/+4
| |
| * rewriting scheme now works.Mike Bayer2013-06-041-71/+43
| |
| * capture the really hard one in a test (hooray)Mike Bayer2013-06-041-1/+1
| |
| * OK this is the broken version, need to think a lot more about thisMike Bayer2013-06-032-2/+46
| |
| * working through tests....Mike Bayer2013-06-021-1/+13
| |
| * - figured out what the from_self() thing was about, part of query.statement, ↵Mike Bayer2013-06-023-9/+4
| | | | | | | | | | | | but would like to improve upon query.statement needing to do this
| * getting things to join without subqueries, but some glitches in the compiler ↵Mike Bayer2013-06-023-7/+13
| | | | | | | | | | | | step when we do query.count() are showing
| * implement join rewriting inside of visit_select(). Currently this is global ↵Mike Bayer2013-06-023-13/+75
| | | | | | | | or not based on fixing nested_join_translation as True or not.
* | - remove the ``__iter__()`` with notimplemented since it interferesMike Bayer2013-06-031-5/+0
| | | | | | | | with legitimate iterable detection, [ticket:2726]
* | - add changelog/migration noteMike Bayer2013-06-031-9/+9
| | | | | | | | - inline the label check
* | Merge branch 'master' into ticket_1068Mike Bayer2013-06-037-109/+82
|\ \ | |/
| * - implement armin's awesome metaclass adaptor, can drop the refs to MetaBase.Mike Bayer2013-05-302-9/+8
| |
| * - the distinct hash code logic here is entirely obsolete as you canMike Bayer2013-05-301-11/+0
| | | | | | | | | | do eq_() on columnelements now with a meaningful bool; jython is entirely a non-starter right now in any case as 2.7 doesn't support common accessors like __defaults__
| * fix an errant str checkMike Bayer2013-05-261-1/+1
| |
| * a pass where we try to squash down as many list()/keys() combinationsMike Bayer2013-05-261-2/+2
| | | | | | | | as possible
| * Merge branch 'master' into rel_0_9Mike Bayer2013-05-261-1/+1
| |\
| * \ Merge branch 'master' into rel_0_9Mike Bayer2013-05-261-2/+2
| |\ \
| * | | sqlite testsMike Bayer2013-05-261-2/+2
| | | |
| * | | most of ORM passing...Mike Bayer2013-05-041-0/+1
| | | |
| * | | - unicode literals need to just be handled differently if they have utf-8Mike Bayer2013-05-041-3/+3
| | | | | | | | | | | | | | | | | | | | encoded in them vs. unicode escaping. not worth figuring out how to combine these right now
| * | | - test_types, test_compiler, with sqlite at leastMike Bayer2013-04-281-2/+1
| | | |
| * | | - endless isinstance(x, str)s....Mike Bayer2013-04-283-71/+65
| | | |
| * | | import of "sqlalchemy" and "sqlalchemy.orm" works.Mike Bayer2013-04-273-26/+15
| | | |
| * | | plugging awayMike Bayer2013-04-271-1/+1
| | | |
| * | | - the raw 2to3 runMike Bayer2013-04-277-90/+92
| | | | | | | | | | | | | | | | - went through examples/ and cleaned out excess list() calls
* | | | magic accessors to the rescueMike Bayer2013-05-272-7/+20
| | | |
* | | | still not locating more nested expressions, may need to match on nameMike Bayer2013-05-271-11/+37
| | | |
* | | | attempt number one, doesn't detect though if the label in the order by is ↵Mike Bayer2013-05-271-3/+19
| |_|/ |/| | | | | | | | not directly present there.
* | | fix this testMike Bayer2013-05-261-1/+1
| |/ |/|
* | Show the conflicting column in the warning!Chris Withers2013-05-261-2/+2
|/
* heh dont need that eitherMike Bayer2013-04-251-7/+1
|
* dont need thisMike Bayer2013-04-251-6/+0
|
* everything passes with this!!!!!!! holy crap !!!!! and its the simplest of allMike Bayer2013-04-252-3/+15
|
* Fully implemented the IS and IS NOT operators withMike Bayer2013-04-221-12/+34
| | | | | | | | | | regards to the True/False constants. An expression like ``col.is_(True)`` will now render ``col IS true`` on the target platform, rather than converting the True/ False constant to an integer bound parameter. This allows the ``is_()`` operator to work on MySQL when given True/False constants. [ticket:2682]
* A major fix to the way in which a select() object producesMike Bayer2013-04-112-22/+58
| | | | | | | | | | | | | | | | | | | labeled columns when apply_labels() is used; this mode produces a SELECT where each column is labeled as in <tablename>_<columnname>, to remove column name collisions for a multiple table select. The fix is that if two labels collide when combined with the table name, i.e. "foo.bar_id" and "foo_bar.id", anonymous aliasing will be applied to one of the dupes. This allows the ORM to handle both columns independently; previously, 0.7 would in some cases silently emit a second SELECT for the column that was "duped", and in 0.8 an ambiguous column error would be emitted. The "keys" applied to the .c. collection of the select() will also be deduped, so that the "column being replaced" warning will no longer emit for any select() that specifies use_labels, though the dupe key will be given an anonymous label which isn't generally user-friendly. [ticket:2702]
* - Fixed bug in unit of work whereby a joined-inheritanceMike Bayer2013-04-011-1/+3
| | | | | | | | | | | subclass could insert the row for the "sub" table before the parent table, if the two tables had no ForeignKey constraints set up between them. Also in 0.7.11. [ticket:2689] - fix a glitch in the assertsql.CompiledSQL fixture regarding when a multiparam compiledSQL is used within an AllOf - add a new utility function randomize_unitofwork() which does the function of --reversetop
* merge plus fix the test spelling tooMike Bayer2013-03-181-1/+1
|\
| * Fix typo.Richard Mitchell2013-03-181-1/+1
| |
* | no need to use getattr() hereMike Bayer2013-03-172-3/+5
|/