-
Notifications
You must be signed in to change notification settings - Fork 94
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
Issue sending development/sandbox notifications #68
Comments
I have the same issue |
Apparently Apple has started enforcing some additional requirements on HTTP2. @byronformwalt has done some digging and written to both me an @igrigorik:
Let's see if Ilya has some time to fix this at https://github.com/igrigorik/http-2 level, or eventually I will do so at https://github.com/ostinelli/net-http2 level. |
While, I am not using Apnotic directly, here is how I worked around the issue:
This will work for as long as all of the keys in your header are string comparable. |
@byronformwalt thanks for reporting this! Would you be up for creating a PR+spec test to address this? Happy to help with code reviews, etc. |
I don't think this belongs in
Assuming that the argument passed to
Is completely avoidable and inefficient. The only case I can see for it would be when you expect users to provide headers starting with As another example why using a hash isn't great - some headers can be set multiple times, and obviously you can't do this with a hash. |
@ioquatix : That was my fix prior to calling the net-http2 client. It is not intended to be used in either net-http2 nor http2. I apologize for any misunderstanding. @igrigorik : I have submitted a pull request with recommended changes to the http2 gem, and am looking forward to receiving your feedback. Travis CI is choking on the PR, due to an environment variable issue, but all tests pass on my local machine. |
I also apologise if I've misunderstood something. I will take a look at the PR. |
Hey guys @ostinelli @igrigorik @byronformwalt |
I took a look at I would suggest again reviewing how https://github.com/socketry/async-http/blob/f3f984999835ae8b195cd6b7aaafae2ed8968a12/lib/async/http/protocol/http2.rb#L334-L339 works as it's the simplest solution to get something working ASAP and is also the most efficient. I hope we can make some changes to |
Here is the current discussion in |
@ioquatix you even thumb up your own posts now? :) The implementation of headers in As a side note: while I appreciate your contribution and passion, I'd ask you to stop the constant reference/advertisement of a gem that is completely outside the scope of this discussion. Thank you. |
IMO no it shouldn't. This is a HTTP/2 protocol issue and hence it should be addressed in the gem that implements the HTTP/2 protocol ( |
Whoops, I meant to thumb up @aalsanad :)
Fair enough. I see this as a cross layer concern: if it's implemented in
I think it's reasonable to reference a different implementation showing how to handle headers, but as you wish. I won't get involved any further. |
Lol :) Got your points. Sorry for quick messages, it's late and it has been a long day. I'll check what you and @igrigorik decide in the fore-coming days and react accordingly. |
It's equally been a long week for me so far - two kids sick, I got sick, we are all human. Let's try to keep things easy here, as you say we are all passionate and trying to find the right solution.
Take it easy and get some rest :) |
A new version of I have to say that I am embittered by the way that this issue is being handled by @ioquatix, one of I'm confident they will untangle the issue in the best possible way, however in the meantime I am disengaging from further discussion on the matter. @axelson and @tommy-gansta can you please confirm updating |
@ostinelli Thank you for fixing this issue. New update has solved it for our project. :) |
Thank you for the feeeback, closing. |
Works for me too. Thanks! |
Just wanted you to know that this issue started biting us in production since this morning. It seems Apple implemented the change in production as well. Upgrading to latest master (and underlying http libraries) fixed the issue for us. I will open up an issue specific to the error message we where getting so that others may implement the fix. |
Thanks for letting us know @augustosamame, although it would be nice if Apple would notify us of these things. As far as I can tell there was no warning. |
@axelson: Yes, but I can definitely see why @apple would not view it to be in their best interest to advertise that their server was out of compliance. Pushing compliance changes to their sandbox several weeks before rolling them out into production is a clever way to minimize the collateral damage without directly copping to the issue. I’m grateful we caught it in time, but I am disappointed by the apparent lack of transparency from responsible team within @apple. If anyone is aware of a technical note published by @apple that detailed the change in advance, I invite you to post the details here, so that others in the iOS development community can subscribe to critical updates before they impact production servers/apps. @apple: I still think you're awesome! 🥇 |
Within the last 24 hours we've been unable to send push notifications in development/sandbox environment.
It looks like one issue may be that the development url used by apnotic doesn't match apple's docs.
https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/sending_notification_requests_to_apns#overview has:
While the current master branch of apnotic sets
APPLE_DEVELOPMENT_SERVER_URL
to"https://api.development.push.apple.com:443"
apnotic/lib/apnotic/connection.rb
Line 6 in f11ff56
However, setting the url to
https://api.sandbox.push.apple.com:443
does not fix the issue.We observe the issue with a stack trace like this:
The text was updated successfully, but these errors were encountered: