Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...


Discussion items

TimeItemWhoNotes
1 minScribeAll

Jenn Colt  is next, followed by Florian Gleixner, then Jeremy Huff 

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. 

5-10 minDistributed vs Centralized Configuration

Present abstract for RFC:  https://github.com/folio-org/rfcs/pull/23

Florian Gleixner : This RFC is about configuration options in FOLIO. It describes where to put configurations. The goal is to drop mod configuration due to security. It proposes favoring distributed configuration over the centralized configuration. It proposes that mod-configuration should not be used until the R release. The RFC suggests that a some exceptions might be made for centralized configuration. The RFC lays out a timing for migration. 

Tod Olson: Central configuration could be used in cases where modules do not have storage. E.G. z39.50 or other edge modules.

Craig McNally : That is a good point, and the UI consumes these configurations.

Florian Gleixner : There is no module that could be the parent of these settings, so these can be placed in a centralized configuration module. 

Tod Olson : will there be guidelines to promote consistency in how settings are expressed.

Florian Gleixner : this was discussed with Julian Ladisch and they decided that this was out of scope.

Tod Olson : So these changes are considered to be near-term

Florian Gleixner : This is true because of the security concerns. Maybe in a future RFC guidance could be given for best practices for designing settings.

Craig McNally : put forward a question from the chat, from Marc Johnson: How is the scope near-term, he thought this was intended to be a long term strategic decision.

Florian Gleixner : Dropping mod configuration is near term, but the use of distributed configuration is a more long term strategic decision. 

There were no objections and the RFC moved forward

5-10 min

Go programming language for backend development

Present abstract for RFC:  https://github.com/folio-org/rfcs/pull/25 

Jakub Skoczen : This RFC proposes that GO be added to the officially supported technology list for backend development. Go is a good language for building web micro services. It is a simple language and they feel it is a good fit. The timing sections suggests that a pilot module be created to determine the long term suitability of the language. If it is not successful GO will be dropped from the officially supported technologies list.

Ingolf Kuss : Is there already a plan for a pilot module

Jakub Skoczen : Yes there is a plan for a a pilot module. He imagines the module would be a fairly fringe module.

Marc Johnson : He has thoughts that this will have a big president  setting effect, in terms of the polyglot nature of FOLIO

Jakub Skoczen : They had the thought that this discussion might have a more general component, rather than just being about the specifics of Go.

Jeremy Huff : How much will this RFC dive into containerization?

Jakub Skoczen : That could be a direction that the conversation could take. He feels that containerization would be a less controversial aspect of the conversation, and that maintenance of a new code base would be a more robust topic.

Craig McNally : He cautions us against adding the language to the officially approved technology list provisionally.

There were no objections and the RFC moved forward


*Officially Supported Technologies UpkeepAll

Some items on this page are accompanied by specific versions or version ranges, while others are not.  Discuss whether or not we want to make this more consistent, or at least make it more clear when a version should be specified.  The primary concern likely has to do with how these pages are expected to be used.  There are at least a few different use cases includes, but not limited to:  

  • During the TCR process to verify that the module under review isn't introducing new technologies, or incompatible versions of technologies already on the list.
  • To track/plan upgrades of dependencies to ensure we're using supported versions (security implications)
  • ...

Marc Johnson : There could be timing issues with our discussion of the Officially Approved Technology list and the two previously proposed RFCs

Jeremy Huff : Do we need this list to be so granular, for instance would both the spring module core and spring way need to be enumerated on the list

Craig McNally : This is most likely out of scope, but it seems like if they both use the same version of spring, would this ok

Marc Johnson : There are historical issues with this that are worth talking about

Craig McNally : That is true, and this should be added to the topic backlog. Todays discussion is about versioning. Should these pages maintain versioning?

Jeremy Huff : This list was created for module evaluations. Its use in support periods was added later. He is of the opinion that it should not be used for both purposes. 

Marc Johnson : If we divided these into multiple lists, they would necessarily be related. How would we handle dividing it into multiple lists

Jeremy Huff : We should remove versions from the Officially Approved Technology list and maintain supported versions in another document

Marc Johnson : There are issues with these lists going out of sync and presenting logical contradictions. For the things that are shared (i.e. stripes), the versions mater. 

Jakub Skoczen : The team that is using  software that is out of support is on the hook for making the changes. We want the version to be as high as is possible.

Marc Johnson : He disagrees that we always want to be on the highest version of everything. Even if the goal is to get to the latest we still have to describe the steps as to how we get there.

Tod Olson : We started this list, and then it became apparent that in some cases versions matter. He agrees that some of the things that are shared (like

postgress

postgres) are different, but the versions do need to be tied to a FOLIO version. He feels that he is broadly supporting what Marc Johnson is suggesting, and feels that it would be awkward separating these into multiple documents.

Jakub Skoczen : He agrees with Tod Olson , we should probably express somewhere that we want versions to progress as quickly as is possible. We should not optimize for situations that are holding us back, but instead embrace the goal that we are using the most recent dependencies.

Craig McNally : We are all agreeing that we want to be moving forward, and avoid using deprecated software. We are running out of time, but it does sound like it is

woth

worth capturing the idea that we only specify versions "where they matter", as in instances that are cross-cutting.

Marc Johnson : These are dependencies that are shared between multiple dev teams, or where the system won't work if these elements are not aligned.

NAZoom Chat

10:05:00

From

Jenn

Colt

to

Everyone:
 

 

I

can

take

over

notes,

sorry

about

that
10:12:02

From

Craig

McNally

to

Everyone:
 

 

Jeremy

is

taking

notes

-

I'll

leave

it

up

to

you

two

to

sort

it

out

if

you

want

to

switch
10:12:53

From

Jenn

Colt

to

Everyone:
 

 

I

see

him

typing

away,

I’ll

let

him

keep

going
10:13:04

From

Craig

McNally

to

Everyone:
 

 

Reacted

to

"I

see

him

typing

awa..."

with

👍
10:13:20

From

Marc

Johnson

to

Everyone:
 

 

How

is

the

scope

near

term?
 

  
 

 

My

understanding

was

this

was

intended

to

be

a

long

term

strategic

decision
10:14:06

From

Marc

Johnson

to

Everyone:
 

 

We

already

decided

to

replace

mod-configuration

with

mod-settings

previously
10:16:11

From

Tod

Olson

to

Everyone:
 

 

Scope

seems

good.
10:25:37

From

Marc

Johnson

to

Everyone:
 

 

The

architecture

was

designed

to

support

it
 

  
 

 

However

practicalities

tended

to

supersede

that

from

early

on

in

the

project
10:25:59

From

Marc

Johnson

to

Everyone:
 

 

Containers

aren’t

an

official

distribution

mechanism

for

modules

in

FOLIO
10:26:10

From

Taras

to

Everyone:
 

 

Reacted

to

"Containers

aren’t

an..."

with

👍
10:26:38

From

Marc

Johnson

to

Everyone:
 

 

It’s

really

important

folks

consider

whether

this

is

a

thin

end

of

the

wedge
10:26:47

From

Tod

Olson

to

Everyone:
 

 

Yes,

there

have

been

a

number

of

people

who

have

wanted

to

see

Python

added,

for

example.

But

no

one

has

actually

come

forward

with

a

real

proposal

and

offer

for

a

sample

module

for

that

language.
10:27:53

From

Marc

Johnson

to

Everyone:
 

 

Replying

to

"Yes,

there

have

been…"
 

 

I

could

make

cases

for

a

bunch

of

languages 
 

  
 

 

The

case

for

any

of

them

is

less

important

to

me

than

the

general

principle

of

how

many

/

which

languages

to

support
10:29:48

From

Marc

Johnson

to

Everyone:
 

 

When

to

build

a

PoC

is

a

double-edged

sword

due

to

sunk

costs
 

  
 

 

The

FOLIO

community

has

tended

to

be

compelled

to

adopt

PoCs

due

to

the

prior

investment
10:38:19

From

Marc

Johnson

to

Everyone:
 

 

Yes,

ongoing

support

and

dev

is

a

theme

in

these

conversations

that

I

think

is

important 
 

  
 

 

Particularly

given

the

reasoning

folks

has

given

for

previous

decisions
10:50:39

From

Craig

McNally

to

Everyone:
 

 

@Jakub

Skoczen

is

your

hand

still

up,

or

up

again?
10:50:56

From

Jakub

Skoczen

to

Everyone:
 

 

Again,

but

I

can

lower

it

if

we

want

to

move

on
10:51:07

From

Craig

McNally

to

Everyone:
 

 

no

that's

fine.

 You're

up

next
10:52:02

From

Maccabee

Levine

to

Everyone:
 

 

If

we

want

to

make

any

decisions

in

the

next

7

minutes,

we

should

have

a

concrete

proposal

soon.
10:52:27

From

Marc

Johnson

to

Everyone:
 

 

It’s

not

only

development

effort 
 

  
 

 

For

infrastructure,

it’s

also

operational

effort
10:52:31

From

Marc

Johnson

to

Everyone:
 

 

Reacted

to

"If

we

want

to

make

a…"

with

👍
10:52:36

From

Craig

McNally

to

Everyone:
 

 

I

don't

think

that's

going

to

happen

@Maccabee

Levine.

 I'll

wrap

things

up

after

Jakub's

comments
10:54:39

From

Marc

Johnson

to

Everyone:
 

 

RMB

and

spring

way

are

a

good

example

of

the

challenges

we’ve

had

with

keeping

up

with

policy

decisions
10:56:02

From

Marc

Johnson

to

Everyone:
 

 

AWS

variants

of

infrastructure

also

aren’t

officially

supported

by

the

community
10:58:08

From

Marc

Johnson

to

Everyone:
 

 

It’s

not

a

perfect

heuristic.

First

party

libraries

are

an

example


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.

  • Do common libraries used to build in approved frameworks need to be on this list? Such as spring-way and spring-module-core.


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.

...