-
Notifications
You must be signed in to change notification settings - Fork 888
[SYSADMIN ACTION][Dependency] Bump sqlalchemy from 1.4.29 to 2.0.41 in /.setup/pip #11578
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SYSADMIN ACTION][Dependency] Bump sqlalchemy from 1.4.29 to 2.0.41 in /.setup/pip #11578
Conversation
@dependabot rebase |
de19875
to
34485ec
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #11578 +/- ##
============================================
+ Coverage 20.56% 21.72% +1.15%
- Complexity 9282 9303 +21
============================================
Files 268 268
Lines 35574 35696 +122
Branches 457 457
============================================
+ Hits 7317 7755 +438
+ Misses 27804 27488 -316
Partials 453 453
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
A newer version of sqlalchemy exists, but since this PR has been edited by someone other than Dependabot I haven't updated it. You'll get a PR for the updated version as normal once this PR is merged. |
@dependabot recreate |
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 1.4.29 to 2.0.40. - [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases) - [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst) - [Commits](https://github.com/sqlalchemy/sqlalchemy/commits) --- updated-dependencies: - dependency-name: sqlalchemy dependency-version: 2.0.40 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]>
808dd95
to
dca86b7
Compare
This may require updates to the existing Checking for system and database migrations
Running up migrations for master...Traceback (most recent call last):
File "/usr/local/submitty/GIT_CHECKOUT/Submitty/migration/run_migrator.py", line 9, in <module>
cli.run(sys.argv[1:], config_path)
File "/usr/local/submitty/GIT_CHECKOUT/Submitty/migration/migrator/cli.py", line 94, in run
getattr(main, args.command)(args)
File "/usr/local/submitty/GIT_CHECKOUT/Submitty/migration/migrator/main.py", line 171, in migrate
handle_migration(args)
File "/usr/local/submitty/GIT_CHECKOUT/Submitty/migration/migrator/main.py", line 214, in handle_migration
migrate_environment(
File "/usr/local/submitty/GIT_CHECKOUT/Submitty/migration/migrator/main.py", line 323, in migrate_environment
if database.has_table(database.migration_table.__tablename__):
File "/usr/local/submitty/GIT_CHECKOUT/Submitty/migration/migrator/db.py", line 102, in has_table
self.inspector.clear_cache()
AttributeError: 'PGInspector' object has no attribute 'clear_cache' |
@jeffrey-cordero migrations run before we install the new packages for the checkout. I'm not sure if this is iin the scope of this pr |
Should be in the scope of the PR as DB Check will fail until it's resolved. We should be updating / installing missing dependencies as needed given the migrations require the right version of SQLAlchemy. |
db check will fail regardless. It only checks out main's dependencies and will fail regardless of if install is fixed or not. Barb said that it is fine if db check fails |
Makes sense, but this will require a manual installation to ensure |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code change looks good to me, everything that can be the same is and everything that can't is as close as possible and should have the same functionality
@jeffrey-cordero im still getting an error for sending emails when i do vagrant up. Can you verify if this is happening on your end too? It says that the directory should be |
This is not occurring on my end. I have no issues releasing emails through ![]() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes implemented for the update to SQLAlchemy v2 look solid based on the recommended migration strategy. The only inconsistencies I could spot were related to fixing existing errors or removing old columns that are no longer referenced in the respective tables. The setup, database, and shared binary scripts behave as expected after a fresh vagrant up.
When running `INSTALL_SUBMITTY.sh`, we run the database migration before updating the python packages. This causes the script to always fail, hence why we need to install the python packages before we run `INSTALL_SUBMITTY.sh` Submitty/Submitty#11578 --------- Co-authored-by: Barb Cutler <[email protected]> Co-authored-by: Barb Cutler <Barb Cutler>
### Why is this Change Important & Necessary? <!-- Include any GitHub issue that is fixed/closed using "Fixes #<number>" or "Closes #<number>" syntax. Alternately write "Partially addresses #<number>" or "Related to #<number>" as appropriate. --> Regression came from #11578 Current production is broken right now with team gradeables. This is because the update portion of the team gradeable does not have a `connection.commit()`, which the non-team gradeable has. Putting the commit statement outside of both if and else if is going to fix the issue. Whenever you submit a team gradeable, you will see the `Something went wrong will this submission` banner. When you take a closer look in the `electronic_gradeable_data` table, the value of `completed` will always be false. We can manually check the grades that we received in `results/grades.txt` to see that we actually received a grade for the assignment. As mentioned before, this is because the table is not being updated when the job finishes, and thus the user recieves the error. ### What is the New Behavior? <!-- Include before & after screenshots/videos if the user interface has changed. --> Putting the commit statement outside of both if and else if is going to fix the issue. This ensures that insertions and updates will both be commited. The autoload_with=engine vs db is a semantic difference as it doesnt impact the overall issue. SQLAlchemy takes both conection and engine, but as engine was more widely used and recommended in sqlalchemy, we should use this instead. ### What steps should a reviewer take to reproduce or test the bug or new feature? ### Automated Testing & Documentation <!-- Is this feature sufficiently tested by unit tests and end-to-end tests? If this PR does not add/update the necessary automated tests, write a new GitHub issue and link it below. Is this feature sufficiently documented on submitty.org? Link related PRs or new GitHub issue to update documentation. --> We should do a cypress autograding test of team gradeables so that it doesnt get broken in the future. ### Other information <!-- Is this a breaking change? Does this PR include migrations to update existing installations? Are there security concerns with this PR? --> check_refresh for team gradeables is broken. It will need to be fixed before we make the autograding test, as cypress relies on the automatic refreshs in order to detect new elements
Please see the release notes:
https://submitty.org/sysadmin/installation/version_notes/v25.07.01
Bumps sqlalchemy from 1.4.29 to 2.0.40.
In order to test this PR, you would need to run
submitty_install_bin
as the dependencies are not updated when you runsubmitty_install
Related to Submitty/submitty.github.io#692
Release notes
Sourced from sqlalchemy's releases.
... (truncated)
Commits
You can trigger a rebase of this PR by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase
will rebase this PR@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it@dependabot merge
will merge this PR after your CI passes on it@dependabot squash and merge
will squash and merge this PR after your CI passes on it@dependabot cancel merge
will cancel a previously requested merge and block automerging@dependabot reopen
will reopen this PR if it is closed@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditions
will show all of the ignore conditions of the specified dependency@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)