Skip to content

Commit 99b6feb

Browse files
authored
docs: add history details (#2022)
1 parent 38402c3 commit 99b6feb

25 files changed

+199
-50
lines changed

CONTRIBUTING.md

+18
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,20 @@ gate them behind a version check. For example, we only use
332332
`androidx.core:core-ktx:1.10.1` when on Kotlin 1.8 or higher. See
333333
[`dependencies.gradle`][] for other examples.
334334

335+
## Documentation
336+
337+
The schema for `app.json` is documented here:
338+
https://github.com/microsoft/react-native-test-app/wiki/Manifest-(app.json)
339+
340+
This page is wholly generated with the command, `npm run generate:docs`. You can
341+
copy the output and replace the page content in its entirety.
342+
343+
Documentation is generated by [`generate-schema.mjs`][] and sources Markdown
344+
files under [`scripts/docs/`][].
345+
346+
When making changes to docs, also ensure that `schema.json` gets updated by
347+
running `npm run generate:schema`.
348+
335349
<!-- References -->
336350

337351
[Dependency Dashboard]:
@@ -344,10 +358,14 @@ gate them behind a version check. For example, we only use
344358
https://github.com/microsoft/rnx-kit/tree/main/packages/react-native-host#readme
345359
[`dependencies.gradle`]:
346360
https://github.com/microsoft/react-native-test-app/blob/trunk/android/dependencies.gradle
361+
[`generate-schema.mjs`]:
362+
https://github.com/microsoft/react-native-test-app/blob/trunk/scripts/generate-schema.mjs
347363
[`package.json`]:
348364
https://github.com/microsoft/react-native-test-app/blob/trunk/package.json
349365
[`react-native-releases`]:
350366
https://github.com/reactwg/react-native-releases/discussions
367+
[`scripts/docs/`]:
368+
https://github.com/microsoft/react-native-test-app/tree/trunk/scripts/docs
351369
[`test:matrix`]:
352370
https://github.com/microsoft/react-native-test-app/blob/trunk/scripts/test-matrix.mjs
353371
[`uuid`]: https://github.com/uuidjs/uuid

schema.json

+20-18
Large diffs are not rendered by default.

scripts/docs/android.icons.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,10 @@ to generate the assets.
88
You can read more about Android adaptive icons in the
99
[Android documentation](https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive).
1010

11-
Introduced in
12-
[1.6.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.6.0).
11+
<details>
12+
<summary>History</summary>
13+
14+
- [[1.6.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.6.0)]
15+
Added
16+
17+
</details>

scripts/docs/android.package.md

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
Use this property to set the
2+
<a href='https://developer.android.com/studio/build/application-id'>application
3+
ID</a> of the APK. The value is set to `applicationId` in `build.gradle`.
4+
5+
<details>
6+
<summary>History</summary>
7+
8+
- [[0.1.25](https://github.com/microsoft/react-native-test-app/releases/tag/0.1.25)]
9+
Added
10+
11+
</details>

scripts/docs/android.signingConfigs.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -26,5 +26,10 @@ for the debug and release flavors:
2626
}
2727
```
2828

29-
Introduced in
30-
[0.11.0](https://github.com/microsoft/react-native-test-app/releases/tag/0.11.0).
29+
<details>
30+
<summary>History</summary>
31+
32+
- [[0.11.0](https://github.com/microsoft/react-native-test-app/releases/tag/0.11.0)]
33+
Added
34+
35+
</details>

scripts/docs/android.versionCode.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,10 @@ to determine whether one version is more recent than another. See
33
[Version your app](https://developer.android.com/studio/publish/versioning#appversioning)
44
for more on how it is used and how it differs from [`version`](#version).
55

6-
Introduced in
7-
[1.4.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.4.0).
6+
<details>
7+
<summary>History</summary>
8+
9+
- [[1.4.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.4.0)]
10+
Added
11+
12+
</details>

scripts/docs/bundleRoot.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,10 @@ When set, the test app will look for the following files on startup:
1212
- `myRoot.jsbundle`
1313
- `myRoot.bundle`
1414

15-
Introduced in
16-
[0.9.0](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.0).
15+
<details>
16+
<summary>History</summary>
17+
18+
- [[0.9.0](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.0)]
19+
Added
20+
21+
</details>

scripts/docs/ios.buildNumber.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,10 @@ key for App Store.
44
The equivalent key in `Info.plist` is
55
[`CFBundleVersion`](https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleversion).
66

7-
Introduced in
8-
[1.4.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.4.0).
7+
<details>
8+
<summary>History</summary>
9+
10+
- [[1.4.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.4.0)]
11+
Added
12+
13+
</details>

scripts/docs/ios.bundleIdentifier.md

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Use this property to set the bundle identifier of the final app bundle. This is
2+
the same as setting `PRODUCT_BUNDLE_IDENTIFIER` in Xcode.
3+
4+
<details>
5+
<summary>History</summary>
6+
7+
- [[0.9.7](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.7)]
8+
Added
9+
10+
</details>

scripts/docs/ios.codeSignEntitlements.md

+10
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,13 @@ For more details, read Apple's documentation on
1818
Alternatively, specify a path to a custom `.entitlements` file. The path should
1919
be relative to `app.json`. This is equivalent to setting
2020
`CODE_SIGN_ENTITLEMENTS` in Xcode.
21+
22+
<details>
23+
<summary>History</summary>
24+
25+
- [[3.7.0](https://github.com/microsoft/react-native-test-app/releases/tag/3.7.0)]
26+
Declare entitlements in app manifest
27+
- [[0.9.7](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.7)]
28+
Added
29+
30+
</details>

scripts/docs/ios.codeSignIdentity.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,10 @@ signing identity</a> to use when signing code.
44

55
This is the same as setting `CODE_SIGN_IDENTITY` in Xcode.
66

7-
Introduced in
8-
[0.9.7](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.7).
7+
<details>
8+
<summary>History</summary>
9+
10+
- [[0.9.7](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.7)]
11+
Added
12+
13+
</details>

scripts/docs/ios.developmentTeam.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,10 @@ team</a> that the app should be assigned to.
44

55
This is the same as setting `DEVELOPMENT_TEAM` in Xcode.
66

7-
Introduced in
8-
[0.9.7](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.7).
7+
<details>
8+
<summary>History</summary>
9+
10+
- [[0.9.7](https://github.com/microsoft/react-native-test-app/releases/tag/0.9.7)]
11+
Added
12+
13+
</details>

scripts/docs/ios.icons.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,10 @@ You can read more about app icons in the
99
The equivalent key in `Info.plist` is
1010
[`CFBundleIcons`](https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleicons).
1111

12-
Introduced in
13-
[1.6.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.6.0).
12+
<details>
13+
<summary>History</summary>
14+
15+
- [[1.6.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.6.0)]
16+
Added
17+
18+
</details>

scripts/docs/ios.privacyManifest.md

+8
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,11 @@ values:
3939

4040
For more details, read Apple's documentation on
4141
[Privacy manifest files](https://developer.apple.com/documentation/bundleresources/privacy_manifest_files).
42+
43+
<details>
44+
<summary>History</summary>
45+
46+
- [[3.6.0](https://github.com/microsoft/react-native-test-app/releases/tag/3.6.0)]
47+
Added
48+
49+
</details>

scripts/docs/macos.applicationCategoryType.md

+8
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,11 @@ The category that best describes the app for the App Store.
22

33
The equivalent key in `Info.plist` is
44
[`LSApplicationCategoryType`](https://developer.apple.com/documentation/bundleresources/information_property_list/lsapplicationcategorytype).
5+
6+
<details>
7+
<summary>History</summary>
8+
9+
- [[3.5.13](https://github.com/microsoft/react-native-test-app/releases/tag/3.5.13)]
10+
Added
11+
12+
</details>

scripts/docs/macos.humanReadableCopyright.md

+8
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,11 @@ A human-readable copyright notice for the bundle.
22

33
The equivalent key in `Info.plist` is
44
[`NSHumanReadableCopyright`](https://developer.apple.com/documentation/bundleresources/information_property_list/nshumanreadablecopyright).
5+
6+
<details>
7+
<summary>History</summary>
8+
9+
- [[3.5.13](https://github.com/microsoft/react-native-test-app/releases/tag/3.5.13)]
10+
Added
11+
12+
</details>

scripts/docs/singleApp.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,10 @@ Defaults to multi-app mode.
55

66
For more details, see [its dedicated page](Single-app-Mode).
77

8-
Introduced in
9-
[1.3.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.3.0).
8+
<details>
9+
<summary>History</summary>
10+
11+
- [[1.3.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.3.0)]
12+
Added
13+
14+
</details>

scripts/docs/version.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,10 @@ integers, such as 1.3.11.
1414
[app package manifest](https://docs.microsoft.com/en-us/uwp/schemas/appxpackage/appx-package-manifest)
1515
instead.
1616

17-
Introduced in
18-
[1.4.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.4.0).
17+
<details>
18+
<summary>History</summary>
19+
20+
- [[1.4.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.4.0)]
21+
Added
22+
23+
</details>

scripts/docs/windows.appxManifest.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,10 @@ package manifest</a>. If none is set, a default manifest will be provided.
44
Changes to this property will not be automatically be picked up; you need to
55
re-run `npx install-windows-test-app` to update the solution.
66

7-
Introduced in
8-
[0.5.5](https://github.com/microsoft/react-native-test-app/releases/tag/0.5.5).
7+
<details>
8+
<summary>History</summary>
9+
10+
- [[0.5.5](https://github.com/microsoft/react-native-test-app/releases/tag/0.5.5)]
11+
Added
12+
13+
</details>

scripts/docs/windows.certificateKeyFile.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,10 @@ The path to the certificate to use. If specified, it will also enable package
22
signing. Changes to this property will not be automatically be picked up; you
33
need to re-run `npx install-windows-test-app` to update the solution.
44

5-
Introduced in
6-
[1.1.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.1.0).
5+
<details>
6+
<summary>History</summary>
7+
8+
- [1.1.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.1.0)]
9+
Added
10+
11+
</details>

scripts/docs/windows.certificatePassword.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,10 @@ The password for the private key in the certificate. Leave unset if no password.
22
Changes to this property will not be automatically be picked up; you need to
33
re-run `npx install-windows-test-app` to update the solution.
44

5-
Introduced in
6-
[1.1.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.1.0).
5+
<details>
6+
<summary>History</summary>
7+
8+
- [1.1.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.1.0)]
9+
Added
10+
11+
</details>

scripts/docs/windows.certificateThumbprint.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,10 @@ This value must match the thumbprint in the signing certificate, or be unset.
22
Changes to this property will not be automatically be picked up; you need to
33
re-run `npx install-windows-test-app` to update the solution.
44

5-
Introduced in
6-
[1.1.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.1.0).
5+
<details>
6+
<summary>History</summary>
7+
8+
- [1.1.0](https://github.com/microsoft/react-native-test-app/releases/tag/1.1.0)]
9+
Added
10+
11+
</details>

scripts/generate-schema.mjs

+2
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@ export async function readDocumentation() {
2929
"singleApp",
3030
"version",
3131
"android.icons",
32+
"android.package",
3233
"android.signingConfigs",
3334
"android.versionCode",
3435
"ios.buildNumber",
36+
"ios.bundleIdentifier",
3537
"ios.codeSignEntitlements",
3638
"ios.codeSignIdentity",
3739
"ios.developmentTeam",

scripts/schema.mjs

+4-4
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ export function generateSchema(docs = {}) {
4747
type: "object",
4848
properties: {
4949
bundleIdentifier: {
50-
description:
51-
"Use this property to set the bundle identifier of the final app bundle. This is the same as setting `PRODUCT_BUNDLE_IDENTIFIER` in Xcode.",
50+
description: extractBrief(docs["ios.bundleIdentifier"]),
51+
markdownDescription: docs["ios.bundleIdentifier"],
5252
type: "string",
5353
},
5454
buildNumber: {
@@ -235,8 +235,8 @@ export function generateSchema(docs = {}) {
235235
type: "object",
236236
properties: {
237237
package: {
238-
description:
239-
"Use this property to set the <a href='https://developer.android.com/studio/build/application-id'>application ID</a> of the APK. The value is set to `applicationId` in `build.gradle`.",
238+
description: extractBrief(docs["android.package"]),
239+
markdownDescription: docs["android.package"],
240240
type: "string",
241241
},
242242
versionCode: {

scripts/types.ts

+2
Original file line numberDiff line numberDiff line change
@@ -199,9 +199,11 @@ export type Docs = {
199199
singleApp: string;
200200
version: string;
201201
"android.icons": string;
202+
"android.package": string;
202203
"android.signingConfigs": string;
203204
"android.versionCode": string;
204205
"ios.buildNumber": string;
206+
"ios.bundleIdentifier": string;
205207
"ios.codeSignEntitlements": string;
206208
"ios.codeSignIdentity": string;
207209
"ios.developmentTeam": string;

0 commit comments

Comments
 (0)