penrose / penrose

Create beautiful diagrams just by typing notation in plain text.

Home Page:https://penrose.cs.cmu.edu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Multiple bugs related to tracking state changes when saving drafts and workspaces in the editor

hsharriman opened this issue · comments

Describe the bug
Several bugs surround the experience of editing/saving/sharing/importing Penrose files in the editor. This is a list of all the bugs I found while testing on penrose.cs.cmu.edu/try/. Almost all of these bugs are related to incorrect or missing transitions between internal states in the editor. To see UX improvements (not bugs) related to this process, see #1684.

  • renaming a workspace should not automatically create a new workspace if you're already working with a workspace
  • importing: add confirmation if you are trying to import a file while in draft state
  • importing: trio is imported but the title/top header does not update
    • if you share imported trio the stale title will be included
  • creating a gist from a draft does not save the changes locally but it does encapsulate the changes in the gist, it should also save your changes as a workspace
  • there's no confirmation that you're abandoning work if you navigate to someone else's gist while in draft mode
  • there's no confirmation that you're abandoning work if you navigate to new webpage while in draft mode
  • if you import a file while viewing a workspace, imported files overwrite your workspace's changes instead of saving your workspace and putting you in draft state
  • FLAKY bugs (not a consistent repro):
    • upload is flaky? sometimes it takes like 5 or 6 tries for the upload to go through. no confirmations/indicators appear in this situation
    • duplicating workspaces too quickly causes errors in retrieving those workspaces

To Reproduce
These behaviors repro on main, you can repro all of these from penrose.cs.cmu.edu/try/

Steps to reproduce the behavior:
See above

Expected behavior
See above

Desktop (please complete the following information if applicable):

  • OS: MacOS
  • Browser Chrome
  • Version 120.0.6099.71

Additional context
Too many bugs to include repro instructions for all at the moment.

changes:

  • couldn't repro on 1/10/24 renaming a workspace should not automatically create a new workspace if you're already working with a workspace
  • fixed. importing: add confirmation if you are trying to import a file while in draft state
  • fixed importing: trio is imported but the title/top header does not update
  • fixed (most likely related): if you share imported trio the stale title will be included
  • fixed creating a gist from a draft does not save the changes locally but it does encapsulate the changes in the gist, it should also save your changes as a workspace because you're automatically redirected to the gist
  • fixed try adding a beforeunload event that confirms that you have no unsaved changes before navigating away from the page
    • there's no confirmation that you're abandoning work if you navigate to someone else's gist while in draft mode
    • there's no confirmation that you're abandoning work if you navigate to new webpage while in draft mode
  • fixed if you import a file while viewing a workspace, imported files overwrite your workspace's changes instead of saving your workspace and putting you in draft state
  • fixed if you import all tabs say "SVG import" instead of domain/substance/style
  • FLAKY bugs (not a consistent repro):
    • upload is flaky? sometimes it takes like 5 or 6 tries for the upload to go through. no confirmations/indicators appear in this situation
    • duplicating workspaces too quickly causes errors in retrieving those workspaces