summaryrefslogtreecommitdiff
path: root/test/ext
Commit message (Collapse)AuthorAgeFilesLines
* - Removed some now unneeded version checks [ticket:2829] courtesy alex gaynorMike Bayer2013-09-222-8/+0
|
* - A rework to the way that "quoted" identifiers are handled, in thatMike Bayer2013-08-271-2/+4
| | | | | | | | | | | | | | | | instead of relying upon various ``quote=True`` flags being passed around, these flags are converted into rich string objects with quoting information included at the point at which they are passed to common schema constructs like :class:`.Table`, :class:`.Column`, etc. This solves the issue of various methods that don't correctly honor the "quote" flag such as :meth:`.Engine.has_table` and related methods. The :class:`.quoted_name` object is a string subclass that can also be used explicitly if needed; the object will hold onto the quoting preferences passed and will also bypass the "name normalization" performed by dialects that standardize on uppercase symbols, such as Oracle, Firebird and DB2. The upshot is that the "uppercase" backends can now work with force-quoted names, such as lowercase-quoted names and new reserved words. [ticket:2812]
* correct for missing fail() methods which were lost when we removed ↵Mike Bayer2013-08-261-25/+20
| | | | unittest.TestCase
* clean up formatting and other linting issuesMike Bayer2013-08-261-52/+51
|
* - The :class:`.CreateColumn` construct can be appled to a customMike Bayer2013-08-241-1/+17
| | | | | compilation rule which allows skipping of columns, by producing a rule that returns ``None``. Also in 0.8.3.
* - apply an import refactoring to the ORM as wellMike Bayer2013-08-141-2/+2
| | | | | | | | | - 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
* - after discussions with the original project folks working with zope securityMike Bayer2013-08-021-0/+2
| | | | | | | | | | | proxies, they aren't overriding getattr() or setattr() at all. so all the hardcoded getattr()/setattr() is removed from collections.py. Lots of these getattr/setattr were against the attributeimpl and decorated functions and don't seem like they'd ever be needed; for a user that needs special access to a collection, we can evaulate that use case and add a single point of "unwrapping", and probably add a hook for it via InstrumentationManager so that the collection implementation isn't complicated by it.
* ORM descriptors such as hybrid properties can now be referencedMike Bayer2013-07-021-2/+37
| | | | | | by name in a string argument used with ``order_by``, ``primaryjoin``, or similar in :func:`.relationship`, in addition to column-bound attributes. [ticket:2761]
* - add a test for pullreq 8Mike Bayer2013-06-231-0/+26
| | | | - simplify
* turn this requirement back down as the simpler serialize works better nowMike Bayer2013-06-171-1/+1
|
* - skip this test for py3k. serializer kind of a bustMike Bayer2013-06-141-1/+1
|
* also clarified the changelog regarding Cls.scalar != 'value'Mike Bayer2013-06-081-11/+11
|
* Added additional criterion to the ==, != comparators, used withMike Bayer2013-06-081-20/+148
| | | | | | | | | | | | | | | | | | | scalar values, for comparisons to None to also take into account the association record itself being non-present, in addition to the existing test for the scalar endpoint on the association record being NULL. Previously, comparing ``Cls.scalar == None`` would return records for which ``Cls.associated`` were present and ``Cls.associated.scalar`` is None, but not rows for which ``Cls.associated`` is non-present. More significantly, the inverse operation ``Cls.scalar != None`` *would* return ``Cls`` rows for which ``Cls.associated`` was non-present. Additionally, added a special use case where you can call ``Cls.scalar.has()`` with no arguments, when ``Cls.scalar`` is a column-based value - this returns whether or not ``Cls.associated`` has any rows present, regardless of whether or not ``Cls.associated.scalar`` is NULL or not. [ticket:2751]
* Fixed bug where :class:`.MutableDict` didn't report a change eventMike Bayer2013-06-031-0/+12
| | | | | when ``clear()`` was called. [ticket:2730]
* extension testsMike Bayer2013-05-261-3/+3
|
* fix serializer tests. something is wrong with non-C pickle but for some ↵Mike Bayer2013-05-261-5/+4
| | | | | | 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-011-0/+3
|\
| * - disable tests failing with pypy2, [ticket:2719]Mike Bayer2013-05-011-0/+3
| |
* | - the raw 2to3 runMike Bayer2013-04-276-44/+43
|/ | | | - went through examples/ and cleaned out excess list() calls
* Fixes to the ``sqlalchemy.ext.serializer`` extension, includingMike Bayer2013-04-261-28/+44
| | | | | | | that the "id" passed from the pickler is turned into a string to prevent against bytes being parsed on Py3K, as well as that ``relationship()`` and ``orm.join()`` constructs are now properly serialized. [ticket:2698] and some other observed issues.
* formattingMike Bayer2013-04-241-47/+48
|
* - these pickle the assoc proxy by itself tests can't really passMike Bayer2013-04-201-6/+12
| | | | | now without strong ref on the parent - fix message compare for py3k
* Fixed indirect regression regarding :func:`.has_inherited_table`,Mike Bayer2013-04-091-1/+42
| | | | | | | | | | | where since it considers the current class' ``__table__``, was sensitive to when it was called. This is 0.7's behavior also, but in 0.7 things tended to "work out" within events like ``__mapper_args__()``. :func:`.has_inherited_table` now only considers superclasses, so should return the same answer regarding the current class no matter when it's called (obviously assuming the state of the superclass). [ticket:2656]
* skip this test for PG, jenkins having failures only when the full suite is runMike Bayer2013-03-021-0/+2
|
* The :class:`.MutableComposite` type did not allow for theMike Bayer2012-12-031-0/+71
| | | | | | | | | | | :meth:`.MutableBase.coerce` method to be used, even though the code seemed to indicate this intent, so this now works and a brief example is added. As a side-effect, the mechanics of this event handler have been changed so that new :class:`.MutableComposite` types no longer add per-type global event handlers. Also in 0.7.10 [ticket:2624]
* cleanupMike Bayer2012-12-031-24/+24
|
* Allow use of synonyms in primaryjoin / secondaryjoin conditionsRichard Mitchell2012-11-271-1/+40
|
* - hstore adjustmentsMike Bayer2012-11-171-39/+13
|
* - store only MultipleClassMarkers inside of ModuleMarker, thenMike Bayer2012-10-281-7/+44
| | | | | | store ModuleMarkers for multiple roots, one for each token in a module path. this allows partial path resolution. - docs to this effect
* Added a new method :meth:`.Engine.execution_options`Mike Bayer2012-10-231-21/+65
| | | | | | | | | | | to :class:`.Engine`. This method works similarly to :class:`.Connection.execution_options` in that it creates a copy of the parent object which will refer to the new set of options. The method can be used to build sharding schemes where each engine shares the same underlying pool of connections. The method has been tested against the horizontal shard recipe in the ORM as well.
* trying different approaches to test layout. in this one, the testing modulesMike Bayer2012-09-2713-54/+56
| | | | | | | become an externally usable package but still remains within the main sqlalchemy parent package. in this system, we use kind of an ugly hack to get the noseplugin imported outside of the "sqlalchemy" package, while still making it available within sqlalchemy for usage by third party libraries.
* finished fixes for mxodbc; need to use at least version 3.2.1Mike Bayer2012-09-211-1/+3
|
* - [bug] Fixed a disconnect that slowly evolvedMike Bayer2012-09-141-6/+65
| | | | | | | | | | | between a @declared_attr Column and a directly-defined Column on a mixin. In both cases, the Column will be applied to the declared class' table, but not to that of a joined inheritance subclass. Previously, the directly-defined Column would be placed on both the base and the sub table, which isn't typically what's desired. [ticket:2565]
* - [feature] Added a hook to the system of renderingMike Bayer2012-09-091-4/+2
| | | | | | | CREATE TABLE that provides access to the render for each Column individually, by constructing a @compiles function against the new schema.CreateColumn construct. [ticket:2463]
* - add req's for predictable gcMike Bayer2012-09-051-0/+2
|
* oops, one moreMike Bayer2012-08-291-0/+2
|
* - skip this on oracleMike Bayer2012-08-291-0/+2
|
* - [feature] declared_attr can now be used withMike Bayer2012-08-271-0/+56
| | | | | | attributes that are not Column or MapperProperty; including any user-defined value as well as association proxy objects. [ticket:2517]
* - [feature] Conflicts between columns onMike Bayer2012-08-273-20/+133
| | | | | | | single-inheritance declarative subclasses, with or without using a mixin, can be resolved using a new @declared_attr usage described in the documentation. [ticket:2472]
* remove duped testMike Bayer2012-08-151-36/+0
|
* - [bug] Declarative can now propagate a columnMike Bayer2012-08-151-0/+24
| | | | | | | | declared on a single-table inheritance subclass up to the parent class' table, when the parent class is itself mapped to a join() or select() statement, directly or via joined inheritane, and not just a Table. [ticket:2549]
* - adjustments for py3.3 unit tests, [ticket:2542]Mike Bayer2012-08-112-3/+3
|
* - reorganization of declarative such that file sizes are managable again.Mike Bayer2012-08-056-14/+236
| | | | | | | | | | | | | | | | | | | | | the vast majority of file lines are spent on documentation, which moves into package __init__. The core declarative idea lives in base and is back down to its originally low size of under 500 lines. The various helpers and such move into api.py, and the full span of string lookup moves into a new module clsregistry. the rest of declarative only refers to two functions in clsregistry in three places inside of base. - [feature] Declarative now maintains a registry of classes by string name as well as by full module-qualified name. Multiple classes with the same name can now be looked up based on a module-qualified string within relationship(). Simple class name lookups where more than one class shares the same name now raises an informative error message. [ticket:2338] - lots of tests to ensure the new weak referencing memory management is maintained by the new class registry system. this ticket was served very well by waiting to do #2526 first, else this would have needed to be rewritten anyway.
* -whitespace bonanza, contdMike Bayer2012-07-285-58/+58
|
* - with InstanceState more public, underscore all its methodsMike Bayer2012-07-181-8/+8
| | | | | that change object state as these aren't intended for public use.
* - a big renaming of all the _Underscore classes to haveMike Bayer2012-07-171-4/+4
| | | | | | plain names. The old names are still defined for backwards compatibility. - _BindParamClause renamed to BindParameter
* - express most of the orm.util functions in terms of the inspection systemMike Bayer2012-07-161-3/+3
| | | | | | | | | | | | | | - modify inspection system: 1. raise a new exception for any case where the inspection context can't be returned. this supersedes the "not mapped" errors. 2. don't configure mappers on a mapper inspection. this allows the inspectors to be used during mapper config time. instead, the mapper configures on "with_polymorphic_selectable" now, which is needed for all queries - add a bunch of new "is_XYZ" attributes to inspectors - finish making the name change of "compile" -> "configure", for some reason this was only done partially
* - [bug] Fixed bug mostly local to newMike Bayer2012-07-141-26/+92
| | | | | | | | | | | | | AbstractConcreteBase helper where the "type" attribute from the superclass would not be overridden on the subclass to produce the "reserved for base" error message, instead placing a do-nothing attribute there. This was inconsistent vs. using ConcreteBase as well as all the behavior of classical concrete mappings, where the "type" column from the polymorphic base would be explicitly disabled on subclasses, unless overridden explicitly.
* - [moved] The InstrumentationManager interfaceMike Bayer2012-06-241-0/+485
| | | | | | | | | | | | | and the entire related system of alternate class implementation is now moved out to sqlalchemy.ext.instrumentation. This is a seldom used system that adds significant complexity and overhead to the mechanics of class instrumentation. The new architecture allows it to remain unused until InstrumentationManager is actually imported, at which point it is bootstrapped into the core.
* 2.5 compatMike Bayer2012-06-231-0/+3
|