summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/util
Commit message (Collapse)AuthorAgeFilesLines
* - adjustment, the spec says: "Within the user and password field, any ":",Mike Bayer2013-11-252-3/+3
| | | | | | | "@", or "/" must be encoded." - so re-apply encoding to both password and username, don't encode spaces as plus signs, don't encode any chars outside of :, @, / on stringification - but we still parse for any %XX character (is that right?)
* - Removed some now unneeded version checks [ticket:2829] courtesy alex gaynorMike Bayer2013-09-221-8/+1
|
* and we don't need weaksetMike Bayer2013-08-182-24/+1
|
* - add WeakSequence.append()Mike Bayer2013-08-181-3/+10
| | | | - fix and test weakref cleanout for WeakSequence, [ticket:2794]
* Fixed a potential issue in an ordered sequence implementation usedMike Bayer2013-08-181-5/+10
| | | | | | | by the ORM to iterate mapper hierarchies; under the Jython interpreter this implementation wasn't ordered, even though cPython and Pypy maintained ordering. Also in 0.8.3. [ticket:2794]
* - spot checking of imports, obsolete functionsMike Bayer2013-08-172-2/+1
|
* Improved support for the cymysql driver, supporting version 0.6.5,Mike Bayer2013-08-171-1/+1
| | | | courtesy Hajime Nakagami.
* - apply an import refactoring to the ORM as wellMike Bayer2013-08-142-92/+98
| | | | | | | | | - rework the event system so that event modules load after their targets, dependencies are reversed - create an improved strategy lookup system for the ORM - rework the ORM to have very few import cycles - move out "importlater" to just util.dependency - other tricks to cross-populate modules in as clear a way as possible
* - A large refactoring of the ``sqlalchemy.sql`` package has reorganizedMike Bayer2013-08-122-5/+99
| | | | | | | | | | | | | | | | | | | | | | the import structure of many core modules. ``sqlalchemy.schema`` and ``sqlalchemy.types`` remain in the top-level package, but are now just lists of names that pull from within ``sqlalchemy.sql``. Their implementations are now broken out among ``sqlalchemy.sql.type_api``, ``sqlalchemy.sql.sqltypes``, ``sqlalchemy.sql.schema`` and ``sqlalchemy.sql.ddl``, the last of which was moved from ``sqlalchemy.engine``. ``sqlalchemy.sql.expression`` is also a namespace now which pulls implementations mostly from ``sqlalchemy.sql.elements``, ``sqlalchemy.sql.selectable``, and ``sqlalchemy.sql.dml``. Most of the "factory" functions used to create SQL expression objects have been moved to classmethods or constructors, which are exposed in ``sqlalchemy.sql.expression`` using a programmatic system. Care has been taken such that all the original import namespaces remain intact and there should be no impact on any existing applications. The rationale here was to break out these very large modules into smaller ones, provide more manageable lists of function names, to greatly reduce "import cycles" and clarify the up-front importing of names, and to remove the need for redundant functions and documentation throughout the expression package.
* ok forget it, that approach didn't really cover every base, soMike Bayer2013-08-041-16/+29
| | | | we are pretty much back to the beginning, nothing to see here
* - don't need resolve, don't need import for this. just look in sys.modules,Mike Bayer2013-08-041-42/+16
| | | | since we are dealing with cycles in any case.
* don't split the regexps for chop_traceback()Mike Bayer2013-07-121-4/+2
|
* Dialect.initialize() is not called a second time if an :class:`.Engine`Mike Bayer2013-07-112-1/+15
| | | | | | is recreated, due to a disconnect error. This fixes a particular issue in the Oracle 8 dialect, but in general the dialect.initialize() phase should only be once per dialect. Also in 0.8.3. [ticket:2776]
* - create a new system where we can decorate an event methodMike Bayer2013-07-084-16/+57
| | | | | | | | | | | | | | | | with @_legacy_signature, will inspect incoming listener functions to see if they match an older signature, will wrap into a newer sig - add an event listen argument named=True, will send all args as kw args so that event listeners can be written with **kw, any combination of names - add a doc system to events that writes out the various calling styles for a given event, produces deprecation messages automatically. a little concerned that it's a bit verbose but will look at it up on RTD for awhile to get a feel. - change the calling signature for bulk update/delete events - we have the BulkUD object right there, and there's at least six or seven things people might want to see, so just send the whole BulkUD in [ticket:2775]
* - replace most explicitly-named test objects called "Mock..." withMike Bayer2013-06-302-1/+2
| | | | | | | | | | | | actual mock objects from the mock library. I'd like to use mock for new tests so we might as well use it in obvious places. - use unittest.mock in py3.3 - changelog - add a note to README.unittests - add tests_require in setup.py - have tests import from sqlalchemy.testing.mock - apply usage of mock to one of the event tests. we can be using this approach all over the place.
* remove all remaining start/end py2k/py3k blocksMike Bayer2013-06-071-1/+1
|
* - implement armin's awesome metaclass adaptor, can drop the refs to MetaBase.Mike Bayer2013-05-301-2/+17
|
* Merge branch 'rel_0_9'Mike Bayer2013-05-295-183/+258
|\ | | | | | | | | | | | | Conflicts: lib/sqlalchemy/dialects/postgresql/hstore.py lib/sqlalchemy/util/__init__.py lib/sqlalchemy/util/compat.py
| * keep the contract for Properties as returning lists for keys, values, items.Mike Bayer2013-05-291-3/+3
| | | | | | | | It's not the same as a dictionary as __iter__ does the values
| * - run the whole test suite with the "debugging" ordered dict on,Mike Bayer2013-05-271-8/+19
| | | | | | | | find some more failures
| * - fix a dict while iterate mutationMike Bayer2013-05-271-0/+11
| | | | | | | | | | - illustrate how OrderedDict can catch these, but commented out to save function overhead
| * fix test_execute w c extensionsMike Bayer2013-05-261-1/+2
| |
| * clean up some of this collection stuffMike Bayer2013-05-261-16/+27
| |
| * a pass where we try to squash down as many list()/keys() combinationsMike Bayer2013-05-261-3/+3
| | | | | | | | as possible
| * do a sweep of some obvious 3kismsMike Bayer2013-05-262-1/+3
| |
| * fix serializer tests. something is wrong with non-C pickle but for some ↵Mike Bayer2013-05-262-2/+17
| | | | | | | | | | | | reason py3k's pickle seems to be OK? not sure why that is, as this is all related to http://bugs.python.org/issue998998
| * merge defaultMike Bayer2013-05-231-24/+22
| |\
| * | most of ORM passing...Mike Bayer2013-05-042-8/+6
| | |
| * | baseMike Bayer2013-05-041-3/+3
| | |
| * | that's all of engineMike Bayer2013-05-041-0/+6
| | |
| * | - unicode literals need to just be handled differently if they have utf-8Mike Bayer2013-05-042-1/+11
| | | | | | | | | | | | | | | encoded in them vs. unicode escaping. not worth figuring out how to combine these right now
| * | postgresql dialect testsMike Bayer2013-04-281-1/+2
| | |
| * | - endless isinstance(x, str)s....Mike Bayer2013-04-283-55/+88
| | |
| * | cleanupMike Bayer2013-04-271-45/+21
| | |
| * | plugging awayMike Bayer2013-04-273-46/+40
| | |
| * | work through dialectsMike Bayer2013-04-272-18/+17
| | |
| * | - the raw 2to3 runMike Bayer2013-04-274-94/+102
| | | | | | | | | | | | - went through examples/ and cleaned out excess list() calls
* | | add the py2k symbol from the 0.9 branch to support the hstore changeMike Bayer2013-05-292-1/+2
| |/ |/|
* | Fixed a bug where the routine to detect the correct kwargsMike Bayer2013-05-231-24/+22
|/ | | | | | being sent to :func:`.create_engine` would fail in some cases, such as with the Sybase dialect. [ticket:2732]
* python2.5 fixMike Bayer2013-04-181-3/+2
|
* - remove reference to _exc_info before reraise to reduce cyclesMike Bayer2013-04-181-0/+3
|
* Reworked internal exception raises that emitMike Bayer2013-04-183-2/+58
| | | | | | | | | a rollback() before re-raising, so that the stack trace is preserved from sys.exc_info() before entering the rollback. This so that the traceback is preserved when using coroutine frameworks which may have switched contexts before the rollback function returns. [ticket:2703]
* A major fix to the way in which a select() object producesMike Bayer2013-04-111-1/+0
| | | | | | | | | | | | | | | | | | | 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]
* Make MonkeyPatchedBinaryTest not fail on Python 2.5 (which doesn't haveMarc Abramowitz2013-03-201-0/+8
| | | | the `b` notation for byte string literals)
* - remove all compat items that are pre-2.5 (hooray)Mike Bayer2013-03-095-189/+50
| | | | | | - other cleanup - don't need compat.decimal, that approach never panned out. hopefully outside libs aren't pulling it in, they shouldn't be
* happy new year (see #2645)Diana Clarke2013-01-017-7/+7
|
* Fixed a regression caused by :ticket:`2410` whereby aMike Bayer2012-12-111-4/+6
| | | | | | | | | :class:`.CheckConstraint` would apply itself back to the original table during a :meth:`.Table.tometadata` operation, as it would parse the SQL expression for a parent table. The operation now copies the given expression to correspond to the new table. [ticket:2633]
* - documentation and changelog for [ticket:2601]Mike Bayer2012-12-091-9/+57
|
* just a pep8 pass of lib/sqlalchemy/util/Diana Clarke2012-11-196-17/+79
|
* just a pep8 pass of this fileDiana Clarke2012-11-181-13/+32
|