Skip to content

Commit 882052a

Browse files
kelsetcipolleschi
authored andcommitted
meta->metadata
1 parent d11d537 commit 882052a

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

proposals/0012-introduce-reactNativeMeta.md renamed to proposals/0012-introduce-reactNativeMetadata.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
---
2-
title: Introducing `reactNativeMeta` to `package.json`, for RN specific metadata
2+
title: Introducing `reactNativeMetadata` to `package.json`, for RN specific metadata
33
author:
44
- Lorenzo Sciandra
55
date: 25-01-2021
66
---
77

8-
# RFC0012: Introducing `reactNativeMeta` to `package.json`, for RN specific metadata
8+
# RFC0012: Introducing `reactNativeMetadata` to `package.json`, for RN specific metadata
99

1010
## Summary
1111

12-
This RFC wants to introduce and formally discuss a new section for the package.json of a react-native project (app or library), called `reactNativeMeta`.
12+
This RFC wants to introduce and formally discuss a new section for the package.json of a react-native project (app or library), called `reactNativeMetadata`.
1313

1414
This new section will allow developer to express certain characteristics of their code in a more formalized manner, that can easily used by tooling to act towards the code accordingly.
1515

@@ -26,7 +26,7 @@ This is how this section would look like...
2626
"name": "@rnx-kit/metro-serializer",
2727
"version": "1.0.11",
2828
...,
29-
"reactNativeMeta": {
29+
"reactNativeMetadata": {
3030
"version": "2.3",
3131
"type": "library",
3232
"features": {
@@ -51,7 +51,7 @@ This is how this section would look like...
5151
"name": "contoso",
5252
"version": "2.0.3",
5353
...,
54-
"reactNativeMeta": {
54+
"reactNativeMetadata": {
5555
"version": "1.0",
5656
"type": "app",
5757
"features": {
@@ -75,7 +75,7 @@ A similar problem was also encountered by [React Native Directory](https://react
7575

7676
It became clear that there was a need to be able to communicate and parse certain information about a react-native library via its `package.json`, which led to [a meeting](https://github.com/microsoft/rnx-kit/discussions/2125) between Meta, Microsoft and Expo to figure out a common solution.
7777

78-
This RFC is the result of that meeting: a new section of the `package.json`, called `reactNativeMeta`, to contain certain metadata about a react-native project - it being either a library or an app.
78+
This RFC is the result of that meeting: a new section of the `package.json`, called `reactNativeMetadata`, to contain certain metadata about a react-native project - it being either a library or an app.
7979

8080
There are a few areas that this section could express in a consistent manner; here's a list of the ones we could think of (in no particular order):
8181

@@ -84,14 +84,14 @@ There are a few areas that this section could express in a consistent manner; he
8484
- if an app has opted in into Fabric, TM, or both
8585
- if an app is using Hermes or another js engine
8686

87-
Sidenote: the name `reactNativeMeta` was chosen to mirror the camel case pattern used by other fields such as `peerDependenciesMeta`.
87+
Sidenote: the name `reactNativeMetadata` was chosen to mirror the camel case pattern used by other fields such as `peerDependenciesMeta`.
8888

8989
## Detailed design
9090

9191
This is the section that in this first draft will need to be properly finalised. For now, here's what we envisioned:
9292

9393
```js
94-
reactNativeMeta: {
94+
reactNativeMetadata: {
9595
version: string, // ex. 1.0.0 - we know that this spec might evolve in the future
9696
type: string; // "app" or "library"
9797
features: {
@@ -130,7 +130,7 @@ The main drawback is that we'd need to convince developers to start using it, so
130130

131131
## Alternatives
132132

133-
`reactNativeMeta` is, by design, fully original and new: there are other files that are used to define configurations for various aspect of react-native based projects (such as `react-native.config.js`, `app.json`, Expo's `app.config.js`, `expo-module.config.json`) but this one does **not** overlap with any of them. Explicitly, this one has the purpose of being filled only with metadata to be read by package managers and other tools.
133+
`reactNativeMetadata` is, by design, fully original and new: there are other files that are used to define configurations for various aspect of react-native based projects (such as `react-native.config.js`, `app.json`, Expo's `app.config.js`, `expo-module.config.json`) but this one does **not** overlap with any of them. Explicitly, this one has the purpose of being filled only with metadata to be read by package managers and other tools.
134134

135135
## Adoption strategy
136136

0 commit comments

Comments
 (0)