Code Monkey home page Code Monkey logo

Comments (5)

sindresorhus avatar sindresorhus commented on June 12, 2024 1

What do you think should happen? Throw an error in such case? Add an option for what to do?

from trash.

aminya avatar aminya commented on June 12, 2024 1

I want to use this package as a fallback for Electron's shell.moveItemToTrash, but it seems Trash removes the files permanently if it fails to trash them.

The electron function is able to detect the errors somehow avoid the deletion.

Edit: They have switched to shell.trashItem recently for the unreleased Electron 13

electron/electron#26723

from trash.

mifi avatar mifi commented on June 12, 2024

IMO it should ideally throw an error when it cannot trash the file, because the reason why I use this library, is so that the user doesn't lose their file immediately. If trash permanently deletes a file, then IMO it did not do its job. But maybe it's not possible to make sure that it never permanently deletes a file.

from trash.

sindresorhus avatar sindresorhus commented on June 12, 2024

I agree. It should be a custom Error subclass though, so consumers can easily catch it and decide what to do.

Continued in sindresorhus/recycle-bin#8.

from trash.

tomasklaen avatar tomasklaen commented on June 12, 2024

IMO it should ideally throw an error when it cannot trash the file, because the reason why I use this library, is so that the user doesn't lose their file immediately.

I see the reasoning here, but it conflicts with a use case where Windows user can configure their Recycle bin to delete files immediately. In this scenario deleting files instead of moving them to trash is what the user wants, and throwing errors here would be wrong.

So unless you can check that file is being deleted from a drive that doesn't have immediate deletion enabled, you shouldn't throw errors.

from trash.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.