blob: 6806b773800b367e0d727d91c5c46bbd73195549 [file] [log] [blame] [view]
# Working on `www/docs`
## Pull in documentation from other repos
* Many files of the documentation come from other repos (mainly plugin READMEs) and are simply pulled together by a build script.
* `tools/bin/fetch_docs.js` (execute via `node ./tools/bin/fetch_docs.js`) has more details and `www/_data/fetched-files.yml` contains an informative list of src/dest pairs.
* This can also be executed via `gulpfile.js` task `fetch`, by running `gulp fetch` which pulls in the files to `dev/en/{file dest}`.
* Most auto-generated files have a comment tag at the top of the file to indicate that they come from elsewhere.
## Update current docs from `dev`
The following command can quickly sync the `dev` docs with the current latest docs:
```bash
npm run update-docs
```
## Create new snapshot from `dev`
The following commands can be used to create a new snapshot of `dev` docs:
```bash
npx gulp newversion
npx gulp newversion --bumpCli
```
Please read the section, [Preparing Doc Release Scenarios](#Preparing-Doc-Release-Scenarios), below to understand which command fits your scenario.
## Preparing Doc Release Scenarios
When preparing to release docs, there are two things to be aware of, the version of Cordova CLI and if the changes warrants for a new doc version.
Here are a few scenarios that will help decide how if we are updating an existing snapshot of creating a new one.
1. Are we preparing to release new docs because there was a major release of Cordova CLI?
If the answer is **yes**, then we will be creating a new version of docs with the following command:
```bash
npx gulp newversion --bumpCli
```
If the current released docs version is `12.x` and we are preparing for Cordova-CLI 13.x, the above command will create `13.x-2024.10`.
> Notice: The year and month will be appended automatically.
2. Are we preparing to release new docs because there was a minor or patch release of Cordova CLI?
If the answer is **yes**, then we do not need to make a new snapshot. In this case, we can update an existing snapshot with the following command:
```bash
npm run update-docs
```
> Notice: In this scenario we are expecting the version to already exist. If it was missing, then we would have to create a new snapshot but in most cases it should never be missing.
3. Are we preparing docs for a major release to one or more of Cordova's platforms while the CLI version was unchanged?
If the answer is **yes**, then we need to make a new snapshot, but we do not need to bump the CLI major. We can do this with the following command:
```bash
npx gulp newversion
```
If the current doc snapshot is `12.x`, then the above command will create a new snapshot with the same CLI major version but the appended date will be different.
E.g. `12.x-2024.10`
> Notice:
>
> *`12.x` and older does not have date appended. Any newly created snapshots will append the date value.
> * If we already have `12.x-2024.10` and the month is still the same, we should use senario 2. `npm run update-docs`.