rclnodejs 1.9.0 → 2.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.prettierignore +4 -0
- package/README.md +2 -2
- package/binding.gyp +6 -5
- package/lib/action/client.js +5 -4
- package/lib/action/uuid.js +1 -1
- package/lib/client.js +0 -45
- package/lib/distro.js +11 -4
- package/lib/interface_loader.js +1 -1
- package/lib/message_introspector.js +1 -29
- package/lib/message_serialization.js +2 -2
- package/lib/native_loader.js +21 -9
- package/lib/node.js +2 -2
- package/lib/prebuilds.js +47 -0
- package/lib/rmw.js +6 -1
- package/lib/subscription.js +2 -2
- package/package.json +11 -6
- package/prebuilds/linux-arm64/humble-jammy-arm64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/humble-jammy-arm64-node-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/jazzy-noble-arm64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/jazzy-noble-arm64-node-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/kilted-noble-arm64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/kilted-noble-arm64-node-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/lyrical-resolute-arm64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/lyrical-resolute-arm64-node-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/humble-jammy-x64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/humble-jammy-x64-node-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/jazzy-noble-x64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/jazzy-noble-x64-node-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/kilted-noble-x64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/kilted-noble-x64-node-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/lyrical-resolute-x64-electron-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/lyrical-resolute-x64-node-rclnodejs.node +0 -0
- package/rosidl_gen/packages.js +4 -4
- package/rosidl_gen/templates/message-template.js +20 -6
- package/rosocket/README.md +152 -0
- package/rosocket/cli.js +168 -0
- package/rosocket/index.js +245 -0
- package/scripts/install.js +14 -3
- package/scripts/tag_prebuilds.js +26 -9
- package/src/rcl_action_client_bindings.cpp +4 -4
- package/src/rcl_graph_bindings.cpp +8 -8
- package/src/rcl_lifecycle_bindings.cpp +1 -1
- package/src/rcl_subscription_bindings.cpp +2 -2
- package/src/rcl_utilities.cpp +4 -4
- package/src/rcl_utilities.h +2 -2
- package/types/distro.d.ts +15 -1
- package/prebuilds/linux-arm64/humble-jammy-arm64-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/jazzy-noble-arm64-rclnodejs.node +0 -0
- package/prebuilds/linux-arm64/kilted-noble-arm64-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/humble-jammy-x64-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/jazzy-noble-x64-rclnodejs.node +0 -0
- package/prebuilds/linux-x64/kilted-noble-x64-rclnodejs.node +0 -0
- package/tools/jsdoc/Makefile +0 -5
- package/tools/jsdoc/README.md +0 -96
- package/tools/jsdoc/build-index.js +0 -610
- package/tools/jsdoc/publish.js +0 -854
- package/tools/jsdoc/regenerate-published-docs.js +0 -605
- package/tools/jsdoc/static/fonts/OpenSans-Bold-webfont.eot +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-Bold-webfont.svg +0 -1830
- package/tools/jsdoc/static/fonts/OpenSans-Bold-webfont.woff +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-BoldItalic-webfont.svg +0 -1830
- package/tools/jsdoc/static/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-Italic-webfont.eot +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-Italic-webfont.svg +0 -1830
- package/tools/jsdoc/static/fonts/OpenSans-Italic-webfont.woff +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-Light-webfont.eot +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-Light-webfont.svg +0 -1831
- package/tools/jsdoc/static/fonts/OpenSans-Light-webfont.woff +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-LightItalic-webfont.eot +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-LightItalic-webfont.svg +0 -1835
- package/tools/jsdoc/static/fonts/OpenSans-LightItalic-webfont.woff +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-Regular-webfont.eot +0 -0
- package/tools/jsdoc/static/fonts/OpenSans-Regular-webfont.svg +0 -1831
- package/tools/jsdoc/static/fonts/OpenSans-Regular-webfont.woff +0 -0
- package/tools/jsdoc/static/scripts/linenumber.js +0 -25
- package/tools/jsdoc/static/scripts/prettify/Apache-License-2.0.txt +0 -202
- package/tools/jsdoc/static/scripts/prettify/lang-css.js +0 -36
- package/tools/jsdoc/static/scripts/prettify/prettify.js +0 -738
- package/tools/jsdoc/static/styles/jsdoc-default.css +0 -1012
- package/tools/jsdoc/static/styles/prettify-jsdoc.css +0 -111
- package/tools/jsdoc/static/styles/prettify-tomorrow.css +0 -132
- package/tools/jsdoc/tmpl/augments.tmpl +0 -10
- package/tools/jsdoc/tmpl/container.tmpl +0 -193
- package/tools/jsdoc/tmpl/details.tmpl +0 -143
- package/tools/jsdoc/tmpl/example.tmpl +0 -2
- package/tools/jsdoc/tmpl/examples.tmpl +0 -13
- package/tools/jsdoc/tmpl/exceptions.tmpl +0 -17
- package/tools/jsdoc/tmpl/layout.tmpl +0 -83
- package/tools/jsdoc/tmpl/mainpage.tmpl +0 -163
- package/tools/jsdoc/tmpl/members.tmpl +0 -43
- package/tools/jsdoc/tmpl/method.tmpl +0 -124
- package/tools/jsdoc/tmpl/params.tmpl +0 -133
- package/tools/jsdoc/tmpl/properties.tmpl +0 -110
- package/tools/jsdoc/tmpl/returns.tmpl +0 -12
- package/tools/jsdoc/tmpl/source.tmpl +0 -8
- package/tools/jsdoc/tmpl/tutorial.tmpl +0 -19
- package/tools/jsdoc/tmpl/type.tmpl +0 -7
|
@@ -250,7 +250,7 @@ Napi::Value ActionSendCancelRequest(const Napi::CallbackInfo& info) {
|
|
|
250
250
|
return Napi::Number::New(env, static_cast<double>(sequence_number));
|
|
251
251
|
}
|
|
252
252
|
|
|
253
|
-
#if ROS_VERSION >=
|
|
253
|
+
#if ROS_VERSION >= 2605 // ROS2 Lyrical or newer
|
|
254
254
|
Napi::Value ActionConfigureFeedbackSubFilterAddGoalId(
|
|
255
255
|
const Napi::CallbackInfo& info) {
|
|
256
256
|
Napi::Env env = info.Env();
|
|
@@ -309,7 +309,7 @@ Napi::Value ActionConfigureFeedbackSubFilterRemoveGoalId(
|
|
|
309
309
|
|
|
310
310
|
return Napi::Boolean::New(env, true);
|
|
311
311
|
}
|
|
312
|
-
#endif // ROS_VERSION >=
|
|
312
|
+
#endif // ROS_VERSION >= 2605
|
|
313
313
|
|
|
314
314
|
#if ROS_VERSION >= 2505 // ROS2 >= Kilted
|
|
315
315
|
Napi::Value ConfigureActionClientIntrospection(const Napi::CallbackInfo& info) {
|
|
@@ -369,14 +369,14 @@ Napi::Object InitActionClientBindings(Napi::Env env, Napi::Object exports) {
|
|
|
369
369
|
exports.Set("configureActionClientIntrospection",
|
|
370
370
|
Napi::Function::New(env, ConfigureActionClientIntrospection));
|
|
371
371
|
#endif // ROS_VERSION >= 2505
|
|
372
|
-
#if ROS_VERSION >=
|
|
372
|
+
#if ROS_VERSION >= 2605 // ROS2 Lyrical or newer
|
|
373
373
|
exports.Set(
|
|
374
374
|
"actionConfigureFeedbackSubFilterAddGoalId",
|
|
375
375
|
Napi::Function::New(env, ActionConfigureFeedbackSubFilterAddGoalId));
|
|
376
376
|
exports.Set(
|
|
377
377
|
"actionConfigureFeedbackSubFilterRemoveGoalId",
|
|
378
378
|
Napi::Function::New(env, ActionConfigureFeedbackSubFilterRemoveGoalId));
|
|
379
|
-
#endif // ROS_VERSION >=
|
|
379
|
+
#endif // ROS_VERSION >= 2605
|
|
380
380
|
return exports;
|
|
381
381
|
}
|
|
382
382
|
|
|
@@ -33,12 +33,12 @@ typedef rcl_ret_t (*rcl_get_info_by_topic_func_t)(
|
|
|
33
33
|
const char* topic_name, bool no_mangle,
|
|
34
34
|
rcl_topic_endpoint_info_array_t* info_array);
|
|
35
35
|
|
|
36
|
-
#if ROS_VERSION
|
|
36
|
+
#if ROS_VERSION >= 2605
|
|
37
37
|
typedef rcl_ret_t (*rcl_get_info_by_service_func_t)(
|
|
38
38
|
const rcl_node_t* node, rcutils_allocator_t* allocator,
|
|
39
39
|
const char* service_name, bool no_mangle,
|
|
40
40
|
rcl_service_endpoint_info_array_t* info_array);
|
|
41
|
-
#endif // ROS_VERSION
|
|
41
|
+
#endif // ROS_VERSION >= 2605
|
|
42
42
|
|
|
43
43
|
Napi::Value GetPublisherNamesAndTypesByNode(const Napi::CallbackInfo& info) {
|
|
44
44
|
Napi::Env env = info.Env();
|
|
@@ -264,7 +264,7 @@ Napi::Value GetSubscriptionsInfoByTopic(const Napi::CallbackInfo& info) {
|
|
|
264
264
|
"subscriptions", rcl_get_subscriptions_info_by_topic);
|
|
265
265
|
}
|
|
266
266
|
|
|
267
|
-
#if ROS_VERSION
|
|
267
|
+
#if ROS_VERSION >= 2605
|
|
268
268
|
Napi::Value GetInfoByService(
|
|
269
269
|
Napi::Env env, rcl_node_t* node, const char* service_name, bool no_mangle,
|
|
270
270
|
const char* type, rcl_get_info_by_service_func_t rcl_get_info_by_service) {
|
|
@@ -300,9 +300,9 @@ Napi::Value GetInfoByService(
|
|
|
300
300
|
|
|
301
301
|
return ConvertToJSServiceEndpointInfoList(env, &info_array);
|
|
302
302
|
}
|
|
303
|
-
#endif // ROS_VERSION
|
|
303
|
+
#endif // ROS_VERSION >= 2605
|
|
304
304
|
|
|
305
|
-
#if ROS_VERSION
|
|
305
|
+
#if ROS_VERSION >= 2605
|
|
306
306
|
Napi::Value GetClientsInfoByService(const Napi::CallbackInfo& info) {
|
|
307
307
|
RclHandle* node_handle = RclHandle::Unwrap(info[0].As<Napi::Object>());
|
|
308
308
|
rcl_node_t* node = reinterpret_cast<rcl_node_t*>(node_handle->ptr());
|
|
@@ -322,7 +322,7 @@ Napi::Value GetServersInfoByService(const Napi::CallbackInfo& info) {
|
|
|
322
322
|
return GetInfoByService(info.Env(), node, service_name.c_str(), no_mangle,
|
|
323
323
|
"servers", rcl_get_servers_info_by_service);
|
|
324
324
|
}
|
|
325
|
-
#endif // ROS_VERSION
|
|
325
|
+
#endif // ROS_VERSION >= 2605
|
|
326
326
|
|
|
327
327
|
Napi::Object InitGraphBindings(Napi::Env env, Napi::Object exports) {
|
|
328
328
|
exports.Set("getPublisherNamesAndTypesByNode",
|
|
@@ -341,12 +341,12 @@ Napi::Object InitGraphBindings(Napi::Env env, Napi::Object exports) {
|
|
|
341
341
|
Napi::Function::New(env, GetPublishersInfoByTopic));
|
|
342
342
|
exports.Set("getSubscriptionsInfoByTopic",
|
|
343
343
|
Napi::Function::New(env, GetSubscriptionsInfoByTopic));
|
|
344
|
-
#if ROS_VERSION
|
|
344
|
+
#if ROS_VERSION >= 2605
|
|
345
345
|
exports.Set("getClientsInfoByService",
|
|
346
346
|
Napi::Function::New(env, GetClientsInfoByService));
|
|
347
347
|
exports.Set("getServersInfoByService",
|
|
348
348
|
Napi::Function::New(env, GetServersInfoByService));
|
|
349
|
-
#endif // ROS_VERSION
|
|
349
|
+
#endif // ROS_VERSION >= 2605
|
|
350
350
|
return exports;
|
|
351
351
|
}
|
|
352
352
|
|
|
@@ -71,7 +71,7 @@ Napi::Value CreateLifecycleStateMachine(const Napi::CallbackInfo& info) {
|
|
|
71
71
|
const rosidl_service_type_support_t* gs =
|
|
72
72
|
GetServiceTypeSupport("lifecycle_msgs", "GetState");
|
|
73
73
|
|
|
74
|
-
#if ROS_VERSION >=
|
|
74
|
+
#if ROS_VERSION >= 2605 // ROS2 Lyrical or newer
|
|
75
75
|
rcl_lifecycle_state_machine_options_t options =
|
|
76
76
|
rcl_lifecycle_get_default_state_machine_options();
|
|
77
77
|
options.enable_com_interface = info[1].As<Napi::Boolean>().Value();
|
|
@@ -265,7 +265,7 @@ Napi::Value GetSubscriptionTopic(const Napi::CallbackInfo& info) {
|
|
|
265
265
|
return Napi::String::New(env, topic);
|
|
266
266
|
}
|
|
267
267
|
|
|
268
|
-
#if ROS_VERSION
|
|
268
|
+
#if ROS_VERSION >= 2605 // ROS2 Lyrical or newer
|
|
269
269
|
Napi::Value IsContentFilterSupported(const Napi::CallbackInfo& info) {
|
|
270
270
|
Napi::Env env = info.Env();
|
|
271
271
|
|
|
@@ -491,7 +491,7 @@ Napi::Object InitSubscriptionBindings(Napi::Env env, Napi::Object exports) {
|
|
|
491
491
|
exports.Set("rclTakeRaw", Napi::Function::New(env, RclTakeRaw));
|
|
492
492
|
exports.Set("getSubscriptionTopic",
|
|
493
493
|
Napi::Function::New(env, GetSubscriptionTopic));
|
|
494
|
-
#if ROS_VERSION
|
|
494
|
+
#if ROS_VERSION >= 2605 // ROS2 Lyrical or newer
|
|
495
495
|
exports.Set("isContentFilterSupported",
|
|
496
496
|
Napi::Function::New(env, IsContentFilterSupported));
|
|
497
497
|
#endif
|
package/src/rcl_utilities.cpp
CHANGED
|
@@ -124,7 +124,7 @@ Napi::Value ConvertToJSTopicEndpoint(
|
|
|
124
124
|
return endpoint;
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
-
#if ROS_VERSION
|
|
127
|
+
#if ROS_VERSION >= 2605
|
|
128
128
|
Napi::Value ConvertToJSServiceEndpointInfo(
|
|
129
129
|
Napi::Env env, const rmw_service_endpoint_info_t* service_endpoint_info) {
|
|
130
130
|
Napi::Object endpoint = Napi::Object::New(env);
|
|
@@ -164,7 +164,7 @@ Napi::Value ConvertToJSServiceEndpointInfo(
|
|
|
164
164
|
|
|
165
165
|
return endpoint;
|
|
166
166
|
}
|
|
167
|
-
#endif // ROS_VERSION
|
|
167
|
+
#endif // ROS_VERSION >= 2605
|
|
168
168
|
|
|
169
169
|
uv_lib_t g_lib;
|
|
170
170
|
Napi::Env g_env = nullptr;
|
|
@@ -308,7 +308,7 @@ Napi::Array ConvertToJSTopicEndpointInfoList(
|
|
|
308
308
|
return list;
|
|
309
309
|
}
|
|
310
310
|
|
|
311
|
-
#if ROS_VERSION
|
|
311
|
+
#if ROS_VERSION >= 2605
|
|
312
312
|
Napi::Array ConvertToJSServiceEndpointInfoList(
|
|
313
313
|
Napi::Env env, const rmw_service_endpoint_info_array_t* info_array) {
|
|
314
314
|
Napi::Array list = Napi::Array::New(env, info_array->size);
|
|
@@ -319,7 +319,7 @@ Napi::Array ConvertToJSServiceEndpointInfoList(
|
|
|
319
319
|
}
|
|
320
320
|
return list;
|
|
321
321
|
}
|
|
322
|
-
#endif // ROS_VERSION
|
|
322
|
+
#endif // ROS_VERSION >= 2605
|
|
323
323
|
|
|
324
324
|
char** AbstractArgsFromNapiArray(const Napi::Array& jsArgv) {
|
|
325
325
|
size_t argc = jsArgv.Length();
|
package/src/rcl_utilities.h
CHANGED
|
@@ -51,10 +51,10 @@ void ExtractNamesAndTypes(rcl_names_and_types_t names_and_types,
|
|
|
51
51
|
Napi::Array ConvertToJSTopicEndpointInfoList(
|
|
52
52
|
Napi::Env env, const rmw_topic_endpoint_info_array_t* info_array);
|
|
53
53
|
|
|
54
|
-
#if ROS_VERSION
|
|
54
|
+
#if ROS_VERSION >= 2605
|
|
55
55
|
Napi::Array ConvertToJSServiceEndpointInfoList(
|
|
56
56
|
Napi::Env env, const rmw_service_endpoint_info_array_t* info_array);
|
|
57
|
-
#endif // ROS_VERSION
|
|
57
|
+
#endif // ROS_VERSION >= 2605
|
|
58
58
|
|
|
59
59
|
Napi::Value ConvertToQoS(Napi::Env env, const rmw_qos_profile_t* qos_profile);
|
|
60
60
|
|
package/types/distro.d.ts
CHANGED
|
@@ -3,7 +3,16 @@ declare module 'rclnodejs' {
|
|
|
3
3
|
/**
|
|
4
4
|
* Valid ROS 2 distro short names
|
|
5
5
|
*/
|
|
6
|
-
type DistroName =
|
|
6
|
+
type DistroName =
|
|
7
|
+
| 'eloquent'
|
|
8
|
+
| 'foxy'
|
|
9
|
+
| 'galactic'
|
|
10
|
+
| 'humble'
|
|
11
|
+
| 'iron'
|
|
12
|
+
| 'jazzy'
|
|
13
|
+
| 'kilted'
|
|
14
|
+
| 'lyrical'
|
|
15
|
+
| 'rolling';
|
|
7
16
|
|
|
8
17
|
/**
|
|
9
18
|
* rclnodejs distro ID numbers
|
|
@@ -14,7 +23,12 @@ declare module 'rclnodejs' {
|
|
|
14
23
|
FOXY = 2006,
|
|
15
24
|
GALACTIC = 2105,
|
|
16
25
|
HUMBLE = 2205,
|
|
26
|
+
IRON = 2305,
|
|
27
|
+
JAZZY = 2405,
|
|
28
|
+
KILTED = 2505,
|
|
29
|
+
LYRICAL = 2605,
|
|
17
30
|
ROLLING = 5000,
|
|
31
|
+
FUTURE = 9999,
|
|
18
32
|
}
|
|
19
33
|
|
|
20
34
|
/**
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/tools/jsdoc/Makefile
DELETED
package/tools/jsdoc/README.md
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
# JSDoc Workflow
|
|
2
|
-
|
|
3
|
-
This directory contains the custom JSDoc template, the landing-page generator,
|
|
4
|
-
and the staging script used to prepare the docs content that is published to the
|
|
5
|
-
`gh-pages` branch.
|
|
6
|
-
|
|
7
|
-
## Commands
|
|
8
|
-
|
|
9
|
-
### `npm run docs`
|
|
10
|
-
|
|
11
|
-
Build local docs for the current workspace version.
|
|
12
|
-
|
|
13
|
-
Output:
|
|
14
|
-
|
|
15
|
-
- `docs/<current-version>/`
|
|
16
|
-
- `docs/index.html`
|
|
17
|
-
|
|
18
|
-
Use this to verify the docs for the version currently declared in
|
|
19
|
-
`package.json`.
|
|
20
|
-
|
|
21
|
-
### `npm run docs:gh-pages`
|
|
22
|
-
|
|
23
|
-
Stage the publishable docs tree under `build/gh-pages-docs/`.
|
|
24
|
-
|
|
25
|
-
Behavior:
|
|
26
|
-
|
|
27
|
-
- reads the currently published version set from `origin/gh-pages`
|
|
28
|
-
- preserves that published history
|
|
29
|
-
- regenerates docs for the current workspace version
|
|
30
|
-
- rebuilds the staged landing page index
|
|
31
|
-
|
|
32
|
-
This is the normal command to use for a new release.
|
|
33
|
-
|
|
34
|
-
If you delete `build/` and rerun `npm run docs:gh-pages`, the staged tree will
|
|
35
|
-
still contain all currently published versions. That command recreates
|
|
36
|
-
`build/gh-pages-docs/` by copying the published docs snapshot from
|
|
37
|
-
`origin/gh-pages`, then regenerating only the current workspace version.
|
|
38
|
-
|
|
39
|
-
### `npm run docs:gh-pages:full`
|
|
40
|
-
|
|
41
|
-
Fully rebuild the currently published docs history under
|
|
42
|
-
`build/gh-pages-docs/`.
|
|
43
|
-
|
|
44
|
-
Behavior:
|
|
45
|
-
|
|
46
|
-
- reads the published version set from `origin/gh-pages`
|
|
47
|
-
- rebuilds only those published versions from tags
|
|
48
|
-
- regenerates docs for the current workspace version
|
|
49
|
-
- rebuilds the staged landing page index
|
|
50
|
-
|
|
51
|
-
This does **not** rebuild docs for every historical `rclnodejs` tag. It only
|
|
52
|
-
rebuilds the subset that is actually published online.
|
|
53
|
-
|
|
54
|
-
## New Release Example
|
|
55
|
-
|
|
56
|
-
For a new release such as `1.9.0`:
|
|
57
|
-
|
|
58
|
-
1. Update `package.json` to `1.9.0`.
|
|
59
|
-
2. Run `npm run docs`.
|
|
60
|
-
3. Verify the local output in `docs/1.9.0/` and `docs/index.html`.
|
|
61
|
-
4. Run `npm run docs:gh-pages`.
|
|
62
|
-
5. Verify the staged output in:
|
|
63
|
-
- `build/gh-pages-docs/docs/1.9.0/`
|
|
64
|
-
- `build/gh-pages-docs/docs/index.html`
|
|
65
|
-
- `build/gh-pages-docs/.nojekyll`
|
|
66
|
-
6. Publish the contents of `build/gh-pages-docs/` to the `gh-pages` branch.
|
|
67
|
-
|
|
68
|
-
## Manual Landing Page Rebuild
|
|
69
|
-
|
|
70
|
-
If the staged docs tree already exists and you only want to rebuild
|
|
71
|
-
`build/gh-pages-docs/docs/index.html`, run `tools/jsdoc/build-index.js` against
|
|
72
|
-
that docs root and point it at the package metadata for the latest published
|
|
73
|
-
version.
|
|
74
|
-
|
|
75
|
-
Example for published version `1.8.0`:
|
|
76
|
-
|
|
77
|
-
```bash
|
|
78
|
-
mkdir -p build/gh-pages-docs/.tmp
|
|
79
|
-
git show 1.8.0:package.json > build/gh-pages-docs/.tmp/package-1.8.0.json
|
|
80
|
-
|
|
81
|
-
export RCLNODEJS_DOCS_ROOT="$PWD/build/gh-pages-docs/docs"
|
|
82
|
-
export RCLNODEJS_DOCS_INDEX_PATH="$PWD/build/gh-pages-docs/docs/index.html"
|
|
83
|
-
export RCLNODEJS_LOCAL_INDEX_PATH=''
|
|
84
|
-
export RCLNODEJS_PACKAGE_JSON_PATH="$PWD/build/gh-pages-docs/.tmp/package-1.8.0.json"
|
|
85
|
-
|
|
86
|
-
node tools/jsdoc/build-index.js
|
|
87
|
-
rm -rf build/gh-pages-docs/.tmp
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## Notes
|
|
91
|
-
|
|
92
|
-
- The staged publish output keeps shared assets in `build/gh-pages-docs/docs/_static/`.
|
|
93
|
-
- `.nojekyll` must remain in the staged output because the published docs tree
|
|
94
|
-
uses an underscore-prefixed directory.
|
|
95
|
-
- The live docs index is the source of truth for which versions should remain
|
|
96
|
-
published.
|