parse-community / parse-community/parse-server-push-adapter

Expiration of APN Development Certificate causes Production Deployment to Crash

Open
#162 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
96
Forks
108
PR merge metrics
No merged PRs in 30d

Description

Hi,

Firstly thanks for this package, saving us devs countless hours (or days & weeks!)

However there may be a concerning issue here
(essentially a yearly time bomb for all applications using Parse Push Adapter)

I have both development & production cert configured Parse Push, that was deployed in production

Upon expiry of the Development cert, the Production deployment went down
Embarrassingly, it stayed down for 3 whole days...

Yes, I had included Development cert in Production deployment
(probably a mistake but has been working fine for a whole year until now)

developer.apple.com:
image

As you can see, Development cert expires at about 1 month earlier than Production (see the 2021 expiry ones)
Development cert for 2020 has already expired and disappeared from above

Problem is, I did receive email notification of expiry, but for Production cert only!
image

Because parse-server-push-adapter triggers a crash also on Development cert which expires 1 month before the Production cert,
this renders the Production cert expiry notification useless (in my case at least)

I have commented out Development cert in production as a quick fix
then finally renewed the Production cert while leaving Development cert disabled

Conclusion:
Perhaps expiry of Development Cert should not crash but only warn in console log (or even better, set up email notification)
Note in Documentation or remove/disabled Development cert in Production?

In my case the instance was down during the weekends so it's not as severe but I think this is important to note for other developers/applications

Best,
Nickson

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are identified in the issue. Start by locating APN certificate loading and expiry handling in parse-server-push-adapter, then reproduce the crash with an expired development certificate alongside a production certificate. Done means the agreed certificate-expiry behavior is implemented and covered by a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.