The author implies that his code may have bitrotted.  Apple in particular keeps the metadata in a binary file whose format is not documented.  What's more, the formats are all very vulnerable to failure.

If we are going to do this, I'd rather have our own portable trash can service, even though it would be incompatible with the various system trash cans.  A trash directory for each volume (read the output of `mount`, or on Windows, enumerate al local disks, everyone does that.  But then store the files directly in it with a SQLite database to hold the metadata.

I continue to believe that a SQLite-specific SRFI, independent of any database-independent SRFI, is a Good Thing.  Simple and straightforward local ACIDity is something every Scheme programmer shoulc have access to, and it has virtual-table plugins for a whole bunch of other formats as well.


John Cowan          http://vrici.lojban.org/~cowan        xxxxxx@ccil.org
So they play that [tune] on their fascist banjos, eh?
        --Great-Souled Sam


On Wed, Aug 28, 2019 at 1:56 PM Lassi Kortela <xxxxxx@lassi.io> wrote:
Scheme should expose a move-to-trash procedure in addition to the less
apologetic delete-file. SRFI 170 may not be the right place for it, but
we should keep it in mind for future SRFIs. Perhaps it could even have
its own.

Here's a portable Python library: <https://pypi.org/project/Send2Trash/>