| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
|
|
|
| |
enhancements where index reflection on Postgresql versions specific
to only the 8.1, 8.2 series again
broke, surrounding the ever problematic int2vector type. While
int2vector supports array operations as of 8.1, apparently it only
supports CAST to a varchar as of 8.3.
fix #3000
|
| |
|
|
|
|
| |
where :meth:`.Query.exists` wouldn't work on a query that only
had a :meth:`.Query.select_from` entry but no other entities.
re: #2818 fixes #2995
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
removal of the ``setuptools.Feature`` extension from setuptools.
If this keyword isn't present, the setup will still succeed
with setuptools rather than falling back to distutils. C extension
building can be disabled now also by setting the
DISABLE_SQLALCHEMY_CEXT environment variable. This variable works
whether or not setuptools is even available. fixes #2986
- using platform.python_implementation() in setup.py to detect CPython.
I've tested this function on OSX and linux on Python 2.6 through 3.4,
including 3.1, 3.2, 3.3.
Unfortunately, on OSX + 3.2 only, it seems to segfault. I've tried
installing 3.2.5 from the python.org .dmg, building it from source,
and also blew away the whole 3.2 directory, something seems to be wrong
with the "platform" module on that platform only, and there's also no
issue on bugs.python.org; however, I'm going with
it anyway. If someone is using 3.2 on OSX they really should be upgrading.
- adjusted the logic for platform_implementation(), apparently "platform"
is there in python 2.5, so we are doing a version check.
Conflicts:
doc/build/intro.rst
setup.py
|
| |
|
|
|
|
|
|
|
|
|
| |
1. fix the typo in the paragraph, fixes #2998
2. as zope-sqlalchemy only provides transaction integration and not session scoping,
dial back the language here as people are probably using scoped_session with pyramid anyway
3. as I'm going to again start recommending people don't cling to flask-sqlalchemy so hard,
take out the word "strongly" from the recommendation.
4. as flask is the only framework I can think of that actually has an explicit SQLAlchemy
layer that handles setting up scoped_session, take out the word "most", now it's "some web frameworks"
(by which it means "only flask...and flask-sqlalchemy is probably not worth using anyway")
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
:func:`.attributes.flag_modified` where the change event would not be
propagated if the attribute had been reassigned to itself.
fixes #2997
Conflicts:
lib/sqlalchemy/orm/state.py
test/orm/test_attributes.py
|
| |
|
|
| |
Most linter complain when comparing with None.
|
| |
|
|
|
|
|
| |
against a non-selectable, such as a :func:`.literal_column`, and then
an attempt was made to use :meth:`.Query.join` such that the "left"
side would be determined as ``None`` and then fail. This condition
is now detected explicitly.
|
| | |
|
| |
|
|
|
| |
Conflicts:
lib/sqlalchemy/orm/relationships.py
|
| |
|
|
| |
Fixes argument number in docs
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the first SQL expression would be applied as the "comparison type"
to a compared tuple value; this has the effect in some cases of an
inappropriate "type coersion" occurring, such as when a tuple that
has a mix of String and Binary values improperly coerces target
values to Binary even though that's not what they are on the left
side. :func:`.tuple_` now expects heterogeneous types within its
list of values.
fixes #2977
Conflicts:
lib/sqlalchemy/sql/elements.py
test/sql/test_operators.py
|
| | |
|
| |
|
|
|
|
| |
refreshed with current names, so that an ``import *`` from this
module again works.
fixes #2975
|
| | |
|
| | |
|
| |
|
|
| |
not really worth tracking down
|
| |
|
|
|
|
| |
"could not send data to server", which complements the existing
"could not receive data from server" and has been observed by users,
fixes #2936
|
| |
|
|
| |
for output consistency within the tests as well as in practice
|
| | |
|
| |
|
|
| |
from 0.9
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(pre 8.1) versions of Postgresql, and potentially other PG engines
such as Redshift (assuming Redshift reports the version as < 8.1).
The query for "indexes" as well as "primary keys" relies upon inspecting
a so-called "int2vector" datatype, which refuses to coerce to an array
prior to 8.1 causing failures regarding the "ANY()" operator used
in the query. Extensive googling has located the very hacky, but
recommended-by-PG-core-developer query to use when PG version < 8.1
is in use, so index and primary key constraint reflection now work
on these versions.
Conflicts:
doc/build/changelog/changelog_09.rst
test/dialect/postgresql/test_types.py
|
| |
|
|
|
|
|
| |
fractional seconds support; also added fractional seconds support
to :class:`.mysql.TIMESTAMP`. DBAPI support is limited, though
fractional seconds are known to be supported by MySQL Connector/Python.
Patch courtesy Geert JM Vanderkelen. #2941
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
or tuple would raise an IndexError. It now produces an empty
insert construct as would be the case with an empty dictionary.
Conflicts:
lib/sqlalchemy/sql/dml.py
|
| |
|
|
|
|
|
|
|
| |
concurrent ability to return connections from the pool means that the
"first_connect" event is now no longer synchronized either, thus leading
to dialect mis-configurations under even minimal concurrency situations.
Conflicts:
lib/sqlalchemy/event/attr.py
|
| | |
|
| | |
|
| |\
| |
| |
| | |
https://github.com/malor/sqlalchemy into t
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Reflection of unique constraints didn't work properly, if reserved
identifiers had been used as column names. In this case column names
would be put in double quotes (e.g. the name of column asc would be
returned as "asc").
This issue is only present in 0.8.4 and not in 0.9.x.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
sections
- convert all paramter references in relationship documentation to :paramref:
Conflicts:
doc/build/orm/relationships.rst
lib/sqlalchemy/ext/declarative/__init__.py
lib/sqlalchemy/orm/relationships.py
|
| | | |
|
| | |
| |
| |
| | |
hstore extension. #2959
|
| | |
| |
| |
| |
| | |
- clarify section on "foreign key reflection" and group this in a
section that refers to foreign keys.
|
| |/
|
|
|
|
|
| |
reflection query were updated to take into account primary key constraints
that were renamed; the newer query fails on very old versions of
Postgresql such as version 7, so the old query is restored in those cases
when server_version_info < (8, 0) is detected. #2291
|
| |
|
|
|
|
| |
erroneously passed a column expression whose comparator included
the ``__getitem__()`` method, such as a column that uses the
:class:`.postgresql.ARRAY` type. [ticket:2957]
|
| |
|
|
| |
as automating this pattern
|
| | |
|
| |
|
|
|
|
| |
raise the :class:`.InvalidRequestError` that invokes when called
on a query with existing criterion, when the given identity is
already present in the identity map. [ticket:2951]
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
pymysql) from working in Py3K, where a check for "connection
charset" would fail due to Py3K's more strict value comparison
rules. The call in question wasn't taking the database
version into account in any case as the server version was
still None at that point, so the method overall has been
simplified to rely upon connection.character_set_name().
[ticket:2933]
|
| | |
|
| |
|
|
| |
- add huge warning regarding how use_threadlocal probably not what you want
|
| | |
|
| | |
|
| |\ |
|