You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ref: #10892
Updating to SQLAlchemy 1.4 (currently 1.4.0b3 as of 2/15/21) breaks Galaxy. The immediate cause is incompatibility of SQLAlchemy 1.4 with sqlalchemy-utils. The specific error happens because sqlalchemy-utils imports a private member from sqlalchemy (which was removed in this commit). This is just the first error that prevents Galaxy from starting up; there may be more errors.
We use this dependency in 1 unit test + 7 lib modules. We use create_database, database_exists, view.DropView, view.CreateView, and create_view.
I see 3 possible solutions: (a) fix the problem upstream; (b) find an alternative library; (c) implement the required functionality.
EDIT: currently, addressing this upstream.
EDIT 2: after addressing this upstream, I'm restoring the initial version of this issue (see below). Tentatively, I see 2 options: (a) use a patched fork; and (b) implement locally. I'll try both, but I'm inclined to do (b). We really use just a fraction of what sqlalchemy-utils has to offer, so implementing what we need seems the simplest way. To quote the Go community, "A little copying is better than a little dependency".
---restored version:
Given that sqlalchemy-utils is not very actively maintained (v. 0.36.8, highest supported Python = 3.6, last commit on 9/27/20, although there is some discussion in Issues) and has not been updated to support SQLAlchemy 1.4, I think it's unreasonable to patch this one error, as it is unlikely to address the overall compatibility issue.
Selecting another library is an option; however, given the limited scope of its usage in our code base, as well as the relatively simple functionality it provides, I think implementing this in the code base makes more sense. As an extra benefit, that will reduce our dependency graph.
The text was updated successfully, but these errors were encountered:
Ref: #10892
Updating to SQLAlchemy 1.4 (currently 1.4.0b3 as of 2/15/21) breaks Galaxy. The immediate cause is incompatibility of SQLAlchemy 1.4 with sqlalchemy-utils. The specific error happens because sqlalchemy-utils imports a private member from sqlalchemy (which was removed in this commit). This is just the first error that prevents Galaxy from starting up; there may be more errors.
We use this dependency in 1 unit test + 7 lib modules. We use
create_database
,database_exists
,view.DropView
,view.CreateView
, andcreate_view
.I see 3 possible solutions: (a) fix the problem upstream; (b) find an alternative library; (c) implement the required functionality.
EDIT: currently, addressing this upstream.
EDIT 2: after addressing this upstream, I'm restoring the initial version of this issue (see below). Tentatively, I see 2 options: (a) use a patched fork; and (b) implement locally. I'll try both, but I'm inclined to do (b). We really use just a fraction of what sqlalchemy-utils has to offer, so implementing what we need seems the simplest way. To quote the Go community, "A little copying is better than a little dependency".
---restored version:
Given that sqlalchemy-utils is not very actively maintained (v. 0.36.8, highest supported Python = 3.6, last commit on 9/27/20, although there is some discussion in Issues) and has not been updated to support SQLAlchemy 1.4, I think it's unreasonable to patch this one error, as it is unlikely to address the overall compatibility issue.
Selecting another library is an option; however, given the limited scope of its usage in our code base, as well as the relatively simple functionality it provides, I think implementing this in the code base makes more sense. As an extra benefit, that will reduce our dependency graph.
The text was updated successfully, but these errors were encountered: