Skip to content

An 829 MB app update was sitting in a folder called ShipIt

Electron apps download updates into ~/Library/Caches/*.ShipIt and swap them in on quit. When that swap stalls, the download stays. Measured at 829 MB.

4 min read

Look in ~/Library/Caches and you may find folders ending in .ShipIt: com.postmanlabs.mac.ShipIt, com.github.GitHubClient.ShipIt and so on. They belong to the updater many Electron apps use, called Squirrel, and ShipIt is the part that swaps the new version in.

How the updater works

  1. The app downloads the whole new version, not a patch, into its ShipIt folder.
  2. When you quit the app, ShipIt replaces the old bundle with the new one.
  3. On success, the staged copy is removed.

Step 3 is the one that does not always happen. If you never fully quit the app, if the swap fails because the app is somewhere ShipIt cannot write, or if the app was deleted before it updated, the download sits there indefinitely.

Check yours

du -sh ~/Library/Caches/*.ShipIt 2>/dev/null | sort -h

# What is staged, and when
ls -la ~/Library/Caches/*.ShipIt/

Clearing it

Quit the app first, with Command Q rather than closing the window. If the folder is still large a minute later, the update did not apply. Two options:

  • Let it finish. Open the app, let it check for updates, and quit it again. This is the right choice for an app you use.
  • Delete the staged update. Safe with the app quit. The app will download a fresh copy next time it checks, which is exactly what would have happened anyway.

A ShipIt folder for an app that is no longer installed is pure leftover and can go straight away. Update downloads are one of the ways a Mac loses space without anyone doing anything, which is the pattern in a Mac losing disk space overnight. The apps themselves are covered in Electron apps taking up space.

Common questions

What is the ShipIt folder on a Mac?

It is the staging folder for Squirrel, the updater many Electron apps use. The app downloads its next version there and swaps it in when you quit.

Is it safe to delete a ShipIt folder?

Yes, with the app quit. It only holds a downloaded update. The app downloads it again the next time it checks for updates.

Why is a ShipIt folder so large?

Because it holds a complete copy of the app, not a patch. On the Mac measured, one app's staged update was 829 MB.

Why did the update not install?

Usually because the app was never fully quit with Command Q, or the swap failed. Opening and quitting the app once normally completes it.

Read next