Update When Leaving
People, as a rule, open software in order to perform a task.
New Features
Popups that appear when the user opens the app have the chance to break concentration and create user frustration. Imagine a budgeting app where the user wants to log a $4.37 coffee purchase. They click the app, reminding themselves of the total... and are greeted with a barrage of new feature requests, causing them to process neither the new features, nor remember their coffee total.
Instead, new features should be indicated with a notification banner or icon that users can engage with or dismiss at their leisure, when they are ready to learn new features.
Updates
Most of all, don't prompt your user to update your app when they open it!
Users open apps to accomplish tasks. They want to use the app right now. Instead, prompt to update when they are closing the app.
Zoom does this very well. If I'm launching Zoom, it's because I want to take a Zoom call, probably in the next minute or three.
They do two great things: First, they let me take the call with an outdated client, perhaps with a lessened feature set. Second, they prompt when I'm leaving the call, when I no longer can be disrupted or stressed by the interruption.
Be like Zoom.
See Also
Stop Responding to mouse up
Web Design Patterns You Should Stop Doing
Software Updates