diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2020-04-14 17:04:26 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@bbpush.zzzcomputing.com> | 2020-04-14 17:04:26 +0000 |
| commit | a898ade3bc36ca27cf9475d1348249646eb40e95 (patch) | |
| tree | 0584a61e8c771c06780301c475d81fe80d88cf19 /lib | |
| parent | b289fb032ead703eb131ad1b0d0e0dcba8617ca3 (diff) | |
| parent | b99012d143e0f61bada9c86f524c421fd41c20c2 (diff) | |
| download | sqlalchemy-a898ade3bc36ca27cf9475d1348249646eb40e95.tar.gz | |
Merge "Enable zzzeeksphinx module prefixes"
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/sqlalchemy/dialects/mssql/base.py | 7 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/postgresql/psycopg2.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/sqlite/pysqlite.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/create.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/result.py | 4 | ||||
| -rw-r--r-- | lib/sqlalchemy/ext/associationproxy.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/ext/declarative/api.py | 4 | ||||
| -rw-r--r-- | lib/sqlalchemy/orm/__init__.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/orm/attributes.py | 4 | ||||
| -rw-r--r-- | lib/sqlalchemy/orm/strategy_options.py | 15 | ||||
| -rw-r--r-- | lib/sqlalchemy/sql/dml.py | 63 | ||||
| -rw-r--r-- | lib/sqlalchemy/sql/selectable.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/util/deprecations.py | 3 |
13 files changed, 52 insertions, 60 deletions
diff --git a/lib/sqlalchemy/dialects/mssql/base.py b/lib/sqlalchemy/dialects/mssql/base.py index a7086259b..43f3aeb04 100644 --- a/lib/sqlalchemy/dialects/mssql/base.py +++ b/lib/sqlalchemy/dialects/mssql/base.py @@ -391,9 +391,10 @@ behavior of this flag is as follows: * Complete control over whether the "old" or "new" types are rendered is available in all SQLAlchemy versions by using the UPPERCASE type objects - instead: :class:`.NVARCHAR`, :class:`.VARCHAR`, :class:`.types.VARBINARY`, - :class:`.TEXT`, :class:`.mssql.NTEXT`, :class:`.mssql.IMAGE` will always - remain fixed and always output exactly that type. + instead: :class:`.types.NVARCHAR`, :class:`.types.VARCHAR`, + :class:`.types.VARBINARY`, :class:`.types.TEXT`, :class:`.mssql.NTEXT`, + :class:`.mssql.IMAGE` will always remain fixed and always output exactly that + type. .. versionadded:: 1.0.0 diff --git a/lib/sqlalchemy/dialects/postgresql/psycopg2.py b/lib/sqlalchemy/dialects/postgresql/psycopg2.py index cf521f06f..89a63fd47 100644 --- a/lib/sqlalchemy/dialects/postgresql/psycopg2.py +++ b/lib/sqlalchemy/dialects/postgresql/psycopg2.py @@ -140,6 +140,8 @@ The following DBAPI-specific options are respected when used with .. versionchanged:: 1.4 The ``max_row_buffer`` size can now be greater than 1000, and the buffer will grow to that size. +.. _psycopg2_batch_mode: + .. _psycopg2_executemany_mode: Psycopg2 Fast Execution Helpers diff --git a/lib/sqlalchemy/dialects/sqlite/pysqlite.py b/lib/sqlalchemy/dialects/sqlite/pysqlite.py index 807f9488d..72bbd0177 100644 --- a/lib/sqlalchemy/dialects/sqlite/pysqlite.py +++ b/lib/sqlalchemy/dialects/sqlite/pysqlite.py @@ -325,7 +325,7 @@ ourselves. This is achieved using two event listeners:: conn.exec_driver_sql("BEGIN") .. warning:: When using the above recipe, it is advised to not use the - :paramref:`.execution_options.isolation_level` setting on + :paramref:`.Connection.execution_options.isolation_level` setting on :class:`.Connection` and :func:`.create_engine` with the SQLite driver, as this function necessarily will also alter the ".isolation_level" setting. diff --git a/lib/sqlalchemy/engine/create.py b/lib/sqlalchemy/engine/create.py index 3d50b0828..2831f5e7d 100644 --- a/lib/sqlalchemy/engine/create.py +++ b/lib/sqlalchemy/engine/create.py @@ -610,7 +610,7 @@ def engine_from_config(configuration, prefix="sqlalchemy.", **kwargs): :param configuration: A dictionary (typically produced from a config file, but this is not a requirement). Items whose keys start with the value of 'prefix' will have that prefix stripped, and will then be passed to - :ref:`create_engine`. + :func:`.create_engine`. :param prefix: Prefix to match and then strip from keys in 'configuration'. diff --git a/lib/sqlalchemy/engine/result.py b/lib/sqlalchemy/engine/result.py index ba998aff0..be44f67e7 100644 --- a/lib/sqlalchemy/engine/result.py +++ b/lib/sqlalchemy/engine/result.py @@ -1551,7 +1551,7 @@ class ResultProxy(BaseResult): yield row def close(self): - """Close this ResultProxy. + """Close this :class:`.ResultProxy`. This closes out the underlying DBAPI cursor corresponding to the statement execution, if one is still present. Note that the @@ -1567,7 +1567,7 @@ class ResultProxy(BaseResult): .. deprecated:: 2.0 "connectionless" execution is deprecated and will be removed in version 2.0. Version 2.0 will feature the - :class:`.Result` object that will no longer affect the status + :class:`.future.Result` object that will no longer affect the status of the originating connection in any case. After this method is called, it is no longer valid to call upon diff --git a/lib/sqlalchemy/ext/associationproxy.py b/lib/sqlalchemy/ext/associationproxy.py index f00b642db..599bf966d 100644 --- a/lib/sqlalchemy/ext/associationproxy.py +++ b/lib/sqlalchemy/ext/associationproxy.py @@ -81,7 +81,7 @@ def association_proxy(target_collection, attr, **kw): ASSOCIATION_PROXY = util.symbol("ASSOCIATION_PROXY") -"""Symbol indicating an :class:`InspectionAttr` that's +"""Symbol indicating an :class:`.InspectionAttr` that's of type :class:`.AssociationProxy`. Is assigned to the :attr:`.InspectionAttr.extension_type` diff --git a/lib/sqlalchemy/ext/declarative/api.py b/lib/sqlalchemy/ext/declarative/api.py index b1574339d..825c1d3f3 100644 --- a/lib/sqlalchemy/ext/declarative/api.py +++ b/lib/sqlalchemy/ext/declarative/api.py @@ -442,8 +442,6 @@ class ConcreteBase(object): :ref:`concrete_inheritance` - :ref:`inheritance_concrete_helpers` - """ @@ -582,8 +580,6 @@ class AbstractConcreteBase(ConcreteBase): :ref:`concrete_inheritance` - :ref:`inheritance_concrete_helpers` - """ __no_table__ = True diff --git a/lib/sqlalchemy/orm/__init__.py b/lib/sqlalchemy/orm/__init__.py index 029a28c68..53118c573 100644 --- a/lib/sqlalchemy/orm/__init__.py +++ b/lib/sqlalchemy/orm/__init__.py @@ -239,7 +239,7 @@ defaultload = strategy_options.defaultload._unbound_fn selectin_polymorphic = strategy_options.selectin_polymorphic._unbound_fn -@_sa_util.deprecated_20("relation", "Please use :func:`joinedload`.") +@_sa_util.deprecated_20("eagerload", "Please use :func:`_orm.joinedload`.") def eagerload(*args, **kwargs): """A synonym for :func:`joinedload()`.""" return joinedload(*args, **kwargs) diff --git a/lib/sqlalchemy/orm/attributes.py b/lib/sqlalchemy/orm/attributes.py index 2bacb25b0..82979b188 100644 --- a/lib/sqlalchemy/orm/attributes.py +++ b/lib/sqlalchemy/orm/attributes.py @@ -446,10 +446,10 @@ class Event(object): .. versionadded:: 0.9.0 - :var impl: The :class:`.AttributeImpl` which is the current event + :attribute impl: The :class:`.AttributeImpl` which is the current event initiator. - :var op: The symbol :attr:`.OP_APPEND`, :attr:`.OP_REMOVE`, + :attribute op: The symbol :attr:`.OP_APPEND`, :attr:`.OP_REMOVE`, :attr:`.OP_REPLACE`, or :attr:`.OP_BULK_REPLACE`, indicating the source operation. diff --git a/lib/sqlalchemy/orm/strategy_options.py b/lib/sqlalchemy/orm/strategy_options.py index 1fe51514e..6475f79de 100644 --- a/lib/sqlalchemy/orm/strategy_options.py +++ b/lib/sqlalchemy/orm/strategy_options.py @@ -982,9 +982,9 @@ class loader_option(object): self._unbound_fn = fn fn_doc = self.fn.__doc__ self.fn.__doc__ = """Produce a new :class:`.Load` object with the -:func:`.orm.%(name)s` option applied. +:func:`_orm.%(name)s` option applied. -See :func:`.orm.%(name)s` for usage examples. +See :func:`_orm.%(name)s` for usage examples. """ % { "name": self.name @@ -994,13 +994,14 @@ See :func:`.orm.%(name)s` for usage examples. return self def _add_unbound_all_fn(self, fn): - fn.__doc__ = """Produce a standalone "all" option for :func:`.orm.%(name)s`. + fn.__doc__ = """Produce a standalone "all" option for +:func:`_orm.%(name)s`. .. deprecated:: 0.9 - The :func:`.%(name)s_all` function is deprecated, and will be removed - in a future release. Please use method chaining with :func:`.%(name)s` - instead, as in:: + The :func:`_orm.%(name)s_all` function is deprecated, and will be removed + in a future release. Please use method chaining with + :func:`_orm.%(name)s` instead, as in:: session.query(MyClass).options( %(name)s("someattribute").%(name)s("anotherattribute") @@ -1751,7 +1752,7 @@ def selectin_polymorphic(loadopt, classes): .. seealso:: - :ref:`inheritance_polymorphic_load` + :ref:`polymorphic_selectin` """ loadopt.set_class_strategy( diff --git a/lib/sqlalchemy/sql/dml.py b/lib/sqlalchemy/sql/dml.py index cbcf54d1c..1ac3acd8a 100644 --- a/lib/sqlalchemy/sql/dml.py +++ b/lib/sqlalchemy/sql/dml.py @@ -200,47 +200,47 @@ class UpdateBase( param_to_method_lookup = dict( whereclause=( - "The :paramref:`.%(func)s.whereclause` parameter " + "The :paramref:`%(func)s.whereclause` parameter " "will be removed " "in SQLAlchemy 2.0. Please refer to the " ":meth:`.%(classname)s.where` method." ), values=( - "The :paramref:`.%(func)s.values` parameter will be removed " + "The :paramref:`%(func)s.values` parameter will be removed " "in SQLAlchemy 2.0. Please refer to the " - ":meth:`.%(classname)s.values` method." + ":meth:`%(classname)s.values` method." ), bind=( - "The :paramref:`.%(func)s.bind` parameter will be removed in " + "The :paramref:`%(func)s.bind` parameter will be removed in " "SQLAlchemy 2.0. Please use explicit connection execution." ), inline=( - "The :paramref:`.%(func)s.inline` parameter will be " + "The :paramref:`%(func)s.inline` parameter will be " "removed in " "SQLAlchemy 2.0. Please use the " - ":meth:`.%(classname)s.inline` method." + ":meth:`%(classname)s.inline` method." ), prefixes=( - "The :paramref:`.%(func)s.prefixes parameter will be " + "The :paramref:`%(func)s.prefixes parameter will be " "removed in " "SQLAlchemy 2.0. Please use the " - ":meth:`.%(classname)s.prefix_with` " + ":meth:`%(classname)s.prefix_with` " "method." ), return_defaults=( - "The :paramref:`.%(func)s.return_defaults` parameter will be " + "The :paramref:`%(func)s.return_defaults` parameter will be " "removed in SQLAlchemy 2.0. Please use the " - ":meth:`.%(classname)s.return_defaults` method." + ":meth:`%(classname)s.return_defaults` method." ), returning=( - "The :paramref:`.%(func)s.returning` parameter will be " + "The :paramref:`%(func)s.returning` parameter will be " "removed in SQLAlchemy 2.0. Please use the " - ":meth:`.%(classname)s.returning`` method." + ":meth:`%(classname)s.returning`` method." ), preserve_parameter_order=( "The :paramref:`%(func)s.preserve_parameter_order` parameter " "will be removed in SQLAlchemy 2.0. Use the " - ":meth:`.%(classname)s.ordered_values` method with a list " + ":meth:`%(classname)s.ordered_values` method with a list " "of tuples. " ), ) @@ -250,7 +250,10 @@ class UpdateBase( name: ( "2.0", param_to_method_lookup[name] - % {"func": fn_name, "classname": clsname}, + % { + "func": "_expression.%s" % fn_name, + "classname": "_expression.%s" % clsname, + }, ) for name in names } @@ -546,25 +549,13 @@ class ValuesBase(UpdateBase): callable is invoked for each row. See :ref:`bug_3288` for other details. - The :class:`.Update` construct supports a special form which is a - list of 2-tuples, which when provided must be passed in conjunction - with the - :paramref:`~sqlalchemy.sql.expression.update.preserve_parameter_order` - parameter. - This form causes the UPDATE statement to render the SET clauses - using the order of parameters given to :meth:`.Update.values`, rather - than the ordering of columns given in the :class:`.Table`. - - .. versionadded:: 1.0.10 - added support for parameter-ordered - UPDATE statements via the - :paramref:`~sqlalchemy.sql.expression.update.preserve_parameter_order` - flag. + The UPDATE construct also supports rendering the SET parameters + in a specific order. For this feature refer to the + :meth:`.Update.ordered_values` method. .. seealso:: - :ref:`updates_order_parameters` - full example of the - :paramref:`~sqlalchemy.sql.expression.update.preserve_parameter_order` - flag + :meth:`.Update.ordered_values` .. seealso:: @@ -1064,8 +1055,8 @@ class Update(DMLWhereBase, ValuesBase): .. seealso:: - :ref:`updates_order_parameters` - full example of the - :paramref:`~.update.preserve_parameter_order` flag + :ref:`updates_order_parameters` - illustrates the + :meth:`.Update.ordered_values` method. If both ``values`` and compile-time bind parameters are present, the compile-time bind parameters override the information specified @@ -1089,7 +1080,8 @@ class Update(DMLWhereBase, ValuesBase): etc. when combining :func:`~.sql.expression.select` constructs within the - values clause of an :func:`.update` construct, the subquery represented + values clause of an :func:`.update` + construct, the subquery represented by the :func:`~.sql.expression.select` should be *correlated* to the parent table, that is, providing criterion which links the table inside the subquery to the outer table being updated:: @@ -1135,8 +1127,7 @@ class Update(DMLWhereBase, ValuesBase): .. seealso:: :ref:`updates_order_parameters` - full example of the - :paramref:`~sqlalchemy.sql.expression.update.preserve_parameter_order` - flag + :meth:`.Update.ordered_values` method. .. versionchanged:: 1.4 The :meth:`.Update.ordered_values` method supersedes the :paramref:`.update.preserve_parameter_order` @@ -1219,7 +1210,7 @@ class Delete(DMLWhereBase, UpdateBase): prefixes=None, **dialect_kw ): - """Construct :class:`.Delete` object. + r"""Construct :class:`.Delete` object. Similar functionality is available via the :meth:`~.TableClause.delete` method on diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py index 9c593ea5d..08a237636 100644 --- a/lib/sqlalchemy/sql/selectable.py +++ b/lib/sqlalchemy/sql/selectable.py @@ -3424,7 +3424,7 @@ class Select( All arguments which accept :class:`.ClauseElement` arguments also accept string arguments, which will be converted as appropriate into - either :func:`text()` or :func:`literal_column()` constructs. + either :func:`.text()` or :func:`.literal_column()` constructs. .. seealso:: diff --git a/lib/sqlalchemy/util/deprecations.py b/lib/sqlalchemy/util/deprecations.py index 4bc37bf04..ad734a1c3 100644 --- a/lib/sqlalchemy/util/deprecations.py +++ b/lib/sqlalchemy/util/deprecations.py @@ -21,6 +21,7 @@ from .. import exc def _warn_with_version(msg, version, type_, stacklevel): warn = type_(msg) warn.deprecated_since = version + warnings.warn(warn, stacklevel=stacklevel + 1) @@ -219,7 +220,7 @@ def _sanitize_restructured_text(text): return name text = re.sub(r":ref:`(.+) <.*>`", lambda m: '"%s"' % m.group(1), text) - return re.sub(r"\:(\w+)\:`~?\.?(.+?)`", repl, text) + return re.sub(r"\:(\w+)\:`~?(?:_\w+)?\.?(.+?)`", repl, text) def _decorate_cls_with_warning( |
