PantherLAB / PantherDashboard

Panther Dashboard for DQMH is a tool designed to improve the Developer Experience when working with DQMH Framework.
https://pantherlab.github.io/PantherDashboard/
12 stars 4 forks source link

Implement Result Caching #46

Closed pfoneill closed 3 months ago

pfoneill commented 4 months ago

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

A: My project is large and it can take up to 30 minutes to scan the entire project. My project is also at the stage where it is quite stable, so the DQMH interfaces don't change that often. I would like a way to avoid having to scan the project every time.

Describe the solution you'd like A clear and concise description of what you want to happen.

A: Cache the results of a project/module scan and persist them somewhere on disk so that the user doesn't have to scan the project every time.

Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

A: I considered writing a python script to parse through all of the data instead.

Additional context Add any other context or screenshots about the feature request here.

enoearias commented 4 months ago

Hi @pfoneill, this makes sense, I´ll work on this ASAP, this is what I feel like it is the best solution:

  1. Add VI Path to Requests Maps, also add Library Path.
  2. Save a File per Project with this information, maybe a JSON file (to be defined)
  3. add another UI to Panther Dashboard project to keep all the projects worked, basically save the project history and previous file location, I want a UI as a Starting Point like LabVIEW does.
  4. Once the user click on a scanned project it will use the File to load Panther Dashboard Interfase
  5. Everytime a Module is refreshed or the Project is scanned, the file will be updated
  6. This file could be added to any source code control for teams working on a project to load Panther Dasboard even if someone else scanned the project.
  7. Internally add a validation to check if the reference to any vi is valid, if the reference is not valid use the VI Path to refresh the VI reference.
enoearias commented 3 months ago

Implemented on Panther Dashboard V6 https://www.vipm.io/package/pantherlab_lib_panther_dashboard/