Time/Location
from 14:00-15:00 UTC
Location: https://lyrasis.zoom.us/my/dspace?pwd=RTk4QUhISnhPRi9YenVrTFJKbDllQT09 (Meeting ID: 502 527 3040). Passcode: dspace
No Developer Meeting on Thursday, August 14 as Tim Donohue will be out of the office from August 11-19, returning on Weds, August 20. |
|
To quickly find PRs assigned to you for review, visit https://github.com/pulls/review-requested (This is also available in the GitHub header under "Pull Requests → Review Requests")
To be decided by DSpace Steering Group with feedback from Leadership Group.
Priorities listed at DSpace Release 10.0 Status.
Deadline is TBD for 9.2, 8.3 and7.6.5. Bug fix releases do not have fixed/scheduled deadlines. Instead, the developer team will determine when to create a release based on the significance of the issues to solve. (e.g. If major issues are fixed, then a bug fix release will occur more rapidly. If minor issues are found, then a bug fix release may be delayed until sufficient fixes have been made to warrant a release)
dspace-7_x are becoming more difficult to port forward.)Do you have a PR stuck in "under review" that you really want to see move forward? Or maybe it's someone else's PR but you want to get it more attention?
See Trading reviews on Pull Requests for how to get immediate attention to that PR!
Opening
Tim welcomed participants and noted the main agenda item: discussion on NX and potential migration of the DSpace Angular UI.
Brief mention of ongoing merger discussions before transitioning to the main technical topic.
Merger Updates
Strategic group is planning a Q&A webinar in the second half of September (exact date TBD).
Format: short presentation on merger progress + ~45 minutes for community questions.
Questions can be submitted in advance via an online form.
No decisions have been made yet; planning work continues.
Recommendations to steering/leadership groups expected in about a month or more.
Still exploring how a merger might be structured technically.
Main Topic: NX Migration Discussion
Current Angular UI is monolithic; customization requires code-level changes.
Goals:
Modularization to allow reusable, plugin-like architecture (institutions can build and share small add-ons).
Easier customization management (similar to how XML/JSP UI allowed overlays in earlier DSpace versions).
Backend modularization is possible with Maven modules, but front-end currently lacks equivalent flexibility.
NX is not required to achieve modularization but makes it easier.
Provides tooling for creating and managing libraries, ensuring builds occur in correct order.
Advantage: incremental builds & caching, reducing build times significantly.
Current Angular app is monolithic → hard to extend, limited for external plugins.
NX helps by:
Structuring code into apps + libraries.
Offering CLI scaffolding, dependency graphs, incremental builds, and caching.
Supporting modular architecture while maintaining developer productivity.
Two approaches:
Standalone (single app + libraries).
Monorepo (multiple apps + shared libs).
Demoed proof-of-concept migration:
Showed creation of libraries (e.g., core functionality separated).
Highlighted speed improvements with cached builds.
Example of custom feature library adding routes independently.
pcg-kk: Raised concerns about NX maintenance:
Version incompatibilities between NX & Angular.
Risk of circular dependencies if modularization isn’t carefully managed.
Observed bugs and open issues in NX community.
Giuseppe Digilio:
Agreed circular dependencies are a risk in any modularization. Scripts and NX configs can help enforce boundaries. We already have a script in DSpace that attempts to find any circular dependencies. This issues isn't specific to NX, but is more a modularization issue.
Suggested aligning Angular and NX versions carefully; not seen as a major blocker.
Tim Donohue:
Suggested documenting risks and considering fixed NX versions per DSpace release.
Art Lowel: Questioned impact on merger with DSpace-CRIS.
Concern: CRIS doesn’t use NX currently.
Giuseppe: standalone NX approach minimizes disruption; structure remains similar to current Angular app.
Themes: Question raised about impact on theme upgrades under modularization. Initially themes will remain in the main application – so the process is unchanged. In the future, with NX, would could consider splitting the theming engine into a separate module and modularize themes more.
Backend + frontend bundling: Desire expressed for ways to package both together for customizations. Tim noted NX can wrap other build tools (like Maven/Gradle), so potential exists. No immediate plans for this yet though.