-
-
Notifications
You must be signed in to change notification settings - Fork 493
Remove special treatment of nonstandard "expires" parameter #506
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
Conversation
I'm 100% for this as it seems to violate the spec. The one single question I have is "what does this break"? I just validated that https://tools.ietf.org/html/rfc6750 contains no explicit "expires" field, only the "expires_in" shown in the example in section 4, on page 10. I just validated that https://tools.ietf.org/html/rfc6749 contains no explicit "expires" field, only the "expires_in" field. From what RFC did this field come from? Or was it just a dev trying to add support for a product with lazy developers that uses the wrong fields? |
Just want to point out that the build isn't working; I try to check on its status with this and I get a "we cant find your build" page. There may be a delay. |
Previous issues #268 shown that it was added for Facebook compliance, however, So, LGTM ! |
Ok so to confirm: looking deeper this, its a compat fix for Facebook Engineers not knowing the RFC. On a more personal note, this really bugs me. The difference is only 3 characters, but apparently big companies like FaceBook simply can't afford the top tier talent that can type that extra 3 characters for "_in" out to make the complete "expires_in" field name. Thankfully, they have the open source community to back them up. Thank you for your contribution. So to recap our talks in the gitter chat:
Now waiting for updated CR that includes these. Thanks! |
Referencing #524 as a placeholder for the build issue. The other issues can be worked on concurrently. |
Sorry to post yet again in this thread, but I wanted to update everybody that I created a new defect about this on Facebook's side with them directly, and gave them the link to this issue so they are aware of the defect in their code. We should depreciate the workaround, but I think its even more important to call it out as a workaround in code comments, explaining exactly why it exists and highlighting the violation of the RFC spec on the part of the provider. |
Since this is not backward compatible, shall we tag it for 3.0.0? |
I agree, good to have but lets make this a non-compat release. |
Anyone here think this needs further work before merge? |
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.
LGTM
Hello,
Since the
expires
parameter is not part of the rfc6749 spec, it should be ignored per https://tools.ietf.org/html/rfc6749#section-5.1.Furthermore, the assumption that
expires
is an alias of (and takes precedence over)expires_in
breaks implementations that utilize anexpires
parameter for other purposes.This MR removes handling of the nonstandard
expires
parameter altogether, ensuring that theexpires_in
parameter is properly utilized.