question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

'Delete' modal: improve pin guidance and overall language

See original GitHub issue

I was about to fill this as separate issues, but I feel it’s better to think about final UX that tries to address it all. @ipfs-shipyard/gui

Unpin by default

Situation

Right now user can pin an item via Files screen, and then use the same GUI to remove it:

Screenshot_2020-09-15  Files IPFS

Problem

If deleted item was pinned, the low level pin remains, silently protecting the CID from being garbage-collected.

This disconnect between low level pins and MFS will become a problem when we implement https://github.com/ipfs-shipyard/ipfs-companion/issues/888#issuecomment-689666068 as part of https://github.com/ipfs/ipfs-gui/issues/91. Pinning via IPFS Companion would create local pin AND add file to MFS.

Perhaps we should adjust the default behavior and remove local pin when a pinned resource is removed from MFS via GUI in Files screen?

Solution ideas

GUI users should not need to know what low level pins are, Files screen should be enough on its own for managing “pinned” data. If they remove something from “Files”, they expect it to not be kept around forever. There should be a way to keep the pin if a power user knows what they are doing, but it should not be the default behavior. Otherwise user repos will grow and they will end up with thousands of dead pins.

What if we extend the Delete dialog and display some additional UI if Deleted file is pinned?

Some ideas:

  • checkbox
    • [x] Remove local pin or… [ ] Keep local pin
    • Q: should there be an option to remove remote pins too?
  • button
    • Delete and unpin (make it default) and then regular Delete that keeps the pin is grayed out

No strong feeling here, but checkbox may be a better pattern if we want to provide other options, such as “remove blocks from local repo” (see below)

Clear description of what “Delete” really means

aka MFS removal vs garbage collection vs removal working only on local node

Situation

  • If something is in MFS it is implicitly pinned (protected from GC).
  • If user removes something from MFS, even if it is not explicitly pinned, it is still in the repo until GC, and user will see the disk space used did not change
  • Even if content is GC’d, or every block is manually removed via ipfs block rm, the change is local, and the data may be safe and sound on a different node.

Problem

Due to this, “Delete” may not be the best description for the operation of “removing a pointer to a CID from MFS”.

Solution ideas

  • give user an option to truly remove blocks from local repo: [ ] purge data blocks from local cache
  • rename? be more honest about operation being more a Forget/Discard than “Delete”

Apologies for a long brain dump, but wanted to have all concerns around Delete modal in one place, so we can figure out how to improve it in premaration for pinning services integration.

Feedback/ideas will be really appreciated!

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:1
  • Comments:10 (9 by maintainers)

github_iconTop GitHub Comments

1reaction
jessicaschillingcommented, Sep 16, 2020

Sounds good, but can introduce as-is first? A little concerned about cognitive overload for three check boxes when the third does something the user can do in the menu today.

1reaction
jessicaschillingcommented, Sep 16, 2020

For your consideration/debate …

image

Read more comments on GitHub >

github_iconTop Results From Across the Web

What are some alternatives to the phrase "Are you sure you ...
I always make a point of showing the user which item is being deleted ... It's better to not have such dialogs, instead,...
Read more >
Modal Verbs - Grammar Guide - My English Language
They express if something is certain, probable, possible, improbable or impossible. Modal verbs are also often used to increase the politeness of a...
Read more >
Lightroom Classic Enhanced Spot Removal tool
Remove unwanted aspects of a photo in a few simple steps with the enhanced Spot Removal tool.
Read more >
Spectrum Guide: Helpful Tips
To add or remove a favorite channel: Press the Guide button on your remote. Use the arrow buttons to choose and highlight the...
Read more >
All components - Human Interface Guidelines - Design
Learn how to use and customize system-defined components to give people a familiar and consistent experience. All iOS and iPadOS macOS tvOS watchOS....
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found