RFC: Integrate Neos.Ui into our development distribution

Hi team,

the title says it all, so TL;DR: I would like to integrate the Neos.Ui into our neos-development-collection for the next major release (Neos 6.0).

I haven’t really thought it through yet, but I think this would greatly simplify our core development and release process.

One risk I see is that we create a tighter coupling this way by accident¹.
But if we’re careful it can even ease the process of untangling the two worlds. For example we could replace the UI routes at once and avoid PRs that depend each other²

Another consequence would be version numbers that stay in sync – or to put it less positive: We’d have to create a new Core Release if only the UI needs an update vice versa.
I don’t think that this is an issue, either. We usually wait with releases anyways until a couple of new fixes/features are merged (except for critical bugfixes of course).

But before I get more into it – I think that we discussed that before and maybe there are really good reasons against going this route.


¹ The UI repositories would still exist but be turned into readonly mode like the other subsplit packages. that way we could push changes to the Neos “backend” and the UI parts simultaneously thus making it easier to blur the line

² We have that all the time today (see https://github.com/neos/neos-development-collection/pull/3013) for example

nobody with an opinion on that? o.O

Hey Bastian,

I already wished that for the last Major release and I am still in favor of merging the UI package into the dev collection.

Back then, I discussed it with Dmitri and as I remember this were the pros and cons:

Pro:

  • PRs for new features do not need to be done and coordinated in two repos
  • Within the dev-collection UI PRs are more visible and get the chance for more reviews
  • With that, new contributer may be attracted to the UI code
  • There is still some rough PHP code, which should be cleaned up and refactored.

Cons:

  • Release cycles are bound to that for Neos and the development would get less agile (well in the meanwhile the UI code is much more stable and feature releases of the UI are pretty much in sync with that of Neos)

Back then, we agreed on, that it would be best to have a clean and well defined interface (like GraphQL) to the CR and nearly no PHP code in the UI package, which would make the need to integrate it in the dev collection less significant.

1 Like

I’m fine with integrating. The “agile” development phase is over IMO.

We just need to make clear how development for older versions works and what needs to be done to make running the tests etc. work again.
I assume it will be a pile of work for the next release.

1 Like