summaryrefslogtreecommitdiff
path: root/doc/build
Commit message (Collapse)AuthorAgeFilesLines
* 1.0.0b1rel_1_0_0b1Mike Bayer2015-03-132-2/+3
|
* - add notes for prerelease installMike Bayer2015-03-131-11/+11
|
* - call this 1.0.0b1Mike Bayer2015-03-134-118/+118
|
* - tweaks regarding the use_alter updateMike Bayer2015-03-131-4/+2
|
* - repair forwards-port directivesMike Bayer2015-03-121-0/+14
|
* - add the fact that we can cache the sql naively as wellMike Bayer2015-03-121-5/+33
|
* - fix quantize recipe, fixes #3322Mike Bayer2015-03-121-1/+1
|
* - add a rationale sectionMike Bayer2015-03-121-0/+141
|
* - try to document how to get columns from constraints.Mike Bayer2015-03-122-3/+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-115-1/+259
| | | | | | | | 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-0/+14
| | | | | | | | | :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-112-0/+69
| | | | | | | | | | | | 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-1/+25
| | | | | | | | | | | :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
* - The subquery wrapping which occurs when joined eager loadingMike Bayer2015-03-102-0/+65
| | | | | | | | | is used with a one-to-many query that also features LIMIT, OFFSET, or DISTINCT has been disabled in the case of a one-to-one relationship, that is a one-to-many with :paramref:`.relationship.uselist` set to False. This will produce more efficient queries in these cases. fixes #3249
* - Fixed bug where the session attachment error "object is alreadyMike Bayer2015-03-101-0/+9
| | | | | | | attached to session X" would fail to prevent the object from also being attached to the new session, in the case that execution continued after the error raise occurred. fixes #3301
* - Fixed bug where using an ``__abstract__`` mixin in the middleMike Bayer2015-03-101-0/+9
| | | | | | | of a declarative inheritance hierarchy would prevent attributes and configuration being correctly propagated from the base class to the inheriting class. fixes #3219 fixes #3240
* - feature, not enhancementMike Bayer2015-03-101-1/+1
|
* - 0.9.9 changelog updateMike Bayer2015-03-101-0/+1
|
* - copyright 2015Mike Bayer2015-03-102-3/+3
|
* - changelog and docs for pullreq bitbucket:45Mike Bayer2015-03-101-0/+12
|
* - changelog for pr github:154Mike Bayer2015-03-101-0/+8
|
* - changelog / doc for sqlite partial indexesMike Bayer2015-03-101-0/+11
|
* - The SQL compiler now generates the mapping of expected columnspositional_targetingMike Bayer2015-03-071-0/+17
| | | | | | | | | | | | | | | | | such that they are matched to the received result set positionally, rather than by name. Originally, this was seen as a way to handle cases where we had columns returned with difficult-to-predict names, though in modern use that issue has been overcome by anonymous labeling. In this version, the approach basically reduces function call count per-result by a few dozen calls, or more for larger sets of result columns. The approach still degrades into a modern version of the old approach if textual elements modify the result map, or if any discrepancy in size exists between the compiled set of columns versus what was received, so there's no issue for partially or fully textual compilation scenarios where these lists might not line up. fixes #918 - callcounts still need to be adjusted down for this so zoomark tests won't pass at the moment
* - changelog and migration notes for new pg8000 features fromMike Bayer2015-03-022-0/+30
| | | | pullreq github:132
* - squash-merge the final row_proc integration branch. this isMike Bayer2015-03-012-1/+24
| | | | | | | | | | | | | | | a much more modest outcome than what we started with. The work of create_row_processor() for ColumnProperty objects is essentially done at query setup time combined with some lookups in _instance_processor(). - to allow this change for deferred columns, deferred columns no longer search for themselves in the result. If they've been set up as deferred without any explicit directive to undefer them, then this is what was asked for. if we don't do this, then we're stuck with this performance penalty for all deferred columns which in the vast majority of typical use cases (e.g. loading large, legacy tables or tables with many/large very seldom used values) won't be present in the result and won't be accessed at all.
* Update migration_09.rstpr/159Jason Held2015-02-251-1/+1
| | | typo fix: indivdual -> individual.
* - Fixed bugs in ORM object comparisons where comparison ofMike Bayer2015-02-201-0/+12
| | | | | | | | | | many-to-one ``!= None`` would fail if the source were an aliased class, or if the query needed to apply special aliasing to the expression due to aliased joins or polymorphic querying; also fixed bug in the case where comparing a many-to-one to an object state would fail if the query needed to apply special aliasing due to aliased joins or polymorphic querying. fixes #3310
* - Fixed bug where internal assertion would fail in the case whereMike Bayer2015-02-201-0/+10
| | | | | | | | an ``after_rollback()`` handler for a :class:`.Session` incorrectly adds state to that :class:`.Session` within the handler, and the task to warn and remove this state (established by :ticket:`2389`) attempts to proceed. fixes #3309
* - Mapped state internals have been reworked to allow for a 50% reductionMike Bayer2015-02-181-0/+10
| | | | | | | | in callcounts specific to the "expiration" of objects, as in the "auto expire" feature of :meth:`.Session.commit` and for :meth:`.Session.expire_all`, as well as in the "cleanup" step which occurs when object states are garbage collected. fixes #3307
* - add a new section regarding multiprocessingMike Bayer2015-02-171-0/+60
|
* - The MySQL dialect now supports CAST on types that are constructedMike Bayer2015-02-091-0/+6
| | | | as :class:`.TypeDecorator` objects.
* - A warning is emitted when :func:`.cast` is used with the MySQLMike Bayer2015-02-091-0/+13
| | | | | | | | | | | dialect on a type where MySQL does not support CAST; MySQL only supports CAST on a subset of datatypes. SQLAlchemy has for a long time just omitted the CAST for unsupported types in the case of MySQL. While we don't want to change this now, we emit a warning to show that it's taken place. A warning is also emitted when a CAST is used with an older MySQL version (< 4) that doesn't support CAST at all, it's skipped in this case as well. fixes #3237
* - Literal values within a :class:`.DefaultClause`, which is invokedMike Bayer2015-02-092-2/+50
| | | | | | | when using the :paramref:`.Column.server_default` parameter, will now be rendered using the "inline" compiler, so that they are rendered as-is, rather than as bound parameters. fixes #3087
* - test + changelogMike Bayer2015-02-081-0/+8
|
* - cx_Oracle.makedsn can now be passed service_name; squashSławek Ehlert2014-04-021-0/+8
| | | | commit of pr152
* - The MySQL dialect now renders TIMESTAMP with NULL / NOT NULL inMike Bayer2015-02-052-0/+42
| | | | | | | | | all cases, so that MySQL 5.6.6 with the ``explicit_defaults_for_timestamp`` flag enabled will will allow TIMESTAMP to continue to work as expected when ``nullable=False``. Existing applications are unaffected as SQLAlchemy has always emitted NULL for a TIMESTAMP column that is ``nullable=True``. fixes #3155
* - Fixed bug in :class:`.Connection` and pool where theMike Bayer2015-02-041-0/+11
| | | | | | | | | :meth:`.Connection.invalidate` method, or an invalidation due to a database disconnect, would fail if the ``isolation_level`` parameter had been used with :meth:`.Connection.execution_options`; the "finalizer" that resets the isolation level would be called on the no longer opened connection. fixes #3302
* - A warning is emitted if the ``isolation_level`` parameter is usedMike Bayer2015-02-042-0/+169
| | | | | | | | | | | | | | | | with :meth:`.Connection.execution_options` when a :class:`.Transaction` is in play; DBAPIs and/or SQLAlchemy dialects such as psycopg2, MySQLdb may implicitly rollback or commit the transaction, or not change the setting til next transaction, so this is never safe. - Added new parameter :paramref:`.Session.connection.execution_options` which may be used to set up execution options on a :class:`.Connection` when it is first checked out, before the transaction has begun. This is used to set up options such as isolation level on the connection before the transaction starts. - added new documentation section detailing best practices for setting transaction isolation with sessions. fixes #3296
* - Fixed bug in lazy loading SQL construction whereby a complexMike Bayer2015-02-021-0/+10
| | | | | | | | primaryjoin that referred to the same "local" column multiple times in the "column that points to itself" style of self-referential join would not be substituted in all cases. The logic to determine substitutions here has been reworked to be more open-ended. fixes #3300
* - Repaired support for Postgresql UUID types in conjunction withMike Bayer2015-02-011-0/+12
| | | | | | | | | | the ARRAY type when using psycopg2. The psycopg2 dialect now employs use of the psycopg2.extras.register_uuid() hook so that UUID values are always passed to/from the DBAPI as UUID() objects. The :paramref:`.UUID.as_uuid` flag is still honored, except with psycopg2 we need to convert returned UUID objects back into strings when this is disabled. fixes #2940
* - Added support for the :class:`postgresql.JSONB` datatype whenMike Bayer2015-01-311-0/+23
| | | | | | | | | | | | | | | | | using psycopg2 2.5.4 or greater, which features native conversion of JSONB data so that SQLAlchemy's converters must be disabled; additionally, the newly added psycopg2 extension ``extras.register_default_jsonb`` is used to establish a JSON deserializer passed to the dialect via the ``json_deserializer`` argument. Also repaired the Postgresql integration tests which weren't actually round-tripping the JSONB type as opposed to the JSON type. Pull request courtesy Mateusz Susik. - Repaired the use of the "array_oid" flag when registering the HSTORE type with older psycopg2 versions < 2.4.3, which does not support this flag, as well as use of the native json serializer hook "register_default_json" with user-defined ``json_deserializer`` on psycopg2 versions < 2.5, which does not include native json.
* - The :class:`.CheckConstraint` construct now supports namingMike Bayer2015-01-303-2/+193
| | | | | | | | | | conventions that include the token ``%(column_0_name)s``; the constraint expression is scanned for columns. Additionally, naming conventions for check constraints that don't include the ``%(constraint_name)s`` token will now work for :class:`.SchemaType`- generated constraints, such as those of :class:`.Boolean` and :class:`.Enum`; this stopped working in 0.9.7 due to :ticket:`3067`. fixes #3299
* - Fixed bug in 0.9's foreign key setup system, such thatMike Bayer2015-01-281-0/+16
| | | | | | | | | | | | | | the logic used to link a :class:`.ForeignKey` to its parent could fail when the foreign key used "link_to_name=True" in conjunction with a target :class:`.Table` that would not receive its parent column until later, such as within a reflection + "useexisting" scenario, if the target column in fact had a key value different from its name, as would occur in reflection if column reflect events were used to alter the .key of reflected :class:`.Column` objects so that the link_to_name becomes significant. Also repaired support for column type via FK transmission in a similar way when target columns had a different key and were referenced using link_to_name. fixes #3298
* - fix link to non_primary flagMike Bayer2015-01-272-24/+41
| | | | - rewrite the multiple mappers section
* - additional test adjustments for pypy / psycopg2cffi. ThisMike Bayer2015-01-263-8/+30
| | | | | | | | | | consists mainly of adjusting fixtures to ensure connections are closed explicitly. psycopg2cffi also handles unicode bind parameter names differently than psycopg2, and seems to possibly have a little less control over floating point values at least in one test which is marked as a "fail", though will see if it runs differently on linux than osx.. - changelog for psycopg2cffi, fixes #3052
* Include psycopg2cffi in dialect docsShaun Stanworth2015-01-261-0/+5
|
* - changelog for #3262, fixes #3262Mike Bayer2015-01-261-0/+11
|
* - changelog for pullreq github:150Mike Bayer2015-01-261-0/+8
|
* - Added new user-space accessors for viewing transaction isolationMike Bayer2015-01-201-0/+8
| | | | | | | | | levels; :meth:`.Connection.get_isolation_level`, :attr:`.Connection.default_isolation_level`. - enhance documentation inter-linkage between new accessors, existing isolation_level parameters, as well as in the dialect-level methods which should be fully covered by Engine/Connection level APIs now.
* - enhance detail here regarding the difference betweenMike Bayer2015-01-201-4/+27
| | | | Connection.connection and engine.raw_connection()