Go to file
Virgil Dupras b5315cb73d Added a setuptools-crappiness notice in the README.
--HG--
branch : py3k
extra : transplant_source : %F8%9A%02%C3%D2%AA%AB%2C%5D%94%EA%13%BD%D6%A0U%3F%D2N%C9
2010-07-13 12:19:19 +02:00
modules Converted to py3k (haven't tried it on Windows yet, but it should compile and work...) 2010-07-07 16:12:13 +02:00
send2trash Fixed a bug in plat_other where conflict handling wouldn't be done correctly in external volume. Thanks to John Benediktsson for the tip. 2010-07-09 21:49:46 -07:00
.hgignore Updated package metadata. 2010-07-07 11:59:11 +02:00
.hgtags Added tag 1.0.1 for changeset a7e04d8e47e1 2010-04-19 11:25:35 +02:00
CHANGES v1.0.2 2010-07-10 07:06:01 +02:00
LICENSE Licensed under BSD. 2010-04-07 08:52:24 +02:00
README Added a setuptools-crappiness notice in the README. 2010-07-13 12:19:19 +02:00
setup.py v1.0.2 2010-07-10 07:06:01 +02:00

README

==================================================
Send2Trash -- Send files to trash on all platforms
==================================================

This is a Python 3 package. The Python 2 package is at http://pypi.python.org/pypi/Send2Trash .

Send2Trash is a small package that sends files to the Trash (or Recycle Bin) *natively* and on
*all platforms*. On OS X, it uses native ``FSMoveObjectToTrashSync`` Cocoa calls, on Windows, it uses native (and ugly) ``SHFileOperation`` win32 calls. On other platforms, it moves the file to the first folder it finds that looks like a trash (so far, it's known to work on Ubuntu).

Installation
------------

Download the source from http://hg.hardcoded.net/send2trash and install it with::

>>> sudo python setup.py install

On Windows, you'll need Visual Studio 2008 to compile it. Note that the install you'll get will not be a "universal" package. If you install it on OS X, only the "osx" module will be compiled, and if you install it on Windows, only the "win" module will be compiled.

To have a cross-platform package you can ship around, you'll have compile the package on both platforms and merge the results so that both compiled modules are in the same package.

There's no package available on PyPI because packages produced by setuptools/distribute are all crappy (god I hate packaging). That's, I think, because I look at ``sys.platform`` to determine which of the extension module (if any) has to be built. However, when I create a ``sdist``, only the module of the platform I build it on is included in the source package. I don't know how to go around that and configuring that ``setup()`` function is hell. Just download the source from the repo.

Usage
-----

>>> from send2trash import send2trash
>>> send2trash('some_file')

When there's a problem ``OSError`` is raised.