Skip to content

Commit 22e6bf2

Browse files
committed
docs: update API documentation
1 parent 52f2c4e commit 22e6bf2

11 files changed

Lines changed: 339 additions & 15 deletions

websites/api.rushstack.io/data/api_nav.json

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4778,6 +4778,11 @@
47784778
"label": "rushAlerts",
47794779
"id": "pages/rush-lib.iexperimentsjson.rushalerts"
47804780
},
4781+
{
4782+
"type": "doc",
4783+
"label": "strictChangefileValidation",
4784+
"id": "pages/rush-lib.iexperimentsjson.strictchangefilevalidation"
4785+
},
47814786
{
47824787
"type": "doc",
47834788
"label": "useIPCScriptsInWatchMode",
@@ -6422,6 +6427,11 @@
64226427
"label": "minimumReleaseAgeExclude",
64236428
"id": "pages/rush-lib.pnpmoptionsconfiguration.minimumreleaseageexclude"
64246429
},
6430+
{
6431+
"type": "doc",
6432+
"label": "minimumReleaseAgeMinutes",
6433+
"id": "pages/rush-lib.pnpmoptionsconfiguration.minimumreleaseageminutes"
6434+
},
64256435
{
64266436
"type": "doc",
64276437
"label": "pnpmLockfilePolicies",
@@ -13687,6 +13697,21 @@
1368713697
"type": "doc",
1368813698
"label": "areDeepEqual",
1368913699
"id": "pages/node-core-library.objects.aredeepequal"
13700+
},
13701+
{
13702+
"type": "doc",
13703+
"label": "isRecord",
13704+
"id": "pages/node-core-library.objects.isrecord"
13705+
},
13706+
{
13707+
"type": "doc",
13708+
"label": "mergeWith",
13709+
"id": "pages/node-core-library.objects.mergewith"
13710+
},
13711+
{
13712+
"type": "doc",
13713+
"label": "MergeWithCustomizer",
13714+
"id": "pages/node-core-library.objects.mergewithcustomizer"
1369013715
}
1369113716
]
1369213717
},
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
hide_title: true
3+
custom_edit_url: null
4+
pagination_prev: null
5+
pagination_next: null
6+
---
7+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
8+
9+
[Home](./index.md) &gt; [@rushstack/node-core-library](./node-core-library.md) &gt; [Objects](./node-core-library.objects.md) &gt; [isRecord](./node-core-library.objects.isrecord.md)
10+
11+
## Objects.isRecord() function
12+
13+
Returns `true` if `value` is a non-null, non-array plain object (i.e. assignable to `Record<string, unknown>`<></>), narrowing the type accordingly.
14+
15+
**Signature:**
16+
17+
```typescript
18+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
19+
```
20+
21+
## Parameters
22+
23+
<table><thead><tr><th>
24+
25+
Parameter
26+
27+
28+
</th><th>
29+
30+
Type
31+
32+
33+
</th><th>
34+
35+
Description
36+
37+
38+
</th></tr></thead>
39+
<tbody><tr><td>
40+
41+
value
42+
43+
44+
</td><td>
45+
46+
unknown
47+
48+
49+
</td><td>
50+
51+
52+
</td></tr>
53+
</tbody></table>
54+
55+
**Returns:**
56+
57+
value is Record&lt;string, unknown&gt;
58+

websites/api.rushstack.io/docs/pages/node-core-library.objects.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,54 @@ Description
3333
Determines if two objects are deeply equal.
3434

3535

36+
</td></tr>
37+
<tr><td>
38+
39+
[isRecord(value)](./node-core-library.objects.isrecord.md)
40+
41+
42+
</td><td>
43+
44+
Returns `true` if `value` is a non-null, non-array plain object (i.e. assignable to `Record<string, unknown>`<></>), narrowing the type accordingly.
45+
46+
47+
</td></tr>
48+
<tr><td>
49+
50+
[mergeWith(target, source, customizer)](./node-core-library.objects.mergewith.md)
51+
52+
53+
</td><td>
54+
55+
Recursively merges own enumerable string-keyed properties of `source` into `target`<></>, invoking `customizer` for each property. Mutates and returns `target`<></>.
56+
57+
58+
</td></tr>
59+
</tbody></table>
60+
61+
## Type Aliases
62+
63+
<table><thead><tr><th>
64+
65+
Type Alias
66+
67+
68+
</th><th>
69+
70+
Description
71+
72+
73+
</th></tr></thead>
74+
<tbody><tr><td>
75+
76+
[MergeWithCustomizer](./node-core-library.objects.mergewithcustomizer.md)
77+
78+
79+
</td><td>
80+
81+
Customizer function for use with `mergeWith`<></>. Return `undefined` to fall back to the default deep-merge behavior for that property.
82+
83+
3684
</td></tr>
3785
</tbody></table>
3886

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
---
2+
hide_title: true
3+
custom_edit_url: null
4+
pagination_prev: null
5+
pagination_next: null
6+
---
7+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
8+
9+
[Home](./index.md) &gt; [@rushstack/node-core-library](./node-core-library.md) &gt; [Objects](./node-core-library.objects.md) &gt; [mergeWith](./node-core-library.objects.mergewith.md)
10+
11+
## Objects.mergeWith() function
12+
13+
Recursively merges own enumerable string-keyed properties of `source` into `target`<></>, invoking `customizer` for each property. Mutates and returns `target`<></>.
14+
15+
**Signature:**
16+
17+
```typescript
18+
export declare function mergeWith<TTarget extends object, TSource extends object>(target: TTarget, source: TSource, customizer?: MergeWithCustomizer): TTarget;
19+
```
20+
21+
## Parameters
22+
23+
<table><thead><tr><th>
24+
25+
Parameter
26+
27+
28+
</th><th>
29+
30+
Type
31+
32+
33+
</th><th>
34+
35+
Description
36+
37+
38+
</th></tr></thead>
39+
<tbody><tr><td>
40+
41+
target
42+
43+
44+
</td><td>
45+
46+
TTarget
47+
48+
49+
</td><td>
50+
51+
52+
</td></tr>
53+
<tr><td>
54+
55+
source
56+
57+
58+
</td><td>
59+
60+
TSource
61+
62+
63+
</td><td>
64+
65+
66+
</td></tr>
67+
<tr><td>
68+
69+
customizer
70+
71+
72+
</td><td>
73+
74+
[MergeWithCustomizer](./node-core-library.objects.mergewithcustomizer.md)
75+
76+
77+
</td><td>
78+
79+
_(Optional)_
80+
81+
82+
</td></tr>
83+
</tbody></table>
84+
85+
**Returns:**
86+
87+
TTarget
88+
89+
## Remarks
90+
91+
For each property in `source`<></>, `customizer` is called with `(targetValue, sourceValue, key)`<></>. If the customizer returns a value other than `undefined`<></>, that value is assigned directly. Otherwise the default behavior applies: plain objects are merged recursively; all other values (arrays, primitives, `null`<></>) overwrite the corresponding target property.
92+
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
hide_title: true
3+
custom_edit_url: null
4+
pagination_prev: null
5+
pagination_next: null
6+
---
7+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
8+
9+
[Home](./index.md) &gt; [@rushstack/node-core-library](./node-core-library.md) &gt; [Objects](./node-core-library.objects.md) &gt; [MergeWithCustomizer](./node-core-library.objects.mergewithcustomizer.md)
10+
11+
## Objects.MergeWithCustomizer type
12+
13+
Customizer function for use with `mergeWith`<></>. Return `undefined` to fall back to the default deep-merge behavior for that property.
14+
15+
**Signature:**
16+
17+
```typescript
18+
export type MergeWithCustomizer = (objValue: unknown, srcValue: unknown, key: string) => unknown;
19+
```

websites/api.rushstack.io/docs/pages/rush-lib.iexperimentsjson.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,25 @@ boolean
290290
**_(BETA)_** _(Optional)_ (UNDER DEVELOPMENT) The Rush alerts feature provides a way to send announcements to engineers working in the monorepo, by printing directly in the user's shell window when they invoke Rush commands. This ensures that important notices will be seen by anyone doing active development, since people often ignore normal discussion group messages or don't know to subscribe.
291291

292292

293+
</td></tr>
294+
<tr><td>
295+
296+
[strictChangefileValidation?](./rush-lib.iexperimentsjson.strictchangefilevalidation.md)
297+
298+
299+
</td><td>
300+
301+
302+
</td><td>
303+
304+
boolean
305+
306+
307+
</td><td>
308+
309+
**_(BETA)_** _(Optional)_ If true, `rush change --verify` will perform additional validation of change files. Specifically, it will report errors if change files reference projects that do not exist in the Rush configuration, or if change files target a project that belongs to a lockstepped version policy but is not the policy's main project.
310+
311+
293312
</td></tr>
294313
<tr><td>
295314

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
hide_title: true
3+
custom_edit_url: null
4+
pagination_prev: null
5+
pagination_next: null
6+
---
7+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
8+
9+
[Home](./index.md) &gt; [@microsoft/rush-lib](./rush-lib.md) &gt; [IExperimentsJson](./rush-lib.iexperimentsjson.md) &gt; [strictChangefileValidation](./rush-lib.iexperimentsjson.strictchangefilevalidation.md)
10+
11+
## IExperimentsJson.strictChangefileValidation property
12+
13+
> This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
14+
>
15+
16+
If true, `rush change --verify` will perform additional validation of change files. Specifically, it will report errors if change files reference projects that do not exist in the Rush configuration, or if change files target a project that belongs to a lockstepped version policy but is not the policy's main project.
17+
18+
**Signature:**
19+
20+
```typescript
21+
strictChangefileValidation?: boolean;
22+
```

websites/api.rushstack.io/docs/pages/rush-lib.pnpmoptionsconfiguration.md

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -370,8 +370,6 @@ number \| undefined
370370
371371
</td><td>
372372
373-
The minimum number of minutes that must pass after a version is published before pnpm will install it. This setting helps reduce the risk of installing compromised packages, as malicious releases are typically discovered and removed within a short time frame.
374-
375373
376374
</td></tr>
377375
<tr><td>
@@ -391,7 +389,28 @@ string\[\] \| undefined
391389
392390
</td><td>
393391
394-
List of package names or patterns that are excluded from the minimumReleaseAge check. These packages will always install the newest version immediately, even if minimumReleaseAge is set.
392+
List of package names or patterns that are excluded from the minimumReleaseAge check. These packages will always install the newest version immediately, even if minimumReleaseAgeMinutes is set.
393+
394+
395+
</td></tr>
396+
<tr><td>
397+
398+
[minimumReleaseAgeMinutes](./rush-lib.pnpmoptionsconfiguration.minimumreleaseageminutes.md)
399+
400+
401+
</td><td>
402+
403+
`readonly`
404+
405+
406+
</td><td>
407+
408+
number \| undefined
409+
410+
411+
</td><td>
412+
413+
The minimum number of minutes that must pass after a version is published before pnpm will install it. This setting helps reduce the risk of installing compromised packages, as malicious releases are typically discovered and removed within a short time frame.
395414
396415
397416
</td></tr>

websites/api.rushstack.io/docs/pages/rush-lib.pnpmoptionsconfiguration.minimumreleaseage.md

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,13 @@ pagination_next: null
1010

1111
## PnpmOptionsConfiguration.minimumReleaseAge property
1212

13-
The minimum number of minutes that must pass after a version is published before pnpm will install it. This setting helps reduce the risk of installing compromised packages, as malicious releases are typically discovered and removed within a short time frame.
13+
> Warning: This API is now obsolete.
14+
>
15+
> Use [PnpmOptionsConfiguration.minimumReleaseAgeMinutes](./rush-lib.pnpmoptionsconfiguration.minimumreleaseageminutes.md) instead.
16+
>
1417
1518
**Signature:**
1619

1720
```typescript
18-
readonly minimumReleaseAge: number | undefined;
21+
get minimumReleaseAge(): number | undefined;
1922
```
20-
21-
## Remarks
22-
23-
(SUPPORTED ONLY IN PNPM 10.16.0 AND NEWER)
24-
25-
PNPM documentation: https://pnpm.io/settings\#minimumreleaseage
26-
27-
The default value is 0 (disabled).
28-

websites/api.rushstack.io/docs/pages/rush-lib.pnpmoptionsconfiguration.minimumreleaseageexclude.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ pagination_next: null
1010

1111
## PnpmOptionsConfiguration.minimumReleaseAgeExclude property
1212

13-
List of package names or patterns that are excluded from the minimumReleaseAge check. These packages will always install the newest version immediately, even if minimumReleaseAge is set.
13+
List of package names or patterns that are excluded from the minimumReleaseAge check. These packages will always install the newest version immediately, even if minimumReleaseAgeMinutes is set.
1414

1515
**Signature:**
1616

0 commit comments

Comments
 (0)