-
-
Notifications
You must be signed in to change notification settings - Fork 176
Contributing to Plone core: skip buildout, use magic #1936
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 6.0
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not clear what the intent here is. I've heard arguments to both remove and keep buildout.
Personally, I think both buildout and pip should be removed as methods for contributing and installation, and move to uv and Cookieplone. It's absurd to have three methods to get started with Plone. There should be one and only one method.
Given the lack of accurate documentation for both buildout and pip methods, I'm fine with letting them wither and die.
it’s draft.
Versuch dich in Kontemplation.
|
the mx* method in fact uses uv |
…more polite to new contributors.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The release managers ought to be involved in the switch from buildout to make. Has there been a discussion, decision, or announcement to switch?
This page was updated in #1671, taking over a month of review, discussion, and revisions. All the participants in that PR should also be involved in the discussion to switch. I'll request a review from them all.
I can't remember exactly, but there were some arguments made for keeping buildout. However, maybe that is not in the context of developing Plone core?
@@ -12,16 +12,15 @@ myst: | |||
This guide describes the process of how to contribute to, and develop in, Plone core. | |||
It expands upon {doc}`/contributing/index`. | |||
|
|||
```{important} | |||
Although Plone core includes Volto—the React based, default frontend for Plone 6—this guide does not apply to Volto and its packages. | |||
Although Plone core includes Volto — the React based, default frontend for Plone 6 — this guide does not apply to Volto and its packages. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please revert. Original punctuation is correct.
Please {ref}`contributing-sign-and-return-the-plone-contributor-agreement-label` before you contribute. | ||
This is not optional, but a must before your contribution can be accepted. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please revert. The original language is deliberate and direct. Less is more.
## Install Plone core for development | ||
|
||
The tool that installs Plone core is `buildout.coredev`. | ||
|
||
The current default and development branch of `buildout.coredev` is `6.1` | ||
Older versions are named according to their `major.minor` version. | ||
Former versions are named according to their `major.minor` version. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please revert. The versions still exist and are active. "Former" implies the version no longer exists or is no longer active. "Older" is a broader term that works. An appropriate usage of "former" would be, "I wish the former President had remained former, instead of getting elected a second time." 😈
Its versions align with Plone's `major.minor` versions. | ||
|
||
Use a separate directory for each version of Plone to which you want to contribute. | ||
This will avoid switching between git branches, then re-running buildout, which can cause dependency conflicts between versions of Plone. | ||
This will avoid switching between git branches, which can cause dependency conflicts between versions of Plone. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to its README, "Git" is now capitalized. Originally it was "git", and occasionally "GIT", depending on your mood while using it, as the bulleted list in the README indicates.
This will avoid switching between git branches, which can cause dependency conflicts between versions of Plone. | |
This will avoid switching between Git branches, which can cause dependency conflicts between versions of Plone. |
They will not work with buildout. | ||
To contribute to Volto, you will need to start over, and follow {doc}`../volto`. | ||
``` | ||
See more `make` options/targets in the READMEs of the `buildout.coredev` repo. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This part is fine, but sections later in the file assume that Plone was installed using buildout. (For example, the "Edit packages" section shows how to check out a new package from source by editing buildout.local.cfg.) We can't update only the installation instructions without also updating the other instructions that assume installation was done using buildout.
buildout.coredev can do without buildout.
@mauritsvanrees and @jensens created a Makefile support of a dev setup with straight forward package installation (uv) instead of buildout. This is awesome.
Fix plone/buildout.coredev#1014
📚 Documentation preview 📚: https://plone6--1936.org.readthedocs.build/contributing/core/index.html#install-plone-core-for-development