]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/log
thirdparty/sqlalchemy/sqlalchemy.git
10 years agoReflect unique constraints when reflecting a Table object
Johannes Erdfelt [Wed, 10 Sep 2014 14:37:59 +0000 (07:37 -0700)] 
Reflect unique constraints when reflecting a Table object

Calls to reflect a table did not create any UniqueConstraint objects.
The reflection core made no calls to get_unique_constraints and as
a result, the sqlite dialect would never reflect any unique constraints.

MySQL transparently converts unique constraints into unique indexes, but
SQLAlchemy would reflect those as an Index object and as a
UniqueConstraint. The reflection core will now deduplicate the unique
constraints.

PostgreSQL would reflect unique constraints as an Index object and as
a UniqueConstraint object. The reflection core will now deduplicate
the unique indexes.

10 years ago- not sure what this is testing but remove the self.l that might
Mike Bayer [Wed, 17 Sep 2014 19:40:09 +0000 (15:40 -0400)] 
- not sure what this is testing but remove the self.l that might
be contributing to pypy not cleaning up on this one

10 years ago- we can start checking these flake rules
Mike Bayer [Wed, 17 Sep 2014 19:39:47 +0000 (15:39 -0400)] 
- we can start checking these flake rules

10 years ago- changelog for #3203; fixes #3203
Mike Bayer [Wed, 17 Sep 2014 19:19:19 +0000 (15:19 -0400)] 
- changelog for #3203; fixes #3203

10 years agoMerge branch 'sqlite-temp-table-reflection' of https://bitbucket.org/jerdfelt/sqlalch...
Mike Bayer [Wed, 17 Sep 2014 19:16:33 +0000 (15:16 -0400)] 
Merge branch 'sqlite-temp-table-reflection' of https://bitbucket.org/jerdfelt/sqlalchemy/branch/sqlite-temp-table-reflection into pr31

10 years ago- Added :meth:`.Inspector.get_temp_table_names` and
Mike Bayer [Wed, 17 Sep 2014 19:15:21 +0000 (15:15 -0400)] 
- Added :meth:`.Inspector.get_temp_table_names` and
:meth:`.Inspector.get_temp_view_names`; currently, only the
SQLite dialect supports these methods.    The return of temporary
table and view names has been **removed** from SQLite's version
of :meth:`.Inspector.get_table_names` and
:meth:`.Inspector.get_view_names`; other database backends cannot
support this information (such as MySQL), and the scope of operation
is different in that the tables can be local to a session and
typically aren't supported in remote schemas.
fixes #3204

10 years ago- move this to the correct location
Mike Bayer [Wed, 17 Sep 2014 18:02:34 +0000 (14:02 -0400)] 
- move this to the correct location

10 years ago- comment this out (again)
Mike Bayer [Wed, 17 Sep 2014 17:12:41 +0000 (13:12 -0400)] 
- comment this out (again)

10 years agoMerge branch 'pr128'
Mike Bayer [Wed, 17 Sep 2014 17:11:49 +0000 (13:11 -0400)] 
Merge branch 'pr128'

10 years ago- repair get_foreign_table_names() for PGInsp/dialect level
Mike Bayer [Wed, 17 Sep 2014 17:11:22 +0000 (13:11 -0400)] 
- repair get_foreign_table_names() for PGInsp/dialect level
- repair get_view_names()
- changelog + migration note

10 years agokeep this off for the moment as jenkins isn't set up for this yet
Mike Bayer [Wed, 17 Sep 2014 16:41:55 +0000 (12:41 -0400)] 
keep this off for the moment as jenkins isn't set up for this yet

10 years ago- the actual round trip requires password authent set up for the user;
Mike Bayer [Wed, 17 Sep 2014 16:41:08 +0000 (12:41 -0400)] 
- the actual round trip requires password authent set up for the user;
we don't actually need a round trip test here as we're only testing reflection.

10 years agoHandle sqlite get_unique_constraints() call for temporary tables
Johannes Erdfelt [Wed, 17 Sep 2014 14:52:34 +0000 (07:52 -0700)] 
Handle sqlite get_unique_constraints() call for temporary tables

The sqlite get_unique_constraints() implementation did not do a union
against the sqlite_temp_master table like other code does. This could
result in an exception being raised if get_unique_constraints() was
called against a temporary table.

10 years ago- Fixed the version string detection in the pymssql dialect to
Mike Bayer [Tue, 16 Sep 2014 21:40:06 +0000 (17:40 -0400)] 
- Fixed the version string detection in the pymssql dialect to
work with Microsoft SQL Azure, which changes the word "SQL Server"
to "SQL Azure".
fixes #3151

10 years ago- break out and fix tests for materialized view and foreign tables. foreign tables...
Mike Bayer [Tue, 16 Sep 2014 21:24:34 +0000 (17:24 -0400)] 
- break out and fix tests for materialized view and foreign tables.  foreign tables not working

10 years agoMerge remote-tracking branch 'origin/pr/128' into pr128
Mike Bayer [Tue, 16 Sep 2014 20:55:05 +0000 (16:55 -0400)] 
Merge remote-tracking branch 'origin/pr/128' into pr128

10 years ago- raise from cause here to preserve stack trace
Mike Bayer [Tue, 16 Sep 2014 20:20:22 +0000 (16:20 -0400)] 
- raise from cause here to preserve stack trace

10 years agoMerge pull request #138 from BY-jk/master
mike bayer [Tue, 16 Sep 2014 19:10:36 +0000 (15:10 -0400)] 
Merge pull request #138 from BY-jk/master

Added EXASolution dialect to documentation

10 years agoAdded EXASolution dialect to documentation
Jan [Tue, 16 Sep 2014 18:54:27 +0000 (20:54 +0200)] 
Added EXASolution dialect to documentation

10 years ago- cant do xargs in tox.ini as it doesnt run outside of postgresql/mysql
Mike Bayer [Mon, 15 Sep 2014 19:29:54 +0000 (15:29 -0400)] 
- cant do xargs in tox.ini as it doesnt run outside of postgresql/mysql

10 years ago- use compat.u for python3.2, fixes #3198
Mike Bayer [Mon, 15 Sep 2014 18:57:41 +0000 (14:57 -0400)] 
- use compat.u for python3.2, fixes #3198

10 years ago- fix issue where nose Failure object comes into play here
Mike Bayer [Mon, 15 Sep 2014 18:53:20 +0000 (14:53 -0400)] 
- fix issue where nose Failure object comes into play here

10 years ago- remove some crufty old testing options
Mike Bayer [Mon, 15 Sep 2014 01:41:13 +0000 (21:41 -0400)] 
- remove some crufty old testing options
- reestablish the "bootstrap" system of loading the test runners
in testing/plugin; using the updated approach we just came up with for
alembic.  Coverage should be fixed now when running either py.test or
nose. fixes #3196
- upgrade tox.ini and start using a .coveragerc file

10 years agoUpdated documenation for engines.rst
Jim Hokanson [Sun, 14 Sep 2014 04:25:41 +0000 (00:25 -0400)] 
Updated documenation for engines.rst

Clarified connecting to absolute path for sqlite using Windows.

10 years ago- Fixed warning that would emit when a complex self-referential
Mike Bayer [Thu, 11 Sep 2014 15:51:44 +0000 (11:51 -0400)] 
- Fixed warning that would emit when a complex self-referential
primaryjoin contained functions, while at the same time remote_side
was specified; the warning would suggest setting "remote side".
It now only emits if remote_side isn't present.
fixes #3194

10 years ago- Fixed bug in ordering list where the order of items would be
Mike Bayer [Wed, 10 Sep 2014 18:14:50 +0000 (14:14 -0400)] 
- Fixed bug in ordering list where the order of items would be
thrown off during a collection replace event, if the
reorder_on_append flag were set to True.  The fix ensures that the
ordering list only impacts the list that is explicitly associated
with the object.
fixes #3191

10 years ago- for whatever reason, Insert.values() with multi values wasn't
Mike Bayer [Tue, 9 Sep 2014 22:59:59 +0000 (18:59 -0400)] 
- for whatever reason, Insert.values() with multi values wasn't
in the 0.8 migration, so let's just add that

10 years ago- add in all the method-chained methods to the parameter descriptions
Mike Bayer [Tue, 9 Sep 2014 21:29:37 +0000 (17:29 -0400)] 
- add in all the method-chained methods to the parameter descriptions
on select().  improve some descriptions and add more info for limit()/
offset(), including new 1.0 functionality.

10 years ago- rework the previous "order by" system in terms of the new one,
Mike Bayer [Mon, 8 Sep 2014 20:31:11 +0000 (16:31 -0400)] 
- rework the previous "order by" system in terms of the new one,
unify everything.
- create a new layer of separation between the "from order bys" and "column order bys",
so that an OVER doesn't ORDER BY a label in the same columns clause
- identify another issue with polymorphic for ref #3148, match on label
keys rather than the objects

10 years ago- check for None linker...
Mike Bayer [Mon, 8 Sep 2014 17:01:43 +0000 (13:01 -0400)] 
- check for None linker...

10 years ago- Added new event handlers :meth:`.AttributeEvents.init_collection`
Mike Bayer [Mon, 8 Sep 2014 00:28:19 +0000 (20:28 -0400)] 
- Added new event handlers :meth:`.AttributeEvents.init_collection`
and :meth:`.AttributeEvents.dispose_collection`, which track when
a collection is first associated with an instance and when it is
replaced.  These handlers supersede the :meth:`.collection.linker`
annotation. The old hook remains supported through an event adapter.

10 years ago- remove some old cruft
Mike Bayer [Sun, 7 Sep 2014 23:17:46 +0000 (19:17 -0400)] 
- remove some old cruft
- prop.compare() isn't needed; replace with prop._with_parent()
for relationships
- update docs in orm/interfaces

10 years ago- mako_layout isn't used, remove it
Mike Bayer [Sun, 7 Sep 2014 22:10:40 +0000 (18:10 -0400)] 
- mako_layout isn't used, remove it
- to check for epub look at "builder"

10 years agoMerge pull request #133 from hiaselhans/doc_epub
mike bayer [Sun, 7 Sep 2014 21:38:05 +0000 (17:38 -0400)] 
Merge pull request #133 from hiaselhans/doc_epub

Docs: use layout.mako only when mako_layout=='html'

10 years agoDocs: use the base layout when mako_layout=='epub'
hiaselhans [Sat, 6 Sep 2014 11:32:58 +0000 (13:32 +0200)] 
Docs: use the base layout when mako_layout=='epub'

  - https://readthedocs.org/projects/sqlalchemy/downloads/epub/latest/ renders with the full template which is unreadable on e-readers
  - in the makefile the template-variable mako_layout is set for target: epub which makes mako use only the base layout.
  - this is the more elegant solution as proposed to #133

10 years ago- changelog and migration for #3188, #3148.
Mike Bayer [Sun, 7 Sep 2014 19:23:24 +0000 (15:23 -0400)] 
- changelog and migration for #3188, #3148.
fixes #3188
fixes #3148

10 years ago- rework ColumnAdapter and ORMAdapter to only provide the features
Mike Bayer [Sun, 7 Sep 2014 18:55:44 +0000 (14:55 -0400)] 
- rework ColumnAdapter and ORMAdapter to only provide the features
we're now using; rework them fully so that their behavioral contract
is consistent regarding adapter.traverse() vs. adapter.columns[],
add a full suite of tests including advanced wrapping scenarios
previously only covered by test/orm/test_froms.py and
test/orm/inheritance/test_relationships.py
- identify several cases where label._order_by_label_clause would be
corrupted, e.g. due to adaption or annotation separately
- add full tests for #3148

10 years ago- enhance ClauseAdapter / ColumnAdapter to have new behaviors with labels.
Mike Bayer [Sun, 7 Sep 2014 04:01:34 +0000 (00:01 -0400)] 
- enhance ClauseAdapter / ColumnAdapter to have new behaviors with labels.
The "anonymize label" logic is now generalized to ClauseAdapter, and takes
place when the anonymize_labels flag is sent, taking effect for all
.columns lookups as well as within traverse() calls against the label
directly.
- traverse() will also memoize what it gets in columns, so that
calling upon traverse() / .columns against the same Label will
produce the same anonymized label.  This is so that AliasedClass
produces the same anonymized label when it is accessed per-column
(e.g. SomeAlias.some_column) as well as when it is applied to a Query,
and within column loader strategies (e.g. query(SomeAlias)); the
former uses traverse() while the latter uses .columns
- AliasedClass now calls onto ColumnAdapter
- Query also makes sure to use that same ColumnAdapter from the AliasedClass
in all cases
- update the logic from 0.9 in #1068 to make use of the same
_label_resolve_dict we use for #2992, simplifying how that works
and adding support for new scenarios that were pretty broken
(see #3148, #3188)

10 years agowip for #3148
Mike Bayer [Sat, 6 Sep 2014 21:56:53 +0000 (17:56 -0400)] 
wip for #3148

10 years ago- document all the varities of _label on the base ColumnElement
Mike Bayer [Sat, 6 Sep 2014 20:20:01 +0000 (16:20 -0400)] 
- document all the varities of _label on the base ColumnElement
- replace out _columns_clause_label with a straight boolean flag to
reduce the proliferation of labels

10 years ago- omit MySQL index flavor if its None
Mike Bayer [Fri, 5 Sep 2014 21:02:33 +0000 (17:02 -0400)] 
- omit MySQL index flavor if its None

10 years ago- MySQL boolean symbols "true", "false" work again. 0.9's change
Mike Bayer [Fri, 5 Sep 2014 20:44:42 +0000 (16:44 -0400)] 
- MySQL boolean symbols "true", "false" work again.  0.9's change
in :ticket:`2682` disallowed the MySQL dialect from making use of the
"true" and "false" symbols in the context of "IS" / "IS NOT", but
MySQL supports this syntax even though it has no boolean type.
MySQL remains "non native boolean", but the :func:`.true`
and :func:`.false` symbols again produce the
keywords "true" and "false", so that an expression like
``column.is_(true())`` again works on MySQL.
fixes #3186

10 years ago- delete the file first here so this is deterministic
Mike Bayer [Fri, 5 Sep 2014 20:07:10 +0000 (16:07 -0400)] 
- delete the file first here so this is deterministic

10 years ago- tiny refactors #1-#5
Mike Bayer [Fri, 5 Sep 2014 18:50:21 +0000 (14:50 -0400)] 
- tiny refactors #1-#5

10 years agoAdded documentation. Changed my mind - added get_foreign_table_names() only to PGInsp...
Rodrigo Menezes [Fri, 5 Sep 2014 17:54:48 +0000 (13:54 -0400)] 
Added documentation. Changed my mind - added get_foreign_table_names() only to PGInspect and not in the Dialect. Added tests for PGInspect and removed a bunch of the old test scaffolding.

10 years agoAdded get_foreign_table_names to interface and put it in the test requirements.
Rodrigo Menezes [Fri, 5 Sep 2014 17:37:32 +0000 (13:37 -0400)] 
Added get_foreign_table_names to interface and put it in the test requirements.

10 years ago- ensure literal_binds works with LIMIT clause, FOR UPDATE
Mike Bayer [Wed, 3 Sep 2014 23:42:38 +0000 (19:42 -0400)] 
- ensure literal_binds works with LIMIT clause, FOR UPDATE

10 years agoFixing some pep8s and adding get_foreign_tables.
Rodrigo Menezes [Wed, 3 Sep 2014 20:38:43 +0000 (16:38 -0400)] 
Fixing some pep8s and adding get_foreign_tables.

10 years ago- The hostname-based connection format for SQL Server when using
Mike Bayer [Wed, 3 Sep 2014 14:30:51 +0000 (10:30 -0400)] 
- The hostname-based connection format for SQL Server when using
pyodbc will no longer specify a default "driver name", and a warning
is emitted if this is missing.  The optimal driver name for SQL Server
changes frequently and is per-platform, so hostname based connections
need to specify this. DSN-based connections are preferred.
fixes #3182

10 years ago- default dialect, plus test against the default dialect...
Mike Bayer [Tue, 2 Sep 2014 19:04:12 +0000 (15:04 -0400)] 
- default dialect, plus test against the default dialect...

10 years ago- An adjustment to table/index reflection such that if an index
Mike Bayer [Tue, 2 Sep 2014 18:18:09 +0000 (14:18 -0400)] 
- An adjustment to table/index reflection such that if an index
reports a column that isn't found to be present in the table,
a warning is emitted and the column is skipped.  This can occur
for some special system column situations as has been observed
with Oracle. fixes #3180

10 years agodefault dialect
Mike Bayer [Tue, 2 Sep 2014 17:39:16 +0000 (13:39 -0400)] 
default dialect

10 years ago- add logic to compiler such that if stack is empty, we just
Mike Bayer [Tue, 2 Sep 2014 14:49:46 +0000 (10:49 -0400)] 
- add logic to compiler such that if stack is empty, we just
stringify a _label_reference() as is.
- add .key to _label_reference(), so that when _make_proxy()
is called, we don't call str() on it anyway.
- add a test to exercise Query's behavior of adding all the order_by
expressions to the columns list of the select, assert that things
work out when we have a _label_reference there, that it gets sucked
into the columns list and spit out on the other side, it's referred
to appropriately, etc.   _label_reference() could theoretically
be resolved at the point we iterate _raw_columns() but
it's better to just let things work as they already do (except
nicer, since we get "tablename.colname" instead of just "somename"
 in the columns list) so that we aren't adding a ton of overhead
to _columns_plus_names in the common case.

10 years ago- reorganize
Mike Bayer [Tue, 2 Sep 2014 00:31:00 +0000 (20:31 -0400)] 
- reorganize

10 years ago- The :func:`~.expression.column` and :func:`~.expression.table`
Mike Bayer [Tue, 2 Sep 2014 00:19:54 +0000 (20:19 -0400)] 
- The :func:`~.expression.column` and :func:`~.expression.table`
constructs are now importable from the "from sqlalchemy" namespace,
just like every other Core construct.
- The implicit conversion of strings to :func:`.text` constructs
when passed to most builder methods of :func:`.select` as
well as :class:`.Query` now emits a warning with just the
plain string sent.   The textual conversion still proceeds normally,
however.  The only method that accepts a string without a warning
are the "label reference" methods like order_by(), group_by();
these functions will now at compile time attempt to resolve a single
string argument to a column or label expression present in the
selectable; if none is located, the expression still renders, but
you get the warning again. The rationale here is that the implicit
conversion from string to text is more unexpected than not these days,
and it is better that the user send more direction to the Core / ORM
when passing a raw string as to what direction should be taken.
Core/ORM tutorials have been updated to go more in depth as to how text
is handled.
fixes #2992

10 years ago- more updates to text docs, literal_column, column etc. in prep
Mike Bayer [Mon, 1 Sep 2014 21:20:49 +0000 (17:20 -0400)] 
- more updates to text docs, literal_column, column etc.  in prep
for ticket 2992.

10 years ago- walk back these literal SQL lectures into something much more succinct.
Mike Bayer [Mon, 1 Sep 2014 00:26:40 +0000 (20:26 -0400)] 
- walk back these literal SQL lectures into something much more succinct.
the ORM one in particular was really long winded and I don't really care if people
use text() anyway, they'll figure it out ;)

10 years ago- improve from_statement() doc
Mike Bayer [Sun, 31 Aug 2014 22:05:17 +0000 (18:05 -0400)] 
- improve from_statement() doc

10 years ago- optional 'b' here for py3k
Mike Bayer [Sun, 31 Aug 2014 22:02:24 +0000 (18:02 -0400)] 
- optional 'b' here for py3k

10 years ago- refine this a bit to better check for exception type
Mike Bayer [Sun, 31 Aug 2014 22:00:49 +0000 (18:00 -0400)] 
- refine this a bit to better check for exception type

10 years ago- these tests were squashing deprecation warnings all along...
Mike Bayer [Sun, 31 Aug 2014 22:00:34 +0000 (18:00 -0400)] 
- these tests were squashing deprecation warnings all along...

10 years ago- A new style of warning can be emitted which will "filter" up to
Mike Bayer [Sun, 31 Aug 2014 19:22:00 +0000 (15:22 -0400)] 
- A new style of warning can be emitted which will "filter" up to
N occurrences of a parameterized string.   This allows parameterized
warnings that can refer to their arguments to be delivered a fixed
number of times until allowing Python warning filters to squelch them,
and prevents memory from growing unbounded within Python's
warning registries.
fixes #3178

10 years ago- updated callcounts
Mike Bayer [Sun, 31 Aug 2014 19:21:42 +0000 (15:21 -0400)] 
- updated callcounts

10 years ago- start encouraging the use of text() for injection of string-based SQL
Mike Bayer [Sun, 31 Aug 2014 15:44:51 +0000 (11:44 -0400)] 
- start encouraging the use of text() for injection of string-based SQL
rather than straight strings.  reference #2992

10 years ago- alter the yield_per eager restriction such that joined many-to-one loads
Mike Bayer [Sat, 30 Aug 2014 19:45:50 +0000 (15:45 -0400)] 
- alter the yield_per eager restriction such that joined many-to-one loads
are still OK, since these should be fine.

10 years ago- continue moving things out that don't need to be there
Mike Bayer [Sat, 30 Aug 2014 05:52:36 +0000 (01:52 -0400)] 
- continue moving things out that don't need to be there
- an existing state shouldn't need its load_options/load_path updated;
it should maintain those from its original Query source.  there's no
tests that check this behavior

10 years ago- clean up zoomark a little and try to get new profiles written
Mike Bayer [Sat, 30 Aug 2014 04:11:32 +0000 (00:11 -0400)] 
- clean up zoomark a little and try to get new profiles written

10 years ago- do the polymorphic thing as a decorator so it's out of the way otherwise
Mike Bayer [Sat, 30 Aug 2014 00:10:54 +0000 (20:10 -0400)] 
- do the polymorphic thing as a decorator so it's out of the way otherwise

10 years ago- bump callcounts down
Mike Bayer [Fri, 29 Aug 2014 23:16:29 +0000 (19:16 -0400)] 
- bump callcounts down

10 years ago- pull out populators back into separate functions, though still very inlined
Mike Bayer [Fri, 29 Aug 2014 21:46:57 +0000 (17:46 -0400)] 
- pull out populators back into separate functions, though still very inlined

10 years ago- further move things vertically, at which point things are inlined enough
Mike Bayer [Fri, 29 Aug 2014 20:57:12 +0000 (16:57 -0400)] 
- further move things vertically, at which point things are inlined enough
that I'd like to start de-inlining again in the hopes of making this readable.

10 years ago- need to use safe_discard() at least in _restore_snapshot(), let's use it
Mike Bayer [Fri, 29 Aug 2014 20:32:08 +0000 (16:32 -0400)] 
- need to use safe_discard() at least in _restore_snapshot(), let's use it
everywhere in Session since the optimized one only applies to loading

10 years ago- use default dialect for compile test here
Mike Bayer [Fri, 29 Aug 2014 20:29:46 +0000 (16:29 -0400)] 
- use default dialect for compile test here

10 years ago- defaultdict benchmarks faster than a namedtuple; OK
Mike Bayer [Fri, 29 Aug 2014 20:28:19 +0000 (16:28 -0400)] 
- defaultdict benchmarks faster than a namedtuple; OK
- inline the column-based expiration operations as well

10 years ago- reorganize how create_row_processor() communicates up to
Mike Bayer [Fri, 29 Aug 2014 19:07:11 +0000 (15:07 -0400)] 
- reorganize how create_row_processor() communicates up to
instances(), using a named tuple it can assign to directly.  this way
we never have to worry about that structure changing anymore, though
we are still having it append (key, fn) which is kind of awkward.
- inline _populators() into instance(), it's a little verbose but
saves an fn call

10 years ago- re-establish and test some behavior from previous versions, that
Mike Bayer [Fri, 29 Aug 2014 18:25:09 +0000 (14:25 -0400)] 
- re-establish and test some behavior from previous versions, that
if a load() or refresh() event changes history (which...why...but anyway)
the state of the object is the same; currently it seems that history
gets reset but on a refresh, the object still goes into session.dirty
- simplify what we store in partials

10 years ago- The :class:`.Query` will raise an exception when :meth:`.Query.yield_per`
Mike Bayer [Fri, 29 Aug 2014 18:01:38 +0000 (14:01 -0400)] 
- The :class:`.Query` will raise an exception when :meth:`.Query.yield_per`
is used with mappings or options where eager loading, either
joined or subquery, would take place.  These loading strategies are
not currently compatible with yield_per, so by raising this error,
the method is safer to use - combine with sending False to
:meth:`.Query.enable_eagerloads` to disable the eager loaders.

10 years ago- we've got 25% improvement so let's talk about it
Mike Bayer [Fri, 29 Aug 2014 17:35:25 +0000 (13:35 -0400)] 
- we've got 25% improvement so let's talk about it

10 years ago- add some more docs to yield_per
Mike Bayer [Fri, 29 Aug 2014 17:35:03 +0000 (13:35 -0400)] 
- add some more docs to yield_per

10 years ago- use a faster discard when loading
Mike Bayer [Fri, 29 Aug 2014 17:11:52 +0000 (13:11 -0400)] 
- use a faster discard when loading
- don't do a bool on identity map since it calls __len__

10 years ago- inline the commit of partials too
Mike Bayer [Fri, 29 Aug 2014 16:49:06 +0000 (12:49 -0400)] 
- inline the commit of partials too

10 years ago- Changed the approach by which the "single inheritance criterion"
Mike Bayer [Fri, 29 Aug 2014 16:05:00 +0000 (12:05 -0400)] 
- Changed the approach by which the "single inheritance criterion"
is applied, when using :meth:`.Query.from_self`, or its common
user :meth:`.Query.count`.  The criteria to limit rows to those
with a certain type is now indicated on the inside subquery,
not the outside one, so that even if the "type" column is not
available in the columns clause, we can filter on it on the "inner"
query.
fixes #3177

10 years ago- dropping callcounts
Mike Bayer [Fri, 29 Aug 2014 15:22:54 +0000 (11:22 -0400)] 
- dropping callcounts

10 years agoinlines galore
Mike Bayer [Fri, 29 Aug 2014 14:59:13 +0000 (10:59 -0400)] 
inlines galore

10 years ago- major refactoring/inlining to loader.instances(), though not really
Mike Bayer [Fri, 29 Aug 2014 00:06:12 +0000 (20:06 -0400)] 
- major refactoring/inlining to loader.instances(), though not really
any speed improvements :(.   code is in a much better place to be run into
C, however
- The ``proc()`` callable passed to the ``create_row_processor()``
method of custom :class:`.Bundle` classes now accepts only a single
"row" argument.
- Deprecated event hooks removed:  ``populate_instance``,
``create_instance``, ``translate_row``, ``append_result``
- the getter() idea is somewhat restored; see ref #3175

10 years ago- Made a small adjustment to the mechanics of lazy loading,
Mike Bayer [Thu, 28 Aug 2014 21:57:48 +0000 (17:57 -0400)] 
- Made a small adjustment to the mechanics of lazy loading,
such that it has less chance of interfering with a joinload() in the
very rare circumstance that an object points to itself; in this
scenario, the object refers to itself while loading its attributes
which can cause a mixup between loaders.   The use case of
"object points to itself" is not fully supported, but the fix also
removes some overhead so for now is part of testing.
fixes #3145

10 years ago- flake8
Mike Bayer [Thu, 28 Aug 2014 21:42:41 +0000 (17:42 -0400)] 
- flake8

10 years ago- this is small optimization, currently it's the best we can do
Mike Bayer [Thu, 28 Aug 2014 16:41:50 +0000 (12:41 -0400)] 
- this is small optimization, currently it's the best we can do
for #3175.  fixes #3175 (for now)

10 years ago- A new implementation for :class:`.KeyedTuple` used by the
Mike Bayer [Thu, 28 Aug 2014 16:25:21 +0000 (12:25 -0400)] 
- A new implementation for :class:`.KeyedTuple` used by the
:class:`.Query` object offers dramatic speed improvements when
fetching large numbers of column-oriented rows.
fixes #3176

10 years ago- The behavior of :paramref:`.joinedload.innerjoin` as well as
Mike Bayer [Tue, 26 Aug 2014 21:23:23 +0000 (17:23 -0400)] 
- The behavior of :paramref:`.joinedload.innerjoin` as well as
:paramref:`.relationship.innerjoin` is now to use "nested"
inner joins, that is, right-nested, as the default behavior when an
inner join joined eager load is chained to an outer join eager load.
fixes #3008

10 years ago- hard-won pep8 formatting of one of the giants...
Mike Bayer [Tue, 26 Aug 2014 20:34:41 +0000 (16:34 -0400)] 
- hard-won pep8 formatting of one of the giants...

10 years ago- updates to migration / changelog for 1.0
Mike Bayer [Tue, 26 Aug 2014 18:44:50 +0000 (14:44 -0400)] 
- updates to migration / changelog for 1.0

10 years agoRemoved changes that are no longer necessary for postgresql_relkind. Also, removed...
Rodrigo Menezes [Tue, 26 Aug 2014 17:02:19 +0000 (13:02 -0400)] 
Removed changes that are no longer necessary for postgresql_relkind. Also, removed newline changes.

10 years agoMerge branch 'master' of https://github.com/zzzeek/sqlalchemy into feature/postgres...
Rodrigo Menezes [Tue, 26 Aug 2014 16:57:00 +0000 (12:57 -0400)] 
Merge branch 'master' of https://github.com/zzzeek/sqlalchemy into feature/postgres-relkind

10 years agoRemove relkind from construct arguments.
Rodrigo Menezes [Tue, 26 Aug 2014 16:56:54 +0000 (12:56 -0400)] 
Remove relkind from construct arguments.

10 years agoRemoved all mentions to postgresql_relkind
Rodrigo Menezes [Tue, 26 Aug 2014 16:53:34 +0000 (12:53 -0400)] 
Removed all mentions to postgresql_relkind

10 years ago- changelog for pr bitbucket:28
Mike Bayer [Mon, 25 Aug 2014 23:14:47 +0000 (19:14 -0400)] 
- changelog for pr bitbucket:28

10 years agoMerge branch 'mutable-dict-update' of https://bitbucket.org/goodscloud/sqlalchemy...
Mike Bayer [Mon, 25 Aug 2014 23:13:47 +0000 (19:13 -0400)] 
Merge branch 'mutable-dict-update' of https://bitbucket.org/goodscloud/sqlalchemy into pr27

10 years ago- changelog for pr bitbucket:27
Mike Bayer [Mon, 25 Aug 2014 23:13:25 +0000 (19:13 -0400)] 
- changelog for pr bitbucket:27

10 years agoMerge branch 'mutable-dict-coerce-fix' of https://bitbucket.org/goodscloud/sqlalchemy...
Mike Bayer [Mon, 25 Aug 2014 23:10:43 +0000 (19:10 -0400)] 
Merge branch 'mutable-dict-coerce-fix' of https://bitbucket.org/goodscloud/sqlalchemy into pr27