Sqlalchemy

Latest version: v2.0.30

Safety actively analyzes 629564 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 48 of 50

0.2.5

Not secure
:released: Sat Jul 08 2006

.. change::
:tags:
:tickets:

fixed endless loop bug in select_by(), if the traversal hit
two mappers that referenced each other

.. change::
:tags:
:tickets:

upgraded all unittests to insert './lib/' into sys.path,
working around new setuptools PYTHONPATH-killing behavior

.. change::
:tags:
:tickets:

further fixes with attributes/dependencies/etc....

.. change::
:tags:
:tickets:

improved error handling for when DynamicMetaData is not connected

.. change::
:tags:
:tickets:

MS-SQL support largely working (tested with pymssql)

.. change::
:tags:
:tickets:

ordering of UPDATE and DELETE statements within groups is now
in order of primary key values, for more deterministic ordering

.. change::
:tags:
:tickets:

after_insert/delete/update mapper extensions now called per object,
not per-object-per-table

.. change::
:tags:
:tickets:

further fixes/refactorings to mapper compilation

.. changelog::

0.2.4

Not secure
:released: Tue Jun 27 2006

.. change::
:tags:
:tickets:

try/except when the mapper sets init.__name__ on a mapped class,
supports python 2.3

.. change::
:tags:
:tickets:

fixed bug where threadlocal engine would still autocommit
despite a transaction in progress

.. change::
:tags:
:tickets:

lazy load and deferred load operations require the parent object
to be in a Session to do the operation; whereas before the operation
would just return a blank list or None, it now raises an exception.

.. change::
:tags:
:tickets:

Session.update() is slightly more lenient if the session to which
the given object was formerly attached to was garbage collected;
otherwise still requires you explicitly remove the instance from
the previous Session.

.. change::
:tags:
:tickets:

fixes to mapper compilation, checking for more error conditions

.. change::
:tags:
:tickets:

small fix to eager loading combined with ordering/limit/offset

.. change::
:tags:
:tickets: 206

utterly remarkable: added a single space between 'CREATE TABLE'
and '(<the rest of it>' since *that's how MySQL indicates a non-
reserved word tablename.....*

.. change::
:tags:
:tickets:

more fixes to inheritance, related to many-to-many relations
properly saving

.. change::
:tags:
:tickets:

fixed bug when specifying explicit module to mysql dialect

.. change::
:tags:
:tickets:

when QueuePool times out it raises a TimeoutError instead of
erroneously making another connection

.. change::
:tags:
:tickets:

Queue.Queue usage in pool has been replaced with a locally
modified version (works in py2.3/2.4!) that uses a threading.RLock
for a mutex. this is to fix a reported case where a ConnectionFairy's
__del__() method got called within the Queue's get() method, which
then returns its connection to the Queue via the put() method,
causing a reentrant hang unless threading.RLock is used.

.. change::
:tags:
:tickets:

postgres will not place SERIAL keyword on a primary key column
if it has a foreign key constraint

.. change::
:tags:
:tickets: 221

cursor() method on ConnectionFairy allows db-specific extension
arguments to be propagated

.. change::
:tags:
:tickets: 225

lazy load bind params properly propagate column type

.. change::
:tags:
:tickets:

new MySQL types: MSEnum, MSTinyText, MSMediumText, MSLongText, etc.
more support for MS-specific length/precision params in numeric types
patch courtesy Mike Bernson

.. change::
:tags:
:tickets: 224

some fixes to connection pool invalidate()

.. changelog::

0.2.3

Not secure
:released: Sat Jun 17 2006

.. change::
:tags:
:tickets:

overhaul to mapper compilation to be deferred. this allows mappers
to be constructed in any order, and their relationships to each
other are compiled when the mappers are first used.

.. change::
:tags:
:tickets:

fixed a pretty big speed bottleneck in cascading behavior particularly
when backrefs were in use

.. change::
:tags:
:tickets:

the attribute instrumentation module has been completely rewritten; its
now a large degree simpler and clearer, slightly faster. the "history"
of an attribute is no longer micromanaged with each change and is
instead part of a "CommittedState" object created when the
instance is first loaded. HistoryArraySet is gone, the behavior of
list attributes is now more open ended (i.e. they're not sets anymore).

.. change::
:tags:
:tickets:

py2.4 "set" construct used internally, falls back to sets.Set when
"set" not available/ordering is needed.

.. change::
:tags:
:tickets:

fix to transaction control, so that repeated rollback() calls
don't fail (was failing pretty badly when flush() would raise
an exception in a larger try/except transaction block)

.. change::
:tags:
:tickets: 151

"foreignkey" argument to relation() can also be a list. fixed
auto-foreignkey detection

.. change::
:tags:
:tickets:

fixed bug where tables with schema names weren't getting indexed in
the MetaData object properly

.. change::
:tags:
:tickets: 207

fixed bug where Column with redefined "key" property wasn't getting
type conversion happening in the ResultProxy

.. change::
:tags:
:tickets:

fixed 'port' attribute of URL to be an integer if present

.. change::
:tags:
:tickets:

fixed old bug where if a many-to-many table mapped as "secondary"
had extra columns, delete operations didn't work

.. change::
:tags:
:tickets:

bugfixes for mapping against UNION queries

.. change::
:tags:
:tickets:

fixed incorrect exception class thrown when no DB driver present

.. change::
:tags:
:tickets: 138

added NonExistentTable exception thrown when reflecting a table
that doesn't exist

.. change::
:tags:
:tickets:

small fix to ActiveMapper regarding one-to-one backrefs, other
refactorings

.. change::
:tags:
:tickets:

overridden constructor in mapped classes gets __name__ and
__doc__ from the original class

.. change::
:tags:
:tickets: 200

fixed small bug in selectresult.py regarding mapper extension

.. change::
:tags:
:tickets:

small tweak to cascade_mappers, not very strongly supported
function at the moment

.. change::
:tags:
:tickets: 202

some fixes to between(), column.between() to propagate typing
information better

.. change::
:tags:
:tickets: 203

if an object fails to be constructed, is not added to the
session

.. change::
:tags:
:tickets:

CAST function has been made into its own clause object with
its own compilation function in ansicompiler; allows MySQL
to silently ignore most CAST calls since MySQL
seems to only support the standard CAST syntax with Date types.
MySQL-compatible CAST support for strings, ints, etc. a TODO

.. changelog::

0.2.2

Not secure
:released: Mon Jun 05 2006

.. change::
:tags:
:tickets: 190

big improvements to polymorphic inheritance behavior, enabling it
to work with adjacency list table structures

.. change::
:tags:
:tickets:

major fixes and refactorings to inheritance relationships overall,
more unit tests

.. change::
:tags:
:tickets:

fixed "echo_pool" flag on create_engine()

.. change::
:tags:
:tickets:

fix to docs, removed incorrect info that close() is unsafe to use
with threadlocal strategy (its totally safe !)

.. change::
:tags:
:tickets: 188

create_engine() can take URLs as string or unicode

.. change::
:tags:
:tickets:

firebird support partially completed;
thanks to James Ralston and Brad Clements for their efforts.

.. change::
:tags:
:tickets:

Oracle url translation was broken, fixed, will feed host/port/sid
into cx_oracle makedsn() if 'database' field is present, else uses
straight TNS name from the 'host' field

.. change::
:tags:
:tickets:

fix to using unicode criterion for query.get()/query.load()

.. change::
:tags:
:tickets:

count() function on selectables now uses table primary key or
first column instead of "1" for criterion, also uses label "rowcount"
instead of "count".

.. change::
:tags:
:tickets:

got rudimental "mapping to multiple tables" functionality cleaned up,
more correctly documented

.. change::
:tags:
:tickets:

restored global_connect() function, attaches to a DynamicMetaData
instance called "default_metadata". leaving MetaData arg to Table
out will use the default metadata.

.. change::
:tags:
:tickets:

fixes to session cascade behavior, entity_name propagation

.. change::
:tags:
:tickets:

reorganized unittests into subdirectories

.. change::
:tags:
:tickets:

more fixes to threadlocal connection nesting patterns

.. changelog::

0.2.1

Not secure
:released: Mon May 29 2006

.. change::
:tags:
:tickets:

"pool" argument to create_engine() properly propagates

.. change::
:tags:
:tickets:

fixes to URL, raises exception if not parsed, does not pass blank
fields along to the DB connect string (a string such as
user:host/db was breaking on postgres)

.. change::
:tags:
:tickets:

small fixes to Mapper when it inserts and tries to get
new primary key values back

.. change::
:tags:
:tickets:

rewrote half of TLEngine, the ComposedSQLEngine used with
'strategy="threadlocal"'. it now properly implements engine.begin()/
engine.commit(), which nest fully with connection.begin()/trans.commit().
added about six unittests.

.. change::
:tags:
:tickets:

major "duh" in pool.Pool, forgot to put back the WeakValueDictionary.
unittest which was supposed to check for this was also silently missing
it. fixed unittest to ensure that ConnectionFairy properly falls out
of scope.

.. change::
:tags:
:tickets:

placeholder dispose() method added to SingletonThreadPool, doesn't
do anything yet

.. change::
:tags:
:tickets:

rollback() is automatically called when an exception is raised,
but only if there's no transaction in process (i.e. works more like
autocommit).

.. change::
:tags:
:tickets:

fixed exception raise in sqlite if no sqlite module present

.. change::
:tags:
:tickets:

added extra example detail for association object doc

.. change::
:tags:
:tickets:

Connection adds checks for already being closed

.. changelog::

0.2.0

Not secure
:released: Sat May 27 2006

.. change::
:tags:
:tickets:

overhaul to Engine system so that what was formerly the SQLEngine
is now a ComposedSQLEngine which consists of a variety of components,
including a Dialect, ConnectionProvider, etc. This impacted all the
db modules as well as Session and Mapper.

.. change::
:tags:
:tickets:

create_engine now takes only RFC-1738-style strings:
``driver://user:passwordhost:port/database``

**update** this format is generally but not exactly RFC-1738,
including that underscores, not dashes or periods, are accepted in the
"scheme" portion.

.. change::
:tags:
:tickets: 152

total rewrite of connection-scoping methodology, Connection objects
can now execute clause elements directly, added explicit "close" as
well as support throughout Engine/ORM to handle closing properly,
no longer relying upon __del__ internally to return connections
to the pool.

.. change::
:tags:
:tickets:

overhaul to Session interface and scoping. uses hibernate-style
methods, including query(class), save(), save_or_update(), etc.
no threadlocal scope is installed by default. Provides a binding
interface to specific Engines and/or Connections so that underlying
Schema objects do not need to be bound to an Engine. Added a basic
SessionTransaction object that can simplistically aggregate transactions
across multiple engines.

.. change::
:tags:
:tickets:

overhaul to mapper's dependency and "cascade" behavior; dependency logic
factored out of properties.py into a separate module "dependency.py".
"cascade" behavior is now explicitly controllable, proper implementation
of "delete", "delete-orphan", etc. dependency system can now determine at
flush time if a child object has a parent or not so that it makes better
decisions on how that child should be updated in the DB with regards to deletes.

.. change::
:tags:
:tickets:

overhaul to Schema to build upon MetaData object instead of an Engine.
Entire SQL/Schema system can be used with no Engines whatsoever, executed
solely by an explicit Connection object. the "bound" methodology exists via the
BoundMetaData for schema objects. ProxyEngine is generally not needed
anymore and is replaced by DynamicMetaData.

.. change::
:tags:
:tickets: 167

true polymorphic behavior implemented, fixes

.. change::
:tags:
:tickets: 147

"oid" system has been totally moved into compile-time behavior;
if they are used in an order_by where they are not available, the order_by
doesn't get compiled, fixes

.. change::
:tags:
:tickets:

overhaul to packaging; "mapping" is now "orm", "objectstore" is now
"session", the old "objectstore" namespace gets loaded in via the
"threadlocal" mod if used

.. change::
:tags:
:tickets:

mods now called in via "import <modname>". extensions favored over
mods as mods are globally-monkeypatching

.. change::
:tags:
:tickets: 154

fix to add_property so that it propagates properties to inheriting
mappers

.. change::
:tags:
:tickets:

backrefs create themselves against primary mapper of its originating
property, primary/secondary join arguments can be specified to override.
helps their usage with polymorphic mappers

.. change::
:tags:
:tickets: 31

"table exists" function has been implemented

.. change::
:tags:
:tickets: 98

"create_all/drop_all" added to MetaData object

.. change::
:tags:
:tickets:

improvements and fixes to topological sort algorithm, as well as more
unit tests

.. change::
:tags:
:tickets:

tutorial page added to docs which also can be run with a custom doctest
runner to ensure its properly working. docs generally overhauled to
deal with new code patterns

.. change::
:tags:
:tickets:

many more fixes, refactorings.

.. change::
:tags:
:tickets:

migration guide is available on the Wiki at
https://www.sqlalchemy.org/trac/wiki/02Migration



=============
0.3 Changelog
=============


.. changelog::

Page 48 of 50

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.