| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
Includes simplifying the IDENTITY handling and the exception handling. Also
includes a cleanup of the connection string handling for pyodbc to favor
the DSN syntax.
|
| |
|
|
| |
with a more succinct "dialect.execution_ctx_cls" member
|
| |
|
|
|
|
|
|
| |
testing issues,
and also addresses a significant chunk of py3k deprecations. It's mainly
expicit __hash__ methods. Additionally, most usage of sets/dicts to store columns uses
util-based placeholder names.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a private method. Subclassing Connection
is not needed now that ConnectionProxy
is available.
- tightened the interface for the various _execute_XXX()
methods to reduce ambiguity
- __distill_params() no longer creates artificial [{}] entry,
blank dict is no longer passed through to do_execute()
in any case unless explicitly sent from the outside
as in connection.execute("somestring"), {})
- fixed a few old sql.query tests which were doing that
- removed needless do_execute() from mysql dialect
- fixed charset param not properly being sent to
_compat_fetchone() in mysql
|
| |
|
|
|
|
| |
- sqlite module documentation
- some corrections to pool docs
- the example in URL.translate_connect_args() never made any sense anyway so removed it
|
| | |
|
| |
|
|
| |
to avoid attribute errors. [ticket:1246]
|
| |
|
|
|
| |
- bumped latex TOC structure, the PDF looks great
- but we need to fix the translate_connect_args docstring bug to really have PDF
|
| |
|
|
|
| |
- fixed search highlighting
- the url docstring works again from a ReST perspective, still not PDF
|
| |
|
|
|
|
|
| |
Documentation" chapter which is fairly needless. this all allows PDF to have a decent TOC on the side with only two levels (can we change that ?)
- added LatexFormatter.
- PDF wont work until issue with the docstirng in url.py/URL.translate_connect_args is fixed.
|
| |
|
|
|
|
|
| |
description [ticket:1231]
- turned on autoclass_content="both". Need to specify __init__ docstring with a newline after the """.
- other docs
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- Documentation has been converted to Sphinx.
In particular, the generated API documentation
has been constructed into a full blown
"API Reference" section which organizes
editorial documentation combined with
generated docstrings. Cross linking between
sections and API docs are vastly improved,
a javascript-powered search feature is
provided, and a full index of all
classes, functions and members is provided.
|
| |
|
|
| |
autocloses the cursor. This was removed in 0.5rc3.
|
| |
|
|
|
| |
Connection object, Connection.info should be used.
- Method consoliation in Connection, ExecutionContext
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Pass in the argument "label_length=<value>" to create_engine()
to adjust how many characters max will be present in dynamically
generated column labels, i.e. "somecolumn AS somelabel". Any
value less than 6 will result in a label of minimal size,
consiting of an underscore and a numeric counter.
The compiler uses the value of dialect.max_identifier_length
as a default. [ticket:1211]
- removed ANON_NAME regular expression, using string patterns now
- _generated_label() unicode subclass is used to indicate generated names
which are subject to truncation
|
| |
|
|
|
|
| |
to be based solely on presence of cursor.description.
All the regexp-based guessing about statements returning rows
has been removed [ticket:1212].
|
| | |
|
| |
|
|
| |
insert. If supports_empty_insert is True then the backend specifically supports the 'insert into t1 () values ()' syntax. If supports_default_values is True then the backend supports the 'insert into t1 default values' syntax. If both are false then the backend has no support for empty inserts at all and an exception gets raised. Changes here are careful to not change current behavior except where the current behavior was failing to begin with.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- The internal notion of an "OID" or "ROWID" column has been
removed. It's basically not used by any dialect, and the
possibility of its usage with psycopg2's cursor.lastrowid
is basically gone now that INSERT..RETURNING is available.
- Removed "default_order_by()" method on all FromClause
objects.
- profile/compile/select test is 8 function calls over on buildbot 2.4 for some reason, will adjust after checking
the results of this commit
|
| |
|
|
| |
Fixes #1175.
|
| | |
|
| |
|
|
| |
account [ticket:1155]
|
| |
|
|
| |
- implemented code cleanup from [ticket:1152] but not including using the decorators module
|
| |
|
|
|
| |
Slightly backward incompatible: the .name is a read-only property.
The test suite was assigning .name = 'mock'; this no longer works.
|
| |
|
|
|
| |
from [ticket:1068]. This feature is on hold
pending further development.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
own name
and not its contained expression, if the dialect reports true for supports_simple_order_by_label.
the flag is not propagated forwards, meant to closely mimic the syntax Postgres expects which is
that only a simple name can be in the ORDER BY, not a more complex expression or function call
with the label name embedded (mysql and sqlite support more complex expressions).
This further sets the standard for propigation of **kwargs within compiler, that we can't just send
**kwargs along blindly to each XXX.process() call; whenever a **kwarg needs to propagate through,
most methods will have to be aware of it and know when they should send it on forward and when not.
This was actually already the case with result_map as well.
The supports_simple_order_by dialect flag defaults to True but is conservatively explicitly set to
False on all dialects except SQLite/MySQL/Postgres to start.
[ticket:1068]
|
| | |
|
| |
|
|
| |
Addresses #909 in a purposeful way.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
- Some import tidying
|
| |
|
|
|
| |
- removed ancient descriptor() functions from dialects; replaced with Dialect.name
- removed similarly ancient sys.modules silliness in Engine.name
|
| |
|
|
| |
branch, [ticket:571]
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
0.4 development continues at /sqlalchemy/branches/rel_0_4
|
| |
|
|
| |
[ticket:1022]
|
| |
|
|
| |
__ne__() on scalar values during flush [ticket:1015]
|
| | |
|
| |
|
|
|
|
|
| |
- this branch changes query.values() to immediately return an iterator, adds a new "aliased" construct which will be the primary method to get at aliased columns when using values()
- tentative ORM versions of _join and _outerjoin are not yet public, would like to integrate with Query better (work continues in the branch)
- lots of fixes to expressions regarding cloning and correlation. Some apparent ORM bug-workarounds removed.
- to fix a recursion issue with anonymous identifiers, bind parameters generated against columns now just use the name of the column instead of the tablename_columnname label (plus the unique integer counter). this way expensive recursive schemes aren't needed for the anon identifier logic. This, as usual, impacted a ton of compiler unit tests which needed a search-n-replace for the new bind names.
|
| |
|
|
|
|
|
| |
unit tests as part of the default test suite. Added
better uniqueness to the cursor ID [ticket:1001]
- update().values() and insert().values() take keyword
arguments.
|
| |
|
|
|
| |
- MySQL character set caching is more aggressive but will invalidate the cache if a SET is issued.
- MySQL connection memos are namespaced: info[('mysql', 'server_variable')]
|
| |
|
|
| |
- Deprecation decorator is now a real decorator
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- removes everything to do with select_table, which remains as a keyword argument synonymous with
with_polymorphic=('*', select_table).
- all "polymorphic" selectables find their way to Query by way of _set_select_from() now, so that
all joins/aliasing/eager loads/etc. is handled consistently. Mapper has methods for producing
polymorphic selectables so that Query and eagerloaders alike can get to them.
- row aliasing simplified, so that they don't need to nest. they only need the source selectable
and adapt to whatever incoming columns they get.
- Query is more egalitarian about mappers/columns now. Still has a strong sense of "entity zero",
but also introduces new unpublished/experimental _values() method which sets up a columns-only query.
- Query.order_by() and Query.group_by() take *args now (also still take a list, will likely deprecate
in 0.5). May want to do this for select() as well.
- the existing "check for False discriminiator" "fix" was not working completely, added coverage
- orphan detection was broken when the target object was a subclass of the mapper with the orphaned
relation, fixed that too.
|
| |
|
|
| |
test for query equivalence to account for underscoring of bind variables.
|
| |
|
|
| |
broken unit tests in the Oracle module
|
| | |
|