Skip to content
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

Chore: Update Oauth2 #3057

Closed
1 task
Tracked by #3049
ChargrilledChook opened this issue Jul 3, 2022 · 7 comments · Fixed by #3624
Closed
1 task
Tracked by #3049

Chore: Update Oauth2 #3057

ChargrilledChook opened this issue Jul 3, 2022 · 7 comments · Fixed by #3624
Assignees
Labels
dependencies Pull requests that update a dependency file Status: In Progress This issue/PR has ongoing work being done Type: Chore Involves changes with no user-facing value, to the build process/internal tooling, refactors, etc.

Comments

@ChargrilledChook
Copy link
Member

ChargrilledChook commented Jul 3, 2022

Because
Our current version (1.x) has reached EOL and is no longer supported.

Acceptance Criteria

  • The app is using oauth2 and there are no deprecation warnings

Notes

bundle outdated can be used to check gems that are out of date. Adjacent gems (ie GitHub / Google Oauth) should be checked too.

Deprecation warning:

Post-install message from oauth2:

You have installed oauth2 version 1.4.10, which is EOL.
No further support is anticipated for the 1.4.x series.

OAuth2 version 2 is released.
There are BREAKING changes, but most will not encounter them, and upgrading should be easy!

Please see:
• https://github.com/oauth-xx/oauth2#what-is-new-for-v20
• https://github.com/oauth-xx/oauth2/blob/master/CHANGELOG.md

Please upgrade, report issues, and support the project! Thanks, |7eter l-|. l3oling
@ChargrilledChook ChargrilledChook changed the title Update Oauth2 Chore: Update Oauth2 Jul 3, 2022
@ChargrilledChook ChargrilledChook added dependencies Pull requests that update a dependency file Type: Chore Involves changes with no user-facing value, to the build process/internal tooling, refactors, etc. labels Jul 9, 2022
@JacobMarq
Copy link
Contributor

@ChargrilledChook I would like to take on this chore if possible!

@ChargrilledChook ChargrilledChook added the Status: In Progress This issue/PR has ongoing work being done label Jul 23, 2022
@ChargrilledChook
Copy link
Member Author

Hi @JacobMarq, thanks for your interest, I've assigned it to you.

It's possible that this is blocked by other dependencies since we aren't directly using Oauth2, but it won't hurt to try updating the relevant gems. Let me know if you have any questions or problems.

@JacobMarq
Copy link
Contributor

@ChargrilledChook The issue is coming from omniauth-google-oauth2. At the moment it does not support oauth2 v2.x, but I have an open pull request to add support to that gem.

@ChargrilledChook
Copy link
Member Author

@JacobMarq Thanks for investigating this for us. The pace of changes on that gem seemed to have slowed right down, so perhaps longer term we may need to look at an alternative.

Good idea checking the source, I'll put your PR here so we can keep some visibility on it
zquestz/omniauth-google-oauth2#428

@ChargrilledChook ChargrilledChook removed their assignment Aug 7, 2022
@JacobMarq
Copy link
Contributor

Update on more recent PR to allow compatibility up to v2.0.6 of Oauth2. There was a small mistake but the owner has officially acknowledged the PR and is preparing to merge after correction: (already corrected now)
zquestz/omniauth-google-oauth2#429

@ChargrilledChook
Copy link
Member Author

@JacobMarq Thanks for following that up, awesome work getting a result from the Oauth maintainer. Did you want to open a PR to update Oauth here?

@ChargrilledChook
Copy link
Member Author

Post-install message from oauth2:

You have installed oauth2 version 1.4.11, which is EOL.
No further support is anticipated for the 1.4.x series.

OAuth2 version 2 is released.
There are BREAKING changes, but most will not encounter them, and upgrading should be easy!

We have made two other major migrations:
1. master branch renamed to main
2. Github has been replaced with Gitlab

Please see:
• https://gitlab.com/oauth-xx/oauth2#what-is-new-for-v20
• https://gitlab.com/oauth-xx/oauth2/-/blob/main/CHANGELOG.md
• https://groups.google.com/g/oauth-ruby/c/QA_dtrXWXaE

Please upgrade, report issues, and support the project! Thanks, |7eter l-|. l3oling

KevinMulhern pushed a commit that referenced this issue Apr 3, 2023
<!-- Thank you for taking the time to contribute to The Odin Project. In
order to get this pull request (PR) merged in a reasonable amount of
time, you must complete this entire template. -->

## Because
<!-- Summarize the purpose or reasons for this PR, e.g. what problem it
solves or what benefit it provides. -->
Our current version (1.x) has reached EOL and is no longer supported.


## This PR
<!-- A bullet point list of one or more items describing the specific
changes. -->
Upgrades the necessary dependencies to support OAuth2 versions 2.x
- update omniauth-github gem to latest version
- update omniauth-google-oauth gem to latest version
- use updated github_api gem to support OAuth2 because original
github_api by piotrmurach currently seems to be abandoned

## Issue
<!--
If this PR closes an open issue in this repo, replace the XXXXX below
with the issue number, e.g. Closes #2013.

If this PR closes an open issue in another TOP repo, replace the #XXXXX
with the URL of the issue, e.g. Closes
https://github.com/TheOdinProject/curriculum/issues/XXXXX

If this PR does not close, but is related to another issue or PR, you
can link it as above without the 'Closes' keyword, e.g. 'Related to
#2013'.
-->
Closes #3057 

## Additional Information
<!-- Any other information about this PR, such as a link to a Discord
discussion. -->
Work regarding this PR took getting in contact with multiple maintainers
of the mentioned gemfiles and either making updates myself or requesting
them. After reaching out to the maintainers for github_api and several
months passing with no response, it seems as though this gem has been
abandoned. I took it upon myself to make the simple changes to the repo
and have the now updated version hosted on rubygems under
[github_api2](https://rubygems.org/gems/github_api2). This gem is now
being used in place of github_api.

## Pull Request Requirements
<!-- Replace the whitespace between the square brackets with an 'x',
e.g. [x]. After you create the PR, they will become checkboxes that you
can click on. -->
- [x] I have thoroughly read and understand [The Odin Project
Contributing
Guide](https://github.com/TheOdinProject/theodinproject/blob/main/CONTRIBUTING.md)
- [x] The title of this PR follows the `keyword: brief description of
change` format, using one of the following keywords:
  - `Feature` - adds new or amends existing user-facing behavior
- `Chore` - changes that have no user-facing value, refactors,
dependency bumps, etc
  - `Fix` - bug fixes
-   [x] The `Because` section summarizes the reason for this PR
- [x] The `This PR` section has a bullet point list describing the
changes in this PR
- [x] I have verified all tests and linters pass after making these
changes.
- [x] If this PR addresses an open issue, it is linked in the `Issue`
section
-   [x] If applicable, this PR includes new or updated automated tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file Status: In Progress This issue/PR has ongoing work being done Type: Chore Involves changes with no user-facing value, to the build process/internal tooling, refactors, etc.
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants