Skip to content

CDM 2020 05

SammyIsConfused edited this page May 1, 2020 · 3 revisions

openEQUELLA Community Dev Meeting - May 2020

2020-04-30 (US) / 2020-05-01 (AU)

Attendees

  • Chair: C Beach
  • Scribe: S Fisher

List of attendees: Chris Beach, Samantha Fisher, Cath Fitzgerald, Nick Charles, Christian Murphy, Penghai Zhang, Ian Stevenson

Agenda

General Topics

  • Review Action Items
  • Specific Topics (Please add to below list, or email the equella dev list to have an item added)
  • Discuss code enhancements since last CDM
  • Review tech choices, code structures, direction
  • Any tech debt concerns
  • Open PRs to discuss
  • Roadmap review
  • Q&A
  • Assign next Chair and Scribe

Specific Topics

  • No headers for most of the new UI files and files in autotests - is that a problem? (IS)
  • GitHub Actions overview (IS)
  • Wouldn't it be lovely if we had a JS API NPM module (IS)
  • New UI testing via Jest (IS)
  • Please add more

Minutes

Action items review

Setup GitHub bot account to handle things like Travis CI releases. The initial plan was to start setting up for the next major release. In the meantime, we have been looking into GitHub actions. One way or another, when we start the RC for 2020.2 we'll be looking into it.

Setup Issue to flag move to upgrade Java LTS in the future (tech debt) Hit some roadblocks, IS will continue investigation before moving forward.

Slack - has been shut down. No negative feedback from the community.

Research governance and committership guidelines - Not much movement recently. Not pressing since open source community movement is relatively low at the moment. Will stay in play until the next CDM. CB will open to that advisory board next week on May 6th.

Renovate working again - done.

Samesite cookie issue - done.

Specific Topics

No headers for most of the new UI files and files and autotests - is that a problem?

None of the JS side of oEQ has headers, only the backend Java and Scala files. Apache heavily recommends all files to have headers - Apereo only encourages this rather than enforcing it. ESLint has a plugin to add license headers - CM will look into this.

ACTION ITEM: JS license headers CM ACTION ITEM: Autotest license headers IS

GH actions overview

Travis has been temperamental - the resources it provides and the short queue length has been a bottleneck in development. GH has opened up Actions for free - IS has set up a build with parity of Travis using GH actions for the old UI and new UI. No need to store in S3 as the GH actions has its own artifacts ready and available for download - which decouples our builds from Edalex. The .github/workflow/ci.yaml configuration is actually more concise than Travis, and we no longer need shell scripting to make this work. Our configuration is set up into four jobs - Install, Old UI, New UI and save artifacts. Only save test data upon failure - coverage report upon success. Much less restricted than Travis - 20 concurrent jobs of max six hours vs 5 of max 50 minutes for Travis.

JS API NPM module

CM mentioned splitting out the front end into its own repo - IS has looked into this, and the coupling between the new UI and the Rest API makes this tricky. The current login in the new UI is just a wrapper around the old form based login - IS is adding a login endpoint rest API to account for this. Possibly we'd end up with two NPM modules - one for the Rest API and one for the frontend SPA.

ACTION ITEM: Decouple the frontend and the Rest API from the backend.

New UI testing via Jest

It was a bit of a struggle - Charlie built a page and attempted to mock up the rest API calls. We had to add the lazy loading for the TinyMCE editor in order to get this to work, and fix a bug that arose in config.ts. The pattern is now being established and we'll add more as development continues.

Discuss code enhancements since last CDM

We now have Storybook set up and it is being built on actively. In the Bb integration side, the migration building block has been being adjusted. Its a bit of an educated guess to figure out how to migrate some of the link integrations over - but it is currently in testing. A concern is that we're running a little blind, and that its quite difficult to ensure testing all possible inputs.

Review tech choices, code structures, direction

When NPM tries to import Purescript, it flags it as malware which is concerning. A version had some broken code in it, that got flagged by AV software. Updating Purescript was not possible, too many things required changes for it to be updated. As we work upon the new Search UI we'll remove more Purescript. By the end of the year, we'll hopefully have removed PureScript. IS spent some time with Ryan to show him the frontend structure.

Open PRs to discuss

Help wanted renovate dependencies - whenever the SBT deduplication error occurs in Renovate it has been flagged as "Help Wanted".

Roadmap Review

Unicon will be updating Checkfiles and reducing false positives. Unicon might be able to do some dependency updates - namely Spring and Tika. Probably not before 2020.2. Unicon might be able to make the enchanced file manager - still in the proposal stage. Edalex are trying to complete the search page by 2020.2. We also have a backlog of bugfixes that we'll try to include. 2020.3 - the new UI across the whole product. 2020.2 is hoped to be released some time around Q3.

Next Chair and Scribe

Chair - Charlie. Scribe - Samantha. Next CDM on 5th June Aus / 4th June US