summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2020-06-25 15:00:49 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2020-06-25 15:00:49 -0400
commitc5856abb35e73c9a46b87f16029e9810c7bda55a (patch)
treeb83af2a14cd9135e2f29373ffacc3b6cd97e0461
parent951c9c3d019108078f4a897585ba569e795251b5 (diff)
downloadsqlalchemy-c5856abb35e73c9a46b87f16029e9810c7bda55a.tar.gz
cherry-pick changelog from 1.3.18
-rw-r--r--doc/build/changelog/changelog_13.rst183
-rw-r--r--doc/build/changelog/unreleased_13/4860.rst6
-rw-r--r--doc/build/changelog/unreleased_13/5198.rst8
-rw-r--r--doc/build/changelog/unreleased_13/5260.rst6
-rw-r--r--doc/build/changelog/unreleased_13/5276.rst7
-rw-r--r--doc/build/changelog/unreleased_13/5294.rst6
-rw-r--r--doc/build/changelog/unreleased_13/5297.rst6
-rw-r--r--doc/build/changelog/unreleased_13/5309.rst7
-rw-r--r--doc/build/changelog/unreleased_13/5321.rst7
-rw-r--r--doc/build/changelog/unreleased_13/5324_identity_options.rst6
-rw-r--r--doc/build/changelog/unreleased_13/5326.rst9
-rw-r--r--doc/build/changelog/unreleased_13/5339.rst7
-rw-r--r--doc/build/changelog/unreleased_13/5341.rst7
-rw-r--r--doc/build/changelog/unreleased_13/5344.rst8
-rw-r--r--doc/build/changelog/unreleased_13/5346.rst9
-rw-r--r--doc/build/changelog/unreleased_13/5353.rst10
-rw-r--r--doc/build/changelog/unreleased_13/5359.rst8
-rw-r--r--doc/build/changelog/unreleased_13/5366.rst11
-rw-r--r--doc/build/changelog/unreleased_13/5373.rst8
-rw-r--r--doc/build/changelog/unreleased_13/5395.rst7
-rw-r--r--doc/build/changelog/unreleased_13/5421.rst10
-rw-r--r--doc/build/changelog/unreleased_13/perf_suite.rst7
22 files changed, 182 insertions, 161 deletions
diff --git a/doc/build/changelog/changelog_13.rst b/doc/build/changelog/changelog_13.rst
index 0b58c24c3..d3fab10dc 100644
--- a/doc/build/changelog/changelog_13.rst
+++ b/doc/build/changelog/changelog_13.rst
@@ -12,7 +12,188 @@
.. changelog::
:version: 1.3.18
- :include_notes_from: unreleased_13
+ :released: June 25, 2020
+
+ .. change::
+ :tags: bug, sqlite
+ :tickets: 5395
+
+ Added "exists" to the list of reserved words for SQLite so that this word
+ will be quoted when used as a label or column name. Pull request courtesy
+ Thodoris Sotiropoulos.
+
+ .. change::
+ :tags: bug, mssql
+ :tickets: 5366, 5364
+
+ Refined the logic used by the SQL Server dialect to interpret multi-part
+ schema names that contain many dots, to not actually lose any dots if the
+ name does not have bracking or quoting used, and additionally to support a
+ "dbname" token that has many parts including that it may have multiple,
+ independently-bracketed sections.
+
+
+
+ .. change::
+ :tags: bug, mssql, pyodbc
+ :tickets: 5346
+
+ Fixed an issue in the pyodbc connector such that a warning about pyodbc
+ "drivername" would be emitted when using a totally empty URL. Empty URLs
+ are normal when producing a non-connected dialect object or when using the
+ "creator" argument to create_engine(). The warning now only emits if the
+ driver name is missing but other parameters are still present.
+
+ .. change::
+ :tags: bug, mssql
+ :tickets: 5373
+
+ Fixed issue with assembling the ODBC connection string for the pyodbc
+ DBAPI. Tokens containing semicolons and/or braces "{}" were not being
+ correctly escaped, causing the ODBC driver to misinterpret the
+ connection string attributes.
+
+ .. change::
+ :tags: usecase, orm
+ :tickets: 5326
+
+ Improve error message when using :meth:`_query.Query.filter_by` in
+ a query where the first entity is not a mapped class.
+
+ .. change::
+ :tags: sql, schema
+ :tickets: 5324
+
+ Introduce :class:`.IdentityOptions` to store common parameters for
+ sequences and identity columns.
+
+ .. change::
+ :tags: usecase, sql
+ :tickets: 5309
+
+ Added a ".schema" parameter to the :func:`_expression.table` construct,
+ allowing ad-hoc table expressions to also include a schema name.
+ Pull request courtesy Dylan Modesitt.
+
+ .. change::
+ :tags: bug, mssql
+ :tickets: 5339
+
+ Fixed issue where ``datetime.time`` parameters were being converted to
+ ``datetime.datetime``, making them incompatible with comparisons like
+ ``>=`` against an actual :class:`_mssql.TIME` column.
+
+ .. change::
+ :tags: bug, mssql
+ :tickets: 5359
+
+ Fixed an issue where the ``is_disconnect`` function in the SQL Server
+ pyodbc dialect was incorrectly reporting the disconnect state when the
+ exception messsage had a substring that matched a SQL Server ODBC error
+ code.
+
+ .. change::
+ :tags: bug, engine
+ :tickets: 5326
+
+ Further refinements to the fixes to the "reset" agent fixed in
+ :ticket:`5326`, which now emits a warning when it is not being correctly
+ invoked and corrects for the behavior. Additional scenarios have been
+ identified and fixed where this warning was being emitted.
+
+
+ .. change::
+ :tags: usecase, sqlite
+ :tickets: 5297
+
+ SQLite 3.31 added support for computed column. This change
+ enables their support in SQLAlchemy when targeting SQLite.
+
+ .. change::
+ :tags: bug, schema
+ :tickets: 5276
+
+ Fixed issue where ``dialect_options`` were omitted when a
+ database object (e.g., :class:`.Table`) was copied using
+ :func:`.tometadata`.
+
+ .. change::
+ :tags: bug, sql
+ :tickets: 5344
+
+ Correctly apply self_group in type_coerce element.
+
+ The type coerce element did not correctly apply grouping rules when using
+ in an expression
+
+ .. change::
+ :tags: bug, oracle, reflection
+ :tickets: 5421
+
+ Fixed bug in Oracle dialect where indexes that contain the full set of
+ primary key columns would be mistaken as the primary key index itself,
+ which is omitted, even if there were multiples. The check has been refined
+ to compare the name of the primary key constraint against the index name
+ itself, rather than trying to guess based on the columns present in the
+ index.
+
+ .. change::
+ :tags: change, sql, sybase
+ :tickets: 5294
+
+ Added ``.offset`` support to sybase dialect.
+ Pull request courtesy Alan D. Snow.
+
+ .. change::
+ :tags: bug, engine
+ :tickets: 5341
+
+ Fixed issue in :class:`.URL` object where stringifying the object
+ would not URL encode special characters, preventing the URL from being
+ re-consumable as a real URL. Pull request courtesy Miguel Grinberg.
+
+ .. change::
+ :tags: usecase, mysql
+ :tickets: 4860
+
+ Implemented row-level locking support for mysql. Pull request courtesy
+ Quentin Somerville.
+
+ .. change::
+ :tags: change, mssql
+ :tickets: 5321
+
+ Moved the ``supports_sane_rowcount_returning = False`` requirement from
+ the ``PyODBCConnector`` level to the ``MSDialect_pyodbc`` since pyodbc
+ does work properly in some circumstances.
+
+ .. change::
+ :tags: change, examples
+
+ Added new option ``--raw`` to the examples.performance suite
+ which will dump the raw profile test for consumption by any
+ number of profiling visualizer tools. Removed the "runsnake"
+ option as runsnake is very hard to build at this point;
+
+ .. change::
+ :tags: bug, sql
+ :tickets: 5353
+
+ Added :meth:`.Select.with_hint` output to the generic SQL string that is
+ produced when calling ``str()`` on a statement. Previously, this clause
+ would be omitted under the assumption that it was dialect specific.
+ The hint text is presented within brackets to indicate the rendering
+ of such hints varies among backends.
+
+
+ .. change::
+ :tags: usecase, orm
+ :tickets: 5198
+
+ Added a new parameter :paramref:`_orm.query_expression.default_expr` to the
+ :func:`_orm.query_expression` construct, which will be appled to queries
+ automatically if the :func:`_orm.with_expression` option is not used. Pull
+ request courtesy Haoyu Sun.
.. changelog::
:version: 1.3.17
diff --git a/doc/build/changelog/unreleased_13/4860.rst b/doc/build/changelog/unreleased_13/4860.rst
deleted file mode 100644
index b526ce31e..000000000
--- a/doc/build/changelog/unreleased_13/4860.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-.. change::
- :tags: usecase, mysql
- :tickets: 4860
-
- Implemented row-level locking support for mysql. Pull request courtesy
- Quentin Somerville. \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/5198.rst b/doc/build/changelog/unreleased_13/5198.rst
deleted file mode 100644
index b19da1e08..000000000
--- a/doc/build/changelog/unreleased_13/5198.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-.. change::
- :tags: usecase, orm
- :tickets: 5198
-
- Added a new parameter :paramref:`_orm.query_expression.default_expr` to the
- :func:`_orm.query_expression` construct, which will be appled to queries
- automatically if the :func:`_orm.with_expression` option is not used. Pull
- request courtesy Haoyu Sun. \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/5260.rst b/doc/build/changelog/unreleased_13/5260.rst
deleted file mode 100644
index 18e1ddeb0..000000000
--- a/doc/build/changelog/unreleased_13/5260.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-.. change::
- :tags: usecase, orm
- :tickets: 5326
-
- Improve error message when using :meth:`_query.Query.filter_by` in
- a query where the first entity is not a mapped class.
diff --git a/doc/build/changelog/unreleased_13/5276.rst b/doc/build/changelog/unreleased_13/5276.rst
deleted file mode 100644
index d7c05d747..000000000
--- a/doc/build/changelog/unreleased_13/5276.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-.. change::
- :tags: bug, schema
- :tickets: 5276
-
- Fixed issue where ``dialect_options`` were omitted when a
- database object (e.g., :class:`.Table`) was copied using
- :func:`.tometadata`. \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/5294.rst b/doc/build/changelog/unreleased_13/5294.rst
deleted file mode 100644
index b564dc10d..000000000
--- a/doc/build/changelog/unreleased_13/5294.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-.. change::
- :tags: change, sql, sybase
- :tickets: 5294
-
- Added ``.offset`` support to sybase dialect.
- Pull request courtesy Alan D. Snow.
diff --git a/doc/build/changelog/unreleased_13/5297.rst b/doc/build/changelog/unreleased_13/5297.rst
deleted file mode 100644
index 1fb1508c5..000000000
--- a/doc/build/changelog/unreleased_13/5297.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-.. change::
- :tags: usecase, sqlite
- :tickets: 5297
-
- SQLite 3.31 added support for computed column. This change
- enables their support in SQLAlchemy when targeting SQLite.
diff --git a/doc/build/changelog/unreleased_13/5309.rst b/doc/build/changelog/unreleased_13/5309.rst
deleted file mode 100644
index 89ab14b06..000000000
--- a/doc/build/changelog/unreleased_13/5309.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-.. change::
- :tags: usecase, sql
- :tickets: 5309
-
- Added a ".schema" parameter to the :func:`_expression.table` construct,
- allowing ad-hoc table expressions to also include a schema name.
- Pull request courtesy Dylan Modesitt.
diff --git a/doc/build/changelog/unreleased_13/5321.rst b/doc/build/changelog/unreleased_13/5321.rst
deleted file mode 100644
index 485afad85..000000000
--- a/doc/build/changelog/unreleased_13/5321.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-.. change::
- :tags: change, mssql
- :tickets: 5321
-
- Moved the ``supports_sane_rowcount_returning = False`` requirement from
- the ``PyODBCConnector`` level to the ``MSDialect_pyodbc`` since pyodbc
- does work properly in some circumstances.
diff --git a/doc/build/changelog/unreleased_13/5324_identity_options.rst b/doc/build/changelog/unreleased_13/5324_identity_options.rst
deleted file mode 100644
index 44d78e06a..000000000
--- a/doc/build/changelog/unreleased_13/5324_identity_options.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-.. change::
- :tags: sql, schema
- :tickets: 5324
-
- Introduce :class:`.IdentityOptions` to store common parameters for
- sequences and identity columns.
diff --git a/doc/build/changelog/unreleased_13/5326.rst b/doc/build/changelog/unreleased_13/5326.rst
deleted file mode 100644
index 801ff4a42..000000000
--- a/doc/build/changelog/unreleased_13/5326.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-.. change::
- :tags: bug, engine
- :tickets: 5326
-
- Further refinements to the fixes to the "reset" agent fixed in
- :ticket:`5326`, which now emits a warning when it is not being correctly
- invoked and corrects for the behavior. Additional scenarios have been
- identified and fixed where this warning was being emitted.
-
diff --git a/doc/build/changelog/unreleased_13/5339.rst b/doc/build/changelog/unreleased_13/5339.rst
deleted file mode 100644
index efff6b205..000000000
--- a/doc/build/changelog/unreleased_13/5339.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-.. change::
- :tags: bug, mssql
- :tickets: 5339
-
- Fixed issue where ``datetime.time`` parameters were being converted to
- ``datetime.datetime``, making them incompatible with comparisons like
- ``>=`` against an actual :class:`_mssql.TIME` column.
diff --git a/doc/build/changelog/unreleased_13/5341.rst b/doc/build/changelog/unreleased_13/5341.rst
deleted file mode 100644
index 28df9cb58..000000000
--- a/doc/build/changelog/unreleased_13/5341.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-.. change::
- :tags: bug, engine
- :tickets: 5341
-
- Fixed issue in :class:`.URL` object where stringifying the object
- would not URL encode special characters, preventing the URL from being
- re-consumable as a real URL. Pull request courtesy Miguel Grinberg. \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/5344.rst b/doc/build/changelog/unreleased_13/5344.rst
deleted file mode 100644
index d2e598c7b..000000000
--- a/doc/build/changelog/unreleased_13/5344.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-.. change::
- :tags: bug, sql
- :tickets: 5344
-
- Correctly apply self_group in type_coerce element.
-
- The type coerce element did not correctly apply grouping rules when using
- in an expression \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/5346.rst b/doc/build/changelog/unreleased_13/5346.rst
deleted file mode 100644
index 7b4e0fb4e..000000000
--- a/doc/build/changelog/unreleased_13/5346.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-.. change::
- :tags: bug, mssql, pyodbc
- :tickets: 5346
-
- Fixed an issue in the pyodbc connector such that a warning about pyodbc
- "drivername" would be emitted when using a totally empty URL. Empty URLs
- are normal when producing a non-connected dialect object or when using the
- "creator" argument to create_engine(). The warning now only emits if the
- driver name is missing but other parameters are still present.
diff --git a/doc/build/changelog/unreleased_13/5353.rst b/doc/build/changelog/unreleased_13/5353.rst
deleted file mode 100644
index 39a5ba490..000000000
--- a/doc/build/changelog/unreleased_13/5353.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. change::
- :tags: bug, sql
- :tickets: 5353
-
- Added :meth:`.Select.with_hint` output to the generic SQL string that is
- produced when calling ``str()`` on a statement. Previously, this clause
- would be omitted under the assumption that it was dialect specific.
- The hint text is presented within brackets to indicate the rendering
- of such hints varies among backends.
-
diff --git a/doc/build/changelog/unreleased_13/5359.rst b/doc/build/changelog/unreleased_13/5359.rst
deleted file mode 100644
index b5f690db8..000000000
--- a/doc/build/changelog/unreleased_13/5359.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-.. change::
- :tags: bug, mssql
- :tickets: 5359
-
- Fixed an issue where the ``is_disconnect`` function in the SQL Server
- pyodbc dialect was incorrectly reporting the disconnect state when the
- exception messsage had a substring that matched a SQL Server ODBC error
- code. \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/5366.rst b/doc/build/changelog/unreleased_13/5366.rst
deleted file mode 100644
index ff694397f..000000000
--- a/doc/build/changelog/unreleased_13/5366.rst
+++ /dev/null
@@ -1,11 +0,0 @@
-.. change::
- :tags: bug, mssql
- :tickets: 5366, 5364
-
- Refined the logic used by the SQL Server dialect to interpret multi-part
- schema names that contain many dots, to not actually lose any dots if the
- name does not have bracking or quoting used, and additionally to support a
- "dbname" token that has many parts including that it may have multiple,
- independently-bracketed sections.
-
-
diff --git a/doc/build/changelog/unreleased_13/5373.rst b/doc/build/changelog/unreleased_13/5373.rst
deleted file mode 100644
index 4396fbde3..000000000
--- a/doc/build/changelog/unreleased_13/5373.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-.. change::
- :tags: bug, mssql
- :tickets: 5373
-
- Fixed issue with assembling the ODBC connection string for the pyodbc
- DBAPI. Tokens containing semicolons and/or braces "{}" were not being
- correctly escaped, causing the ODBC driver to misinterpret the
- connection string attributes. \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/5395.rst b/doc/build/changelog/unreleased_13/5395.rst
deleted file mode 100644
index 9e11cdcba..000000000
--- a/doc/build/changelog/unreleased_13/5395.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-.. change::
- :tags: bug, sqlite
- :tickets: 5395
-
- Added "exists" to the list of reserved words for SQLite so that this word
- will be quoted when used as a label or column name. Pull request courtesy
- Thodoris Sotiropoulos.
diff --git a/doc/build/changelog/unreleased_13/5421.rst b/doc/build/changelog/unreleased_13/5421.rst
deleted file mode 100644
index d0e10dd1d..000000000
--- a/doc/build/changelog/unreleased_13/5421.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-.. change::
- :tags: bug, oracle, reflection
- :tickets: 5421
-
- Fixed bug in Oracle dialect where indexes that contain the full set of
- primary key columns would be mistaken as the primary key index itself,
- which is omitted, even if there were multiples. The check has been refined
- to compare the name of the primary key constraint against the index name
- itself, rather than trying to guess based on the columns present in the
- index. \ No newline at end of file
diff --git a/doc/build/changelog/unreleased_13/perf_suite.rst b/doc/build/changelog/unreleased_13/perf_suite.rst
deleted file mode 100644
index f928cd3ed..000000000
--- a/doc/build/changelog/unreleased_13/perf_suite.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-.. change::
- :tags: change, examples
-
- Added new option ``--raw`` to the examples.performance suite
- which will dump the raw profile test for consumption by any
- number of profiling visualizer tools. Removed the "runsnake"
- option as runsnake is very hard to build at this point;