From abf9f8f90279002a519e12dfca5d78d412086593 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Wed, 2 Oct 2024 17:43:16 -0700 Subject: [PATCH 1/6] Create Development guide as a primary navigation item and entry point --- docs/development-guide/index.md | 47 +++++++++++++++++++++++++++++++++ docs/index.md | 1 + 2 files changed, 48 insertions(+) create mode 100644 docs/development-guide/index.md diff --git a/docs/development-guide/index.md b/docs/development-guide/index.md new file mode 100644 index 000000000..d1c032e86 --- /dev/null +++ b/docs/development-guide/index.md @@ -0,0 +1,47 @@ +--- +myst: + html_meta: + "description": "Development guide for Plone 6" + "property=og:description": "Development guide for Plone 6" + "property=og:title": "Development guide for Plone 6" + "keywords": "Plone, development, guide, tests, Volto, frontend, REST API, plone.api, backend" +--- + +(development-guide-label)= + +# Development guide + +This part of Plone 6 documentation provides guidance for the development of Plone. + +Development of Plone uses both the Python and JavaScript ecosystems. + +- Volto, the default frontend for Plone 6, is based on the React JavaScript framework. +- Classic UI, the legacy frontend in Plone 6 and earlier versions, is based on the Twitter Bootstrap 5 framework and other JavaScript tools. +- The backend consists of dozens of Python packages. + Plone REST API and `plone.api` are two of the more prominent Python packages in the Plone backend. + +Each frontend and backend package may have its own specific development methods. +This development guide points you, as a developer, to the appropriate resource. + + +## Tests + +Tests ensure that Plone functions as expected, and that changes to the code base during development don't break anything. + + +### Volto + +- {doc}`Volto acceptance tests ` +- {doc}`Volto unit tests ` + + +### Backend + +- {doc}`Plone REST API tests ` +- {doc}`plone.api tests ` +- {doc}`Backend tests ` (Plone 5) + +```{note} +Backend testing for Plone 6 is in the process of being written using Cookieplone and pytest. +Until it is complete, Plone 5 documentation is the authoritative source for testing the Plone backend, except for the explicitly listed backend packages above. +``` \ No newline at end of file diff --git a/docs/index.md b/docs/index.md index 0ab3dbaca..b2a112716 100644 --- a/docs/index.md +++ b/docs/index.md @@ -32,6 +32,7 @@ Read the [documentation for the previous version, Plone 5](https://5.docs.plone. overview/index install/index +development-guide/index manage/index upgrade/index deployment/index From c56aa628e0dbb28e85c549e5a997cd21aef09300 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Fri, 4 Oct 2024 02:01:13 -0700 Subject: [PATCH 2/6] Revise Test section, adding an admonition for the frontend, and removing exceptions for plone.api and plone.restapi. --- docs/development-guide/index.md | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/docs/development-guide/index.md b/docs/development-guide/index.md index d1c032e86..022429da1 100644 --- a/docs/development-guide/index.md +++ b/docs/development-guide/index.md @@ -26,22 +26,27 @@ This development guide points you, as a developer, to the appropriate resource. ## Tests -Tests ensure that Plone functions as expected, and that changes to the code base during development don't break anything. +Tests ensure that your project functions as expected, and that changes to the code base during development don't break anything. + ### Volto +```{note} +Frontend testing for Plone 6 is in the process of being written using Cookieplone and pytest. +Until it is complete, you can refer to the following guides and use tests in Volto core and add-ons for examples. +``` + - {doc}`Volto acceptance tests ` - {doc}`Volto unit tests ` +- {ref}`testing-the-add-on-label` ### Backend -- {doc}`Plone REST API tests ` -- {doc}`plone.api tests ` -- {doc}`Backend tests ` (Plone 5) - ```{note} Backend testing for Plone 6 is in the process of being written using Cookieplone and pytest. -Until it is complete, Plone 5 documentation is the authoritative source for testing the Plone backend, except for the explicitly listed backend packages above. -``` \ No newline at end of file +Until it is complete, Plone 5 documentation is the authoritative source for writing tests for the Plone backend. +``` + +- {doc}`Backend tests ` (Plone 5) From 68fd8d83e95ad3e8b4cd4a5226bb5ff8a2a9fb99 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Fri, 4 Oct 2024 02:09:13 -0700 Subject: [PATCH 3/6] Update tips submodules/volto --- submodules/volto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/volto b/submodules/volto index ff84416d6..29a8b55e0 160000 --- a/submodules/volto +++ b/submodules/volto @@ -1 +1 @@ -Subproject commit ff84416d69d89bb86fd36e378a52f27be31f2c40 +Subproject commit 29a8b55e046fdf6345617c8ecb23509a109c7a9d From 03a811e077a6111c029917e23baa5d5f37beb624 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Fri, 4 Oct 2024 02:32:21 -0700 Subject: [PATCH 4/6] Add a preliminary outline to Development Guide, creating a space for these items and temporary references to Plone 5 docs. --- docs/development-guide/index.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/docs/development-guide/index.md b/docs/development-guide/index.md index 022429da1..323b4a220 100644 --- a/docs/development-guide/index.md +++ b/docs/development-guide/index.md @@ -50,3 +50,33 @@ Until it is complete, Plone 5 documentation is the authoritative source for writ ``` - {doc}`Backend tests ` (Plone 5) + + +## {term}`ZCA` + +{doc}`plone5:develop/addons/components/index` + + +## {term}`ZCML` + +{doc}`plone5:develop/addons/components/zcml` + + +## GenericSetup + +{doc}`plone5:develop/addons/components/genericsetup` + + +## Content type schemas + +{doc}`plone5:develop/plone/content/index` + + +## Register views + +{doc}`plone5:develop/plone/views/index` + + +## Register API services + +{doc}`backend/configuration-registry` From 639d69be94eff2fe3e339f2667ba4741fe4c8da4 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Fri, 4 Oct 2024 02:40:56 -0700 Subject: [PATCH 5/6] Tag links with Plone 5 as needed. --- docs/development-guide/index.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/development-guide/index.md b/docs/development-guide/index.md index 323b4a220..70994208c 100644 --- a/docs/development-guide/index.md +++ b/docs/development-guide/index.md @@ -54,27 +54,28 @@ Until it is complete, Plone 5 documentation is the authoritative source for writ ## {term}`ZCA` -{doc}`plone5:develop/addons/components/index` +{doc}`plone5:develop/addons/components/index` (Plone 5) ## {term}`ZCML` -{doc}`plone5:develop/addons/components/zcml` +{doc}`plone5:develop/addons/components/zcml` (Plone 5) ## GenericSetup -{doc}`plone5:develop/addons/components/genericsetup` +{doc}`plone5:develop/addons/components/genericsetup` (Plone 5) ## Content type schemas {doc}`plone5:develop/plone/content/index` +- {doc}`plone5:develop/plone/content/index` (Plone 5) ## Register views -{doc}`plone5:develop/plone/views/index` +{doc}`plone5:develop/plone/views/index` (Plone 5) ## Register API services From a54ed8efe797af1cc048c565cb6a46b61d3018e8 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Fri, 4 Oct 2024 02:41:12 -0700 Subject: [PATCH 6/6] Add a local reference for content type schemas. --- docs/development-guide/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/development-guide/index.md b/docs/development-guide/index.md index 70994208c..6a0945920 100644 --- a/docs/development-guide/index.md +++ b/docs/development-guide/index.md @@ -69,7 +69,7 @@ Until it is complete, Plone 5 documentation is the authoritative source for writ ## Content type schemas -{doc}`plone5:develop/plone/content/index` +- {doc}`/backend/content-types/index` - {doc}`plone5:develop/plone/content/index` (Plone 5)