Date

Call-in Information

Time: 10:00 am, Eastern Time (New York, GMT-04:00)

To join the online meeting:

  • https://lyrasis.zoom.us/j/84378615572?pwd=bGUxSjlyRTdjOGl5U1B6L0Yva3RQdz09

    Meeting ID: 843 7861 5572
    Passcode: 556561
    One tap mobile
    +16699006833,,84378615572#,,,,*556561# US (San Jose)
    +19292056099,,84378615572#,,,,*556561# US (New York)

    Dial by your location
            +1 669 900 6833 US (San Jose)
            +1 929 205 6099 US (New York)
            +1 253 215 8782 US (Tacoma)
            +1 301 715 8592 US (Washington DC)
            +1 312 626 6799 US (Chicago)
            +1 346 248 7799 US (Houston)
            877 853 5257 US Toll-free
            888 475 4499 US Toll-free
    Meeting ID: 843 7861 5572
    Passcode: 556561
    Find your local number: https://lyrasis.zoom.us/u/kerqtGDrJ4

Slack

Attendees

(star)  Indicating note-taker

  1. Dragan Ivanovic 
  2. Brian Lowe  
  3. Georgy Litvinov 
  4. Michel Héon
  5. Benjamin Gross 
  6. Benjamin Kampe
  7. Veljko Maksimovic (star)
  8. William Welling 
  9. Kevin Day 
  10. Huda Khan 
  11. Fadwa Alshawaf

Agenda

  1. Questions/Issues/Pull requests/Announcements
    1. https://github.com/vivo-project/VIVO-languages/pull/107
    2. How to mitigate the Spring CVE-2022-22965 vulnerability
    3. Changing the organization label (Markus Kotte): https://vivo-project.slack.com/archives/C8RL9L98A/p1649068147302279 
  2. DSpace-VIVO integration
    1. DSpace-VIVO integration task force
  3. The February sprint 
    1. Completion of PR reviews
    2. Resolving dependency conflict
    3. Creation of a PR for main branch
    4. The Dynamic API demonstration meeting - https://docs.google.com/presentation/d/1EiVyBeXYgX363ykAmP6OKgfnorsUdkLdorPCYnmjGiA/edit?usp=sharing
  4. Update of the Roadmap - https://docs.google.com/document/d/1hJSWAa3ENoFOYyp0GyvDqBdehra3AmFBAD9X2dX3cSo/edit?usp=sharing
    1. Specifying date
      1. May 30th - June 17th
    2. Topics 
      1. Update the ontology
        1. GET all and GET one - two dynamic actions or one
      2. Implement more complex workflows
        1. iteration step,
        2. conditional step
        3. Implement N3Template deletion and modification
      3. User interface for execution of a dynamic action
      4. User interface for definition of a dynamic action
      5. Validation of dynamic action
      6. Authorization - roles

Notes

First topic: how to test if VIVO is vulnerable to new security bugs within one of the sprint dependencies. Brian believes that few spring dependencies vivo is using are just used for a small feature within the map of sciences, therefore we are probably not affected. Welling agreed, stating that the bug is related to Springs data binding, which isn’t used in VIVO.  He also added that a few dependencies that are imported within pom.xml, probably aren’t even used at all. He suggested trying to remove those dependencies at all to see if it still works fine. Dragan took on the responsibility of trying to remove those spring dependencies. 

William later found two places where springframework is used, but again suggests that those two places can easily be removed.

Dragan mentioned adoption and migration to spring boot in the future. Georgy mentioned a new spring update that supposedly isn’t backwards compatible. William agreed that Spring should be used, but not just for one part of the app, or just for bean management, but for the entire web app context.

At the end, William found a bunch more places where spring framework is used, and everyone agreed that it would be better to upgrade spring dependencies than to remove them.

Dragan mentioned a feature/change request from Markus Kotte, which Georgy said he is already working on.

DSpace integration project update by Michel:

They created a new data schema for transforming data from Dspace to graphs to be entered in the VIVO system. For the next week Michel will work on transforming item metadata from Dspace to VIVO. The new Form will need to be added within VIVO to add the item entity inside VIVO. This will hopefully be done within the next two weeks.

Georgy suggested having one more object property on get all, and attach new Action to it. Pagination also needs to be implemented. William suggested using query parameters to do this.

Short retrospect on the DynamicApi demo. Dragan said that he believes it was well received by the community. The  meeting wasn’t recorded, but short notes exist.

When it comes to the future dev of the DynamicApi, one of the things we need to discuss is the frontend framework. William asked whether to host static html,css and js files from the VIVO server, or to create a separate app to host the UI, such as node app. He also mentioned that SEO has to be one of the most important things when choosing the UI framework, since that is one of the problems with the current VIVO app. Per William, there are only a few viable options, mainly React and Angular. He leans towards React, which Georgy agreed with. One more suggestion from William was to actually build our UI around web components, and to choose a framework or library that can create those components. This approach would allow third party websites to easily embed VIVO features. We also need to choose a framework that supports easy internationalization.

Dragan: We also need to prioritize supporting more complex workflows with Dynamic API. Authorization/Authentication is missing, and logging as well. Down the line, supporting parallelization could also be interesting.

There are few tasks that would be great to have implemented before starting the next sprint. Those tasks are: Get all and Get one need two different actions, iteration and conditional steps within workflows, and modifying N3 templates to perform deletion and modification.

William said that we should implement a framework that uses TS,ES5 or ES6, and should probably not use jQuery anymore. William and Georgy suggested having separate repos for back-end and front-end.

When it comes to the date of the next sprint, William can only attend the last slot (May 30th-June 17th). Dragan and Georgy also think this one is the best.

Draft notes on Google Drive

Task List

  •  

Previous Tasks 

  • Dragan Ivanovic to make demo of what we have developed as a result of the sprint



  • No labels