Are releases and their assets retained indefinitely?

If I create a release (tagged code) and include some assets (built binaries and docs in a zip), are they retained indefinitely or are either of these things deleted after some period of time?

Also, is there a storage size limit? Each of my releases will be small (less than 1MB) but I’m trying to think long-term, in case I need to back up my assets and changelogs to an external source with no retention policy.