You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/glossary.md
+9-2Lines changed: 9 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -204,8 +204,7 @@ Hot Module Replacement (HMR)
204
204
A development feature provided by Webpack that automatically reloads, in the browser, the JavaScript modules that have changed on disk.
205
205
206
206
Yeoman
207
-
A popular scaffolding tool similar to Plone's `mr.bob` or `ZopeSkel`.
208
-
https://yeoman.io/
207
+
[Yeoman](https://yeoman.io/) is a popular scaffolding tool similar to Plone's `mr.bob` or `ZopeSkel`.
209
208
210
209
CommonJS
211
210
A JavaScript package standard, the equivalent of a Python wheel or egg.
@@ -447,6 +446,7 @@ Zope
447
446
448
447
Make
449
448
make
449
+
GNU make
450
450
[GNU Make](https://www.gnu.org/software/make/) is a tool which controls the generation of executables and other non-source files of a program from the program's source files.
451
451
452
452
Make gets its knowledge of how to build your program from a file called the _makefile_, which lists each of the non-source files and how to compute it from other files.
@@ -522,4 +522,11 @@ Factory Type Information
522
522
```{seealso}
523
523
[`FactoryTypeInformation` class source code](https://github.com/zopefoundation/Products.CMFCore/blob/361a30e0c72a15a21f88433b8d5fc49331f36728/src/Products/CMFCore/TypesTool.py#L431)
524
524
```
525
+
526
+
`nvm`
527
+
Node Version Manager
528
+
[`nvm`](https://github.com/nvm-sh/nvm/blob/master/README.md) allows you to quickly install and use different versions of node via the command line.
529
+
530
+
Node.js
531
+
[Node.js®](https://nodejs.org/en/) is an open-source, cross-platform JavaScript runtime environment.
@@ -37,33 +37,142 @@ You may host multiple Plone sites on the same server.
37
37
38
38
### Pre-requisites for installation
39
39
40
-
- Python 3.8, 3.9, or 3.10.
41
-
- Cookiecutter
42
-
- Node.JS
43
-
- nvm
44
-
- Yeoman
45
-
- Yarn
46
-
- GNU make
40
+
-[Python](https://www.python.org/downloads/) 3.8, 3.9, or 3.10.
41
+
- {term}`Cookiecutter`
42
+
- {term}`nvm`
43
+
- {term}`Node.js` LTS 16.x (see "Update" note)
44
+
- {term}`Yeoman`
45
+
- {term}`Yarn`
46
+
- {term}`GNU make`
47
+
48
+
````{note}
49
+
Update
50
+
: [Node.js 18 is in LTS state as of 2022-10-25](https://github.com/nodejs/release#release-schedule), and Node.js 16 is now in maintenance mode.
51
+
However, due to changes in internal SSL libraries, some Volto dependencies have been deprecated and need to be updated in order to continue working in Node.js 18, mainly [Webpack 4](https://github.com/webpack/webpack/issues/14532#issuecomment-947525539).
52
+
You can still use it, but Node.js should be run under a special flag: `NODE_OPTIONS=--openssl-legacy-provider`.
Installing Python is beyond the scope of this documentation.
49
65
However, it is recommended to use a Python version manager, [`pyenv`](https://github.com/pyenv/pyenv) that allows you to install multiple versions of Python on your development environment without destroying your system's Python.
50
66
67
+
68
+
(install-prerequisites-cookiecutter-label)=
69
+
70
+
#### Cookiecutter
71
+
51
72
Install or upgrade {term}`Cookiecutter` in your user's Python:
52
73
53
74
```shell
54
75
pip install --user --upgrade cookiecutter
55
76
```
56
77
57
-
{ref}`Install nvm and Node.js documentation <frontend-getting-started-install-nvm-label>`.
1. Install or update the supported LTS version of Node.js.
122
+
This command also activates that version.
123
+
124
+
```shell
125
+
nvm install 16
126
+
```
127
+
128
+
2. Verify that the supported version of Node.js is activated.
129
+
130
+
```shell
131
+
node -v
132
+
```
133
+
134
+
135
+
(install-prerequisites-yeoman-label)=
136
+
137
+
#### Yeoman
138
+
139
+
Install {term}`Yeoman`.
140
+
141
+
```shell
142
+
npm install -g yo
143
+
```
144
+
145
+
146
+
(install-prerequisites-yarn-label)=
147
+
148
+
#### Yarn
149
+
150
+
Install the Yarn Classic version (not the latest 2.x one) using `npm`.
151
+
152
+
1. Open a terminal and type:
153
+
154
+
```shell
155
+
npm install yarn@1
156
+
```
157
+
158
+
2. Verify that Yarn v1.x.x is installed and activated.
159
+
160
+
```shell
161
+
yarn -v
162
+
```
163
+
164
+
165
+
(install-prerequisites-make-label)=
166
+
167
+
#### Make
62
168
63
169
{term}`Make` comes installed on most Linux distributions.
64
170
On macOS, you must first [install Xcode](https://developer.apple.com/xcode/resources/), then install its command line tools.
65
171
On Windows, it is strongly recommended to [Install Linux on Windows with WSL](https://learn.microsoft.com/en-us/windows/wsl/install), which will include `make`.
66
172
173
+
Finally, it is a good idea to update your system's version of `make`, because some distributions, especially macOS, have an outdated version.
174
+
Use your favorite search engine or trusted online resource for how to update `make`.
0 commit comments