From 75bdcd096f12012bf45cffebd597c33b501c2ef2 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Fri, 3 Nov 2017 14:45:18 -0400 Subject: [PATCH] Fix as many RST parse warnings as possible. Still a few I can't get. Also 0.9 is EOL so hide the unreleased notes. Change-Id: If0e44d4a0b3e78e211f32d5c33b51b1a007c9c69 --- doc/build/changelog/changelog_09.rst | 4 +- doc/build/changelog/changelog_11.rst | 9 ++- doc/build/changelog/unreleased_12/4121.rst | 8 +-- lib/sqlalchemy/dialects/mssql/__init__.py | 4 +- lib/sqlalchemy/dialects/postgresql/dml.py | 67 ++++++++++--------- .../dialects/postgresql/psycopg2.py | 14 ++-- lib/sqlalchemy/dialects/sqlite/base.py | 4 +- lib/sqlalchemy/orm/session.py | 20 +++--- lib/sqlalchemy/pool.py | 3 +- 9 files changed, 66 insertions(+), 67 deletions(-) diff --git a/doc/build/changelog/changelog_09.rst b/doc/build/changelog/changelog_09.rst index 159c5acfe9..f1f2901643 100644 --- a/doc/build/changelog/changelog_09.rst +++ b/doc/build/changelog/changelog_09.rst @@ -1,4 +1,3 @@ - ============= 0.9 Changelog ============= @@ -11,7 +10,7 @@ .. include:: changelog_07.rst :start-line: 5 -.. changelog:: +.. _unreleased_changelog:: :version: 0.9.11 .. change:: @@ -2047,7 +2046,6 @@ :ref:`relationship_custom_operator` - .. change:: :tags: bug, sqlite diff --git a/doc/build/changelog/changelog_11.rst b/doc/build/changelog/changelog_11.rst index d2e22acf5b..33e3fca0c9 100644 --- a/doc/build/changelog/changelog_11.rst +++ b/doc/build/changelog/changelog_11.rst @@ -1,5 +1,3 @@ - - ============= 1.1 Changelog ============= @@ -18,6 +16,7 @@ .. include:: changelog_07.rst :start-line: 5 + .. changelog:: :version: 1.1.15 :include_notes_from: unreleased_11 @@ -614,8 +613,8 @@ processing, as normally takes effect to handle both user-defined type level conversions as well as dialect-required conversions, such as those required for JSON datatypes. Additionally, clarified that - the keys in the set_ dictionary should match the "key" of the column, - if distinct from the column name. A warning is emitted + the keys in the ``set_`` dictionary should match the "key" of the + column, if distinct from the column name. A warning is emitted for remaining column names that don't match column keys; for compatibility reasons, these are emitted as they were previously. @@ -658,7 +657,7 @@ :tickets: 3878 Fixed 1.1 regression where "import *" would not work for - sqlalchemy.sql.expression, due to mis-spelled "any_" and "all_" + sqlalchemy.sql.expression, due to mis-spelled ``any_`` and ``all_`` functions. .. change:: 3880 diff --git a/doc/build/changelog/unreleased_12/4121.rst b/doc/build/changelog/unreleased_12/4121.rst index 9256b005e3..b5e27fea7d 100644 --- a/doc/build/changelog/unreleased_12/4121.rst +++ b/doc/build/changelog/unreleased_12/4121.rst @@ -2,10 +2,10 @@ :tags: bug, mssql :tickets: 4121 - Fixed bug where sqltypes.BINARY and sqltypes.VARBINARY datatypes - would not include correct bound-value handlers for pyodbc, - which allows the pyodbc.NullParam value to be passed that - helps with FreeTDS. + Fixed bug where sqltypes.BINARY and sqltypes.VARBINARY datatypes + would not include correct bound-value handlers for pyodbc, + which allows the pyodbc.NullParam value to be passed that + helps with FreeTDS. diff --git a/lib/sqlalchemy/dialects/mssql/__init__.py b/lib/sqlalchemy/dialects/mssql/__init__.py index 7cd5c32bc9..27670ae322 100644 --- a/lib/sqlalchemy/dialects/mssql/__init__.py +++ b/lib/sqlalchemy/dialects/mssql/__init__.py @@ -15,7 +15,7 @@ from sqlalchemy.dialects.mssql.base import \ NCHAR, TEXT, NTEXT, DECIMAL, NUMERIC, FLOAT, DATETIME,\ DATETIME2, DATETIMEOFFSET, DATE, TIME, SMALLDATETIME, \ BINARY, VARBINARY, BIT, REAL, IMAGE, TIMESTAMP, ROWVERSION, \ - MONEY, SMALLMONEY, UNIQUEIDENTIFIER, SQL_VARIANT, dialect + MONEY, SMALLMONEY, UNIQUEIDENTIFIER, SQL_VARIANT, XML, dialect __all__ = ( @@ -23,5 +23,5 @@ __all__ = ( 'NCHAR', 'TEXT', 'NTEXT', 'DECIMAL', 'NUMERIC', 'FLOAT', 'DATETIME', 'DATETIME2', 'DATETIMEOFFSET', 'DATE', 'TIME', 'SMALLDATETIME', 'BINARY', 'VARBINARY', 'BIT', 'REAL', 'IMAGE', 'TIMESTAMP', 'ROWVERSION', - 'MONEY', 'SMALLMONEY', 'UNIQUEIDENTIFIER', 'SQL_VARIANT', 'dialect' + 'MONEY', 'SMALLMONEY', 'UNIQUEIDENTIFIER', 'SQL_VARIANT', 'XML', 'dialect' ) diff --git a/lib/sqlalchemy/dialects/postgresql/dml.py b/lib/sqlalchemy/dialects/postgresql/dml.py index bfdfbfa364..503e290246 100644 --- a/lib/sqlalchemy/dialects/postgresql/dml.py +++ b/lib/sqlalchemy/dialects/postgresql/dml.py @@ -54,40 +54,41 @@ class Insert(StandardInsert): required, but only one of these can be specified. :param constraint: - The name of a unique or exclusion constraint on the table, - or the constraint object itself if it has a .name attribute. + The name of a unique or exclusion constraint on the table, + or the constraint object itself if it has a .name attribute. :param index_elements: - A sequence consisting of string column names, :class:`.Column` - objects, or other column expression objects that will be used - to infer a target index. + A sequence consisting of string column names, :class:`.Column` + objects, or other column expression objects that will be used + to infer a target index. :param index_where: - Additional WHERE criterion that can be used to infer a - conditional target index. + Additional WHERE criterion that can be used to infer a + conditional target index. :param set_: - Required argument. A dictionary or other mapping object - with column names as keys and expressions or literals as values, - specifying the ``SET`` actions to take. - If the target :class:`.Column` specifies a ".key" attribute distinct - from the column name, that key should be used. - - .. warning:: This dictionary does **not** take into account - Python-specified default UPDATE values or generation functions, - e.g. those specified using :paramref:`.Column.onupdate`. - These values will not be exercised for an ON CONFLICT style of - UPDATE, unless they are manually specified in the - :paramref:`.Insert.on_conflict_do_update.set_` dictionary. + Required argument. A dictionary or other mapping object + with column names as keys and expressions or literals as values, + specifying the ``SET`` actions to take. + If the target :class:`.Column` specifies a ".key" attribute distinct + from the column name, that key should be used. + + .. warning:: This dictionary does **not** take into account + Python-specified default UPDATE values or generation functions, + e.g. those specified using :paramref:`.Column.onupdate`. + These values will not be exercised for an ON CONFLICT style of + UPDATE, unless they are manually specified in the + :paramref:`.Insert.on_conflict_do_update.set_` dictionary. :param where: - Optional argument. If present, can be a literal SQL - string or an acceptable expression for a ``WHERE`` clause - that restricts the rows affected by ``DO UPDATE SET``. Rows - not meeting the ``WHERE`` condition will not be updated - (effectively a ``DO NOTHING`` for those rows). + Optional argument. If present, can be a literal SQL + string or an acceptable expression for a ``WHERE`` clause + that restricts the rows affected by ``DO UPDATE SET``. Rows + not meeting the ``WHERE`` condition will not be updated + (effectively a ``DO NOTHING`` for those rows). + + .. versionadded:: 1.1 - .. versionadded:: 1.1 .. seealso:: @@ -109,19 +110,19 @@ class Insert(StandardInsert): are optional, but only one of these can be specified. :param constraint: - The name of a unique or exclusion constraint on the table, - or the constraint object itself if it has a .name attribute. + The name of a unique or exclusion constraint on the table, + or the constraint object itself if it has a .name attribute. :param index_elements: - A sequence consisting of string column names, :class:`.Column` - objects, or other column expression objects that will be used - to infer a target index. + A sequence consisting of string column names, :class:`.Column` + objects, or other column expression objects that will be used + to infer a target index. :param index_where: - Additional WHERE criterion that can be used to infer a - conditional target index. + Additional WHERE criterion that can be used to infer a + conditional target index. - .. versionadded:: 1.1 + .. versionadded:: 1.1 .. seealso:: diff --git a/lib/sqlalchemy/dialects/postgresql/psycopg2.py b/lib/sqlalchemy/dialects/postgresql/psycopg2.py index 8ac39c201a..f538cd98df 100644 --- a/lib/sqlalchemy/dialects/postgresql/psycopg2.py +++ b/lib/sqlalchemy/dialects/postgresql/psycopg2.py @@ -5,12 +5,11 @@ # This module is part of SQLAlchemy and is released under # the MIT License: http://www.opensource.org/licenses/mit-license.php -""" +r""" .. dialect:: postgresql+psycopg2 :name: psycopg2 :dbapi: psycopg2 - :connectstring: postgresql+psycopg2://user:password@host:port/dbname\ -[?key=value&key=value...] + :connectstring: postgresql+psycopg2://user:password@host:port/dbname[?key=value&key=value...] :url: http://pypi.python.org/pypi/psycopg2/ psycopg2 Connect Arguments @@ -31,6 +30,7 @@ psycopg2-specific keyword arguments which are accepted by Note that the :paramref:`.Connection.execution_options.stream_results` execution option is a more targeted way of enabling this mode on a per-execution basis. + * ``use_native_unicode``: Enable the usage of Psycopg2 "native unicode" mode per connection. True by default. @@ -56,7 +56,8 @@ psycopg2-specific keyword arguments which are accepted by * ``use_batch_mode``: This flag allows ``psycopg2.extras.execute_batch`` for ``cursor.executemany()`` calls performed by the :class:`.Engine`. It is currently experimental but - may well become True by default as it is critical for executemany performance. + may well become True by default as it is critical for executemany + performance. .. seealso:: @@ -79,10 +80,9 @@ using ``host`` as an additional keyword argument:: create_engine("postgresql+psycopg2://user:password@/dbname?\ host=/var/lib/postgresql") -See also: +.. seealso:: -`PQconnectdbParams `_ + `PQconnectdbParams `_ .. _psycopg2_execution_options: diff --git a/lib/sqlalchemy/dialects/sqlite/base.py b/lib/sqlalchemy/dialects/sqlite/base.py index d8ce7f394c..a052fce4e4 100644 --- a/lib/sqlalchemy/dialects/sqlite/base.py +++ b/lib/sqlalchemy/dialects/sqlite/base.py @@ -531,8 +531,7 @@ class DATETIME(_DateTimeMixin, sqltypes.DateTime): The default string storage format is:: - "%(year)04d-%(month)02d-%(day)02d %(hour)02d:%(min)02d:\ -%(second)02d.%(microsecond)06d" + "%(year)04d-%(month)02d-%(day)02d %(hour)02d:%(min)02d:%(second)02d.%(microsecond)06d" e.g.:: @@ -558,6 +557,7 @@ class DATETIME(_DateTimeMixin, sqltypes.DateTime): Otherwise, if positional groups are used, the datetime() constructor is called with positional arguments via ``*map(int, match_obj.groups(0))``. + """ _storage_format = ( diff --git a/lib/sqlalchemy/orm/session.py b/lib/sqlalchemy/orm/session.py index 25dae60130..bd0bf91972 100644 --- a/lib/sqlalchemy/orm/session.py +++ b/lib/sqlalchemy/orm/session.py @@ -179,25 +179,25 @@ class SessionTransaction(object): .. seealso:: - :meth:`.Session.rollback` + :meth:`.Session.rollback` - :meth:`.Session.commit` + :meth:`.Session.commit` - :meth:`.Session.begin` + :meth:`.Session.begin` - :meth:`.Session.begin_nested` + :meth:`.Session.begin_nested` - :attr:`.Session.is_active` + :attr:`.Session.is_active` - :meth:`.SessionEvents.after_transaction_create` + :meth:`.SessionEvents.after_transaction_create` - :meth:`.SessionEvents.after_transaction_end` + :meth:`.SessionEvents.after_transaction_end` - :meth:`.SessionEvents.after_commit` + :meth:`.SessionEvents.after_commit` - :meth:`.SessionEvents.after_rollback` + :meth:`.SessionEvents.after_rollback` - :meth:`.SessionEvents.after_soft_rollback` + :meth:`.SessionEvents.after_soft_rollback` """ diff --git a/lib/sqlalchemy/pool.py b/lib/sqlalchemy/pool.py index 13e4183906..ef49ffd600 100644 --- a/lib/sqlalchemy/pool.py +++ b/lib/sqlalchemy/pool.py @@ -226,7 +226,7 @@ class Pool(log.Identified): to the :class:`.Pool`. :param pre_ping: if True, the pool will emit a "ping" (typically - "SELECT 1", but is dialect-specific) on the connection + "SELECT 1", but is dialect-specific) on the connection upon checkout, to test if the connection is alive or not. If not, the connection is transparently re-connected and upon success, all other pooled connections established prior to that timestamp are @@ -234,6 +234,7 @@ class Pool(log.Identified): interpret the disconnection error. .. versionadded:: 1.2 + """ if logging_name: self.logging_name = self._orig_logging_name = logging_name -- 2.47.3