https://dev.arvados.org/https://dev.arvados.org/favicon.ico?15576888422016-10-21T00:50:16ZArvadosArvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=443182016-10-21T00:50:16ZTom Morristfmorris@veritasgenetics.com
<ul><li><strong>Assigned To</strong> changed from <i>Brett Smith</i> to <i>Tom Morris</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=505952017-04-12T02:23:45ZTom Morristfmorris@veritasgenetics.com
<ul><li><strong>Assigned To</strong> deleted (<del><i>Tom Morris</i></del>)</li><li><strong>Target version</strong> set to <i>2017-05-10 sprint</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=508782017-04-18T18:59:19ZTom Morristfmorris@veritasgenetics.com
<ul><li><strong>Subject</strong> changed from <i>[Workbench] Interface to list and undelete expiring collections</i> to <i>[Workbench] Interface to list and untrash trashed collections</i></li><li><strong>Description</strong> updated (<a title="View differences" href="/journals/50878/diff?detail_id=49105">diff</a>)</li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=508792017-04-18T19:02:16ZTom Morristfmorris@veritasgenetics.com
<ul><li><strong>Story points</strong> set to <i>2.0</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=511702017-04-26T19:31:44ZLucas Di Pentimalucas.dipentima@curii.com
<ul><li><strong>Assigned To</strong> set to <i>Lucas Di Pentima</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=513142017-05-02T16:50:00ZLucas Di Pentimalucas.dipentima@curii.com
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>In Progress</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=514672017-05-08T18:23:08ZLucas Di Pentimalucas.dipentima@curii.com
<ul></ul><p>Branch <code>9587-wb-trash-tab</code> pushed so Radhika can continue from there.<br />The parameter <code>include_trash</code> is on the collection's controller, so I was going to see if it should be added to the projects controller too, when I had to switch focus to other stories.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=514682017-05-08T18:23:23ZLucas Di Pentimalucas.dipentima@curii.com
<ul><li><strong>Assigned To</strong> changed from <i>Lucas Di Pentima</i> to <i>Radhika Chippada</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=516112017-05-10T19:12:37ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>Target version</strong> changed from <i>2017-05-10 sprint</i> to <i>2017-05-24 sprint</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=518752017-05-18T01:50:10ZRadhika Chippadaradhika@curoverse.com
<ul></ul><p>Branch 9587-include-trash-in-group-contents @ <a class="changeset" title="9587: add support for include_trash in groups_controller -> contents method" href="https://dev.arvados.org/projects/arvados/repository/arvados/revisions/461b3f5a2edb53adda4f3b703d77e9efc0c262e9">461b3f5a2edb53adda4f3b703d77e9efc0c262e9</a></p>
<p>Added support for include_trash param in groups_controller -> contents method. This is API server update only.</p>
<p>Test run @ <a class="external" href="https://ci.curoverse.com/job/developer-run-tests/291/">https://ci.curoverse.com/job/developer-run-tests/291/</a></p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=519102017-05-18T19:36:20ZLucas Di Pentimalucas.dipentima@curii.com
<ul></ul><p>Branch <code>9587-include-trash-in-group-contents</code> LGTM, thanks.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=519572017-05-22T17:25:55ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p><code>is_trashed</code> is set once trash_at is in the past. In the case of temporary files, trash_at is in the future.</p>
<p>I think we want workbench treat files with trash_at in the future similarly to the trashed files (trashed_at in the past).</p>
<p>If we show temporary files (trash_at in the future) as "normal" files, then (a) it defeats the goal of decluttering the workbench listing and (b) means they can't actually be undeleted until trash_at passes.</p>
<p>So, instead of looking for is_trashed=true, Workbench should filter for "trash_at != nil" in the Trash tab and "trash_at == nil" in the regular Collection tab.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=519632017-05-22T18:37:57ZTom Morristfmorris@veritasgenetics.com
<ul></ul><p>This is conflating two different things - 1) something which has been deleted/trashed and 2) something which is expiring and will be deleted/trashed in the future.</p>
<p>These aren't the same thing and they mean different things to the user. We need to stop thinking about this from the point of view of technical limitations cause by our particular token expiration strategy and look at it from the point of view of the user.</p>
<p>The story as written was fine. If we want to also implement a filtering strategy for things which will be expiring at some point in the future we can do that, but it isn't the same thing.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=519642017-05-22T18:53:04ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p>Should the Trash tab show collections with "trash_at" in the future? Because if not, there won't be any way in the UI to stop a collection from being trashed in the future.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=519652017-05-22T19:15:51ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p>(The description, as written, does not define precisely the criteria for a collection to appear under the "Trash" tab)</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=519732017-05-23T00:04:43ZRadhika Chippadaradhika@curoverse.com
<ul></ul><p>TomM and Peter, the more I look into it, the more this UI design is not making sense to me. Are we sure what we want is a project#Trash tab? It feels like an index page /trashed_collections (or something like that) would be lot more useful for the users.</p>
<p>This project#Trash tab is not making sense because if a user wants to look at trashed collections and untrash, he needs to go into each project and look for these collections. Adding another tab that is not very useful seems like a major wasted investment in a wrong place than doing the more useful /trashed_collections page. I think a /trashed_collections page and a link to it in the "Recent collections" panel on Dashboard might be a better UI design.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=519742017-05-23T13:21:09ZPeter Amstutzpeter.amstutz@curii.com
<ul></ul><p>I had a similar thought. Once an object is trashed (not just future trash) it's going to be very hard to find in order to recover it, because the default behavior is to deny that it exists.</p>
<p>One thought I had is if you know the uuid and request the show page in workbench, it could request the record with include_trashed=true and present you with a "do you want to untrash this" page.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=520852017-05-24T18:39:11ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>Description</strong> updated (<a title="View differences" href="/journals/52085/diff?detail_id=50222">diff</a>)</li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=520862017-05-24T18:39:20ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>Target version</strong> changed from <i>2017-05-24 sprint</i> to <i>2017-06-07 sprint</i></li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=520992017-05-24T18:55:47ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>Description</strong> updated (<a title="View differences" href="/journals/52099/diff?detail_id=50242">diff</a>)</li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=522642017-06-01T17:10:18ZRadhika Chippadaradhika@curoverse.com
<ul></ul><p>Branch 9587-trash-page @ <a class="changeset" title="9587: test /trash page" href="https://dev.arvados.org/projects/arvados/repository/arvados/revisions/6c40c1c5b000b2eb0967df0f7ebaf613393501bc">6c40c1c5b000b2eb0967df0f7ebaf613393501bc</a></p>
<ul>
<li>Added "Trash" to topnav (right justified to separate from the other Dashboard options)</li>
</ul>
<ul>
<li>Trash page shows collections with <strong>is_trashed = true</strong> with Un-trash button with recycle icon and checkbox with Selection dropdown option to Un-trash</li>
</ul>
<ul>
<li>Required to expose <strong>untrash</strong> api on server</li>
</ul>
<ul>
<li>Since we do not want the user to be able to "view" the collection itself, the collection name is displayed as text than a link (with TomM's approval)</li>
</ul>
<ul>
<li>The trash page lists files in the collection as "contents"</li>
</ul>
<ul>
<li>Added search box that searches in trashed collections only</li>
</ul>
<ul>
<li>Added infinite scrolling</li>
</ul>
<ul>
<li>For the time being leaving in the updates from branch "9587-include-trash-in-group-contents", in case we decide to use this in some manner in future</li>
</ul>
<p>Test run @ <a class="external" href="https://ci.curoverse.com/job/developer-run-tests/308/">https://ci.curoverse.com/job/developer-run-tests/308/</a></p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=522672017-06-01T17:24:29ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>File</strong> <i>trash.jpg</i> added</li></ul><p>Tom Morris:</p>
<ul>
<li>Do we want to include a link to "owner_uuid" (project) in the table columns in the trash page?</li>
</ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=522722017-06-01T18:07:53ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>File</strong> deleted (<del><i>trash.jpg</i></del>)</li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=522732017-06-01T18:08:11ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>File</strong> <a href="/attachments/1704">trash.jpg</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/1704/trash.jpg">trash.jpg</a> added</li></ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=522752017-06-01T18:45:39ZRadhika Chippadaradhika@curoverse.com
<ul></ul><p>Added owner to the display @ <a class="changeset" title="9587: include "owner" in trash rows; update trash icon." href="https://dev.arvados.org/projects/arvados/repository/arvados/revisions/88abf688d7545fc663e0422f0c586107d4c56e5a">88abf688d7545fc663e0422f0c586107d4c56e5a</a></p>
<p>Tests passed @ <a class="external" href="https://ci.curoverse.com/job/developer-run-tests/309/">https://ci.curoverse.com/job/developer-run-tests/309/</a></p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523022017-06-02T18:33:34ZLucas Di Pentimalucas.dipentima@curii.com
<ul></ul><p>Some comments & questions:</p>
<ul>
<li>When the user is on <code>/trash</code>, how about having a title with the word “Trash” just like when the user is inside a project?</li>
<li>Maybe it would be a good idea to also have API Server tests checking for the new endpoints.</li>
<li>The order on which the collections are listed on the trash page is by its <code>create_at</code> attribute, do you think it would be better if we order it by <code>trash_at</code> or <code>modified_at</code> so that the latest trashed collections appear first?</li>
<li>I’ve been playing with it on arvbox and seen some weird behavior when trashing, then untrashing and then trashing again some collections, it repeats some collections on the trash page, see attached screenshot.</li>
<li>The recycle button could have a tooltip indicating its function</li>
<li>We’re showing only 3 files from every trashed collection manifest, isn’t it too expensive to ask for the manifests just to show so little? I’m thinking about production clusters with lots of intermediary trashed collections, the amount of data the api server will have to send when scrolling, I don’t know if it’s worth it. </li>
<li>If the previous point is OK the way it is, how about taking advantage of having the manifest to show more data about the collection, for example file count and total size so that the user has more information?</li>
</ul> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523042017-06-02T18:45:50ZLucas Di Pentimalucas.dipentima@curii.com
<ul><li><strong>File</strong> <a href="/attachments/1705">duplicated trashed items.png</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/1705/duplicated%20trashed%20items.png">duplicated trashed items.png</a> added</li></ul><p>Adding missing screenshot.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523082017-06-02T22:05:48ZRadhika Chippadaradhika@curoverse.com
<ul></ul><blockquote>
<p>When the user is on /trash, how about having a title with the word “Trash” just like when the user is inside a project?</p>
</blockquote>
<p>Updated the display elements to display in "Recent" tab pane</p>
<blockquote>
<p>Maybe it would be a good idea to also have API Server tests checking for the new endpoints.</p>
</blockquote>
<p>Added controller tests</p>
<blockquote>
<p>The order on which the collections are listed on the trash page is by its create_at attribute, do you think it would be better if we order it by trash_at or modified_at so that the latest trashed collections appear first?</p>
</blockquote>
<p>I think sorting on created_at would be more meaningful and less confusing, but that is just my opinion. In any case, this is more straightforward implementation without needing extra changes to application_controller->next_page_filters method. Leaving this as is.</p>
<blockquote>
<p>I’ve been playing with it on arvbox and seen some weird behavior when trashing, then untrashing and then trashing again some collections, it repeats some collections on the trash page, see attached screenshot.</p>
</blockquote>
<p>I made an update around the "last_uuids" and hopefully this is better now</p>
<blockquote>
<p>The recycle button could have a tooltip indicating its function</p>
</blockquote>
<p>Added</p>
<blockquote>
<p>We’re showing only 3 files from every trashed collection manifest, isn’t it too expensive to ask for the manifests just to show so little? I’m thinking about production clusters with lots of intermediary trashed collections, the amount of data the api server will have to send when scrolling, I don’t know if it’s worth it.</p>
</blockquote>
<p>Discussed this with TomM as well and we agreed to leave it for now. We can remove this column in future or reduce @limit if need be in the future</p>
<blockquote>
<p>If the previous point is OK the way it is, how about taking advantage of having the manifest to show more data about the collection, for example file count and total size so that the user has more information?</p>
</blockquote>
<p>Replaced the ellipse display to more useful info saying there are so many more files</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523252017-06-05T18:26:00ZLucas Di Pentimalucas.dipentima@curii.com
<ul><li><strong>File</strong> <a href="/attachments/1707">trash_title_on_trash_page.png</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/1707/trash_title_on_trash_page.png">trash_title_on_trash_page.png</a> added</li></ul><p>About the trash page title: I think using the word "Recent" is confusing because in the context of a trash page, it seems to me that "recent" would be referring to "recently trashed items", and this is not the case, because the listing is ordered by creation time.</p>
<p>I was thinking about something along the lines a simple title like in the attached screenshot, to make it clear to someone returning to this browser tab, that is not looking at a normal collection listing, just a personal opinion.</p>
<p>The rest LGTM. Thanks!</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523322017-06-05T22:55:52ZRadhika Chippadaradhika@curoverse.com
<ul></ul><blockquote>
<p>About the trash page title: I think using the word "Recent" is confusing ...</p>
</blockquote>
<p>All our pages are sorted on CreatedAt time and use the title (mostly) "Recent". So, I think it probably will not be confusing to the users. I am going to leave it as is for now and we can consider renaming it if there is such a feedback by others. Thanks.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523342017-06-05T23:05:06ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>Status</strong> changed from <i>In Progress</i> to <i>Resolved</i></li><li><strong>% Done</strong> changed from <i>67</i> to <i>100</i></li></ul><p>Applied in changeset arvados|commit:55315b668b8fa04572a44fd7db6598478f54130a.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523352017-06-06T00:49:39ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>Status</strong> changed from <i>Resolved</i> to <i>In Progress</i></li></ul><p>Branch 9587-trash-page @ <a class="changeset" title="9587: sort the trash page rows by trash_at timestamp" href="https://dev.arvados.org/projects/arvados/repository/arvados/revisions/f9ff1c5444f7030fa0b372446bd40d4feed203c8">f9ff1c5444f7030fa0b372446bd40d4feed203c8</a></p>
<p>Lucas: your earlier comment "The order on which the collections are listed on the trash page is by its create_at attribute, do you think it would be better if we order it by trash_at or modified_at so that the latest trashed collections appear first" and the comment about the title of the page, made me revisit this issue. In fact, I went back and saw the original description (where we were contemplating a project tab for trash) and that also said that we want to sort the rows by trash_at time.</p>
<p>Hence, I made one more update to this effect. The rows are now sorted by the "trash_at" time. In addition, I rearranged the columns to display the "Trashed at" column before the "Created at" column, because that makes more sense.</p>
<p>Please take another look of this particular update. Thanks.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523382017-06-06T11:32:02ZLucas Di Pentimalucas.dipentima@curii.com
<ul></ul><p>Yes, it seems to me this way is more useful, just like a trash can! we remember the last things we throw there, the oldest one are less probable to be needed back :)</p>
<p>About the "Recent" tab, now it's not confusing in the sense of its meaning, but I keep my opinion that the user is not having any context as to where in the workbench this page is placed. For example, when the trash was thought as a "project tab", the project title was the context and to me at least, is enough information for the user to know where she/he is standing.</p>
<p>The way it is now, the user has to read carefully the listing to know that it's placed on the trash page, because the only clue there is to let the user know it's on the trash page, is the URL (I think the page title has lost its purpose now that we use to have tens of open tabs on the same browser window), so if you're revisiting that topic too, I have two suggestions:</p>
<ul>
<li>Add a "Trash" title</li>
<li>Make the "Trash" button have a different background color to let the user know it is "pressed" to assume the page that is being shown is Trash</li>
</ul>
<p>Sorry for being insistent about this, I just wanted to be clear about my concern about this topic.</p>
<p>The current updates look good, thanks!!</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523412017-06-06T15:06:00ZRadhika Chippadaradhika@curoverse.com
<ul></ul><p>Renamed the pane name from "Recent" to "Recent trash" (even though I do not think it is necessary because the user got here by clicking on the Trash icon in the topnav) ):</p>
<p>Made the Trash icon slightly bigger (since the Dashboard icon is bigger and hence there is extra room). Didn't make any changes to pressed versus not, since we do not do that anywhere else.</p>
<p>Thanks.</p> Arvados - Idea #9587: [Workbench] Interface to list and untrash trashed collectionshttps://dev.arvados.org/issues/9587?journal_id=523422017-06-06T15:10:06ZRadhika Chippadaradhika@curoverse.com
<ul><li><strong>Status</strong> changed from <i>In Progress</i> to <i>Resolved</i></li><li><strong>% Done</strong> changed from <i>67</i> to <i>100</i></li></ul><p>Applied in changeset arvados|commit:87ea4388edb977d246b09b78d9d4bfa5c2ba5170.</p>