Skip to content

Mongo 4: Client changes to support revisions#1070

Merged
subdavis merged 1 commit into
develop-mongo-tracksfrom
mongo/client-changes
Jan 3, 2022
Merged

Mongo 4: Client changes to support revisions#1070
subdavis merged 1 commit into
develop-mongo-tracksfrom
mongo/client-changes

Conversation

@subdavis
Copy link
Copy Markdown
Contributor

@subdavis subdavis commented Nov 22, 2021

Adds optional viewer/:datasetId/rev/:revisionId to route which loads the dataset from a specified revision. Whenever this optional route param is used, the UI is placed into the already implementated "read-only" state.

I think the UI needs more clear indication that a previous revision is loaded, what that means, and how to either commit the rollback or return to HEAD, but that seemed out of scope until the rest of the revision history is implemented. For now, this is more of an easter-egg feature for us.

Comment thread client/platform/web-girder/views/ViewerLoader.vue Outdated
@subdavis subdavis force-pushed the mongo/unit-integration-tests branch from 2b20dc3 to 9b37323 Compare December 28, 2021 16:43
@subdavis subdavis changed the title Mongo 5: Client changes to support revisions Mongo 4: Client changes to support revisions Dec 29, 2021
@subdavis subdavis changed the base branch from mongo/unit-integration-tests to mongo/celery-updates December 29, 2021 14:44
@subdavis subdavis force-pushed the mongo/client-changes branch from 59f3f4d to 95b01b8 Compare December 29, 2021 14:46
@subdavis subdavis requested a review from BryonLewis January 3, 2022 18:12
Base automatically changed from mongo/celery-updates to develop-mongo-tracks January 3, 2022 18:41
@subdavis subdavis force-pushed the mongo/client-changes branch from 50595bf to 867c74f Compare January 3, 2022 18:43
@subdavis subdavis force-pushed the develop-mongo-tracks branch from 4baea43 to 1082ca6 Compare January 3, 2022 18:51
@subdavis subdavis force-pushed the mongo/client-changes branch from 867c74f to 72a8ed0 Compare January 3, 2022 19:07
@BryonLewis
Copy link
Copy Markdown
Collaborator

I don't know if this is a thing that needs to be solved by this PR. But the act of importing/running a pipeline on an earlier revision really runs on the latest revision instead. Like doing box to polygon conversion on an earlier revision will use the annotations from the latest revision.

I don't know if the proper behavior is to prevent import/pipelines on earlier revisions that would modify the data or make it so pipelines use the proper revision number as input.

@subdavis
Copy link
Copy Markdown
Contributor Author

subdavis commented Jan 3, 2022

@BryonLewis thanks for raising that issue. This is currently a hidden feature: there's no way to get to an earlier revision without typing it out, so I'm not worried about users stumbling upon it.

revision ID inputs will indeed need to be added in several more places, but I think that's out of scope for a little while until we can figure out how to sanely let users access/review their previous revisions.

LMK if you're OK with that.

@subdavis
Copy link
Copy Markdown
Contributor Author

subdavis commented Jan 3, 2022

For starters, I think the "previous revision" view will need to totally disable all controls. No editing, no save, no training or pipelines.

Copy link
Copy Markdown
Collaborator

@BryonLewis BryonLewis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have a minor thing with a possible undefined making it into the :key for a component. It should function but probably not the best thing. Other than that the revision stuff I believe worked as intended.

<Viewer
:id="id"
:key="id"
:key="`${id}/${revisionNum}`"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is minor. But if revisionNum === undefined the key may seem weird but it should still work (All undefined keys should be the same revision anyways in terms of vDOM)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's just a hashable string, so it works fine like this. What would you like to change it to?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

leave it, I guess if it doesn't cause issues it's fine.

@subdavis subdavis merged commit 50897a5 into develop-mongo-tracks Jan 3, 2022
@subdavis subdavis deleted the mongo/client-changes branch January 3, 2022 21:40
subdavis added a commit that referenced this pull request Jan 20, 2022
* Mongo 1: Server side implementation (#1066)

* Poetry fix (#1087)

* Poetry fix

* Add check for app root

* Desktop/sealion multicam (#1024)

* init

* Allowing multicam to write tracks

* inut name change

* lint fixes

* Updates to multicam

* fixing import loading

* removing multicamImageFiles change

* Fixing various issues

* mend

* mend

* switching to every

* Example without fetching metadata (#1088)

Co-authored-by: Brandon Davis <brandon.davis@kitware.com>

* Server-side implementation

* Include description and timestamp

* Respond to comments

* Switch to checking mongo results

* select sub-element

* Unmangle indices

Co-authored-by: BryonLewis <61746913+BryonLewis@users.noreply.github.com>

* Mongo 2: Rollback API (#1067)

* Implement rollback

* Switch to POST /dive_annotation/rollback

* Mongo 3: Utilize new endpoints in celery (#1068)

* Utilize new endpoints in celery

* Respond to comments

* Linting, formatting, and unit tests

* respond to comments

* Import shutil

* Client changes to support revisions (#1070)

* Remove broken summary and report generation (#1071)

* Add simple sharing test and new indices

* Migraction script updates

* Add loading state to clone button

* label fetch

Co-authored-by: BryonLewis <61746913+BryonLewis@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants