Publish a digital release without replacing its history
Keep immutable archives and clear notes so customers can identify the version they received.
Publish a digital release without replacing its history
A release is easier to support when its name refers to a stable set of files. Replacing the bytes behind an existing version can leave two customers discussing different packages under the same label.
Keep release history explicit, even when the change looks small.
Prepare a separate archive
Create the new package with a distinct version and verify its contents. Include the installation or migration instructions relevant to that release.
Record a checksum after the final archive is built. Rebuilding an archive can change its bytes even when the visible source files appear similar, so use the checksum for the actual delivered file.
Explain the practical change
Release notes should say what users need to know: a corrected behaviour, changed requirement, manual migration step or compatibility adjustment. Avoid vague statements that everything is improved without identifying a user-visible result.
Keep security-sensitive implementation details out of a public note when they would expose private deployment information.
Review buyer access
Determine whether the product includes future releases or only files published at fulfillment. A newly uploaded file does not automatically belong to every historical purchase.
If withdrawing an older release, consider what eligible buyers will see afterward. Withdrawal blocks future downloads; it is different from deleting a file already saved by a customer.
Verify the published result
Inspect the library using an appropriately authorized test purchase. Check the version, filenames, release notes and guide. Preserve the original package and deployment record privately.
The download access guide explains the customer boundary. Clear release history reduces the amount of guesswork required when someone reports an installation problem months later.