| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
These are not compatible with SQLAlchemy 2.0 due to their reliance on
nested transactions. We should deprecate them first but doing so would
push the boat out further wrt how long we have to wait before achieving
compatibility with this new version.
Change-Id: If3db4e8c1b681c0c62d3f04a57f92802639b3b9b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The Session.begin.subtransactions flag is deprecated and will be
removed in SQLAlchemy version 2.0. See the documentation at
session_subtransactions for background on a compatible alternative
pattern.
Change-Id: Ib2537bae77861ee60d17a48a72c57b88e043553e
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The current statement is being autocommitted using implicit
autocommit, which will be removed in SQLAlchemy 2.0. Use the .begin()
method of Engine or Connection in order to use an explicit transaction
for DML and DDL statements.
Change-Id: Ib789cd4d11a3d5dd01fcdb99822025b11bbc234e
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Update python testing classifier
Yoga testing runtime[1] has been updated to add py39
testing as voting. Unit tests update are handled by the
job template change in openstack-zuul-job
- https://review.opendev.org/c/openstack/openstack-zuul-jobs/+/820286
this commit updates the classifier in setup.cfg file.
[1] https://governance.openstack.org/tc/reference/runtimes/yoga.html
Change-Id: I42c52cc13abeb14957676b47ce1b1b52799d499b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There are more various warning filters pre-configured in a typical
Python environment, including a few from third-party libraries such as
requests [1][2] and urllib3 [3] as well as stdlib [4]. Our fixture to
configure warnings, 'WarningsFixture', called 'warnings.resetwarnings'
which *reset* all the warning filters [5]. This is clearly not something
we want to do, and resulted in tests puking warnings after the initial
test run.
Resolve this by backing up the existing warning filters before applying
the filter, and then *restoring* this original list of warning filters
after the test run.
[1] https://github.com/psf/requests/blob/v2.26.0/requests/__init__.py#L127
[2] https://github.com/psf/requests/blob/v2.26.0/requests/__init__.py#L152
[3] https://github.com/urllib3/urllib3/blob/1.26.7/src/urllib3/__init__.py#L68-L78
[4] https://docs.python.org/3.8/library/warnings.html#default-warning-filter
[5] https://docs.python.org/3.8/library/warnings.html#warnings.resetwarnings
Change-Id: Ie74dad3f20002dd26fa9760c9ba452c4a40186c5
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The Engine.execute() method is considered legacy as of the 1.x series
of SQLAlchemy and will be removed in 2.0. All statement execution in
SQLAlchemy 2.0 is performed by the Connection.execute() method of
Connection, or in the ORM by the Session.execute() method of Session.
Change-Id: I4c47a690a94abcb3b4b6fb087a1bf86c5350b523
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning:
Calling the mapper() function directly outside of a declarative
registry is deprecated. Please use the
sqlalchemy.orm.registry.map_imperatively() function for a classical
mapping.
Change-Id: I92a7ccdd48eedd4c788384033743daf50a9dc113
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The connection.execute() method in SQLAlchemy 2.0 will accept
parameters as a single dictionary or a single sequence of dictionaries
only. Parameters passed as keyword arguments, tuples or positionally
oriented dictionaries and/or tuples will no longer be accepted.
Change-Id: I44675fce86337696b6494abc03e8058af32686c6
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The Executable.execute() method is considered legacy as of the 1.x
series of SQLAlchemy and will be removed in 2.0. All statement
execution in SQLAlchemy 2.0 is performed by the Connection.execute()
method of Connection, or in the ORM by the Session.execute() method of
Session.
Change-Id: Ie0acba4a315c85ec7236e44a22449e0ad920ca9b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| | |
Looks like we solved this along the way.
Change-Id: I50469e58fe3fae695316cb344fea44ec18fffe60
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The Engine.scalar() method is considered legacy as of the 1.x series
of SQLAlchemy and will be removed in 2.0. All statement execution in
SQLAlchemy 2.0 is performed by the Connection.execute() method of
Connection, or in the ORM by the Session.execute() method of Session;
the Result.scalar() method can then be used to return a scalar result.
Change-Id: Ic3c9c5bb008b6299f2ed9a59bda0329fab9d554d
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The Row.keys() method is considered legacy as of the 1.x series of
SQLAlchemy and will be removed in 2.0. Use the namedtuple standard
accessor Row._fields, or for full mapping behavior use
row._mapping.keys()
Change-Id: I647a57909df56fec7b570ae29efbc731126df14d
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
Using non-integer/slice indices on Row is deprecated and will be
removed in version 2.0; please use row._mapping[<key>], or the
mappings() accessor on the Result object.
Change-Id: I3a4845216914635e5802a70c2b1be757d82b7a49
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Avoid the following warning seen in e.g. nova unit tests:
WARNING oslo_db.sqlalchemy.engines [-] URL postgresql://.../foo does
not contain a '+drivername' portion, and will make use of a default
driver.
A full dbname+drivername:// protocol is recommended.
The 'psycopg2' driver is chosen since this is the default for SQLAlchemy
[1] and therefore what we're currently using.
[1] https://docs.sqlalchemy.org/en/14/core/engines.html#postgresql
Change-Id: I0f8f358a49a83366d7dec17e7bac346453f3027b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for yoga.
See also the PTI in governance [1].
[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html
Change-Id: I460cc3f332c8162e197b53fc2c6ae071cadf3f78
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add file to the reno documentation build to show release notes for
stable/xena.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/xena.
Sem-Ver: feature
Change-Id: I21f4a1416a8dc316817ebc081b73b76992fca867
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We've started using sqlalchemy features that were introduced in 1.4,
which means we need to bump our lower constraint. Do this now.
At some point, we probably want to dump all lower-constraint information
from these files since it's no longer maintainable without the
equivalent job. That's a task left to later, however.
Change-Id: I8629225eeb51d95264d8a3e4b719268bb1597f4f
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
Using plain strings to indicate SQL statements without using the
text() construct is deprecated and will be removed in version 2.0.
Ensure plain SQL statements are passed using the text() construct.
Change-Id: I8acdb54d168afa1a7eac270ad6165faa287311ec
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resolve the following RemovedIn20Warning warning:
The autoload parameter is deprecated and will be removed in version
2.0. Please use the autoload_with parameter, passing an engine or
connection.
Change-Id: Ie039851005c6038591e0e1f6426922ca5b0dcb9a
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|/
|
|
|
|
|
|
|
|
| |
Resolve the following RemovedIn20Warning:
The update.whereclause parameter will be removed in SQLAlchemy 2.0.
Please refer to the Update.where() method.
Change-Id: I50064d16de6e1951b2282fcf9548a0ff2cd0fe55
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Resolve the following MovedIn20Warning:
The ``declarative_base()`` function is now available as
sqlalchemy.orm.declarative_base()
Change-Id: I5fd707c62d0bfad6e54150c4a3b87aadadbeedb3
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Resolve the following RemovedIn20Warning warning:
The update.values parameter will be removed in SQLAlchemy 2.0. Please
refer to the Update.values() method.
Change-Id: I426605aa8f4332fd0b7d9f6fa0e97d7e02c7cbdc
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Resolve the following RemovedIn20Warning warning:
The insert.values parameter will be removed in SQLAlchemy 2.0. Please
refer to the Insert.values() method.
Change-Id: I52ff0c44039d8d1ee09210d9a990d0e40bbfa411
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Resolve the following RemovedIn20Warning warning:
The ``bind`` argument for schema methods that invoke SQL against an
engine or connection will be required in SQLAlchemy 2.0.
Change-Id: If9492a3842055dde3841eaeb72fb4c050563b6ac
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Resolve the following RemovedIn20Warning warning:
Passing a string to Connection.execute() is deprecated and will be
removed in version 2.0. Use the text() construct, or the
Connection.exec_driver_sql() method to invoke a driver-level SQL
string.
Change-Id: I1faa8c957649a04aa080518651045b432c6bd372
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Resolves the following RemovedIn20Warning warning:
The MetaData.bind argument is deprecated and will be removed in
SQLAlchemy 2.0.
Change-Id: I468048c01455d9dfe12004736c181806dc218e37
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Resolve the following SADeprecationWarning warning:
The legacy calling style of select() is deprecated and will be removed
in SQLAlchemy 2.0. Please use the new calling style described at
select().
Change-Id: Ic5f7240e790425d2689c6870483748650a49bc3d
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Well, sort of. We enable them but immediately filter out the ones we're
actually seeing, the rationale being that we can address these in a
piecemeal fashion without the risk of introducing new issues.
Change-Id: I32cad5fd9ddbfd2ff6b62e5e2f87fad6ece7a4c1
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
| |
These are using private APIs of SQLAlchemy but, more importantly, are
not necessary in an alembic-only world. Mark them deprecated for
removal.
Change-Id: I6efb6e1d35542cd8df922c86e134fe1e0b8c2e52
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Highlight use of deprecated SQLAlchemy APIs to ensure we keep on top of
things. This requires resolving the following SADeprecationWarning
warnings:
The from_engine() method on Inspector is deprecated and will be
removed in a future release. Please use the sqlalchemy.inspect()
function on an Engine or Connection in order to acquire an Inspector.
The Column.copy() method is deprecated and will be removed in a future
release.
The ColumnCollectionConstraint.copy() method is deprecated and will be
removed in a future release.
There are more warnings to be resolved related to SQLAlchemy 2.0, but
those require a special environment option (SQLALCHEMY_WARN_20) to
trigger and a lot of work to resolve. We'll address those in a series of
follow-ups.
Change-Id: I34b395e6d50f4e4151178c327d94308e6f5d5b6e
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
| |
The final step in cleaning up our many base classes. This will allow us
to do things consistently across the test suite in future changes.
Change-Id: I0bf663fdfd3c8be93e5658493e221d0a7db78832
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
| |
We have quite a few base test classes in use. Start fixing these by
removing the logic from one of these. We will remove the class entirely
in a future change.
Change-Id: I6dae26aeb4b2a5cc4f39ed637807a27e44d40025
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This base test isn't actually used by anything but we're going to change
that shortly. Before we do, address a longstanding TODO and make it
subclass 'oslotest.BaseTestCase'. Because 'oslotest.BaseTestCase'
already configures all of the fixtures we're currently using, our own
base test class ends up being a simple wrapper. This will also change in
the future.
Change-Id: I110392586fb032507d122ae9a412a6bba7c5ff2d
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This hasn't been supported by any project for many years. Quoting from
the nova patch that removed DB2 support [1]
This removes db2 support from tree completely. This is an oddball non
open database that made doing live data migrations difficult. It is
used by 0% of users in the OpenStack User Survey.
Supporting commercial software that doesn't have users at the cost of
delivering features and fixes to our community is the wrong tradeoff.
This corrects that.
There's no need to keep this around.
[1] Ifeb9929e4515e3483eb65d371126afd7672b92a4
Change-Id: I8c3f23083e09e5ac924e35d1b7b3248a0d074e1b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The 'check_foreign_key' method was removed in oslo.db 1.4.0 [1] and
re-added but marked as deprecated in 1.4.1 [2] to allow for a
deprecation period. That was over 6 years ago so we can now remove it.
Meanwhile, the private '_walk_versions', '_migrate_down' and
'_migrate_up' methods have been marked as deprecated since oslo.db 0.5.0
(!!!) [3]. We can definitely remove these now. codesearch.o.o reveals no
users of any of these methods.
[1] I77a2bba2de08125b5a601de03c1d2d5c73fa33ee
[2] Id892567bd60d6b4b88765bbfe3cd5c5e75910b25
[3] Ic9358445e60a0dd43a5900e8bda7b12f2bebf679
Change-Id: Idb9596284df3e5d038c939d27fe14fe2cc2f4318
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This has been marked as experimented since before oslo.db was split out
of nova. We've no test coverage and no idea of whether it even works
nowadays. It's time to plan for its eventual removal.
Change-Id: Ib7a5a6e1124c44a742b003442f815022a866bcbb
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
|