summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update base.pypr/168effem-git2015-04-231-2/+2
| | | Fix TypeError: Boolean value of this clause is not defined
* - repair a regression caused by #3282, where we no longer wereMike Bayer2015-04-227-98/+374
| | | | | | | | | | applying any topological sort to tables on SQLite. See the changelog for details, but we now continue to sort tables for SQLite on DROP, prohibit the sort from considering alter, and only warn if we encounter an unresolvable cycle, in which case, then we forego the ordering. use_alter as always is used to break such a cycle. fixes #3378
* - correct migration note for #3084; doesn't apply to create/dropMike Bayer2015-04-221-8/+9
|
* - typoMike Bayer2015-04-211-1/+1
|
* - add a warning to SingletonThreadPool that it isn't for general useMike Bayer2015-04-211-0/+13
|
* - Added the string value ``"none"`` to those accepted by theMike Bayer2015-04-213-1/+31
| | | | | | | | :paramref:`.Pool.reset_on_return` parameter as a synonym for ``None``, so that string values can be used for all settings, allowing .ini file utilities like :func:`.engine_from_config` to be usable without issue. fixes #3375
* - Fixed issue where a straight SELECT EXISTS query would fail toMike Bayer2015-04-206-16/+87
| | | | | | | | | | | | | | | | assign the proper result type of Boolean to the result mapping, and instead would leak column types from within the query into the result map. This issue exists in 0.9 and earlier as well, however has less of an impact in those versions. In 1.0, due to #918 this becomes a regression in that we now rely upon the result mapping to be very accurate, else we can assign result-type processors to the wrong column. In all versions, this issue also has the effect that a simple EXISTS will not apply the Boolean type handler, leading to simple 1/0 values for backends without native boolean instead of True/False. The fix includes that an EXISTS columns argument will be anon-labeled like other column expressions; a similar fix is implemented for pure-boolean expressions like ``not_(True())``. fixes #3372
* - add migration note for #3084Mike Bayer2015-04-202-0/+19
|
* - Fixed more regressions caused by NEVER_SET; comparisonsMike Bayer2015-04-2011-64/+458
| | | | | | | | | to transient objects with attributes unset would leak NEVER_SET, and negated_contains_or_equals would do so for any transient object as the comparison used only the committed value. Repaired the NEVER_SET cases, fixes #3371, and also made negated_contains_or_equals() use state_attr_by_column() just like a non-negated comparison, fixes #3374
* - add documentation describing the behavioral change in relationshipMike Bayer2015-04-171-2/+55
| | | | assignments that we would see from #3060; fixes #3369
* 1.0.1Mike Bayer2015-04-171-1/+1
|
* - Fixed a critical regression caused by :ticket:`3061` where theMike Bayer2015-04-175-4/+46
| | | | | | | | | | | NEVER_SET symbol could easily leak into a lazyload query, subsequent to the flush of a pending object. This would occur typically for a many-to-one relationship that does not use a simple "get" strategy. The good news is that the fix improves efficiency vs. 0.9, because we can now skip the SELECT statement entirely when we detect NEVER_SET symbols present in the parameters; prior to :ticket:`3061`, we couldn't discern if the None here were set or not. fixes #3368
* 1.0.0rel_1_0_0Mike Bayer2015-04-163-3/+4
|
* - Identified an inconsistency when handling :meth:`.Query.join` to theMike Bayer2015-04-154-12/+109
| | | | | | | | | | | same target more than once; it implicitly dedupes only in the case of a relationship join, and due to :ticket:`3233`, in 1.0 a join to the same table twice behaves differently than 0.9 in that it no longer erroneously aliases. To help document this change, the verbiage regarding :ticket:`3233` in the migration notes has been generalized, and a warning has been added when :meth:`.Query.join` is called against the same target relationship more than once. fixes #3367
* Merge remote-tracking branch 'origin/pr/163' into pr163Mike Bayer2015-04-1215-94/+172
|\
| * PEP8 cleanup in /test/enginepr/163Eric Streeper2015-03-206-79/+160
| |
| * PEP8 cleanup in /test/aaa_profilingEric Streeper2015-03-183-6/+9
| |
| * PEP8 cleanup in /test/sqlEric Streeper2015-03-186-9/+3
| |
* | - remove excess commentMike Bayer2015-04-121-2/+0
| |
* | - Made a small improvement to the heuristics of relationship whenMike Bayer2015-04-123-2/+62
| | | | | | | | | | | | | | | | | | determining remote side with semi-self-referential (e.g. two joined inh subclasses referring to each other), non-simple join conditions such that the parententity is taken into account and can reduce the need for using the ``remote()`` annotation; this can restore some cases that might have worked without the annotation prior to 0.9.4 via :ticket:`2948`. fixes #3364
* | - adjust for "0"Mike Bayer2015-04-121-1/+3
| |
* | - Fixed issue where a :class:`.MetaData` object that used a namingMike Bayer2015-04-103-1/+28
| | | | | | | | | | | | | | | | convention would not properly work with pickle. The attribute was skipped leading to inconsistencies and failures if the unpickled :class:`.MetaData` object were used to base additional tables from. fixes #3362
* | - add test support for MySQLdb with use_unicode=1 or using mysqlclient on py3kMike Bayer2015-04-081-0/+6
| |
* | - ensure that the keys we put into the parameters dictionaryMike Bayer2015-04-083-4/+16
| | | | | | | | | | | | | | for an insert from select are the string names, and not the Column objects. The MSSQL dialect in particular relies upon checking for these keys in params to know if identity insert should be on. references #3360
* | - Fixed a regression where the "last inserted id" mechanics wouldMike Bayer2015-04-082-12/+28
| | | | | | | | | | | | fail to store the correct value for MSSQL on an INSERT where the primary key value was present in the insert params before execution. fixes #3360
* | - changelog for pr github:166Mike Bayer2015-04-081-0/+7
| |
* | Merge remote-tracking branch 'origin/pr/166' into pr166Mike Bayer2015-04-081-4/+5
|\ \
| * | - pymssql has PEP249 Binary contructor since 2.1.1pr/166Ramiro Morales2015-04-051-4/+5
| | | | | | | | | | | | See https://github.com/pymssql/pymssql/commit/e7fb15dd29090e1f1bb570842b53aea1ec32d8f0
* | | - add some teardown for connections that are held open after testsMike Bayer2015-04-081-6/+18
| | | | | | | | | | | | in some cases, interfering with tests that check pool._refs
* | | - OK, forget it, the DBAPIs, etc. everything else is also site-wide,Mike Bayer2015-04-051-5/+3
|/ / | | | | | | we need site-packages
* | - since we're working with no_site_packages at the moment, add in xdist to ↵Mike Bayer2015-04-051-0/+1
| | | | | | | | get jenkins to work
* | - make sure this is 1.0.0 backported to 0.9Mike Bayer2015-04-041-0/+1
| |
* | - Fixed the pathing used when tests run; for sqla_nose.py and py.test,Mike Bayer2015-04-045-13/+42
| | | | | | | | | | | | | | | | the "./lib" prefix is again inserted at the head of sys.path but only if sys.flags.no_user_site isn't set; this makes it act just like the way Python puts "." in the current path by default. For tox, we are setting the PYTHONNOUSERSITE flag now. fixes #3356
* | - Fixed a long-standing bug where the :class:`.Enum` type as usedMike Bayer2015-04-044-12/+62
| | | | | | | | | | | | | | | | | | | | with the psycopg2 dialect in conjunction with non-ascii values and ``native_enum=False`` would fail to decode return results properly. This stemmed from when the PG :class:`.postgresql.ENUM` type used to be a standalone type without a "non native" option. fixes #3354 - corrected the assertsql comparison rule to expect a non-ascii SQL string
* | - changelog for #3084, fixes #3084Mike Bayer2015-04-031-0/+15
| |
* | Merge branch 'bb_issue_3084' of https://bitbucket.org/xflr6/sqlalchemy into pr47Mike Bayer2015-04-035-10/+59
|\ \
| * | unit-test deterministic topological sortSebastian Bank2015-03-071-0/+29
| | |
| * | make sort_tables order deterministicSebastian Bank2015-03-074-10/+30
| | |
| * | Merged zzzeek/sqlalchemy into masterSebastian Bank2015-03-07265-15990/+23674
| |\ \
* | | | - next will be 1.0.0Mike Bayer2015-04-031-1/+1
| | | |
* | | | - changelog + docstring for pullreq github:164Mike Bayer2015-04-032-0/+18
| | | |
* | | | Merge remote-tracking branch 'origin/pr/164' into pr164Mike Bayer2015-04-033-7/+22
|\ \ \ \
| * | | | Allow kwargs to be passed through update()pr/164Amir Sadoughi2015-03-203-7/+22
| | | | | | | | | | | | | | | | | | | | | | | | | This is useful to be able to pass in mysql_limit=1 from using the ORM.
* | | | | 1.0.0b5rel_1_0_0b5Mike Bayer2015-04-032-2/+3
| | | | |
* | | | | - update 0.9 changelog from rel_0_9Mike Bayer2015-04-021-0/+11
| | | | |
* | | | | - Fixed bug where the state tracking within multiple, nestedMike Bayer2015-04-023-0/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | :meth:`.Session.begin_nested` operations would fail to propagate the "dirty" flag for an object that had been updated within the inner savepoint, such that if the enclosing savepoint were rolled back, the object would not be part of the state that was expired and therefore reverted to its database state. fixes #3352
* | | | | - use odict here for test determinismMike Bayer2015-04-011-7/+9
| | | | |
* | | | | - :class:`.Query` doesn't support joins, subselects, or specialMike Bayer2015-04-015-70/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FROM clauses when using the :meth:`.Query.update` or :meth:`.Query.delete` methods; instead of silently ignoring these fields if methods like :meth:`.Query.join` or :meth:`.Query.select_from` has been called, an error is raised. In 0.9.10 this only emits a warning. fixes #3349 - don't needlessly call _compile_context() and build up a whole statement that we never need. Construct QueryContext as it's part of the event contract, but don't actually call upon mapper attributes; use more direct systems of determining the update or delete table. - don't realy need _no_select_modifiers anymore
* | | | | - Added a list() call around a weak dictionary used within theMike Bayer2015-04-012-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit phase of the session, which without it could cause a "dictionary changed size during iter" error if garbage collection interacted within the process. Change was introduced by
* | | | | - Fixed bug where updated PG index reflection as a result ofMike Bayer2015-04-014-32/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | :ticket:`3184` would cause index operations to fail on Postgresql versions 8.4 and earlier. The enhancements are now disabled when using an older version of Postgresql. fixes #3343