Non-current Version Expiration Lifecycle

A NoncurrentVersionExpiration lifecycle action expires versions that are non-current for at least the configured number of days, which means a version’s expiration time is determined by the date at which it was retained: its successor version’s creation time rather than the creation time of the expiring version. This action must not be confused with the regular day-based expiration where an object’s expiration is determined by its last modified time.

As the name implies, this action expires only non-current versions and does not expire the current or latest version of an object. However, the user is allowed to put both a NoncurrentVersionExpiration action and Expiration action in their lifecycle policy.