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

Use ReaderT to carry the OIDC settings #53

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

ixmatus
Copy link
Contributor

@ixmatus ixmatus commented Jun 9, 2021

The primary reason for this change is to pave the way for user-defined HTTP manager / request settings that need to be carried with the OIDC settings (but do not really belong in the data type itself). ReaderT is more natural anyway for carrying the OIDC settings around to all the different functions that need it.

There's some very minor refactoring activity (e.g using local let bindings instead of where bindings), I tried to keep it specific to the addition of the ReaderT type though.

I know this is an API lift, so it likely requires a new minor version bump if this change is accepted.

@ixmatus
Copy link
Contributor Author

ixmatus commented Jun 9, 2021

The latest build errors look like issues with the builder themselves. Is there anyway to retry the builds?

@ixmatus
Copy link
Contributor Author

ixmatus commented Jun 11, 2021

CC: @krdlab.

@ixmatus
Copy link
Contributor Author

ixmatus commented Jun 11, 2021

NB this PR may be moot, I've realized that the important functions which need a modified Manager can actually modify it. However it's probably worth determining whether we still want to use a ReaderT for the commonly shared OIDC value. I personally think it's still nice to use.

We could improve the interface a bit more by using a custom Monad that just wraps ReaderT though so it reads more naturally, e.g runTokenFlow or runOIDC or something.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant