summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy
Commit message (Collapse)AuthorAgeFilesLines
* - pymssql has PEP249 Binary contructor since 2.1.1pr/166Ramiro Morales2015-04-051-4/+5
| | | | See https://github.com/pymssql/pymssql/commit/e7fb15dd29090e1f1bb570842b53aea1ec32d8f0
* - Fixed a long-standing bug where the :class:`.Enum` type as usedMike Bayer2015-04-042-2/+2
| | | | | | | | | | 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
* Merge branch 'bb_issue_3084' of https://bitbucket.org/xflr6/sqlalchemy into pr47Mike Bayer2015-04-033-10/+15
|\
| * make sort_tables order deterministicSebastian Bank2015-03-073-10/+15
| |
* | - next will be 1.0.0Mike Bayer2015-04-031-1/+1
| |
* | - changelog + docstring for pullreq github:164Mike Bayer2015-04-031-0/+7
| |
* | Merge remote-tracking branch 'origin/pr/164' into pr164Mike Bayer2015-04-032-6/+9
|\ \
| * | Allow kwargs to be passed through update()pr/164Amir Sadoughi2015-03-202-6/+9
| | | | | | | | | | | | | | | This is useful to be able to pass in mysql_limit=1 from using the ORM.
* | | - Fixed bug where the state tracking within multiple, nestedMike Bayer2015-04-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | :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
* | | - :class:`.Query` doesn't support joins, subselects, or specialMike Bayer2015-04-012-26/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-011-1/+1
| | | | | | | | | | | | | | | | | | 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-011-31/+53
| | | | | | | | | | | | | | | | | | | | | :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
* | | - The warning emitted by the unicode type for a non-unicode typeMike Bayer2015-03-311-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | has been liberalized to warn for values that aren't even string values, such as integers; previously, the updated warning system of 1.0 made use of string formatting operations which would raise an internal TypeError. While these cases should ideally raise totally, some backends like SQLite and MySQL do accept them and are potentially in use by legacy code, not to mention that they will always pass through if unicode conversion is turned off for the target backend. fixes #3346
* | | - further fixes for #3347; track the mappers we're joiningMike Bayer2015-03-312-22/+53
| | | | | | | | | | | | | | | between fully and match on those, rather than trying to compare selectables; fixes #3347
* | | - Fixed a bug related to "nested" inner join eager loading, whichMike Bayer2015-03-301-22/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | exists in 0.9 as well but is more of a regression in 1.0 due to :ticket:`3008` which turns on "nested" by default, such that a joined eager load that travels across sibling paths from a common ancestor using innerjoin=True will correctly splice each "innerjoin" sibling into the appropriate part of the join, when a series of inner/outer joins are mixed together. fixes #3347
* | | call this 1.0.0b5 for the momentMike Bayer2015-03-301-1/+1
| | |
* | | Fix typospr/165Ernest Walzel2015-03-261-1/+1
|/ / | | | | | | | | agaisnt -> against 'a Alias' -> 'an Alias'
* | - fix this for pg8000 of all backends...Mike Bayer2015-03-241-1/+1
| |
* | - also add this to Oracle, and defensively to firebird and sybaseMike Bayer2015-03-243-0/+5
| |
* | - Turned off the "simple order by" flag on the MSSQL dialect; thisMike Bayer2015-03-242-0/+10
| | | | | | | | | | | | | | | | | | | | | | is the flag that per :ticket:`2992` causes an order by or group by an expression that's also in the columns clause to be copied by label, even if referenced as the expression object. The behavior for MSSQL is now the old behavior that copies the whole expression in by default, as MSSQL can be picky on these particularly in GROUP BY expressions. fixes #3338 - Add a test that includes a composed label in a GROUP BY
* | - The "auto-attach" feature of constraints such as :class:`.UniqueConstraint`Mike Bayer2015-03-241-17/+37
| | | | | | | | | | | | | | | | | | | | and :class:`.CheckConstraint` has been further enhanced such that when the constraint is associated with non-table-bound :class:`.Column` objects, the constraint will set up event listeners with the columns themselves such that the constraint auto attaches at the same time the columns are associated with the table. This in particular helps in some edge cases in declarative but is also of general use. fixes #3341
* | - Fixed bug in new "label resolution" feature of :ticket:`2992` whereMike Bayer2015-03-232-2/+3
| | | | | | | | | | | | | | | | a label that was anonymous, then labeled again with a name, would fail to be locatable via a textual label. This situation occurs naturally when a mapped :func:`.column_property` is given an explicit label in a query. fixes #3340
* | - Fixed unicode support for PyMySQL when using an "executemany"Mike Bayer2015-03-221-0/+5
| | | | | | | | | | | | | | | | | | operation with unicode parameters. SQLAlchemy now passes both the statement as well as the bound parameters as unicode objects, as PyMySQL generally uses string interpolation internally to produce the final statement, and in the case of executemany does the "encode" step only on the final statement. fixes #3337
* | - more updates to the unicode mess to frame this inMike Bayer2015-03-225-75/+63
| | | | | | | | as up-to-date recommendations as possible
* | some doc defensesMike Bayer2015-03-213-2/+10
| |
* | - Fixed bug in new "label resolution" feature of :ticket:`2992` whereMike Bayer2015-03-212-2/+3
| | | | | | | | | | | | | | | | the string label placed in the order_by() or group_by() of a statement would place higher priority on the name as found inside the FROM clause instead of a more locally available name inside the columns clause. fixes #3335
* | - Repaired the commit for issue #2771 which was inadvertently commentedMike Bayer2015-03-202-2/+2
| | | | | | | | | | | | out. - add __backend__ to the dialect suite so that it runs on CI. - will be 1.0.0b3
* | Merge branch 'mysqlclient' of https://bitbucket.org/methane/sqlalchemy into pr48Mike Bayer2015-03-201-0/+9
|\ \ | | | | | | | | | | | | Conflicts: lib/sqlalchemy/dialects/mysql/mysqldb.py
| * | Add mention about mysqlclientINADA Naoki2015-03-141-2/+4
| | |
* | | - add a note that we aren't really doing zxjdbc right now even thoughMike Bayer2015-03-202-0/+5
| | | | | | | | | | | | these files are present.
* | | - reorganize MySQL docs re: unicode, other cleanup and updatesMike Bayer2015-03-208-21/+79
| | |
* | | Merge branch 'support-emoji-on-mysql' of ↵Mike Bayer2015-03-202-1/+21
|\ \ \ | | | | | | | | | | | | https://bitbucket.org/graingert/sqlalchemy into pr49
| * | | add utf8mb4 recommendationThomas Grainger2015-03-181-0/+12
| | | |
| * | | map MySQL encodings to python encodings fixes #2771Thomas Grainger2015-03-181-1/+9
| | | |
* | | | Merge remote-tracking branch 'origin/pr/158' into pr158Mike Bayer2015-03-201-1/+3
|\ \ \ \
| * | | | fix Python 2-specific byte conversionpr/158David Marin2015-02-051-1/+3
| | | | |
* | | | | - Loosened some restrictions that were added to ``@declared_attr``Mike Bayer2015-03-181-9/+6
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | objects, such that they were prevented from being called outside of the declarative process; this is related to the enhancements of #3150 which allow ``@declared_attr`` to return a value that is cached based on the current class as it's being configured. The exception raise has been removed, and the behavior changed so that outside of the declarative process, the function decorated by ``@declared_attr`` is called every time just like a regular ``@property``, without using any caching, as none is available at this stage. fixes #3331
* | | | b2 nowMike Bayer2015-03-171-1/+1
| | | |
* | | | - The "auto close" for :class:`.ResultProxy` is now a "soft" close.Mike Bayer2015-03-175-44/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | That is, after exhausing all rows using the fetch methods, the DBAPI cursor is released as before and the object may be safely discarded, but the fetch methods may continue to be called for which they will return an end-of-result object (None for fetchone, empty list for fetchmany and fetchall). Only if :meth:`.ResultProxy.close` is called explicitly will these methods raise the "result is closed" error. fixes #3330 fixes #3329
* | | | Accept unicode in CascadeOptionspr/160Julien Castets2015-03-161-1/+1
| | | |
* | | | - remove now-misleading comment that SQLite doesn't support MATCH,Mike Bayer2015-03-141-2/+4
| | | | | | | | | | | | | | | | since they've apparently added something for it
* | | | - call this 1.0.0b1Mike Bayer2015-03-131-1/+1
| | | |
* | | | - tweaks regarding the use_alter updateMike Bayer2015-03-131-2/+1
| |/ / |/| |
* | | - ensure as_declarative is part of __all__ hereMike Bayer2015-03-121-0/+1
| | |
* | | - fix a get call here, we should figure this out since we dont wantMike Bayer2015-03-121-1/+1
| | | | | | | | | | | | to be using getattr
* | | - try to document how to get columns from constraints.Mike Bayer2015-03-121-0/+8
| | | | | | | | | | | | | | | unfortunately Sphinx refuses to work correctly for the columns attribute so we just add a lame message to contains_column().
* | | - Added a new extension suite :mod:`sqlalchemy.ext.baked`. ThisMike Bayer2015-03-118-128/+711
| | | | | | | | | | | | | | | | | | | | | | | | simple but unusual system allows for a dramatic savings in Python overhead for the construction and processing of orm :class:`.Query` objects, from query construction up through rendering of a string SQL statement. fixes #3054
* | | - Added a new entry ``"entity"`` to the dictionaries returned byMike Bayer2015-03-111-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | :attr:`.Query.column_descriptions`. This refers to the primary ORM mapped class or aliased class that is referred to by the expression. Compared to the existing entry for ``"type"``, it will always be a mapped entity, even if extracted from a column expression, or None if the given expression is a pure core expression. references #3320
* | | - The Postgresql :class:`.postgresql.ENUM` type will emit aMike Bayer2015-03-114-40/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DROP TYPE instruction when a plain ``table.drop()`` is called, assuming the object is not associated directly with a :class:`.MetaData` object. In order to accomodate the use case of an enumerated type shared between multiple tables, the type should be associated directly with the :class:`.MetaData` object; in this case the type will only be created at the metadata level, or if created directly. The rules for create/drop of Postgresql enumerated types have been highly reworked in general. fixes #3319
* | | - Added a new event suite :class:`.QueryEvents`. TheMike Bayer2015-03-102-5/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | :meth:`.QueryEvents.before_compile` event allows the creation of functions which may place additional modifications to :class:`.Query` objects before the construction of the SELECT statement. It is hoped that this event be made much more useful via the advent of a new inspection system that will allow for detailed modifications to be made against :class:`.Query` objects in an automated fashion. fixes #3317