plone / buildout.coredev

Plone Core Development Buildout
http://docs.plone.org/develop/coredev/docs/
74 stars 75 forks source link

Bootstrap 5.3 for Plone 6.0.x #864

Closed petschki closed 1 year ago

petschki commented 1 year ago

Resolve the diverged Classic-UI development in Plone 6 as Bootstrap 5.3 is now final. Needs more reviews and opinions. I've marked as draft until agreement.

petschki commented 1 year ago

@gforcada can a coredev PR be tested with Jenkins PR ?

ale-rt commented 1 year ago

I think you need to login to jenkins and use this form: https://jenkins.plone.org/job/pull-request-6.0-3.11/build?delay=0sec

Just paste the URL of the PR and click build.

petschki commented 1 year ago

@ale-rt I tried that here https://jenkins.plone.org/job/pull-request-6.0-3.8/2731/ but the pulled revision of the buildout is the latest from 6.0 branch and not this PR unfortunately...

petschki commented 1 year ago

I'm not sure about this log either: PR 6.0-py3.8 says it uses python3.9 ? https://jenkins.plone.org/job/pull-request-6.0-3.8/2731/consoleFull

Bildschirmfoto 2023-06-05 um 12 15 26
gforcada commented 1 year ago

@petschki yes, as @ale-rt mentioned one should be able to use PR jobs for testing buildout.coredev branches, I think that even if they are remote branches it does work, but fails at reporting the status back at GitHub (I think)

As for the python 3.9: yes and no 😄

The build steps on a PR jenkins jobs are like that:

The first and last steps are common to all PR jobs, and to make it easier to manage them a separate virtualenv (as some dependencies are needed) is created for them, but that python version is not used for running the tests 🍀

If you scroll a bit more you will see:

/home/jenkins/workspace/pull-request-6.0-3.8/venv/lib/python3.8/site-packages/setuptools/command/easy_install.py:144: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(

All warnings, when already running the tests, are actually pointing to venv/lib/python3.8 😄

All jobs configuration and scripts are found in: https://github.com/plone/jenkins.plone.org/tree/master/jobs I'm happy to review and improve them with any feedback you have 😉

petschki commented 1 year ago

@thet you remember correctly - this was at Alpine City Sprint. But during developing and impoving the classic-ui packages since then, we already did all the features and bugfixes twice for both BS versions. The only difference is, that BS 5.3 improves the CSS color variable management implementing color modes with a default set for the dark mode. So from my point of view it would make classic-ui frontend developers life easier if we move on and concentrate on one branch only.

Affected core packages:

petschki commented 1 year ago

@gforcada thanks for the python version insights.

Regarding PR jobs for coredev, I think the jenkins logic is not yet capable of testing coredev PRs... if I look at the current job for this PR, it first says, that the revision 58846b13ac9180f2c47f7b7e1d6dd6006716f509 is checked out, and this is the latest revision of 6.0 and not this revision here (the last commit msg also shows this).

https://jenkins.plone.org/job/pull-request-6.0-3.11/666/console

Bildschirmfoto 2023-06-06 um 10 00 59
petschki commented 1 year ago

@gforcada ups ... reading console log further please forgive my doubts ... there's the info, that the branch was switched:

Bildschirmfoto 2023-06-06 um 10 08 51

sorry 🫣

mauritsvanrees commented 1 year ago

I am okay with this in principle. It was good to have separate branches while Bootstrap 5.3 was still in alpha. But it is final now, and is only a feature release: nothing should break by using it.

But I wanted to try it out with a custom theme, and this failed for me. I created an issue: https://github.com/plone/plonetheme.barceloneta/issues/335 A fresh theme based on the "old" Barceloneta fails as well now though. So we may need some upgrade documentation, but this is true for the old version as well. That should be fixed.

Also, I saw that the latest Barceloneta tag on npm is still an alpha version: 3.1.0-alpha.1. This should be 3.1.3.

I plan to do a Plone 6.0.6 release this month of course. But I want to skip July, and do 6.0.7 at the end of August. So we could also say: keep using the older branches for a few weeks longer, and use the new branches once Plone 6.0.6 is out. Then we have two months to catch bugs in coredev. Does that sound okay?

mauritsvanrees commented 1 year ago

Apart from my remark about a custom theme, I tried it out in three client projects, two of them with Mosaic, and all seems fine.

mauritsvanrees commented 1 year ago

@jenkins-plone-org please run jobs

petschki commented 1 year ago

IIRC p.a.standardtiles got a release after creating this PR ... thanks for updating!

mauritsvanrees commented 1 year ago

@petschki I went ahead and rebased this branch on 6.0 and force pushed, to get all the latest changes in, and keep just one commit.

@jenkins-plone-org please run jobs

mauritsvanrees commented 1 year ago

For those interested, there is a first Classic UI Team meeting today at 1100 UTC (1.5 hours from now) in Discord in the classic-ui channel. We can briefly discuss there if this can be merged.