summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/util.py
Commit message (Collapse)AuthorAgeFilesLines
...
* cleanup of reversedMike Bayer2007-03-091-11/+10
|
* migrated (most) docstrings to pep-257 format, docstring generator using ↵Mike Bayer2007-02-251-26/+89
| | | | | | straight <pre> + trim() func for now. applies most of [ticket:214], compliemnts of Lele Gaifax
* [ticket:463] fix to OrderedSetMike Bayer2007-02-171-19/+18
|
* alternate OrderedSet implementation courtesy sdobrevMike Bayer2007-02-041-7/+76
|
* - improved support for complex queries embedded into "where" criterionMike Bayer2007-02-011-0/+10
| | | | | | | | | | | | | | for query.select() [ticket:449] - contains_eager('foo') automatically implies eagerload('foo') - query.options() can take a combiantion MapperOptions and tuples of MapperOptions, so that functions can return groups - refactoring to Aliasizer and ClauseAdapter so that they share a common base methodology, which addresses all sql.ColumnElements instead of just schema.Column. common list-processing methods added. - query.compile and eagerloader._aliasize_orderby make usage of improved list processing on above. - query.compile, within the "nested select generate" step processes the order_by clause using the ClauseAdapter instead of Aliasizer since there is only one "target"
* further work on insuring clear_mappers() really works. assignmapper identifiedMike Bayer2007-01-301-0/+4
| | | | | as a much trickier thing to clean out. added a unit test so that if any new collections get introduced we are still testing.
* copyright updateMike Bayer2007-01-051-1/+1
|
* - identity map in Session is by default *no longer weak referencing*.Mike Bayer2006-12-091-12/+13
| | | | | to have it be weak referencing, use create_session(weak_identity_map=True) - some fixes to OrderedProperties
* fix in OrderedProperties to allow picklingMike Bayer2006-12-081-1/+1
|
* removed old functionMike Bayer2006-11-271-40/+0
|
* - create_engine() reworked to be strict about incoming **kwargs. all keywordMike Bayer2006-11-121-1/+12
| | | | | | arguments must be consumed by one of the dialect, connection pool, and engine constructors, else a TypeError is thrown which describes the full set of invalid kwargs in relation to the selected dialect/pool/engine configuration.
* converted imports to absoluteMike Bayer2006-10-261-1/+1
|
* - a fair amount of cleanup to the schema package, removal of ambiguousMike Bayer2006-10-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | methods, methods that are no longer needed. slightly more constrained useage, greater emphasis on explicitness. - table_iterator signature fixup, includes fix for [ticket:288] - the "primary_key" attribute of Table and other selectables becomes a setlike ColumnCollection object; is no longer ordered or numerically indexed. a comparison clause between two pks that are derived from the same underlying tables (i.e. such as two Alias objects) can be generated via table1.primary_key==table2.primary_key - append_item() methods removed from Table and Column; preferably construct Table/Column/related objects inline, but if needed use append_column(), append_foreign_key(), append_constraint(), etc. - table.create() no longer returns the Table object, instead has no return value. the usual case is that tables are created via metadata, which is preferable since it will handle table dependencies. - added UniqueConstraint (goes at Table level), CheckConstraint (goes at Table or Column level) fixes [ticket:217] - index=False/unique=True on Column now creates a UniqueConstraint, index=True/unique=False creates a plain Index, index=True/unique=True on Column creates a unique Index. 'index' and 'unique' keyword arguments to column are now boolean only; for explcit names and groupings of indexes or unique constraints, use the UniqueConstraint/Index constructs explicitly. - relationship of Metadata/Table/SchemaGenerator/Dropper has been improved so that the schemavisitor receives the metadata object for greater control over groupings of creates/drops. - added "use_alter" argument to ForeignKey, ForeignKeyConstraint, but it doesnt do anything yet. will utilize new generator/dropper behavior to implement.
* make OrderedDict consructor, update more dict-likeJonathan Ellis2006-10-141-10/+15
|
* - fixed condition that occurred during reflection when a primary keyMike Bayer2006-09-301-0/+5
| | | | | column was explciitly overridden, where the PrimaryKeyConstraint would get both the reflected and the programmatic column doubled up
* - logging is now implemented via standard python "logging" module.Mike Bayer2006-09-241-27/+0
| | | | | | | | | | | | | "echo" keyword parameters are still functional but set/unset log levels for their respective classes/instances. all logging can be controlled directly through the Python API by setting INFO and DEBUG levels for loggers in the "sqlalchemy" namespace. class-level logging is under "sqlalchemy.<module>.<classname>", instance-level logging under "sqlalchemy.<module>.<classname>.<hexid>". Test suite includes "--log-info" and "--log-debug" arguments which work independently of --verbose/--quiet. Logging added to orm to allow tracking of mapper configurations, row iteration fixes [ticket:229] [ticket:79]
* fixes for threadless python compilesJonathan Ellis2006-08-151-2/+8
|
* added __contains__ to OrderedProperties, so that rabbit is not in thereMike Bayer2006-08-101-0/+2
|
* merged attributes rewriteMike Bayer2006-06-151-181/+12
|
* late compilation of mappers. now you can create mappers in any order, and ↵Mike Bayer2006-06-081-21/+28
| | | | they will compile their internal state when first used in a query or flush operation (or their props or 'c'/'columns' attributes are used). includes various cleanups and fixes in support of the change, including some unit test changes, additional unit tests.
* HashSet is gone, uses set() for most sets in py2.4 or sets.Set.Mike Bayer2006-06-051-41/+16
| | | | ordered set functionality supplied by a subclass of sets.Set
* "foreignkey" property of PropertyLoader is a sets.Set. removed "foreigntable".Mike Bayer2006-06-051-0/+2
| | | | simplified/fixed foreign key location in _find_dependent(), fixes [ticket:151]
* merged 0.2 branch into trunk; 0.1 now in sqlalchemy/branches/rel_0_1Mike Bayer2006-05-251-19/+32
|
* added extend() to historyarraysetMike Bayer2006-04-211-0/+3
|
* a little spring cleaning for the util package, etcMike Bayer2006-04-071-55/+12
|
* the __iter__ method on historyarraylist seemed to get broked...hmmmmMike Bayer2006-04-061-3/+3
|
* added explicit "session" argument to get(), select_whereclause in mapper, as ↵Mike Bayer2006-04-061-0/+2
| | | | well as throughout the call-chain for those. lazy loader honors the "session" of the parent object, + added simple unit test
* util: the __setitem__ method on historyarraylist was meaningless, surprising ↵Mike Bayer2006-03-261-1/+1
| | | | | | | | nobody noticed that. types: added PickleType, its slightly trickier than trivial, so OK now its standard. attributes: the level of pain if an AttributeError occurs inside a CallableProp, in combination with an object that implements __getattr__, is too deep for me to put the users through....so convert AttributeErrors to Assertions... engine: im not a fan of catching universal exceptions and squashing them
* identified more issues with inheritance. mapper inheritance is more ↵Mike Bayer2006-03-171-0/+2
| | | | | | | closed-minded about how it creates the join crit erion as well as the sync rules in inheritance. syncrules have been tightened up to be smarter about creating a new SyncRule given lists of tables and a join clause. properties also checks for relation direction against the "noninherited table" which for the moment makes it a stronger requirement that a relation to a mapper must relate to that mapper's main table, not any tables that it inherits from.
* refactor to engine to have a separate SQLSession object. allows nested ↵Mike Bayer2006-03-171-8/+2
| | | | | | | transactions. util.ThreadLocal __hasattr__ method/raise_error param meaningless, removed renamed old engines test to reflection
* refactor to Compiled.get_params() to return new ClauseParameters object, a ↵Mike Bayer2006-03-131-1/+2
| | | | | | | | | | | more intelligent bind parameter dictionary that does type conversions late and preserves the unconverted value; used to fix mappers not comparing correct value in post-fetch [ticket:110] removed pre_exec assertion from oracle/firebird regarding "check for sequence/primary key value" fix to Unicode type to check for null, fixes [ticket:109] create_engine() now uses genericized parameters; host/hostname, db/dbname/database, password/passwd, etc. for all engine connections fix to select([func(column)]) so that it creates a FROM clause to the column's table, fixes [ticket:111] doc updates for column defaults, indexes, connection pooling, engine params unit tests for the above bugfixes
* HistoryArrayList checks internal list as a list or dict to clear itMike Bayer2006-03-101-2/+7
|
* serious overhaul to get eager loads to work inline with an inheriting ↵Mike Bayer2006-03-081-0/+13
| | | | mapper, when the inheritance/eager loads share the same table. mapper inheritance will also favor the columns from the child table over those of the parent table when assigning column values to object attributes. "correlated subqueries" require a flag "correlated=True" if they are in the FROM clause of another SELECT statement, and they want to be correlated. this flag is set by default when using an "exists" clause.
* fixed bug in eager loading on a many-to-one [ticket:96], added the ticket ↵Mike Bayer2006-03-061-0/+2
| | | | | | tests as a unit test eagerload2. got eagerload1 to be a unit test also.
* added util.Logger object with configurable thread/timestamp viewMike Bayer2006-03-031-2/+29
|
* added objectstore.refresh(), including supporting changes in mapper, ↵Mike Bayer2006-03-021-0/+4
| | | | attributes, util
* small cleanup courtesy j.ellisMike Bayer2006-02-281-14/+23
|
* merged sql_rearrangement branch , refactors sql package to work standalone withMike Bayer2006-02-251-4/+19
| | | | | clause elements including tables and columns, schema package deals with "physical" representations
* exception package added, support throughoutMike Bayer2006-02-191-3/+4
|
* latest reorgnanization of the objectstore, the Session is a simpler object ↵Mike Bayer2006-02-141-1/+1
| | | | that just maintains begin/commit state
* more refactoring to session/UOW scope management...under construction !Mike Bayer2006-02-121-27/+17
|
* cleanup and organization of code mostly in properties, making SyncRules clearer,Mike Bayer2006-02-121-1/+11
| | | | also "foreignkey" property can be a list, particularly for a self-referential table with a multi-column join condition
* objectstore refactored to have more flexible scopes for UnitOfWorkMike Bayer2006-02-101-37/+26
| | | | | | central access point is now a Session object which maintains different kinds of scopes for collections of one or more UnitOfWork objects individual object instances get bound to a specific Session
* trying to get mappers to support having versions against different tables ↵Mike Bayer2006-02-071-1/+8
| | | | | | | for the same class, that dont affect the original class mapper and create objects with the correct identity key support in EagerLoader to better handle "selectalias" when the eager mapper hits another eager mapper, etc
* added __repr__ to HashSetMike Bayer2006-01-261-0/+2
|
* implemented better hash_key on select allowing proper comparisons, implementedMike Bayer2006-01-191-1/+42
| | | | | | hash_key on all clause objects added hash_key test to select util gets extra threadlocal functions and the recursionstack object
* added some __repr__ functionalityMike Bayer2006-01-081-1/+5
|
* remove method on HashSetMike Bayer2006-01-081-0/+2
|
* copyright->2005,2006Mike Bayer2006-01-031-1/+1
|
* license switchMike Bayer2005-12-311-13/+2
|