2023-12-04 Meeting notes

Date

Attendees 

Discussion items

TimeItemWhoNotes
1 minScribeAll

 Ingolf Kuss is next, followed by Maccabee Levine 

Reminder:  Please copy/paste the Zoom chat into the notes.  If you miss it, this is saved along with the meeting recording, but having it here has benefits.

Convener today: Jeremy Huff 

1 minTCR Board Review

All


5-10 minLiaison Updates
  • CC: Maccabee Levine
    • No CC meeting this week
  • PC: Tod Olson
    • Main item was how to follow up the work of the Entity Management WG how that intersects with ongoing work on BIBFRAME as part of the LoC contract. Thought is the EM work and a Linked Data group could go under MM SIG, and MM SIG could be restructured in some way. Will explore restructuring with MM SIG, and a call for participants in a linked data group has gone out.
    • Meeting notes today: 

      Metadata Management SIG: Their scope is getting bigger. Adding Linked Data and the use of BIBFrame to the MM SIG. MM SIG needs restructuring. Linked Data has found a home for the time being at the MM SIG. Linked Data group helps to establish what the LoC is planning. Exploring BibFrame support in FOLIO. There are a lot of technical implications. #linked_data Slack channel.

  • RMS Group: Jakub Skoczen No updates.
  • Security Team: Julian Ladisch Nothing important to report.
  • Tri-council Application Formalization: Jenn Colt  The group finished the charter last week and will work on deliverables. Will come up with a spread-sheet.
5 min

Technical Council Sub Groups Updates

All

Quick updates only.  If we can't find volunteers for groups, we'll need to add the topic to our backlog and address it during dedicated discussion sessions.

Distributed vs. centralized configuration: Julian Ladisch : some progress with the text has been done. Near to getting this to the next stage. A PR for the RFC is open.

TCR process improvement. Maccabee Levine some progress: how to deal with exceptions ? Proposals have been made in the PRs. No "provisional acceptance" for fundamental changes. But put them on hold.

10-20 minRFCs

All


RFC Process Improvements:

  • Application Formalization RFC - DRAFT REFINEMENT PR:  https://github.com/folio-org/rfcs/pull/22
    • Form a subgroup
    • The RFC is in draft, needs to go forward to "public review"
    • Jeremy Huff will create a subgroup to shepherd it through the remaining processe, after the meeting .
    • The group has no objections to form a subgroup to bring it to the next stage.
  • Craig McNally: We need another RFC to update the metadata retroactively to reflect the new or adjusted statuses.
    • Any volunteers?
    • "Update the metadata retro-actively: Asking for another RFC
  • PR "Ask for an implementation timeline" is still open
    • Anything preventing us from merging this?
    • Not aware of blockers. Presumably only a trivial task to merge it.




Notes:

1 minDecision LogAll

Previous Notes:


Last week:

  • DR-000038 has been updated to Postgres 12 for Poppy Quesnelia and Postgres 16 for Ramsons...
  • DR-000038 has been updated with the Postgres 13, 14, 15 and 16 module test results of the 35 biggest modules that access the database, FOLIO has 60 database accessing modules. Not a single issue has been found.

Today:

  • Last week we voted "no" on supporting Postgres 13 in Quesnelia.
  • Do we support a Service Patch in Quesnelia ? Sys Ops don't want to do upgrades "within the row". If we stay on 12 in Ramsons, we will be way out of support.
  • On the operation side, for people managing many tenants, it is not practial to change postgres version from release to release equally for all tenants. Releases must therefore support multiple releases of Postgres (from Florian Gleixner)
  • Tod: 

    Strawman: 

    Postgresql 12, with forward compatibility to PG16, i.e. database interactions must not rely on any features or behaviors removed in PG16.

  • a "preliminary" or "bridge" support of 16.
  • Owen: https://folio-project.slack.com/archives/C9BBWRCNB/p1701105194657329
  • In the decision record "

    PostgreSQL 12 and 16 are the officially supported PostgreSQL server versions for the Quesnelia FOLIO release; PostgreSQL 12 server support ends November 14, 2024. Only PostgreSQL 12 SQL features are allowed for the Quesnelia FOLIO release; they must also work under PostgreSQL 16.

    PostgreSQL 16 is the officially supported PostgreSQL version for the Ramson FOLIO release."

  • Tod: 

    In the DR: 

    "Institutions are free to use any of the not officially supported PostgreSQL versions 13, 14, and 15 for their Quesnelia installation at their own risk."

  • Julian: In the DR "Decision" section: Supported server Version vs. supported SQL feature Version.
  • Marc: We will have to explain this to the community.
  • Jeremy: We will not support all issues that might pop up when using Postgres 16. We will address all issues that pop up using Postgres 12.
  • Marc: The developers perspective is: It must work on both 12 and 16. The only way to achieve this, is to only use features of 12. To use the overlap of features of 12 and 16. Do we have (a way to) check this constraint ?
  • Julian: All this has already been explained. We should vote now.
  • Jeremy: The votes (of last week and about DR-38) are not mutually exclusive, so we should vote.
  • Craig should put that on the agenda for next week.

End of meeting

IK: Sorry, I forgot to copy the complete meeting Chat . It should be done afterwards from the recording. — I have incorporated most of the chat in the meeting notes (discussion), though.

15-25 min

Officially Supported Technologies

All

Standing agenda item to review/discuss any requested or required changes to officially supported technology lists

  • Check in on progress... does anything else require attention?

Quesnelia Officially Supported Technologies discussion:

  • React ^18.2 is correct (Zak Burke)
  • Zak Burke will check RTL support for React 18
  • Cypress ^9.1.1: Talk to the people who use it and find out what they would like to do
  • Update Grails from 5 to 6:
    • Craig McNally: I would rather make the statement that we need to go to 6; otherwise, the longer we wait and deliberate and evaluate and so forth that means it's less time for developers to do the actual work.
    • Marc Johnson: 100% completely agree

Moved to the next meeting:

  • Formalize decisions on the following.  Quesnelia is the last chance to upgrade to avoid running unsupported versions:
    • Postgres 13 → Quesnelia 
    • Grails 6 → Quesnelia
  • Postgres 15 → Ramsons
    • Wait until we see the result of Kitfox testing
  • Attempt to move Quesnelia from DRAFT → ACCEPTED → ACTIVE since the relevant milestones have already passed.
1 minUpcoming MeetingsAll
  • - Topic TBD
  • - Regular TC meeting
  • ...
  • - Chairs Meeting (Tentative)
NAZoom Chat

Topic Backlog

Decision Log ReviewAll

Review decisions which are in progress.  Can any of them be accepted?  rejected?

Translation SubgroupAllSince we're having trouble finding volunteers for a subgroup, maybe we can make progress during a dedicated discussion session?
Communicating Breaking ChangesAllSince we're having trouble finding volunteers for a subgroup, maybe we can make progress during a dedicated discussion session?
Officially Supported Technologies - UpkeepAll

Previous Notes:

  • A workflow for these pages. When do they transition from one state to another. Do we even need statuses at all ?
  • Stripes architecture group has some questions about the Poppy release.
  • Zak: A handshake between developers, dev ops and the TC. Who makes that decision and how do we pass along that knowledge ? E.g. changes in Nodes and in the UI boxes. How to communicate this ? We have a large number of teams, all have to be aware of it.  TC should be alerted that changes are happening. We have a couple of dedicated channels for that. Most dev ops have subscribed to these channels. How can dev ops folk raise issues to the next level of community awareness ? There hasn't been a specific piece of TC to move that along.
  • Craig: There is a fourth group, "Capacity Planning" or "Release Planning". Slack is the de facto communication channel.  There are no objections to using Slack. An example is the Java 17 RFC. 
  • Craig: The TC gets it on the agenda and we will discuss it. The TC gets the final say.
  • Marc Johnson: We shouldn’t use the DevOps Channel. The dev ops folks have made it clear that it should only be used for support requests made to them.
  • Jakub: Our responsibility is to avoid piling up technical debt.
  • Marc: Some set of people have to actually make the call. Who lowers the chequered flag ?
  • Craig: It needs to ultimately come to the TC at least for awareness. There is a missing piece. Capacity Planning needs to provide input here. 
  • Marc: Stakeholders / Capacity Planning could make that decision. Who makes the decision ? Is it the government or is it some parts of the body ?
  • Marc: the developers community, the dev ops community and sys ops are involved. For example the Spring Framework discussion or the Java 17 discussion. But it was completely separate to the TC decision. It is a coordination and communication effort.
  • Marc: Maybe the TC needs to let go that they are the decision makers so that they be a moderating group.
  • Jakub: I agree with Marc. But we are not a system operating group. Dependency management should be in the responsibility of Release management. There are structures in the project for that.
  • Jason Root: I agree with Jakub and with Marc also. Policies should drive operational/release/support aspects of Folio.
  • Jason Root: If the idea of “support” is that frameworks are supported, then of course the project should meet that.
  • Marc Johnson
    Some group needs to inform OleksAii when a relevant policy event occurs.
    These documents effectively ARE the manifestation of the policy.
  • Craig: This is a topic for the next Monday session.
  • Craig to see if Oleksii Petrenko could join us to discuss the process for updating the officially supported technologies lists.


Dev Documentation VisibilityAll

Possible topic/activity for a Wednesday session:

  • Discuss/brainstorm:
    • Ideas for the type of developer-facing documentation we think would be most helpful for new developers
    • How we might bring existing documentation up to date and ensure it's consistent 
    • etc.

Action Items