Safeguard
Security Guides•

What should I check before releasing research software with a paper?

A ten item pre-release checklist for research code: license, lockfile, secrets, scan, citation file, archive and DOI, written so you can run it in an hour.

Safeguard Security Team
3 min read

Before releasing research software with a paper, confirm the license, commit a lockfile, scan for secrets and vulnerable dependencies, add a citation file, tag a release and archive it for a DOI. Doing it in that order takes about an hour and prevents most embarrassing, permanent mistakes.

Why this checklist exists

A released snapshot is cited for years. Mistakes in it are hard to retract. Archives such as Zenodo, covered in how to get a DOI for a release, preserve whatever the tag contains. A short routine before tagging is cheap insurance.

The checklist

#CheckWhy
1LICENSE file at the rootWithout one, reuse is not permitted by default
2Funder and institution policy checkedSome set license rules
3Lockfile or environment file committedSo others can rebuild the environment
4Secrets scan of the whole historyArchives keep what is in the tag
5Dependency scanKnow what vulnerable code you ship
6Data you may not redistribute removedLicensing and privacy
7CITATION.cff writtenPrecise credit and version
8SECURITY.md addedTells people how to report a flaw
9Tag and release createdFixed point to cite
10Archive with DOI, record the identifierPermanent reference

Steps in practice

  1. Run a license check on your dependencies. See do transitive dependency licenses matter.
  2. Search your history for keys. If you find one, rotate it first. Deleting it from the repository does not make it safe.
  3. Scan your lockfile for known vulnerabilities and decide which updates are worth the risk to your results. See free vulnerability scanning for a research lab.
  4. Add a SECURITY.md for research software.
  5. Write your citation file.
  6. Tag, release, archive, then paste the DOI into the README and the paper.

After release

Releases age. Decide who watches for new advisories after the grant ends. See grant ends, who patches research software and do archived research repositories need rescans.

Try it yourself

Click through it at your own pace, or open it full screen. Look at how findings are ranked, so you can decide what to fix before the tag and what to note for later.

Quick check

Do I need to fix every vulnerability before release?

No. Fix what is reachable and serious, and document the rest. Pinning versions is needed for reproducibility, so record known issues in your notes.

What if I find a secret after I archived a release?

Rotate the secret immediately, then publish a new release. The archived copy cannot be assumed to be removable, so treat the secret as exposed.

Safeguard's dependency scanning and SBOM generation fit steps 3 and 5, and a free scan works on public repositories.

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.