]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
Remove old versionadded and versionchanged
authorFederico Caselli <cfederico87@gmail.com>
Wed, 12 Apr 2023 21:17:38 +0000 (23:17 +0200)
committerFederico Caselli <cfederico87@gmail.com>
Wed, 12 Apr 2023 21:17:38 +0000 (23:17 +0200)
Removed versionadded and versionchanged for version prior to 1.2 since they
are no longer useful.

Change-Id: I5c53d1188bc5fec3ab4be39ef761650ed8fa6d3e

63 files changed:
doc/build/core/connections.rst
doc/build/core/constraints.rst
doc/build/core/event.rst
doc/build/orm/declarative_config.rst
doc/build/orm/join_conditions.rst
doc/build/orm/persistence_techniques.rst
doc/build/orm/session_events.rst
doc/build/orm/session_state_management.rst
doc/build/orm/versioning.rst
examples/generic_associations/generic_fk.py
lib/sqlalchemy/dialects/mssql/base.py
lib/sqlalchemy/dialects/mysql/base.py
lib/sqlalchemy/dialects/mysql/enumerated.py
lib/sqlalchemy/dialects/mysql/json.py
lib/sqlalchemy/dialects/oracle/base.py
lib/sqlalchemy/dialects/oracle/types.py
lib/sqlalchemy/dialects/postgresql/array.py
lib/sqlalchemy/dialects/postgresql/base.py
lib/sqlalchemy/dialects/postgresql/dml.py
lib/sqlalchemy/dialects/postgresql/ext.py
lib/sqlalchemy/dialects/postgresql/hstore.py
lib/sqlalchemy/dialects/postgresql/json.py
lib/sqlalchemy/dialects/postgresql/named_types.py
lib/sqlalchemy/dialects/postgresql/psycopg2cffi.py
lib/sqlalchemy/dialects/postgresql/types.py
lib/sqlalchemy/dialects/sqlite/base.py
lib/sqlalchemy/engine/base.py
lib/sqlalchemy/engine/cursor.py
lib/sqlalchemy/engine/events.py
lib/sqlalchemy/engine/interfaces.py
lib/sqlalchemy/engine/reflection.py
lib/sqlalchemy/event/api.py
lib/sqlalchemy/exc.py
lib/sqlalchemy/ext/asyncio/engine.py
lib/sqlalchemy/ext/automap.py
lib/sqlalchemy/ext/baked.py
lib/sqlalchemy/ext/indexable.py
lib/sqlalchemy/ext/mutable.py
lib/sqlalchemy/orm/_orm_constructors.py
lib/sqlalchemy/orm/base.py
lib/sqlalchemy/orm/events.py
lib/sqlalchemy/orm/interfaces.py
lib/sqlalchemy/orm/mapper.py
lib/sqlalchemy/orm/query.py
lib/sqlalchemy/orm/scoping.py
lib/sqlalchemy/orm/session.py
lib/sqlalchemy/orm/state.py
lib/sqlalchemy/orm/strategy_options.py
lib/sqlalchemy/pool/base.py
lib/sqlalchemy/pool/events.py
lib/sqlalchemy/sql/_elements_constructors.py
lib/sqlalchemy/sql/_selectable_constructors.py
lib/sqlalchemy/sql/base.py
lib/sqlalchemy/sql/compiler.py
lib/sqlalchemy/sql/ddl.py
lib/sqlalchemy/sql/dml.py
lib/sqlalchemy/sql/elements.py
lib/sqlalchemy/sql/functions.py
lib/sqlalchemy/sql/operators.py
lib/sqlalchemy/sql/schema.py
lib/sqlalchemy/sql/selectable.py
lib/sqlalchemy/sql/sqltypes.py
lib/sqlalchemy/sql/type_api.py

index 726b5a501d56b1b538f540139feaca46b8579f00..dc81750cd37c6b0b018de236abac6a90252b2690 100644 (file)
@@ -855,9 +855,6 @@ as the schema name is passed to these methods explicitly.
     configurations, the :ref:`horizontal_sharding_toplevel` extension may
     be used.  See the example at :ref:`examples_sharding`.
 
-
-.. versionadded:: 1.1
-
 .. _sql_caching:
 
 
index 3b05b8c12df0caa4b9e9319338bf605d8fdeb51d..1efccdce5a4c685445c7343055e9eec72083fa8d 100644 (file)
@@ -259,18 +259,6 @@ like the following is generated:
     sqlalchemy.exc.CompileError: Can't emit DROP CONSTRAINT for constraint
     ForeignKeyConstraint(...); it has no name
 
-.. versionchanged:: 1.0.0 - The DDL system invoked by
-   :meth:`_schema.MetaData.create_all`
-   and :meth:`_schema.MetaData.drop_all` will now automatically resolve mutually
-   dependent foreign keys between tables declared by
-   :class:`_schema.ForeignKeyConstraint` and :class:`_schema.ForeignKey` objects, without
-   the need to explicitly set the :paramref:`_schema.ForeignKeyConstraint.use_alter`
-   flag.
-
-.. versionchanged:: 1.0.0 - The :paramref:`_schema.ForeignKeyConstraint.use_alter`
-   flag can be used with an un-named constraint; only the DROP operation
-   will emit a specific error when actually called upon.
-
 .. seealso::
 
     :ref:`constraint_naming_conventions`
@@ -730,9 +718,6 @@ one column present, the scan does use a deterministic search, however the
 structure of the expression will determine which column is noted as
 "column zero".
 
-.. versionadded:: 1.0.0 The :class:`.CheckConstraint` object now supports
-   the ``column_0_name`` naming convention token.
-
 .. _naming_schematypes:
 
 Configuring Naming for Boolean, Enum, and other schema types
@@ -790,9 +775,6 @@ The above schema will produce:
         CONSTRAINT ck_foo_flag CHECK (flag IN (0, 1))
     )
 
-.. versionchanged:: 1.0 Constraint naming conventions that don't include
-   ``%(constraint_name)s`` again work with :class:`.SchemaType` constraints.
-
 Constraints API
 ---------------
 
index 3347b1336ce4b3591bd63f6d705130277e7476fc..427da8fb15b5b86ee3485c098a759852b748f6af 100644 (file)
@@ -81,9 +81,6 @@ as long as the names match up::
 Above, the presence of ``**kw`` tells :func:`.listens_for` that
 arguments should be passed to the function by name, rather than positionally.
 
-.. versionadded:: 0.9.0 Added optional ``named`` argument dispatch to
-   event calling.
-
 Targets
 -------
 
index 71acefe527bdef6780c278ff940253a4e753d75a..873f16aff35d14bae28f86a02d3ae14d0fa0d944 100644 (file)
@@ -338,9 +338,6 @@ configuration via the :meth:`.MapperEvents.before_configured` event::
             """ """
             # do something before mappings are configured
 
-.. versionadded:: 0.9.3
-
-
 .. _declarative_metadata:
 
 ``metadata``
index f895654450e4ad9bf75475fcf5bbd6045735de41..79c3e98adf7e68ed605b8ea88a1f32890ed84063 100644 (file)
@@ -483,11 +483,6 @@ annotating with :func:`_orm.foreign`::
             "Writer.magazine_id == Article.magazine_id)",
         )
 
-.. versionchanged:: 1.0.0 the ORM will attempt to warn when a column is used
-   as the synchronization target from more than one relationship
-   simultaneously.
-
-
 Non-relational Comparisons / Materialized Path
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
@@ -527,11 +522,6 @@ we seek for a load of ``Element.descendants`` to look like:
     FROM element
     WHERE element.path LIKE ('/foo/bar2' || '/%') ORDER BY element.path
 
-.. versionadded:: 0.9.5 Support has been added to allow a single-column
-   comparison to itself within a primaryjoin condition, as well as for
-   primaryjoin conditions that use :meth:`.ColumnOperators.like` as the comparison
-   operator.
-
 .. _self_referential_many_to_many:
 
 Self-Referential Many-to-Many Relationship
index 0a68befb3bf0f2deedde14c69d3b32d56636b469..dca6cefffd8455ff4a9dd20e61dcf099032d3b77 100644 (file)
@@ -243,9 +243,6 @@ value and pass it through, rather than omitting it as a "missing" value::
   signal to the ORM that we'd like ``None`` to be passed into the type whenever
   present, even though no special type-level behaviors are assigned to it.
 
-.. versionadded:: 1.1 added the :meth:`.TypeEngine.evaluates_none` method
-   in order to indicate that a "None" value should be treated as significant.
-
 .. _orm_server_defaults:
 
 Fetching Server-Generated Defaults
index 6223b53f64bcf3c9e74dcbce0636b676f0b03e40..f61421ea920de44ff14ca23865d7f1db3835a22c 100644 (file)
@@ -410,9 +410,6 @@ Object Lifecycle Events
 Another use case for events is to track the lifecycle of objects.  This
 refers to the states first introduced at :ref:`session_object_states`.
 
-.. versionadded:: 1.1 added a system of events that intercept all possible
-   state transitions of an object within the :class:`.Session`.
-
 All the states above can be tracked fully with events.   Each event
 represents a distinct state transition, meaning, the starting state
 and the destination state are both part of what are tracked.   With the
index 26a51cfb2d0bbafa2537ca1724bd2cf94a316131..3538bdc224264996daf83f92278d1a533e33d21c 100644 (file)
@@ -30,9 +30,6 @@ It's helpful to know the states which an instance can have within a session:
   the session's transaction is rolled back, a deleted object moves
   *back* to the persistent state.
 
-  .. versionchanged:: 1.1 The 'deleted' state is a newly added session
-     object state distinct from the 'persistent' state.
-
 * **Detached** - an instance which corresponds, or previously corresponded,
   to a record in the database, but is not currently in any session.
   The detached object will contain a database identity marker, however
index abbe149378aaa322c84ca9db83e7e3d48a79f6e9..87865917cdf46861063c0375936482aacd8f54ea 100644 (file)
@@ -209,9 +209,6 @@ It is *strongly recommended* that server side version counters only be used
 when absolutely necessary and only on backends that support :term:`RETURNING`,
 currently PostgreSQL, Oracle, MariaDB 10.5, SQLite 3.35, and SQL Server.
 
-.. versionadded:: 0.9.0
-
-    Support for server side version identifier tracking.
 
 Programmatic or Conditional Version Counters
 --------------------------------------------
@@ -255,8 +252,3 @@ issues::
     # will leave version_uuid unchanged
     u1.name = "u3"
     session.commit()
-
-.. versionadded:: 0.9.0
-
-    Support for programmatic and conditional version identifier tracking.
-
index 1cd0404e9fbf04a979969399c9eaf852e2855158..5c70f93aac525f007049d9b4fef98f76aafa8657 100644 (file)
@@ -16,8 +16,6 @@ high demand, so in the interests of having an easy StackOverflow answer
 queued up, here it is.   The author recommends "table_per_related"
 or "table_per_association" instead of this approach.
 
-.. versionadded:: 0.8.3
-
 """
 from sqlalchemy import and_
 from sqlalchemy import Column
index a77cced7e07664f828fdd9ca1ab79535d13143ab..f32665792ddf48cc161a20236554b6dda750a30e 100644 (file)
@@ -632,8 +632,6 @@ behavior of this flag is as follows:
   will always remain fixed and always output exactly that
   type.
 
-.. versionadded:: 1.0.0
-
 .. _multipart_schema_names:
 
 Multipart Schema Names
@@ -726,10 +724,6 @@ no purpose; however in the case that legacy applications rely upon it,
 it is available using the ``legacy_schema_aliasing`` argument to
 :func:`_sa.create_engine` as illustrated above.
 
-.. versionchanged:: 1.1 the ``legacy_schema_aliasing`` flag introduced
-   in version 1.0.5 to allow disabling of legacy mode for schemas now
-   defaults to False.
-
 .. deprecated:: 1.4
 
    The ``legacy_schema_aliasing`` flag is now
@@ -784,12 +778,6 @@ which will render the table, for example, as::
   CREATE TABLE my_table (x INTEGER NOT NULL, y INTEGER NOT NULL,
                          PRIMARY KEY NONCLUSTERED (x, y))
 
-.. versionchanged:: 1.1 the ``mssql_clustered`` option now defaults
-   to None, rather than False.  ``mssql_clustered=False`` now explicitly
-   renders the NONCLUSTERED clause, whereas None omits the CLUSTERED
-   clause entirely, allowing SQL Server defaults to take effect.
-
-
 MSSQL-Specific Index Options
 -----------------------------
 
@@ -1405,8 +1393,6 @@ class VARBINARY(sqltypes.VARBINARY, sqltypes.LargeBinary):
     either ``VARBINARY(max)`` or IMAGE is rendered, as well as the SQL
     Server ``FILESTREAM`` option.
 
-    .. versionadded:: 1.0.0
-
     .. seealso::
 
         :ref:`mssql_large_type_deprecation`
@@ -1451,8 +1437,6 @@ class XML(sqltypes.Text):
     additional arguments, such as "CONTENT", "DOCUMENT",
     "xml_schema_collection".
 
-    .. versionadded:: 1.1.11
-
     """
 
     __visit_name__ = "XML"
index 387b0141c455d2dbb12e82ff831f6d120dc5d052..b5a5b2ca4fa26073801e3b2ae5ce86c79d4e11f7 100644 (file)
@@ -719,8 +719,6 @@ The value passed to the keyword argument will be simply passed through to the
 underlying CREATE INDEX, so it *must* be a valid index prefix for your MySQL
 storage engine.
 
-.. versionadded:: 1.1.5
-
 .. seealso::
 
     `CREATE INDEX <https://dev.mysql.com/doc/refman/5.0/en/create-index.html>`_ - MySQL documentation
@@ -1000,11 +998,6 @@ output::
         d TIMESTAMP NOT NULL
     )
 
-.. versionchanged:: 1.0.0 - SQLAlchemy now renders NULL or NOT NULL in all
-   cases for TIMESTAMP columns, to accommodate
-   ``explicit_defaults_for_timestamp``.  Prior to this version, it will
-   not render "NOT NULL" for a TIMESTAMP column that is ``nullable=False``.
-
 """  # noqa
 
 from array import array as _array
index 70a2ee0025d6aee7718ff04305baf84abf659d98..2e1d3c3da9fa7a44e5c348a254d13787436d14b3 100644 (file)
@@ -142,8 +142,6 @@ class SET(_StringType):
             essential that the list of set values is expressed in the
             **exact same order** as exists on the MySQL database.
 
-          .. versionadded:: 1.0.0
-
         """
         self.retrieve_as_bitwise = kw.pop("retrieve_as_bitwise", False)
         self.values = tuple(values)
index 7ad9c95ef9eed641b0b0046261c2fe56a8d97da2..66fcb714d540e75008345cf07a79e289642954b4 100644 (file)
@@ -28,8 +28,6 @@ class JSON(sqltypes.JSON):
     datatype, by adapting the operations to render the ``JSON_EXTRACT``
     function at the database level.
 
-    .. versionadded:: 1.1
-
     """
 
     pass
index 16990c751dc02cf3be9ffc7ccffc148bd17b1704..08ab35bea109c45ef5e7aa6316b12c32a293f7ba 100644 (file)
@@ -453,8 +453,6 @@ the ``exclude_tablespaces`` parameter::
       "oracle+cx_oracle://scott:tiger@xe",
       exclude_tablespaces=["SYSAUX", "SOME_TABLESPACE"])
 
-.. versionadded:: 1.1
-
 DateTime Compatibility
 ----------------------
 
@@ -466,13 +464,6 @@ present as a "marker" for this type; additionally, when a database column
 is reflected and the type is reported as ``DATE``, the time-supporting
 :class:`_oracle.DATE` type is used.
 
-.. versionchanged:: 0.9.4 Added :class:`_oracle.DATE` to subclass
-   :class:`.DateTime`.  This is a change as previous versions
-   would reflect a ``DATE`` column as :class:`_types.DATE`, which subclasses
-   :class:`.Date`.   The only significance here is for schemes that are
-   examining the type of column for use in special Python translations or
-   for migrating schemas to other database backends.
-
 .. _oracle_table_options:
 
 Oracle Table Options
@@ -488,8 +479,6 @@ in conjunction with the :class:`_schema.Table` construct:
         "some_table", metadata, ...,
         prefixes=['GLOBAL TEMPORARY'], oracle_on_commit='PRESERVE ROWS')
 
-.. versionadded:: 1.0.0
-
 * ``COMPRESS``::
 
     Table('mytable', metadata, Column('data', String(32)),
@@ -501,8 +490,6 @@ in conjunction with the :class:`_schema.Table` construct:
    The ``oracle_compress`` parameter accepts either an integer compression
    level, or ``True`` to use the default compression level.
 
-.. versionadded:: 1.0.0
-
 .. _oracle_index_options:
 
 Oracle Specific Index Options
@@ -519,8 +506,6 @@ instead of a B-tree index::
 Bitmap indexes cannot be unique and cannot be compressed. SQLAlchemy will not
 check for such limitations, only the database will.
 
-.. versionadded:: 1.0.0
-
 Index compression
 ~~~~~~~~~~~~~~~~~
 
@@ -537,8 +522,6 @@ The ``oracle_compress`` parameter accepts either an integer specifying the
 number of prefix columns to compress, or ``True`` to use the default (all
 columns for non-unique indexes, all but the last column for unique indexes).
 
-.. versionadded:: 1.0.0
-
 """  # noqa
 
 from __future__ import annotations
index db3d57228ae15fabadd62190c896a7a398f9a640..1c252ab897b85bc6de5b495535d7c9d5090c4712 100644 (file)
@@ -160,8 +160,6 @@ class DATE(_OracleDateLiteralRender, sqltypes.DateTime):
     :class:`_types.DateTime`; this is to suit the fact that the Oracle
     ``DATE`` type supports a time value.
 
-    .. versionadded:: 0.9.4
-
     """
 
     __visit_name__ = "DATE"
index 5b53916c61e83009014c3d3f331d6501fea42275..ba53bf665ab521facb22e318a7d37fb570097026 100644 (file)
@@ -163,12 +163,8 @@ OVERLAP = operators.custom_op("&&", precedence=5, is_comparison=True)
 
 
 class ARRAY(sqltypes.ARRAY):
-
     """PostgreSQL ARRAY type.
 
-    .. versionchanged:: 1.1 The :class:`_postgresql.ARRAY` type is now
-       a subclass of the core :class:`_types.ARRAY` type.
-
     The :class:`_postgresql.ARRAY` type is constructed in the same way
     as the core :class:`_types.ARRAY` type; a member type is required, and a
     number of dimensions is recommended if the type is to be used for more
@@ -308,9 +304,6 @@ class ARRAY(sqltypes.ARRAY):
          a value of one will be added to all index values before passing
          to the database.
 
-         .. versionadded:: 0.9.5
-
-
         """
         if isinstance(item_type, ARRAY):
             raise ValueError(
index 4d299b9183d38063a8f7b2a8df5fb8be20b8a043..1ce5600e1b33b0e138e2a50569b8f324c2216eec 100644 (file)
@@ -551,8 +551,6 @@ and :meth:`~.postgresql.Insert.on_conflict_do_nothing`:
     {printsql}INSERT INTO my_table (id, data) VALUES (%(id)s, %(data)s)
     ON CONFLICT ON CONSTRAINT pk_my_table DO UPDATE SET data = %(param_1)s
 
-.. versionadded:: 1.1
-
 .. seealso::
 
     `INSERT .. ON CONFLICT
@@ -1021,16 +1019,12 @@ keyword argument::
 
     Index('my_index', my_table.c.data, postgresql_with={"fillfactor": 50})
 
-.. versionadded:: 1.0.6
-
 PostgreSQL allows to define the tablespace in which to create the index.
 The tablespace can be specified on :class:`.Index` using the
 ``postgresql_tablespace`` keyword argument::
 
     Index('my_index', my_table.c.data, postgresql_tablespace='my_tablespace')
 
-.. versionadded:: 1.1
-
 Note that the same option is available on :class:`_schema.Table` as well.
 
 .. _postgresql_index_concurrently:
@@ -1055,11 +1049,6 @@ a connection-less dialect, it will emit::
 
     DROP INDEX CONCURRENTLY test_idx1
 
-.. versionadded:: 1.1 support for CONCURRENTLY on DROP INDEX.  The
-   CONCURRENTLY keyword is now only emitted if a high enough version
-   of PostgreSQL is detected on the connection (or for a connection-less
-   dialect).
-
 When using CONCURRENTLY, the PostgreSQL database requires that the statement
 be invoked outside of a transaction block.   The Python DBAPI enforces that
 even for a single statement, a transaction is present, so to use this
@@ -1098,14 +1087,6 @@ in :attr:`_schema.Table.indexes` when it is detected as mirroring a
 :class:`.UniqueConstraint` in the :attr:`_schema.Table.constraints` collection
 .
 
-.. versionchanged:: 1.0.0 - :class:`_schema.Table` reflection now includes
-   :class:`.UniqueConstraint` objects present in the
-   :attr:`_schema.Table.constraints`
-   collection; the PostgreSQL backend will no longer include a "mirrored"
-   :class:`.Index` construct in :attr:`_schema.Table.indexes`
-   if it is detected
-   as corresponding to a unique constraint.
-
 Special Reflection Options
 --------------------------
 
@@ -1155,8 +1136,6 @@ dialect in conjunction with the :class:`_schema.Table` construct:
 
     Table("some_table", metadata, ..., postgresql_inherits=("t1", "t2", ...))
 
-    .. versionadded:: 1.0.0
-
 * ``PARTITION BY``::
 
     Table("some_table", metadata, ...,
@@ -2785,8 +2764,6 @@ class PGInspector(reflection.Inspector):
          (typically 'public') is used.  May also be set to ``'*'`` to
          indicate load enums for all schemas.
 
-        .. versionadded:: 1.0.0
-
         """
         with self._operation_context() as conn:
             return self.dialect._load_enums(
@@ -2803,8 +2780,6 @@ class PGInspector(reflection.Inspector):
         except that the list is limited to those tables that report a
         ``relkind`` value of ``f``.
 
-        .. versionadded:: 1.0.0
-
         """
         with self._operation_context() as conn:
             return self.dialect._get_foreign_table_names(
index a1807d7b31e64437c1b17d9af5e645f0b7b2763f..e17b87d1e73c81d9d34d13ecc23ad8319ad6679d 100644 (file)
@@ -51,8 +51,6 @@ class Insert(StandardInsert):
     The :class:`_postgresql.Insert` object is created using the
     :func:`sqlalchemy.dialects.postgresql.insert` function.
 
-    .. versionadded:: 1.1
-
     """
 
     stringify_dialect = "postgresql"
@@ -148,8 +146,6 @@ class Insert(StandardInsert):
          not meeting the ``WHERE`` condition will not be updated
          (effectively a ``DO NOTHING`` for those rows).
 
-         .. versionadded:: 1.1
-
 
         .. seealso::
 
@@ -188,8 +184,6 @@ class Insert(StandardInsert):
          Additional WHERE criterion that can be used to infer a
          conditional target index.
 
-         .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`postgresql_insert_on_conflict`
index 8c09edddacf8419a0fc263b0a91044760f896f64..c79e90034d3ba77e656c1ce051db932c65c8d957 100644 (file)
@@ -54,8 +54,6 @@ class aggregate_order_by(expression.ColumnElement):
 
         SELECT string_agg(a, ',' ORDER BY a) FROM table;
 
-    .. versionadded:: 1.1
-
     .. versionchanged:: 1.2.13 - the ORDER BY argument may be multiple terms
 
     .. seealso::
@@ -288,8 +286,6 @@ def array_agg(*arg, **kw):
     the plain :class:`_types.ARRAY`, unless an explicit ``type_``
     is passed.
 
-    .. versionadded:: 1.1
-
     """
     kw["_default_array_type"] = ARRAY
     return functions.func.array_agg(*arg, **kw)
index 7f83f3113619a4a90a629faa87fc335906bd5210..dc7e4d40daf06044c44331f9c677a2a995018d79 100644 (file)
@@ -147,8 +147,6 @@ class HSTORE(sqltypes.Indexable, sqltypes.Concatenable, sqltypes.TypeEngine):
         :param text_type: the type that should be used for indexed values.
          Defaults to :class:`_types.Text`.
 
-         .. versionadded:: 1.1.0
-
         """
         if text_type is not None:
             self.text_type = text_type
index 9c29360062454bbb1bc6673695b5a804d5ae4865..232f058042f038c58c00f1665c772f32f10e2a40 100644 (file)
@@ -183,12 +183,6 @@ class JSON(sqltypes.JSON):
 
         data_table.c.data[('key_1', 'key_2', 5, ..., 'key_n')].astext == 'some value'
 
-    .. versionchanged:: 1.1  The :meth:`_expression.ColumnElement.cast`
-       operator on
-       JSON objects now requires that the :attr:`.JSON.Comparator.astext`
-       modifier be called explicitly, if the cast works only from a textual
-       string.
-
     Index operations return an expression object whose type defaults to
     :class:`_types.JSON` by default,
     so that further JSON-oriented instructions
@@ -213,9 +207,6 @@ class JSON(sqltypes.JSON):
 
         :class:`_postgresql.JSONB`
 
-    .. versionchanged:: 1.1 :class:`_postgresql.JSON` is now a PostgreSQL-
-       specific specialization of the new :class:`_types.JSON` type.
-
     """  # noqa
 
     astext_type = sqltypes.Text()
@@ -231,9 +222,6 @@ class JSON(sqltypes.JSON):
              from sqlalchemy import null
              conn.execute(table.insert(), data=null())
 
-         .. versionchanged:: 0.9.8 - Added ``none_as_null``, and :func:`.null`
-            is now supported in order to persist a NULL value.
-
          .. seealso::
 
               :attr:`_types.JSON.NULL`
@@ -242,8 +230,6 @@ class JSON(sqltypes.JSON):
          :attr:`.JSON.Comparator.astext`
          accessor on indexed attributes.  Defaults to :class:`_types.Text`.
 
-         .. versionadded:: 1.1
-
         """
         super().__init__(none_as_null=none_as_null)
         if astext_type is not None:
@@ -323,8 +309,6 @@ class JSONB(JSON):
     in the same way that ``psycopg2.extras.register_default_json`` is used
     to register these handlers with the json type.
 
-    .. versionadded:: 0.9.7
-
     .. seealso::
 
         :class:`_types.JSON`
index b0427b56998bd289e0ab446c93cf316c20472e72..92aba6f63be6af3e4afdca090a2d419376d133a3 100644 (file)
@@ -231,14 +231,6 @@ class ENUM(NamedType, sqltypes.NativeForEmulated, sqltypes.Enum):
         my_enum.create(engine)
         my_enum.drop(engine)
 
-    .. versionchanged:: 1.0.0 The PostgreSQL :class:`_postgresql.ENUM` type
-       now behaves more strictly with regards to CREATE/DROP.  A metadata-level
-       ENUM type will only be created and dropped at the metadata level,
-       not the table level, with the exception of
-       ``table.create(checkfirst=True)``.
-       The ``table.drop()`` call will now emit a DROP TYPE for a table-level
-       enumerated type.
-
     """
 
     native_enum = True
index 8a69e1b85f39539448904ca1a21bc3a437acec8c..211432c6dc7bf1f18e67a7e8b3cc74426b847f45 100644 (file)
@@ -17,8 +17,6 @@ r"""
 layer. This makes it suitable for use in e.g. PyPy. Documentation
 is as per ``psycopg2``.
 
-.. versionadded:: 1.0.0
-
 .. seealso::
 
     :mod:`sqlalchemy.dialects.postgresql.psycopg2`
index a6b82044b3055b50ed82302b6d2191818dc0c000..edab239357baa0cccf30029f92bf27595781fb7f 100644 (file)
@@ -102,11 +102,7 @@ class MONEY(sqltypes.TypeEngine[str]):
 
 class OID(sqltypes.TypeEngine[int]):
 
-    """Provide the PostgreSQL OID type.
-
-    .. versionadded:: 0.9.5
-
-    """
+    """Provide the PostgreSQL OID type."""
 
     __visit_name__ = "OID"
 
@@ -246,8 +242,6 @@ class TSVECTOR(sqltypes.TypeEngine[str]):
     It can be used to do full text queries on natural language
     documents.
 
-    .. versionadded:: 0.9.0
-
     .. seealso::
 
         :ref:`postgresql_match`
index 20065d88e77984a3291390678ab55b548209cde2..6200cee5a3229d27458e8f318bba45bfc3ea2a09 100644 (file)
@@ -699,10 +699,6 @@ lookup is used instead:
   ``REAL``, ``FLOA`` or ``DOUB``.
 * Otherwise, the :class:`_types.NUMERIC` type is used.
 
-.. versionadded:: 0.9.3 Support for SQLite type affinity rules when reflecting
-   columns.
-
-
 .. _sqlite_partial_index:
 
 Partial Indexes
@@ -720,8 +716,6 @@ The index will be rendered at create time as::
     CREATE INDEX test_idx1 ON testtbl (data)
     WHERE data > 5 AND data < 10
 
-.. versionadded:: 0.9.9
-
 .. _sqlite_dotted_column_names:
 
 Dotted Column Names
@@ -733,12 +727,6 @@ databases in general, as the dot is a syntactically significant character,
 the SQLite driver up until version **3.10.0** of SQLite has a bug which
 requires that SQLAlchemy filter out these dots in result sets.
 
-.. versionchanged:: 1.1
-
-    The following SQLite issue has been resolved as of version 3.10.0
-    of SQLite.  SQLAlchemy as of **1.1** automatically disables its internal
-    workarounds based on detection of this version.
-
 The bug, entirely outside of SQLAlchemy, can be illustrated thusly::
 
     import sqlite3
@@ -955,8 +943,6 @@ class _DateTimeMixin:
         the type will generate its DDL as DATE_CHAR, DATETIME_CHAR,
         TIME_CHAR.
 
-        .. versionadded:: 1.0.0
-
         """
         spec = self._storage_format % {
             "year": 0,
index def2c0b933f068062811131c8b295e0b77243a6b..1d2fb7a46b040032ad7c3e4dafed04fcb1eca45b 100644 (file)
@@ -484,8 +484,6 @@ class Connection(ConnectionEventsTarget, inspection.Inspectable["Inspector"]):
           are compiled into strings; the resulting schema name will be
           converted based on presence in the map of the original name.
 
-          .. versionadded:: 1.1
-
           .. seealso::
 
             :ref:`schema_translating`
@@ -598,8 +596,6 @@ class Connection(ConnectionEventsTarget, inspection.Inspectable["Inspector"]):
         which returns the dialect-level setting without performing a SQL
         query.
 
-        .. versionadded:: 0.9.9
-
         .. seealso::
 
             :attr:`_engine.Connection.default_isolation_level`
@@ -636,8 +632,6 @@ class Connection(ConnectionEventsTarget, inspection.Inspectable["Inspector"]):
         ahead of time from the first connection procured by the dialect,
         so SQL query is not invoked when this accessor is called.
 
-        .. versionadded:: 0.9.9
-
         .. seealso::
 
             :meth:`_engine.Connection.get_isolation_level`
index 0eea3398d5914868c84c0d214f69178b9dccea63..1f171ddb091794215766fb07dc035fe2d137d2a5 100644 (file)
@@ -1544,8 +1544,6 @@ class CursorResult(Result[_T]):
         This method is **not public**, but is documented in order to clarify
         the "autoclose" process used.
 
-        .. versionadded:: 1.0.0
-
         .. seealso::
 
             :meth:`_engine.CursorResult.close`
@@ -1878,8 +1876,6 @@ class CursorResult(Result[_T]):
         if :meth:`.ValuesBase.return_defaults` was not used or if the
         backend does not support RETURNING.
 
-        .. versionadded:: 0.9.0
-
         .. seealso::
 
             :meth:`.ValuesBase.return_defaults`
index 9028c8c33183985afb4f47c62c87e6613f9fe3e5..c1b182a0ae13ef77cd2bf58226f978a839561a15 100644 (file)
@@ -498,8 +498,6 @@ class ConnectionEvents(event.Events[ConnectionEventsTarget]):
         can still be used for new requests in which case
         it re-acquires connection resources.
 
-        .. versionadded:: 1.0.5
-
         """
 
     def begin(self, conn: Connection) -> None:
@@ -636,9 +634,6 @@ class DialectEvents(event.Events[Dialect]):
 
         :meth:`_events.ConnectionEvents.after_execute`
 
-
-    .. versionadded:: 0.9.4
-
     """
 
     _target_class_doc = "SomeEngine"
@@ -855,9 +850,6 @@ class DialectEvents(event.Events[Dialect]):
             def receive_do_connect(dialect, conn_rec, cargs, cparams):
                 return psycopg2.connect(*cargs, **cparams)
 
-
-        .. versionadded:: 1.0.3
-
         .. seealso::
 
             :ref:`custom_dbapi_args`
index 9952a85e3a005754e9f7daf065d8a71326f6ee4b..254aba4bc90d8b360d3d7694c5fd6a7ebc54fbee 100644 (file)
@@ -1043,8 +1043,6 @@ class Dialect(EventTarget):
     here is so that third-party dialects that haven't yet implemented this
     feature continue to function in the old way.
 
-    .. versionadded:: 0.9.2
-
     .. seealso::
 
         :class:`.DialectKWArgs` - implementing base class which consumes
@@ -1621,8 +1619,6 @@ class Dialect(EventTarget):
         This is an internal dialect method. Applications should use
         :meth:`.Inspector.get_check_constraints`.
 
-        .. versionadded:: 1.1.0
-
         """
 
         raise NotImplementedError()
@@ -2511,8 +2507,6 @@ class Dialect(EventTarget):
 
         By default this just returns the cls.
 
-        .. versionadded:: 1.0.3
-
         """
         return cls
 
@@ -2579,8 +2573,6 @@ class Dialect(EventTarget):
         events to the engine or its components.   In particular, it allows
         a dialect-wrapping class to apply dialect-level events.
 
-        .. versionadded:: 1.0.3
-
         """
 
     def get_driver_connection(self, connection: DBAPIConnection) -> Any:
@@ -2803,8 +2795,6 @@ class CreateEnginePlugin:
     changes can be made to the engine, most typically involving setup of
     events (e.g. those defined in :ref:`core_event_toplevel`).
 
-    .. versionadded:: 1.1
-
     """  # noqa: E501
 
     def __init__(self, url: URL, kwargs: Dict[str, Any]):
@@ -3290,8 +3280,6 @@ class ExceptionContext:
     the invalidation of other connections in the pool is to be performed
     based on other conditions, or even on a per-connection basis.
 
-    .. versionadded:: 1.0.3
-
     """
 
     is_pre_ping: bool
index 6b44704bb4dfec807686ac5a821436d8268d83a3..6e1ec18f2adea862dfb4b5a326bfa353292a13e6 100644 (file)
@@ -513,8 +513,6 @@ class Inspector(inspection.Inspectable["Inspector"]):
         foreign key constraint names that would require a separate CREATE
         step after-the-fact, based on dependencies between tables.
 
-        .. versionadded:: 1.0.-
-
         :param schema: schema name to query, if not the default schema.
         :param \**kw: Additional keyword argument to pass to the dialect
          specific implementation. See the documentation of the dialect
@@ -630,8 +628,6 @@ class Inspector(inspection.Inspectable["Inspector"]):
          specific implementation. See the documentation of the dialect
          in use for more information.
 
-        .. versionadded:: 1.0.0
-
         """
 
         with self._operation_context() as conn:
@@ -649,8 +645,6 @@ class Inspector(inspection.Inspectable["Inspector"]):
          specific implementation. See the documentation of the dialect
          in use for more information.
 
-        .. versionadded:: 1.0.0
-
         """
         with self._operation_context() as conn:
             return self.dialect.get_temp_view_names(
@@ -1406,8 +1400,6 @@ class Inspector(inspection.Inspectable["Inspector"]):
         :return: a list of dictionaries, each representing the
          definition of a check constraints.
 
-        .. versionadded:: 1.1.0
-
         .. seealso:: :meth:`Inspector.get_multi_check_constraints`
         """
 
index 54d4e0925034cc9b35c91720cf525af412bddd27..bb1dbea0fc93010baf7698c2a5d521a957c1746f 100644 (file)
@@ -211,11 +211,6 @@ def remove(target: Any, identifier: str, fn: Callable[..., Any]) -> None:
         events at high scale, use a mutable structure that is handled
         from inside of a single listener.
 
-        .. versionchanged:: 1.0.0 - a ``collections.deque()`` object is now
-           used as the container for the list of events, which explicitly
-           disallows collection mutation while the collection is being
-           iterated.
-
     .. seealso::
 
         :func:`.listen`
index 82d9d31cee16f02fb0a3c1f72688e8aeecd5f7c1..45a7e280e157339c4c8528d09f7680398b220330 100644 (file)
@@ -138,8 +138,6 @@ class ObjectNotExecutableError(ArgumentError):
     """Raised when an object is passed to .execute() that can't be
     executed as SQL.
 
-    .. versionadded:: 1.1
-
     """
 
     def __init__(self, target: Any):
index 325c58bdab9cc88524a46b1e2c0f8973c6c4fdac..b72824e3bc6c9ba4d08b2229e10b19a660c56187 100644 (file)
@@ -863,8 +863,6 @@ class AsyncConnection(
         ahead of time from the first connection procured by the dialect,
         so SQL query is not invoked when this accessor is called.
 
-        .. versionadded:: 0.9.9
-
         .. seealso::
 
             :meth:`_engine.Connection.get_isolation_level`
index 1861791b7e804108b5e0d9de50a6173d0dbef428..f378f729a0c71136b5e6b776af4b5c7e025c3606 100644 (file)
@@ -379,14 +379,6 @@ follows:
    flag is set to ``True`` in the set of relationship keyword arguments.
    Note that not all backends support reflection of ON DELETE.
 
-   .. versionadded:: 1.0.0 - automap will detect non-nullable foreign key
-      constraints when producing a one-to-many relationship and establish
-      a default cascade of ``all, delete-orphan`` if so; additionally,
-      if the constraint specifies
-      :paramref:`_schema.ForeignKeyConstraint.ondelete`
-      of ``CASCADE`` for non-nullable or ``SET NULL`` for nullable columns,
-      the ``passive_deletes=True`` option is also added.
-
 5. The names of the relationships are determined using the
    :paramref:`.AutomapBase.prepare.name_for_scalar_relationship` and
    :paramref:`.AutomapBase.prepare.name_for_collection_relationship`
index 8b6488ca33804eba135a57d9f0c9d808c09417a3..64c9ce6ec2690a2a41ceb9dd2265dcb3db8132a4 100644 (file)
@@ -430,8 +430,6 @@ class Result:
         Note this uses a subquery to ensure an accurate count regardless
         of the structure of the original statement.
 
-        .. versionadded:: 1.1.6
-
         """
 
         col = func.count(literal_column("*"))
@@ -445,8 +443,6 @@ class Result:
 
         Equivalent to :meth:`_query.Query.scalar`.
 
-        .. versionadded:: 1.1.6
-
         """
         try:
             ret = self.one()
@@ -486,8 +482,6 @@ class Result:
 
         Equivalent to :meth:`_query.Query.one_or_none`.
 
-        .. versionadded:: 1.0.9
-
         """
         return self._iter().one_or_none()
 
index 01c6f4b242b3e9ff505aeda29aed79a7e74fffc8..dbaad3c40771e4e803c122433e059081241a92d4 100644 (file)
@@ -22,9 +22,6 @@ The :mod:`~sqlalchemy.ext.indexable` extension provides
 :class:`_types.Indexable` typed column. In simple cases, it can be
 treated as a :class:`_schema.Column` - mapped attribute.
 
-
-.. versionadded:: 1.1
-
 Synopsis
 ========
 
@@ -235,8 +232,6 @@ class index_property(hybrid_property):  # noqa
     attribute that corresponds to an :class:`_types.Indexable`
     column.
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :mod:`sqlalchemy.ext.indexable`
index 0dd3215595e8976ef63540b0596f429b3e700148..7d23f9fda7de6c359fc680fb2748a08f045caecd 100644 (file)
@@ -469,8 +469,6 @@ class MutableBase:
         of attribute names that have been refreshed; the list is compared
         against this set to determine if action needs to be taken.
 
-        .. versionadded:: 1.0.5
-
         """
         return {attribute.key}
 
@@ -880,8 +878,6 @@ class MutableList(Mutable, List[_T]):
     coercion to the values placed in the dictionary so that they too are
     "mutable", and emit events up to their parent structure.
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :class:`.MutableDict`
@@ -986,8 +982,6 @@ class MutableSet(Mutable, Set[_T]):
     coercion to the values placed in the dictionary so that they too are
     "mutable", and emit events up to their parent structure.
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :class:`.MutableDict`
index 57acc57061d815c25fa0dfb55bd12e8472504221..7b282a377b72173963381618dbf1c2240707ce4b 100644 (file)
@@ -949,11 +949,6 @@ def relationship(
           in some cases can enable complex :func:`_orm.relationship` SQL
           conditions to be used.
 
-      .. versionadded:: 0.9.2 :paramref:`_orm.relationship.secondary`
-         works
-         more effectively when referring to a :class:`_expression.Join`
-         instance.
-
     :param active_history=False:
       When ``True``, indicates that the "previous" value for a
       many-to-one reference should be loaded when replaced, if
@@ -1088,12 +1083,6 @@ def relationship(
       reducing performance of the innermost subquery beyond that of what
       duplicate innermost rows may be causing.
 
-      .. versionchanged:: 0.9.0 -
-         :paramref:`_orm.relationship.distinct_target_key` now defaults to
-         ``None``, so that the feature enables itself automatically for
-         those cases where the innermost query targets a non-unique
-         key.
-
       .. seealso::
 
         :ref:`loading_toplevel` - includes an introduction to subquery
@@ -1265,8 +1254,6 @@ def relationship(
         remain associated with the attached :class:`.Session`, however
         additional SELECT statements should be blocked.
 
-        .. versionadded:: 1.1
-
       * ``write_only`` - the attribute will be configured with a special
         "virtual collection" that may receive
         :meth:`_orm.WriteOnlyCollection.add` and
@@ -1805,8 +1792,6 @@ def synonym(
     :param info: Optional data dictionary which will be populated into the
         :attr:`.InspectionAttr.info` attribute of this object.
 
-        .. versionadded:: 1.0.0
-
     :param comparator_factory: A subclass of :class:`.PropComparator`
       that will provide custom comparison behavior at the SQL expression
       level.
index 5b6675365e952869c4b77ec41c1ba27040ca0266..5d19cf20ad6ae69599f59188c99360bd1f244809 100644 (file)
@@ -665,11 +665,6 @@ class InspectionAttrInfo(InspectionAttr):
         :func:`.composite`
         functions.
 
-        .. versionchanged:: 1.0.0 :attr:`.MapperProperty.info` is also
-           available on extension types via the
-           :attr:`.InspectionAttrInfo.info` attribute, so that it can apply
-           to a wider variety of ORM and extension constructs.
-
         .. seealso::
 
             :attr:`.QueryableAttribute.info`
index 413bfbfcbea080e8fb7829ef4fa13d787f40759b..9a1fd569a31541bcdddf2d840115cf120e710f4f 100644 (file)
@@ -566,8 +566,6 @@ class InstanceEvents(event.Events[ClassManager[Any]]):
             :meth:`.SessionEvents.pending_to_persistent` and
             :meth:`.MapperEvents.after_insert` are better choices.
 
-        .. versionadded:: 1.0.5
-
         :param target: the mapped instance.  If
          the event is configured with ``raw=True``, this will
          instead be the :class:`.InstanceState` state-management
@@ -1094,7 +1092,7 @@ class MapperEvents(event.Events[mapperlib.Mapper[Any]]):
 
             @event.listens_for(Mapper, "before_configured")
             def go():
-                ...
+                ...
 
         Contrast this event to :meth:`.MapperEvents.after_configured`,
         which is invoked after the series of mappers has been configured,
@@ -1114,10 +1112,7 @@ class MapperEvents(event.Events[mapperlib.Mapper[Any]]):
 
             @event.listens_for(mapper, "before_configured", once=True)
             def go():
-                # ...
-
-
-        .. versionadded:: 0.9.3
+                ...
 
 
         .. seealso::
@@ -2205,8 +2200,6 @@ class SessionEvents(event.Events[Session]):
 
         :param instance: the ORM-mapped instance being operated upon.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2227,8 +2220,6 @@ class SessionEvents(event.Events[Session]):
 
         :param instance: the ORM-mapped instance being operated upon.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2248,8 +2239,6 @@ class SessionEvents(event.Events[Session]):
 
         :param instance: the ORM-mapped instance being operated upon.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2271,8 +2260,6 @@ class SessionEvents(event.Events[Session]):
 
         :param instance: the ORM-mapped instance being operated upon.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2308,8 +2295,6 @@ class SessionEvents(event.Events[Session]):
 
         :param instance: the ORM-mapped instance being operated upon.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2344,8 +2329,6 @@ class SessionEvents(event.Events[Session]):
 
         :param instance: the ORM-mapped instance being operated upon.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2377,8 +2360,6 @@ class SessionEvents(event.Events[Session]):
         the :meth:`.SessionEvents.persistent_to_deleted` event is therefore
         invoked at the end of a flush.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2395,8 +2376,6 @@ class SessionEvents(event.Events[Session]):
         :meth:`.Session.rollback`.   The event is not called under
         any other circumstances.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2419,8 +2398,6 @@ class SessionEvents(event.Events[Session]):
         events are called, as well as if the object is individually
         expunged from its deleted state via :meth:`.Session.expunge`.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2451,8 +2428,6 @@ class SessionEvents(event.Events[Session]):
          to the detached state because it was marked as deleted and flushed.
 
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_lifecycle_events`
@@ -2792,10 +2767,6 @@ class AttributeEvents(event.Events[QueryableAttribute[Any]]):
           from its original value by backref handlers in order to control
           chained event propagation.
 
-          .. versionchanged:: 0.9.0 the ``initiator`` argument is now
-             passed as a :class:`.attributes.Event` object, and may be
-             modified by backref handlers within a chain of backref-linked
-             events.
         :param key: When the event is established using the
          :paramref:`.AttributeEvents.include_key` parameter set to
          True, this will be the key used in the operation, such as
@@ -2841,11 +2812,6 @@ class AttributeEvents(event.Events[QueryableAttribute[Any]]):
           from its original value by backref handlers in order to control
           chained event propagation.
 
-          .. versionchanged:: 0.9.0 the ``initiator`` argument is now
-             passed as a :class:`.attributes.Event` object, and may be
-             modified by backref handlers within a chain of backref-linked
-             events.
-
         :return: if the event was registered with ``retval=True``,
          the given value, or a new effective value, should be returned.
 
@@ -2950,8 +2916,6 @@ class AttributeEvents(event.Events[QueryableAttribute[Any]]):
         returned by the previous listener that specifies ``retval=True``
         as the ``value`` argument of the next listener.
 
-        .. versionadded:: 1.1
-
         :param target: the object instance receiving the event.
          If the listener is registered with ``raw=True``, this will
          be the :class:`.InstanceState` object.
@@ -3013,9 +2977,6 @@ class AttributeEvents(event.Events[QueryableAttribute[Any]]):
         :param collection_adapter: the :class:`.CollectionAdapter` that will
          mediate internal access to the collection.
 
-        .. versionadded:: 1.0.0 :meth:`.AttributeEvents.init_collection`
-           and :meth:`.AttributeEvents.dispose_collection` events.
-
         .. seealso::
 
             :class:`.AttributeEvents` - background on listener options such
@@ -3048,9 +3009,6 @@ class AttributeEvents(event.Events[QueryableAttribute[Any]]):
            contents before the dispose intact; previously, the collection
            would be empty.
 
-        .. versionadded:: 1.0.0 the :meth:`.AttributeEvents.init_collection`
-           and :meth:`.AttributeEvents.dispose_collection` events.
-
         .. seealso::
 
             :class:`.AttributeEvents` - background on listener options such
index 8667491398f94e9f5e1bea13ece54b370042bfc0..91c5cba2dad88ea4422599b94a5ac78883051f3b 100644 (file)
@@ -398,10 +398,6 @@ class MapperProperty(
     :func:`.column_property`, :func:`_orm.relationship`, or :func:`.composite`
     functions.
 
-    .. versionchanged:: 1.0.0 :attr:`.InspectionAttr.info` moved
-        from :class:`.MapperProperty` so that it can apply to a wider
-        variety of ORM and extension constructs.
-
     .. seealso::
 
         :attr:`.QueryableAttribute.info`
@@ -420,11 +416,6 @@ class MapperProperty(
         :func:`.composite`
         functions.
 
-        .. versionchanged:: 1.0.0 :attr:`.MapperProperty.info` is also
-           available on extension types via the
-           :attr:`.InspectionAttrInfo.info` attribute, so that it can apply
-           to a wider variety of ORM and extension constructs.
-
         .. seealso::
 
             :attr:`.QueryableAttribute.info`
index 2ae6dadcd8e8db0178362ee6eb2743ca724de555..81b66de03e657b6046684997e489f616e895ba86 100644 (file)
@@ -344,10 +344,6 @@ class Mapper(
           those rows automatically.  The warning may be changed to an
           exception in a future release.
 
-          .. versionadded:: 0.9.4 - added
-             :paramref:`.mapper.confirm_deleted_rows` as well as conditional
-             matched row checking on delete.
-
         :param eager_defaults: if True, the ORM will immediately fetch the
           value of server-generated default values after an INSERT or UPDATE,
           rather than leaving them as expired to be fetched on next access.
@@ -381,9 +377,6 @@ class Mapper(
 
                 :ref:`orm_server_defaults`
 
-          .. versionchanged:: 0.9.0 The ``eager_defaults`` option can now
-             make use of :term:`RETURNING` for backends which support it.
-
           .. versionchanged:: 2.0.0  RETURNING now works with multiple rows
              INSERTed at once using the
              :ref:`insertmanyvalues <engine_insertmanyvalues>` feature, which
@@ -478,8 +471,6 @@ class Mapper(
            to specify passive_deletes without this taking effect for
            all subclass mappers.
 
-           .. versionadded:: 1.1
-
            .. seealso::
 
                :ref:`passive_deletes` - description of similar feature as
@@ -694,9 +685,6 @@ class Mapper(
           Please see :ref:`server_side_version_counter` for a discussion
           of important points when using this option.
 
-          .. versionadded:: 0.9.0 ``version_id_generator`` supports
-             server-side version number generation.
-
           .. seealso::
 
              :ref:`custom_version_counter`
@@ -4338,8 +4326,6 @@ def validates(
      :func:`.validates` usage where only one validator should emit per
      attribute operation.
 
-     .. versionadded:: 0.9.0
-
     .. seealso::
 
       :ref:`simple_validators` - usage examples for :func:`.validates`
index 080ae27ef9a02fa8444ba71b580f39b2ba36395c..5cd7cc11704c27074d274d9d39ba3db82ec74ebc 100644 (file)
@@ -2432,8 +2432,6 @@ class Query(
 
         :param full=False: render FULL OUTER JOIN; implies ``isouter``.
 
-         .. versionadded:: 1.1
-
         """
 
         join_target = coercions.expect(
@@ -2531,13 +2529,6 @@ class Query(
          :class:`.AliasedClass` objects, :class:`.Mapper` objects
          as well as core :class:`.FromClause` elements like subqueries.
 
-        .. versionchanged:: 0.9
-            This method no longer applies the given FROM object
-            to be the selectable from which matching entities
-            select from; the :meth:`.select_entity_from` method
-            now accomplishes this.  See that method for a description
-            of this behavior.
-
         .. seealso::
 
             :meth:`~.Query.join`
@@ -2764,10 +2755,6 @@ class Query(
         results in an execution of the
         underlying query.
 
-        .. versionadded:: 1.0.9
-
-            Added :meth:`_query.Query.one_or_none`
-
         .. seealso::
 
             :meth:`_query.Query.first`
index 787c5a4ab0f3bdfd5c7f8663118e1573090aa653..19217ec32e7cdb4c8f6d0b75c39b1254fe3749c7 100644 (file)
@@ -1425,10 +1425,6 @@ class scoped_session(Generic[_S]):
 
         See :ref:`unitofwork_merging` for a detailed discussion of merging.
 
-        .. versionchanged:: 1.1 - :meth:`.Session.merge` will now reconcile
-           pending objects with overlapping primary keys in the same way
-           as persistent.  See :ref:`change_3601` for discussion.
-
         :param instance: Instance to be merged.
         :param load: Boolean, when False, :meth:`.merge` switches into
          a "high performance" mode which causes it to forego emitting history
index 760c71afd889c4784657ea04a067fec897410157..e6d6251cf37d35d6e07c99f95b32010a4fad9092 100644 (file)
@@ -934,8 +934,6 @@ class SessionTransaction(_StateChange, TransactionalContext):
         :attr:`.SessionTransaction.nested` attribute is ``True``, then
         this is a SAVEPOINT, and if ``False``, indicates this a subtransaction.
 
-        .. versionadded:: 1.0.16 - use ._parent for previous versions
-
         """
         return self._parent
 
@@ -3704,10 +3702,6 @@ class Session(_SessionClassMethods, EventTarget):
 
         See :ref:`unitofwork_merging` for a detailed discussion of merging.
 
-        .. versionchanged:: 1.1 - :meth:`.Session.merge` will now reconcile
-           pending objects with overlapping primary keys in the same way
-           as persistent.  See :ref:`change_3601` for discussion.
-
         :param instance: Instance to be merged.
         :param load: Boolean, when False, :meth:`.merge` switches into
          a "high performance" mode which causes it to forego emitting history
index 840de6ff15b8ae9f4f49de4f438191e2c12e77f9..7089395313276f254961f6e0ee92fc181bd6b2b3 100644 (file)
@@ -278,9 +278,6 @@ class InstanceState(interfaces.InspectionAttrInfo, Generic[_O]):
         or via transaction commit and enters the "detached" state,
         this flag will continue to report True.
 
-        .. versionadded:: 1.1 - added a local method form of
-           :func:`.orm.util.was_deleted`.
-
         .. seealso::
 
             :attr:`.InstanceState.deleted` - refers to the "deleted" state
@@ -300,12 +297,6 @@ class InstanceState(interfaces.InspectionAttrInfo, Generic[_O]):
         be within the :attr:`.Session.identity_map` of its parent
         :class:`.Session`.
 
-        .. versionchanged:: 1.1 The :attr:`.InstanceState.persistent`
-           accessor no longer returns True for an object that was
-           "deleted" within a flush; use the :attr:`.InstanceState.deleted`
-           accessor to detect this state.   This allows the "persistent"
-           state to guarantee membership in the identity map.
-
         .. seealso::
 
             :ref:`session_object_states`
@@ -1104,8 +1095,6 @@ class AttributeState:
 
             :func:`.attributes.get_history` - underlying function
 
-        .. versionadded:: 0.9.0
-
         """
         return self.state.get_history(self.key, PASSIVE_OFF ^ INIT_OK)
 
index ba4b12061a1ed5e2906ba88f48d490a46ba740ef..48e69aef27e6a1b817636c4883dc15565fa25425 100644 (file)
@@ -295,12 +295,6 @@ class _AbstractLoad(traversals.GenerativeOnTraversal, LoaderOption):
             correctness of results, these joins are always INNER and are
             therefore right-nested if linked to an OUTER join.
 
-        .. versionchanged:: 1.0.0 ``innerjoin=True`` now implies
-            ``innerjoin="nested"``, whereas in 0.9 it implied
-            ``innerjoin="unnested"``. In order to achieve the pre-1.0
-            "unnested" inner join behavior, use the value
-            ``innerjoin="unnested"``. See :ref:`migration_3008`.
-
         .. note::
 
             The joins produced by :func:`_orm.joinedload` are **anonymously
@@ -532,9 +526,6 @@ class _AbstractLoad(traversals.GenerativeOnTraversal, LoaderOption):
         This function is part of the :class:`_orm.Load` interface and supports
         both method-chained and standalone operation.
 
-
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`loading_toplevel`
index ac487452c4df56ef5b40beeaca87896ed951bd5d..7600c196b066583b26049a03e09675f489bf1dcc 100644 (file)
@@ -266,9 +266,6 @@ class Pool(log.Identified, event.EventTarget):
          make use of :func:`_sa.create_engine` should not use this parameter
          as it is handled by the engine creation strategy.
 
-         .. versionadded:: 1.1 - ``dialect`` is now a public parameter
-            to the :class:`_pool.Pool`.
-
         :param pre_ping: if True, the pool will emit a "ping" (typically
          "SELECT 1", but is dialect-specific) on the connection
          upon checkout, to test if the connection is alive or not.   If not,
index 937939e53c82f6e094798d3e3ce7a51d93f82697..8366b7bd2a47635dfdb4a5b07c0f89da687a1cd3 100644 (file)
@@ -278,9 +278,6 @@ class PoolEvents(event.Events[Pool]):
         :param exception: the exception object corresponding to the reason
          for this invalidation, if any.  May be ``None``.
 
-        .. versionadded:: 0.9.2 Added support for connection invalidation
-           listening.
-
         .. seealso::
 
             :ref:`pool_connection_invalidation`
@@ -304,8 +301,6 @@ class PoolEvents(event.Events[Pool]):
         is checked in.   It does not actively close the dbapi_connection
         at the point at which it is called.
 
-        .. versionadded:: 1.0.3
-
         :param dbapi_connection: a DBAPI connection.
          The :attr:`.ConnectionPoolEntry.dbapi_connection` attribute.
 
@@ -334,8 +329,6 @@ class PoolEvents(event.Events[Pool]):
         associated with the pool. To intercept close events for detached
         connections use :meth:`.close_detached`.
 
-        .. versionadded:: 1.1
-
         :param dbapi_connection: a DBAPI connection.
          The :attr:`.ConnectionPoolEntry.dbapi_connection` attribute.
 
@@ -354,8 +347,6 @@ class PoolEvents(event.Events[Pool]):
         This event is emitted after the detach occurs.  The connection
         is no longer associated with the given connection record.
 
-        .. versionadded:: 1.1
-
         :param dbapi_connection: a DBAPI connection.
          The :attr:`.ConnectionPoolEntry.dbapi_connection` attribute.
 
@@ -373,8 +364,6 @@ class PoolEvents(event.Events[Pool]):
         the connection is already closed.  If the close operation fails,
         the connection is discarded.
 
-        .. versionadded:: 1.1
-
         :param dbapi_connection: a DBAPI connection.
          The :attr:`.ConnectionPoolEntry.dbapi_connection` attribute.
 
index f54fff5ce5fdab018a11869450a21a64231ff43d..99a839cc909cf20e1e9f1669536126d35066a325 100644 (file)
@@ -411,8 +411,6 @@ def between(
     :param symmetric: if True, will render " BETWEEN SYMMETRIC ". Note
      that not all databases support this syntax.
 
-     .. versionadded:: 0.9.5
-
     .. seealso::
 
         :meth:`_expression.ColumnElement.between`
@@ -878,11 +876,6 @@ def cast(
     as well as the bound-value handling and result-row-handling behavior
     of the type.
 
-    .. versionchanged:: 0.9.0 :func:`.cast` now applies the given type
-       to the expression such that it takes effect on the bound-value,
-       e.g. the Python-to-database direction, in addition to the
-       result handling, e.g. database-to-Python, direction.
-
     An alternative to :func:`.cast` is the :func:`.type_coerce` function.
     This function performs the second task of associating an expression
     with a specific type, but does not render the ``CAST`` expression
@@ -978,10 +971,6 @@ def column(
     :class:`_schema.MetaData`, DDL, or events, unlike its
     :class:`_schema.Table` counterpart.
 
-    .. versionchanged:: 1.0.0 :func:`_expression.column` can now
-       be imported from the plain ``sqlalchemy`` namespace like any
-       other SQL element.
-
     :param text: the text of the element.
 
     :param type: :class:`_types.TypeEngine` object which can associate
@@ -1178,10 +1167,6 @@ def false() -> False_:
         >>> print(select(t.c.x).where(and_(t.c.x > 5, false())))
         {printsql}SELECT x FROM t WHERE false{stop}
 
-    .. versionchanged:: 0.9 :func:`.true` and :func:`.false` feature
-       better integrated behavior within conjunctions and on dialects
-       that don't support true/false constants.
-
     .. seealso::
 
         :func:`.true`
@@ -1209,8 +1194,6 @@ def funcfilter(
     This function is also available from the :data:`~.expression.func`
     construct itself via the :meth:`.FunctionElement.filter` method.
 
-    .. versionadded:: 1.0.0
-
     .. seealso::
 
         :ref:`tutorial_functions_within_group` - in the
@@ -1514,9 +1497,6 @@ def over(
 
         func.row_number().over(order_by='x', range_=(1, 3))
 
-    .. versionadded:: 1.1 support for RANGE / ROWS within a window
-
-
     :param element: a :class:`.FunctionElement`, :class:`.WithinGroup`,
      or other compatible construct.
     :param partition_by: a column element or string, or a list
@@ -1529,14 +1509,10 @@ def over(
      tuple value which can contain integer values or ``None``,
      and will render a RANGE BETWEEN PRECEDING / FOLLOWING clause.
 
-     .. versionadded:: 1.1
-
     :param rows: optional rows clause for the window.  This is a tuple
      value which can contain integer values or None, and will render
      a ROWS BETWEEN PRECEDING / FOLLOWING clause.
 
-     .. versionadded:: 1.1
-
     This function is also available from the :data:`~.expression.func`
     construct itself via the :meth:`.FunctionElement.over` method.
 
@@ -1661,10 +1637,6 @@ def true() -> True_:
         >>> print(select(t.c.x).where(and_(t.c.x > 5, false())))
         {printsql}SELECT x FROM t WHERE false{stop}
 
-    .. versionchanged:: 0.9 :func:`.true` and :func:`.false` feature
-       better integrated behavior within conjunctions and on dialects
-       that don't support true/false constants.
-
     .. seealso::
 
         :func:`.false`
@@ -1817,8 +1789,6 @@ def within_group(
     :param \*order_by: one or more column elements that will be used
      as the ORDER BY clause of the WITHIN GROUP construct.
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :ref:`tutorial_functions_within_group` - in the
index 8081c93e4602c060faddf922178e9692af182225..41e8b6eb164a4713ef12cc45b97a3b2726d1b8a2 100644 (file)
@@ -256,8 +256,6 @@ def join(
 
     :param full: if True, render a FULL OUTER JOIN, instead of JOIN.
 
-     .. versionadded:: 1.1
-
     .. seealso::
 
         :meth:`_expression.FromClause.join` - method form,
@@ -286,8 +284,6 @@ def lateral(
     only supported by a small number of backends, currently more recent
     PostgreSQL versions.
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :ref:`tutorial_lateral_correlation` -  overview of usage.
@@ -502,11 +498,6 @@ def table(name: str, *columns: ColumnClause[Any], **kw: Any) -> TableClause:
     :class:`_schema.Table` object.
     It may be used to construct lightweight table constructs.
 
-    .. versionchanged:: 1.0.0 :func:`_expression.table` can now
-       be imported from the plain ``sqlalchemy`` namespace like any
-       other SQL element.
-
-
     :param name: Name of the table.
 
     :param columns: A collection of :func:`_expression.column` constructs.
@@ -557,8 +548,6 @@ def tablesample(
         people AS alias TABLESAMPLE bernoulli(:bernoulli_1)
         REPEATABLE (random())
 
-    .. versionadded:: 1.1
-
     :param sampling: a ``float`` percentage between 0 and 100 or
         :class:`_functions.Function`.
 
index 1752a4dc1ab68856a31d924b36ef774d2f48d5b5..19d3f8ba7aff3829be8af7ecd4696c767071a9fc 100644 (file)
@@ -468,8 +468,6 @@ class DialectKWArgs:
 
         :param default: default value of the parameter.
 
-        .. versionadded:: 0.9.4
-
         """
 
         construct_arg_dictionary = DialectKWArgs._kw_registry[dialect_name]
@@ -496,11 +494,6 @@ class DialectKWArgs:
         form ``<dialect>_<kwarg>`` where the value will be assembled
         into the list of options.
 
-        .. versionadded:: 0.9.2
-
-        .. versionchanged:: 0.9.4 The :attr:`.DialectKWArgs.dialect_kwargs`
-           collection is now writable.
-
         .. seealso::
 
             :attr:`.DialectKWArgs.dialect_options` - nested dictionary form
index ad0a3b686608b031587d17621c1bb99d17ac6787..9c68b311ad8e67587c436dbe846083aa621c7425 100644 (file)
@@ -679,8 +679,6 @@ class Compiled:
         :param schema_translate_map: dictionary of schema names to be
          translated when forming the resultant SQL
 
-         .. versionadded:: 1.1
-
          .. seealso::
 
             :ref:`schema_translating`
index 75fa0ba1c4a698935ed01232067c0138dfae80a6..b87049e076c095d13a1154888a6a0fc687623999 100644 (file)
@@ -528,8 +528,6 @@ class CreateTable(_CreateBase):
          inline within the CREATE construct; if omitted, all foreign key
          constraints that do not specify use_alter=True are included.
 
-         .. versionadded:: 1.0.0
-
         :param if_not_exists: if True, an IF NOT EXISTS operator will be
          applied to the construct.
 
@@ -1306,8 +1304,6 @@ def sort_tables_and_constraints(
     :param extra_dependencies: a sequence of 2-tuples of tables which will
      also be considered as dependent on each other.
 
-    .. versionadded:: 1.0.0
-
     .. seealso::
 
         :func:`.sort_tables`
index 316392c0cd2f529e57406e253ca68ed1ceaa0435..830f845b4294e90f1e399c49b441081440677e56 100644 (file)
@@ -1033,23 +1033,6 @@ class ValuesBase(UpdateBase):
                the traditional Core method of multiple parameter set
                invocation for INSERTs and other statements.
 
-           .. versionchanged:: 1.0.0 an INSERT that uses a multiple-VALUES
-              clause, even a list of length one,
-              implies that the :paramref:`_expression.Insert.inline`
-              flag is set to
-              True, indicating that the statement will not attempt to fetch
-              the "last inserted primary key" or other defaults.  The
-              statement deals with an arbitrary number of rows, so the
-              :attr:`_engine.CursorResult.inserted_primary_key`
-              accessor does not
-              apply.
-
-           .. versionchanged:: 1.0.0 A multiple-VALUES INSERT now supports
-              columns with Python side default values and callables in the
-              same way as that of an "executemany" style of invocation; the
-              callable is invoked for each row.   See :ref:`bug_3288`
-              for other details.
-
           The UPDATE construct also supports rendering the SET parameters
           in a specific order.  For this feature refer to the
           :meth:`_expression.Update.ordered_values` method.
@@ -1230,21 +1213,6 @@ class Insert(ValuesBase):
             will only be invoked **once** for the whole statement, and **not
             per row**.
 
-         .. versionadded:: 1.0.0 - :meth:`_expression.Insert.from_select`
-            now renders
-            Python-side and SQL expression column defaults into the
-            SELECT statement for columns otherwise not included in the
-            list of column names.
-
-        .. versionchanged:: 1.0.0 an INSERT that uses FROM SELECT
-           implies that the :paramref:`_expression.insert.inline`
-           flag is set to
-           True, indicating that the statement will not attempt to fetch
-           the "last inserted primary key" or other defaults.  The statement
-           deals with an arbitrary number of rows, so the
-           :attr:`_engine.CursorResult.inserted_primary_key`
-           accessor does not apply.
-
         """
 
         if self._values:
index 8bf834d1174c501e7edd41865523c47038dde9ce..0f356ae27d78c4cb5b8a0bab7700ac1014d7095d 100644 (file)
@@ -260,8 +260,6 @@ class CompilerElement(Visitable):
 
                 print(s.compile(compile_kwargs={"literal_binds": True}))
 
-            .. versionadded:: 0.9.0
-
         .. seealso::
 
             :ref:`faq_sql_expression_string`
@@ -1648,8 +1646,6 @@ class ColumnElement(
 
             :func:`_expression.type_coerce`
 
-        .. versionadded:: 1.0.7
-
         """
         return Cast(self, type_)
 
@@ -2475,11 +2471,6 @@ class TextClause(
             query = session.query(User).from_statement(stmt).options(
                 contains_eager(User.addresses))
 
-        .. versionadded:: 1.1 the :meth:`_expression.TextClause.columns`
-           method now
-           offers positional column targeting in the result set when
-           the column expressions are passed purely positionally.
-
         The :meth:`_expression.TextClause.columns` method provides a direct
         route to calling :meth:`_expression.FromClause.subquery` as well as
         :meth:`_expression.SelectBase.cte`
@@ -3359,10 +3350,6 @@ class TypeCoerce(WrapsColumnExpression[_T]):
     :class:`.TypeCoerce` supplies the :func:`_expression.type_coerce`
     function; see that function for usage details.
 
-    .. versionchanged:: 1.1 The :func:`.type_coerce` function now produces
-       a persistent :class:`.TypeCoerce` wrapper object rather than
-       translating the given object in place.
-
     .. seealso::
 
         :func:`_expression.type_coerce`
@@ -4231,8 +4218,6 @@ class FunctionFilter(ColumnElement[_T]):
 
         func.count(1).filter(True)
 
-    .. versionadded:: 1.0.0
-
     .. seealso::
 
         :meth:`.FunctionElement.filter`
@@ -4988,8 +4973,6 @@ class quoted_name(util.MemoizedSlots, str):
     passing the name exactly as ``"some_table"`` without converting to
     upper case.
 
-    .. versionadded:: 0.9.0
-
     .. versionchanged:: 1.2 The :class:`.quoted_name` construct is now
        importable from ``sqlalchemy.sql``, in addition to the previous
        location of ``sqlalchemy.sql.elements``.
@@ -5178,8 +5161,6 @@ class conv(_truncated_label):
     name here is final, and the name will render as ``"ck_t_x5"`` and not
     ``"ck_t_ck_t_x5"``
 
-    .. versionadded:: 0.9.4
-
     .. seealso::
 
         :ref:`constraint_naming_conventions`
index 0952ca0f1b0825867fb04fe03fdffbf9462dd540..30ef0b7e342a6082f2fddd59511eca1d95362f7c 100644 (file)
@@ -440,9 +440,6 @@ class FunctionElement(Executable, ColumnElement[_T], FromClause, Generative):
 
         See :func:`_expression.within_group` for a full description.
 
-        .. versionadded:: 1.1
-
-
         .. seealso::
 
             :ref:`tutorial_functions_within_group` -
@@ -467,8 +464,6 @@ class FunctionElement(Executable, ColumnElement[_T], FromClause, Generative):
             from sqlalchemy import funcfilter
             funcfilter(func.count(1), True)
 
-        .. versionadded:: 1.0.0
-
         .. seealso::
 
             :ref:`tutorial_functions_within_group` -
@@ -1587,8 +1582,6 @@ class array_agg(GenericFunction[_T]):
 
         stmt = select(func.array_agg(table.c.values)[2:5])
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :func:`_postgresql.array_agg` - PostgreSQL-specific version that
@@ -1646,8 +1639,6 @@ class mode(OrderedSetAgg[_T]):
 
     The return type of this function is the same as the sort expression.
 
-    .. versionadded:: 1.1
-
     """
 
     inherit_cache = True
@@ -1663,8 +1654,6 @@ class percentile_cont(OrderedSetAgg[_T]):
     or if the arguments are an array, an :class:`_types.ARRAY` of the sort
     expression's type.
 
-    .. versionadded:: 1.1
-
     """
 
     array_for_multi_clause = True
@@ -1681,8 +1670,6 @@ class percentile_disc(OrderedSetAgg[_T]):
     or if the arguments are an array, an :class:`_types.ARRAY` of the sort
     expression's type.
 
-    .. versionadded:: 1.1
-
     """
 
     array_for_multi_clause = True
@@ -1697,8 +1684,6 @@ class rank(GenericFunction[int]):
 
     The return type of this function is :class:`.Integer`.
 
-    .. versionadded:: 1.1
-
     """
 
     type = sqltypes.Integer()
@@ -1713,8 +1698,6 @@ class dense_rank(GenericFunction[int]):
 
     The return type of this function is :class:`.Integer`.
 
-    .. versionadded:: 1.1
-
     """
 
     type = sqltypes.Integer()
@@ -1729,8 +1712,6 @@ class percent_rank(GenericFunction[decimal.Decimal]):
 
     The return type of this function is :class:`.Numeric`.
 
-    .. versionadded:: 1.1
-
     """
 
     type: sqltypes.Numeric[decimal.Decimal] = sqltypes.Numeric()
@@ -1745,8 +1726,6 @@ class cume_dist(GenericFunction[decimal.Decimal]):
 
     The return type of this function is :class:`.Numeric`.
 
-    .. versionadded:: 1.1
-
     """
 
     type: sqltypes.Numeric[decimal.Decimal] = sqltypes.Numeric()
index ab9ddf85c797f1066695313e6f0e7269aaf51c29..352e5b62df0b07c5d8fa749e24a49b4cfe012baa 100644 (file)
@@ -553,8 +553,6 @@ class ColumnOperators(Operators):
         Renders "a IS DISTINCT FROM b" on most platforms;
         on some such as SQLite may render "a IS NOT b".
 
-        .. versionadded:: 1.1
-
         """
         return self.operate(is_distinct_from, other)
 
@@ -568,8 +566,6 @@ class ColumnOperators(Operators):
            renamed from ``isnot_distinct_from()`` in previous releases.
            The previous name remains available for backwards compatibility.
 
-        .. versionadded:: 1.1
-
         """
         return self.operate(is_not_distinct_from, other)
 
@@ -1760,8 +1756,6 @@ class ColumnOperators(Operators):
             :meth:`_types.ARRAY.Comparator.any` method, which a different
             calling syntax and usage pattern.
 
-        .. versionadded:: 1.1
-
         """
         return self.operate(any_op)
 
@@ -1777,9 +1771,6 @@ class ColumnOperators(Operators):
             :meth:`_types.ARRAY.Comparator.all` method, which a different
             calling syntax and usage pattern.
 
-
-        .. versionadded:: 1.1
-
         """
         return self.operate(all_op)
 
index ab56d2552ca7c7151c6d3f556773c76b07fc9784..c8d99cf891fbe921e87468308bf91cacf8f68f8b 100644 (file)
@@ -139,8 +139,6 @@ class SchemaConst(Enum):
 
         :paramref:`.Sequence.schema`
 
-    .. versionadded:: 1.0.14
-
     """
 
     NULL_UNSPECIFIED = 3
@@ -777,12 +775,6 @@ class Table(
             :class:`_schema.MetaData`,
             specify the special symbol :attr:`.BLANK_SCHEMA`.
 
-            .. versionadded:: 1.0.14  Added the :attr:`.BLANK_SCHEMA` symbol to
-              allow a :class:`_schema.Table`
-              to have a blank schema name even when the
-              parent :class:`_schema.MetaData` specifies
-              :paramref:`_schema.MetaData.schema`.
-
             The quoting rules for the schema name are the same as those for the
             ``name`` parameter, in that quoting is applied for reserved words or
             case-sensitive names; to enable unconditional quoting for the schema
@@ -1271,16 +1263,12 @@ class Table(
                 new_table = table.to_metadata(m2, schema="alt_schema",
                                         referred_schema_fn=referred_schema_fn)
 
-         .. versionadded:: 0.9.2
-
         :param name: optional string name indicating the target table name.
          If not specified or None, the table name is retained.  This allows
          a :class:`_schema.Table` to be copied to the same
          :class:`_schema.MetaData` target
          with a new name.
 
-         .. versionadded:: 1.0.0
-
         """
         if name is None:
             name = self.name
@@ -1438,12 +1426,6 @@ class Column(DialectKWArgs, SchemaItem, ColumnClause[_T]):
           well, at the moment that the foreign key is resolved against that
           remote :class:`_schema.Column` object.
 
-          .. versionchanged:: 0.9.0
-            Support for propagation of type to a :class:`_schema.Column`
-            from its
-            :class:`_schema.ForeignKey` object has been improved and should be
-            more reliable and timely.
-
         :param \*args: Additional positional arguments include various
           :class:`.SchemaItem` derived constructs which will be applied
           as options to the column.  These include instances of
@@ -1520,17 +1502,6 @@ class Column(DialectKWArgs, SchemaItem, ColumnClause[_T]):
           datatype of INTEGER in order to disable auto increment semantics
           for that column.
 
-          .. versionchanged:: 1.1 The autoincrement flag now defaults to
-             ``"auto"`` which indicates autoincrement semantics by default
-             for single-column integer primary keys only; for composite
-             (multi-column) primary keys, autoincrement is never implicitly
-             enabled; as always, ``autoincrement=True`` will allow for
-             at most one of those columns to be an "autoincrement" column.
-             ``autoincrement=True`` may also be set on a
-             :class:`_schema.Column`
-             that has an explicit client-side or server-side default,
-             subject to limitations of the backend database and dialect.
-
           The setting *only* has an effect for columns which are:
 
           * Integer derived (i.e. INT, SMALLINT, BIGINT).
@@ -2612,8 +2583,6 @@ class ForeignKey(DialectKWArgs, SchemaItem):
         :param info: Optional data dictionary which will be populated into the
             :attr:`.SchemaItem.info` attribute of this object.
 
-            .. versionadded:: 1.0.0
-
         :param comment: Optional string that will render an SQL comment on
           foreign key constraint creation.
 
@@ -2627,8 +2596,6 @@ class ForeignKey(DialectKWArgs, SchemaItem):
             an individual dialect at :ref:`dialect_toplevel` for detail on
             documented arguments.
 
-            .. versionadded:: 0.9.2
-
         """
 
         self._colspec = coercions.expect(roles.DDLReferredColumnRole, column)
@@ -3480,8 +3447,6 @@ class Sequence(HasSchemaAttr, IdentityOptions, DefaultGenerator):
          minvalue of 1 and -2^63-1 for ascending and descending sequences,
          respectively.
 
-         .. versionadded:: 1.0.7
-
         :param maxvalue: the maximum value of the sequence.  This
          value is used when the CREATE SEQUENCE command is emitted to
          the database as the value of the "MAXVALUE" clause.  If ``None``,
@@ -3489,8 +3454,6 @@ class Sequence(HasSchemaAttr, IdentityOptions, DefaultGenerator):
          maxvalue of 2^63-1 and -1 for ascending and descending sequences,
          respectively.
 
-         .. versionadded:: 1.0.7
-
         :param nominvalue: no minimum value of the sequence.  This
          value is used when the CREATE SEQUENCE command is emitted to
          the database as the value of the "NO MINVALUE" clause.  If ``None``,
@@ -3498,8 +3461,6 @@ class Sequence(HasSchemaAttr, IdentityOptions, DefaultGenerator):
          minvalue of 1 and -2^63-1 for ascending and descending sequences,
          respectively.
 
-         .. versionadded:: 1.0.7
-
         :param nomaxvalue: no maximum value of the sequence.  This
          value is used when the CREATE SEQUENCE command is emitted to
          the database as the value of the "NO MAXVALUE" clause.  If ``None``,
@@ -3507,8 +3468,6 @@ class Sequence(HasSchemaAttr, IdentityOptions, DefaultGenerator):
          maxvalue of 2^63-1 and -1 for ascending and descending sequences,
          respectively.
 
-         .. versionadded:: 1.0.7
-
         :param cycle: allows the sequence to wrap around when the maxvalue
          or minvalue has been reached by an ascending or descending sequence
          respectively.  This value is used when the CREATE SEQUENCE command
@@ -3518,8 +3477,6 @@ class Sequence(HasSchemaAttr, IdentityOptions, DefaultGenerator):
          after the sequence has reached its maximum value will return an
          error.
 
-         .. versionadded:: 1.0.7
-
         :param schema: optional schema name for the sequence, if located
          in a schema other than the default.  The rules for selecting the
          schema name when a :class:`_schema.MetaData`
@@ -3530,15 +3487,11 @@ class Sequence(HasSchemaAttr, IdentityOptions, DefaultGenerator):
          sequence which are calculated in advance.  Renders the CACHE keyword
          understood by Oracle and PostgreSQL.
 
-         .. versionadded:: 1.1.12
-
         :param order: optional boolean value; if ``True``, renders the
          ORDER keyword, understood by Oracle, indicating the sequence is
          definitively ordered.   May be necessary to provide deterministic
          ordering using Oracle RAC.
 
-         .. versionadded:: 1.1.12
-
         :param data_type: The type to be returned by the sequence, for
          dialects that allow us to choose between INTEGER, BIGINT, etc.
          (e.g., mssql).
@@ -3836,8 +3789,6 @@ class Constraint(DialectKWArgs, HasConditionalDDL, SchemaItem):
         :param info: Optional data dictionary which will be populated into the
             :attr:`.SchemaItem.info` attribute of this object.
 
-            .. versionadded:: 1.0.0
-
         :param comment: Optional string that will render an SQL comment on
           foreign key constraint creation.
 
@@ -4232,8 +4183,6 @@ class CheckConstraint(ColumnCollectionConstraint):
         :param info: Optional data dictionary which will be populated into the
             :attr:`.SchemaItem.info` attribute of this object.
 
-            .. versionadded:: 1.0.0
-
         """
 
         self.sqltext = coercions.expect(roles.DDLExpressionRole, sqltext)
@@ -4369,11 +4318,6 @@ class ForeignKeyConstraint(ColumnCollectionConstraint):
           methods will perform this resolution
           automatically, so the flag is normally not needed.
 
-          .. versionchanged:: 1.0.0  Automatic resolution of foreign key
-             cycles has been added, removing the need to use the
-             :paramref:`_schema.ForeignKeyConstraint.use_alter` in typical use
-             cases.
-
           .. seealso::
 
                 :ref:`use_alter`
@@ -4385,8 +4329,6 @@ class ForeignKeyConstraint(ColumnCollectionConstraint):
         :param info: Optional data dictionary which will be populated into the
             :attr:`.SchemaItem.info` attribute of this object.
 
-            .. versionadded:: 1.0.0
-
         :param comment: Optional string that will render an SQL comment on
           foreign key constraint creation.
 
@@ -4397,8 +4339,6 @@ class ForeignKeyConstraint(ColumnCollectionConstraint):
           the documentation regarding an individual dialect at
           :ref:`dialect_toplevel` for detail on documented arguments.
 
-            .. versionadded:: 0.9.2
-
         """
 
         Constraint.__init__(
@@ -4502,8 +4442,6 @@ class ForeignKeyConstraint(ColumnCollectionConstraint):
         if the constraint and/or parent table is not yet associated with
         a metadata collection that contains the referred table.
 
-        .. versionadded:: 1.0.0
-
         """
         return self.elements[0].column.table
 
@@ -4527,8 +4465,6 @@ class ForeignKeyConstraint(ColumnCollectionConstraint):
         or if the constraint has been initialized with :class:`_schema.Column`
         objects, is the string ``.key`` of each element.
 
-        .. versionadded:: 1.0.0
-
         """
         if hasattr(self, "parent"):
             return self._columns.keys()
@@ -4647,13 +4583,6 @@ class PrimaryKeyConstraint(ColumnCollectionConstraint):
     marked as ``primary_key=True`` are ignored.  This behavior is intended to
     be backwards compatible with previous behavior.
 
-    .. versionchanged:: 0.9.2  Using a mixture of columns within a
-       :class:`.PrimaryKeyConstraint` in addition to columns marked as
-       ``primary_key=True`` now emits a warning if the lists don't match.
-       The ultimate behavior of ignoring those columns marked with the flag
-       only is currently maintained for backwards compatibility; this warning
-       may raise an exception in a future release.
-
     For the use case where specific options are to be specified on the
     :class:`.PrimaryKeyConstraint`, but the usual style of using
     ``primary_key=True`` flags is still desirable, an empty
@@ -4669,13 +4598,6 @@ class PrimaryKeyConstraint(ColumnCollectionConstraint):
                                          mssql_clustered=True)
                 )
 
-    .. versionadded:: 0.9.2 an empty :class:`.PrimaryKeyConstraint` may now
-       be specified for the purposes of establishing keyword arguments with
-       the constraint, independently of the specification of "primary key"
-       columns within the :class:`_schema.Table` itself; columns marked as
-       ``primary_key=True`` will be gathered into the empty constraint's
-       column collection.
-
     """
 
     __visit_name__ = "primary_key_constraint"
@@ -4916,12 +4838,6 @@ class Index(
                         Index("some_index", text("lower(name)"))
                 )
 
-    .. versionadded:: 0.9.5 the :func:`_expression.text`
-       construct may be used to
-       specify :class:`.Index` expressions, provided the :class:`.Index`
-       is explicitly associated with the :class:`_schema.Table`.
-
-
     .. seealso::
 
         :ref:`schema_indexes` - General information on :class:`.Index`.
@@ -4976,8 +4892,6 @@ class Index(
         :param info=None: Optional data dictionary which will be populated
             into the :attr:`.SchemaItem.info` attribute of this object.
 
-            .. versionadded:: 1.0.0
-
         :param \**dialect_kw: Additional keyword arguments not mentioned above
             are dialect specific, and passed in the form
             ``<dialectname>_<argname>``. See the documentation regarding an
@@ -5138,8 +5052,6 @@ class MetaData(HasSchemaAttr):
         :param info: Optional data dictionary which will be populated into the
             :attr:`.SchemaItem.info` attribute of this object.
 
-            .. versionadded:: 1.0.0
-
         :param naming_convention: a dictionary referring to values which
           will establish default naming conventions for :class:`.Constraint`
           and :class:`.Index` objects, for those objects which are not given
@@ -5429,14 +5341,10 @@ class MetaData(HasSchemaAttr):
         :param extend_existing: Passed along to each :class:`_schema.Table` as
           :paramref:`_schema.Table.extend_existing`.
 
-          .. versionadded:: 0.9.1
-
         :param autoload_replace: Passed along to each :class:`_schema.Table`
           as
           :paramref:`_schema.Table.autoload_replace`.
 
-          .. versionadded:: 0.9.1
-
         :param resolve_fks: if True, reflect :class:`_schema.Table`
          objects linked
          to :class:`_schema.ForeignKey` objects located in each
@@ -5468,11 +5376,6 @@ class MetaData(HasSchemaAttr):
          individual dialect at :ref:`dialect_toplevel` for detail on
          documented arguments.
 
-          .. versionadded:: 0.9.2 - Added
-             :paramref:`.MetaData.reflect.**dialect_kwargs` to support
-             dialect-level reflection options for all :class:`_schema.Table`
-             objects reflected.
-
         """
 
         with inspection.inspect(bind)._inspection_context() as insp:
index 56cca6f73d220162d94196957aa1070a1fb3470f..5f530ba7dc5c2011b9ffcfe750fb464868c74ba9 100644 (file)
@@ -302,8 +302,6 @@ class Selectable(ReturnsRows):
         The return value is the :class:`_expression.Lateral` construct also
         provided by the top-level :func:`_expression.lateral` function.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`tutorial_lateral_correlation` -  overview of usage.
@@ -491,8 +489,6 @@ class HasHints:
         directives such as isolation levels, file directives, fetch directives,
         etc.
 
-        .. versionadded:: 1.0.0
-
         .. seealso::
 
             :meth:`_expression.Select.with_hint`
@@ -671,8 +667,6 @@ class FromClause(roles.AnonymizedFromClauseRole, Selectable):
         :param full: if True, render a FULL OUTER JOIN, instead of LEFT OUTER
          JOIN.  Implies :paramref:`.FromClause.join.isouter`.
 
-         .. versionadded:: 1.1
-
         .. seealso::
 
             :func:`_expression.join` - standalone function
@@ -722,8 +716,6 @@ class FromClause(roles.AnonymizedFromClauseRole, Selectable):
         :param full: if True, render a FULL OUTER JOIN, instead of
          LEFT OUTER JOIN.
 
-         .. versionadded:: 1.1
-
         .. seealso::
 
             :meth:`_expression.FromClause.join`
@@ -769,8 +761,6 @@ class FromClause(roles.AnonymizedFromClauseRole, Selectable):
         construct also
         provided by the top-level :func:`_expression.tablesample` function.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :func:`_expression.tablesample` - usage guidelines and parameters
@@ -1922,8 +1912,6 @@ class Lateral(FromClauseAlias, LateralFromClause):
     While LATERAL is part of the SQL standard, currently only more recent
     PostgreSQL versions provide support for this keyword.
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :ref:`tutorial_lateral_correlation` -  overview of usage.
@@ -1954,8 +1942,6 @@ class TableSample(FromClauseAlias):
     method
     available on all :class:`_expression.FromClause` subclasses.
 
-    .. versionadded:: 1.1
-
     .. seealso::
 
         :func:`_expression.tablesample`
@@ -2399,11 +2385,7 @@ class SelectsRows(ReturnsRows):
 
 
 class HasCTE(roles.HasCTERole, SelectsRows):
-    """Mixin that declares a class to include CTE support.
-
-    .. versionadded:: 1.1
-
-    """
+    """Mixin that declares a class to include CTE support."""
 
     _has_ctes_traverse_internals: _TraverseInternalsType = [
         ("_independent_ctes", InternalTraversal.dp_clauseelement_list),
@@ -2539,9 +2521,6 @@ class HasCTE(roles.HasCTERole, SelectsRows):
         when combined with RETURNING, as well as a consumer of
         CTE rows.
 
-        .. versionchanged:: 1.1 Added support for UPDATE/INSERT/DELETE as
-           CTE, CTEs added to UPDATE/INSERT/DELETE.
-
         SQLAlchemy detects :class:`_expression.CTE` objects, which are treated
         similarly to :class:`_expression.Alias` objects, as special elements
         to be delivered to the FROM clause of the statement as well
@@ -3573,8 +3552,6 @@ class SelectBase(
         The return value is the :class:`_expression.Lateral` construct also
         provided by the top-level :func:`_expression.lateral` function.
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`tutorial_lateral_correlation` -  overview of usage.
@@ -4010,9 +3987,6 @@ class GenerativeSelect(SelectBase, Generative):
            The :meth:`_sql.GenerativeSelect.limit` method will replace
            any clause applied with :meth:`_sql.GenerativeSelect.fetch`.
 
-        .. versionchanged:: 1.0.0 - :meth:`_expression.Select.limit` can now
-           accept arbitrary SQL expressions as well as integer values.
-
         :param limit: an integer LIMIT parameter, or a SQL expression
          that provides an integer result. Pass ``None`` to reset it.
 
@@ -4095,10 +4069,6 @@ class GenerativeSelect(SelectBase, Generative):
         support ``OFFSET`` will attempt to provide similar
         functionality.
 
-
-        .. versionchanged:: 1.0.0 - :meth:`_expression.Select.offset` can now
-           accept arbitrary SQL expressions as well as integer values.
-
         :param offset: an integer OFFSET parameter, or a SQL expression
          that provides an integer result. Pass ``None`` to reset it.
 
index 553b07442f35cdced27ffc14a76dd283855098c5..4e7514e38dadd5cc0690956d1d314ba88719e383 100644 (file)
@@ -146,10 +146,6 @@ class Indexable(TypeEngineMixin):
     """A mixin that marks a type as supporting indexing operations,
     such as array or JSON structures.
 
-
-    .. versionadded:: 1.1.0
-
-
     """
 
     class Comparator(TypeEngine.Comparator[_T]):
@@ -692,8 +688,6 @@ class Float(Numeric[_N]):
          MySQL float types, which do include "scale", will use "scale"
          as the default for decimal_return_scale, if not otherwise specified.
 
-         .. versionadded:: 0.9.0
-
         """  # noqa: E501
         self.precision = precision
         self.asdecimal = asdecimal
@@ -1238,10 +1232,6 @@ class Enum(String, SchemaType, Emulated, TypeEngine[Union[str, enum.Enum]]):
     impacts usage of LIKE expressions with enumerated values (an unusual
     use case).
 
-    .. versionchanged:: 1.1 the :class:`.Enum` type now provides in-Python
-       validation of input values as well as on data being returned by
-       the database.
-
     The source of enumerated values may be a list of string values, or
     alternatively a PEP-435-compliant enumerated class.  For the purposes
     of the :class:`.Enum` datatype, this class need only provide a
@@ -1279,10 +1269,6 @@ class Enum(String, SchemaType, Emulated, TypeEngine[Union[str, enum.Enum]]):
     values to be persisted.   For a simple enumeration that uses string values,
     a callable such as  ``lambda x: [e.value for e in x]`` is sufficient.
 
-    .. versionadded:: 1.1 - support for PEP-435-style enumerated
-       classes.
-
-
     .. seealso::
 
         :ref:`orm_declarative_mapped_column_enums` - background on using
@@ -1308,9 +1294,6 @@ class Enum(String, SchemaType, Emulated, TypeEngine[Union[str, enum.Enum]]):
         :param \*enums: either exactly one PEP-435 compliant enumerated type
            or one or more string labels.
 
-           .. versionadded:: 1.1 a PEP-435 style enumerated class may be
-              passed.
-
         :param create_constraint: defaults to False.  When creating a
            non-native enumerated type, also build a CHECK constraint on the
            database against the valid values.
@@ -1406,8 +1389,6 @@ class Enum(String, SchemaType, Emulated, TypeEngine[Union[str, enum.Enum]]):
            for validity against the list of enumerated values.  Unrecognized
            values will result in a ``LookupError`` being raised.
 
-           .. versionadded:: 1.1.0b2
-
         :param values_callable: A callable which will be passed the PEP-435
            compliant enumerated type, which should then return a list of string
            values to be persisted. This allows for alternate usages such as
@@ -2367,9 +2348,6 @@ class JSON(Indexable, TypeEngine[Any]):
 
         :class:`sqlalchemy.dialects.sqlite.JSON`
 
-    .. versionadded:: 1.1
-
-
     """
 
     __visit_name__ = "JSON"
@@ -2856,8 +2834,6 @@ class ARRAY(
         Alternatively, assigning a new array value to an ORM element that
         replaces the old one will always trigger a change event.
 
-    .. versionadded:: 1.1.0
-
     .. seealso::
 
         :class:`sqlalchemy.dialects.postgresql.ARRAY`
@@ -3534,8 +3510,6 @@ class MatchType(Boolean):
     The type allows dialects to inject result-processing functionality
     if needed, and on MySQL will return floating-point values.
 
-    .. versionadded:: 1.0.0
-
     """
 
 
index 7167430f14d6b81aec11576689be56c6adf12e08..ddbdb49a096860fc4eb4f7ecbbc0ef3b90f8454a 100644 (file)
@@ -292,9 +292,6 @@ class TypeEngine(Visitable, Generic[_T]):
 
         :meth:`.TypeEngine.evaluates_none`
 
-    .. versionadded:: 1.1
-
-
     """
 
     _variant_mapping: util.immutabledict[
@@ -337,8 +334,6 @@ class TypeEngine(Visitable, Generic[_T]):
             ``None``
             still means "no default".
 
-        .. versionadded:: 1.1
-
         .. seealso::
 
             :ref:`session_forcing_null` - in the ORM documentation
@@ -380,8 +375,6 @@ class TypeEngine(Visitable, Generic[_T]):
 
         :param conn_type: the type object reflected from the backend.
 
-        .. versionadded:: 1.0.3
-
         """
         return None
 
@@ -1364,10 +1357,6 @@ class UserDefinedType(
     introspection is used to check for this in order to support legacy
     forms of this function.
 
-    .. versionadded:: 1.0.0 the owning expression is passed to
-       the ``get_col_spec()`` method via the keyword argument
-       ``type_expression``, if it receives ``**kw`` in its signature.
-
     The :attr:`.UserDefinedType.cache_ok` class-level flag indicates if this
     custom :class:`.UserDefinedType` is safe to be used as part of a cache key.
     This flag defaults to ``None`` which will initially generate a warning