Repository navigation
Releases: lgibelli/mydiskisfull
Releases · lgibelli/mydiskisfull
Release list
MyDiskIsFull 0.1.4
Fixed
- The forecast no longer reads space taken in one go as a daily rate. A big download or a macOS
update getting ready made it say "full in about 22 hours" when the disk was filling by a few
GB a day. Such arrivals are left out as one-offs unless they keep happening, and the headline
says what was left out. What macOS frees by itself when it's needed (purgeable space, local
snapshots included) now counts as room before the disk is full. - A big file written into a new folder was recorded at the size it had when the watcher first
saw it: a 28.5 GB download showed as 10.7 GB, because macOS reported no file events for it. A
folder that grew is now measured again the next time, events or not. - Moving a folder to the Trash wasn't seen at all. The folder is now followed: its size goes to
the Trash and comes off once the Trash is emptied. When free space jumps by a gigabyte or more,
folders are measured after 10 minutes instead of 30. - Copies of files that share their blocks are counted once in each folder, not only for the disk
as a whole. Chrome leaves a copy of itself in a temporary folder each time it's killed instead
of quit: 63 of them were 137 GB todu, 26 GB in Space, and really take 3.0 GB, which is what
Space shows now.mdif maphas a column for it ("ONCE"). - The local snapshots suggestion carries the size macOS counts as purgeable and is ranked by it,
so 69 GB of snapshots comes first instead of seventh with no size. - Only Time Machine's local snapshots are counted: macOS update snapshots made "5 local
snapshots" out of 2.
Added
- A macOS update waiting for the restart that installs it is shown with what that restart frees,
beside purgeable space and swap, striped in the Space bar. - Trends shows what grew and what shrank the most over the span the chart shows (24 hours,
3 days or 2 weeks), and the Overview card covers the last 3 days instead of 24 hours.
Changed
- Move to Trash on Minecraft's game folder (
~/Library/Application) says it's the folder named
"Application", not "Application Support": its path alone reads as cut short. A clean-up shows
as busy only once you've confirmed it.
MyDiskIsFull 0.1.3
Added
- Delete Snapshots: when the disk is nearly full and local Time Machine snapshots keep the space
of deleted files, the suggestion deletes them after you confirm, instead of only giving a
command for Terminal. Backups on your backup disk aren't touched.mdif cleantakes a snapshot
by its name and checks it's gone afterwards. Lite still gives the command. - A copy button beside each path on Cruft (and Space) copies the whole path, for Terminal or
Go to Folder.
Fixed
- Move to Trash on a forgotten folder (Minecraft's game folder, a cloud folder nothing syncs any
more) always failed with "isn't a file": the check made right before took every folder for a
file. - When nothing was cleaned, the alert no longer says the disk has more free space: that was
something else changing the disk meanwhile.
MyDiskIsFull 0.1.2
Added
- A release branch builds MyDiskIsFull Lite too, from the same commit, signs it for the Mac App
Store and uploads it to App Store Connect, where it shows in TestFlight.
Changed
- What was "comes back by itself" is named as macOS names it, each on its own line: Purgeable
(macOS removes it when space is needed) and Swap (removed when the Mac restarts).mdif space
prints them as "Of what's used: …". - Lite says the full version is completely free, with no ads, and links to its page instead
of the site's home page. About says no ads in both.
Fixed
- Refresh and Settings are at the toolbar's trailing edge on macOS 26 and later; 0.1.1 left
them next to the sidebar (the window hides its title, and without it nothing pushed them over). - With a local Time Machine snapshot on the disk, everything the scan couldn't see was counted
as freed by itself (25 GB on a Mac with a 6 GB snapshot): most of it is macOS's own files and
metadata, which stay, and what the snapshot holds is in purgeable already. It's counted once. - 0.1.1 as downloaded or updated had the old kind of icon, which macOS 26 and later show small
in a grey frame: GitHub Actions built it on macOS 15, where actool couldn't compile the
icon. Releases are built on macOS 26 now, and stop if the icon isn't compiled.
MyDiskIsFull 0.1.1
Added
- MyDiskIsFull Lite, the App Store edition, runs in the App Sandbox. Its watcher runs while
the app does (and the app opens at login if you let it); it sees the disk once you pick it in
an Open dialog, until then watching free space only; and it keeps its own history.
app/app-store.shsigns it for the Mac App Store, packages and validates it, and uploads it. mdif watch --attachedexits when its standard input closes, so a watcher started by an app
goes when the app does.- Finished worktrees:
mdif suggestand the app find git worktrees whose work is merged into
the main branch (or squashed into it), with nothing uncommitted and nothing ignored that a
build doesn't make again, and give their size and thegit worktree removecommand. An
agent's counts once nothing happened in it for an hour, one made by hand after a week. Git
only reads: nothing is written into the repository. - One-click clean-ups: Remove Worktrees for finished worktrees (
git worktree remove, after you
confirm; their branches stay) and Move to Trash for Chrome's AI model once its policy is in
and Chrome has quit.mdif clean <path>…does the same from the command line (--dry-run
shows what it would do). Each path is checked again first; anything you keep, or that mdif
doesn't suggest, is refused. Not in the App Store edition, which may only read the disk. - The keep list:
mdif keep add <path>(patterns with*and?), Keep It on a suggestion in
the app, and Settings → Kept. Nothing suggests deleting, cleaning or moving what you keep, nor
a cleanup that would take it with its folder. An incident about a kept folder still shows, with
"you keep it" as its fix. - The Overview shows where the space goes: one bar for the disk split by kind (apps, build
output, developer tools, cloud copies, app data, caches, media, Mail and Messages, virtual
machines, macOS, your files), each kind biggest first and opening to its biggest items, with
what may not be needed marked (apps not opened in months, files unchanged for a year, build
output, caches) and what comes back by itself. A fix shows with what it's about; the rest
follow under More Fixes.mdif spacemeasures it (a whole-disk scan, cached). The Fixes page
is now Prevent, with the tweaks. - Fixes show, not tell: a folder that keeps growing has bars of its size at the end of each of
the last days and now, instead of a sentence; each clean-up says about how much it frees,
and how old its files are on average (by size, from their modification dates). - Delete Build Output: a Rust
targetfolder, Flutter'sbuild, and other build output
that keeps growing can be deleted from the app (whatcargo cleandoes), after you confirm
and aftermdif cleanchecks it again; never something you keep. - Probably forgotten, at the top of where the space goes: the biggest of what's untouched for a
year or more, from every kind, each saying what it is. Items say which folder holds most of
them ("Mostly Outlook › Outlook 15 Profiles: the old Outlook's copy of your mail"), app
containers go by the app's name ("Microsoft Office (shared)", "Voice Memos"). - What apps keep (
mdif_core::handlers): Signal's attachments, Messages' attachments, Mail's
mailboxes, iPhone backups, the old Outlook's mailbox, Teams' web cache, Telegram's media,
Spotify's cache, Slack, Spotlight's processing, Android emulators and the Photos library are
recognised in an item, each with what it is, how to make it smaller in the app or in macOS,
and a button to open the place. It shows with the item when you click its kind on the Space
bar (App data, Mail and Messages), past the first few if need be; Apps points to App data,
where what apps keep is. A folder you keep gets no advice to make it smaller. - Delete node_modules, for a project whose lockfile says what
npm installputs back; the
button says it downloads what isn't in npm's cache. - Empty Trash: the Trash shows apart from what comes back by itself (it doesn't), measured
fresh each time, with a button in the sidebar that empties it after you confirm. - Teams' and Slack's web caches get Empty Caches: only what downloads again, while the app is
closed; messages and sign-in stay. - Leftovers from macOS updates: the
Relocated Itemsfolders in/Users/Shared(one per update)
go to the Trash through Finder, which asks for the password once for all of them. - Cloud storage: iCloud Drive, OneDrive, Google Drive, Dropbox and Box each say how to keep
fewer files on this Mac and open the app or iCloud settings; a folder left behind when an
account was removed or reset is flagged. - Disk Wear, a page of its own: what apps wrote in the last day, against the disk's size, and
the biggest writers (it was a card on Trends). - The disk's state moved to the sidebar, on every page: the ring, the forecast in a sentence,
what's used, the trend, what comes back by itself (with an (i) on why deleting doesn't always
free space at once) and the Trash. The sidebar can't be hidden. - Refresh (⌘R and the toolbar) measures everything again; while the window is open free space
follows what you delete every few seconds, and the breakdown says when the disk changed since
it was measured. - Empty Caches asks which, with a checkbox for each. A kind lists up to 20 items (Show More)
and an Everything Else row, so its rows add up. - The App Store edition shows what it can't do as locked, with why the App Sandbox rules it out
and the free full version, and the same clean-up as a command to paste into Terminal. - Empty Cache: an app's or a tool's cache folder (
~/Library/Caches/<app>, an app container's
caches, an Electron app'sCache,~/.cache/<tool>) is emptied from the Overview, the folder
itself kept, and Caches has one button for all of them. Not while the app is open (mdif cleansays to quit it first), and never macOS's own caches or one several apps share. - A helper process that keeps rewriting the disk is named by its app ("Safari keeps rewriting
the disk", for WebKit's networking process), with Restart Safari's Networking: it ends the
helper, and Safari starts a fresh one and keeps its windows.mdif clean <the app>does it
only while that helper of that app is the one churning. - Keep tidy: clean-ups the watcher does once a day, each off until you turn it on (switches
under Prevent,mdif tidy on <id>): simulator runtimes not used in 60 days and the simulators
left without one (simctl), a project's build output (Rust'starget, Flutter's and Gradle's
build, Swift's.build…) that nothing has built into or run from for 14 days, a project's
node_modulesnothing has installed into or run from for 14 days (put back from the lockfile),
a Rust build's
incremental caches no build has touched for 30 days,
and app and tool caches of 50 MB or more that nothing has written to or read for 30 days, emptied
while their app is closed. Every folder goes throughmdif clean's checks, never anything you
keep; what each did last is shown with its switch, and what it deleted is in the watcher's
log.mdif tidy run --dry-runshows what they would do now. Not in the App Store edition. - The app stays in the Dock like any app; Settings → Show in the Dock takes it out, and then
it's there only while one of its windows is open. - MyDiskIsFull Lite has a LITE badge on its icon, in the menu bar, in the sidebar and in the
menu bar, so the two editions can be told apart when both are installed. - Cruft: your big files that nothing has opened or changed for a long time, biggest first, on a
page of their own where you pick how big (50 MB to 10 GB) and how long (6 months to 5 years),
each with Show in Finder, Keep It and Move to Trash (Put Back returns it). Only files in your
own folders: not in~/Libraryor~/Applications, hidden folders, developer tools' folders,
packages (apps, Photos and Final Cut libraries, virtual machines) or build output and
dependencies, and no part of a program (a library, a.jar).mdif space --jsonlists them
inold_files(unused for 90 days or more), from the same whole-disk scan, which now reads
access times too;mdif clean <file>checks again that it's still such a file before it goes. - The Overview is a hub: what needs attention, then the top three from each page (what frees the
most on Space, the biggest forgotten folders and files on Cruft, what grew, what wrote the
most, what keeps the disk from filling that isn't on yet), each with its button and See All.
Where the space goes moved to a Space page of its own (⌘2), with More Fixes; Probably
Forgotten moved to Cruft, as Forgotten Folders, filtered by the size and age chosen there. - Trends is now Disk Usage, and shows how full the disk is, in % used, day by day, in layers by
kind (macOS, snapshots and system data, apps, developer tools, build output, caches, the Trash…)
from the whole-disk measurements, which go into the history (strata;mdif forecast --series --jsongives them); between two the split is estimated, before the first it's faded. Disk Wear
stacks each day's bar by the biggest writers. Disk Wear has a chart of
what was written each day, the last 30, against the disk's size, with the day's biggest writers
under the pointer.mdif forecast --series --jsongiveswrites_daily: each local day's total
and its three biggest writers. - Minecraft's game folder says what it holds (the game, its downloads, the saved worlds by name)
and whether Minecraft is still installed, and gets Move to Trash, which names the worlds and
says to copysavesfirst to keep them. - The Space page's bar is labelled like a railway map: each part has a station on the bar and a
line in its colour to its name and size, above and below in turn, bending at 45° where labels
move apart. Clicking a part or its name opens that kind right under th...