Skip to content

Commit 4536dfb

Browse files
committed
2 parents f503ff4 + 52f2c4e commit 4536dfb

10 files changed

Lines changed: 245 additions & 4 deletions

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

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6452,6 +6452,21 @@
64526452
"label": "strictPeerDependencies",
64536453
"id": "pages/rush-lib.pnpmoptionsconfiguration.strictpeerdependencies"
64546454
},
6455+
{
6456+
"type": "doc",
6457+
"label": "trustPolicy",
6458+
"id": "pages/rush-lib.pnpmoptionsconfiguration.trustpolicy"
6459+
},
6460+
{
6461+
"type": "doc",
6462+
"label": "trustPolicyExclude",
6463+
"id": "pages/rush-lib.pnpmoptionsconfiguration.trustpolicyexclude"
6464+
},
6465+
{
6466+
"type": "doc",
6467+
"label": "trustPolicyIgnoreAfterMinutes",
6468+
"id": "pages/rush-lib.pnpmoptionsconfiguration.trustpolicyignoreafterminutes"
6469+
},
64556470
{
64566471
"type": "doc",
64576472
"label": "unsupportedPackageJsonSettings",
@@ -6489,6 +6504,11 @@
64896504
"label": "PnpmStoreOptions",
64906505
"id": "pages/rush-lib.pnpmstoreoptions"
64916506
},
6507+
{
6508+
"type": "doc",
6509+
"label": "PnpmTrustPolicy",
6510+
"id": "pages/rush-lib.pnpmtrustpolicy"
6511+
},
64926512
{
64936513
"type": "category",
64946514
"label": "ProjectChangeAnalyzer",
@@ -15287,6 +15307,11 @@
1528715307
"label": "pnpmInstallFolder",
1528815308
"id": "pages/package-extractor.iextractorsubspace.pnpminstallfolder"
1528915309
},
15310+
{
15311+
"type": "doc",
15312+
"label": "pnpmNodeModulesHoistingEnabled",
15313+
"id": "pages/package-extractor.iextractorsubspace.pnpmnodemoduleshoistingenabled"
15314+
},
1529015315
{
1529115316
"type": "doc",
1529215317
"label": "subspaceName",

websites/api.rushstack.io/docs/pages/package-extractor.iextractorsubspace.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,25 @@ string
5959
_(Optional)_ The folder where the PNPM "node\_modules" folder is located. This is used to resolve packages linked to the PNPM virtual store.
6060

6161

62+
</td></tr>
63+
<tr><td>
64+
65+
[pnpmNodeModulesHoistingEnabled?](./package-extractor.iextractorsubspace.pnpmnodemoduleshoistingenabled.md)
66+
67+
68+
</td><td>
69+
70+
71+
</td><td>
72+
73+
boolean
74+
75+
76+
</td><td>
77+
78+
_(Optional)_ Whether PNPM hoisting is enabled for this subspace. When set to `false`<></>, the extractor will skip looking for hoisted packages in the PNPM virtual store, since no hoisting symlinks will exist. Default is `true`<></>.
79+
80+
6281
</td></tr>
6382
<tr><td>
6483

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/package-extractor](./package-extractor.md) &gt; [IExtractorSubspace](./package-extractor.iextractorsubspace.md) &gt; [pnpmNodeModulesHoistingEnabled](./package-extractor.iextractorsubspace.pnpmnodemoduleshoistingenabled.md)
10+
11+
## IExtractorSubspace.pnpmNodeModulesHoistingEnabled property
12+
13+
Whether PNPM hoisting is enabled for this subspace. When set to `false`<></>, the extractor will skip looking for hoisted packages in the PNPM virtual store, since no hoisting symlinks will exist. Default is `true`<></>.
14+
15+
**Signature:**
16+
17+
```typescript
18+
pnpmNodeModulesHoistingEnabled?: boolean;
19+
```

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

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1296,6 +1296,17 @@ This represents the available PNPM store options
12961296
</td><td>
12971297

12981298

1299+
</td></tr>
1300+
<tr><td>
1301+
1302+
[PnpmTrustPolicy](./rush-lib.pnpmtrustpolicy.md)
1303+
1304+
1305+
</td><td>
1306+
1307+
Possible values for the `trustPolicy` setting in Rush's pnpm-config.json file.
1308+
1309+
12991310
</td></tr>
13001311
</tbody></table>
13011312

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

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -522,6 +522,69 @@ boolean
522522
If true, then Rush will add the "--strict-peer-dependencies" option when invoking PNPM.
523523
524524
525+
</td></tr>
526+
<tr><td>
527+
528+
[trustPolicy](./rush-lib.pnpmoptionsconfiguration.trustpolicy.md)
529+
530+
531+
</td><td>
532+
533+
`readonly`
534+
535+
536+
</td><td>
537+
538+
[PnpmTrustPolicy](./rush-lib.pnpmtrustpolicy.md) \| undefined
539+
540+
541+
</td><td>
542+
543+
The trust policy controls whether pnpm should block installation of package versions where the trust level has decreased (e.g., a package previously published with provenance is now published without it). Setting this to `"no-downgrade"` enables the protection.
544+
545+
546+
</td></tr>
547+
<tr><td>
548+
549+
[trustPolicyExclude](./rush-lib.pnpmoptionsconfiguration.trustpolicyexclude.md)
550+
551+
552+
</td><td>
553+
554+
`readonly`
555+
556+
557+
</td><td>
558+
559+
string\[\] \| undefined
560+
561+
562+
</td><td>
563+
564+
List of package names or patterns that are excluded from the trust policy check. These packages will be allowed to install even if their trust level has decreased.
565+
566+
567+
</td></tr>
568+
<tr><td>
569+
570+
[trustPolicyIgnoreAfterMinutes](./rush-lib.pnpmoptionsconfiguration.trustpolicyignoreafterminutes.md)
571+
572+
573+
</td><td>
574+
575+
`readonly`
576+
577+
578+
</td><td>
579+
580+
number \| undefined
581+
582+
583+
</td><td>
584+
585+
The number of minutes after which pnpm will ignore trust level downgrades. Packages published longer ago than this threshold will not be blocked even if their trust level has decreased.
586+
587+
525588
</td></tr>
526589
<tr><td>
527590
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
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; [PnpmOptionsConfiguration](./rush-lib.pnpmoptionsconfiguration.md) &gt; [trustPolicy](./rush-lib.pnpmoptionsconfiguration.trustpolicy.md)
10+
11+
## PnpmOptionsConfiguration.trustPolicy property
12+
13+
The trust policy controls whether pnpm should block installation of package versions where the trust level has decreased (e.g., a package previously published with provenance is now published without it). Setting this to `"no-downgrade"` enables the protection.
14+
15+
**Signature:**
16+
17+
```typescript
18+
readonly trustPolicy: PnpmTrustPolicy | undefined;
19+
```
20+
21+
## Remarks
22+
23+
(SUPPORTED ONLY IN PNPM 10.21.0 AND NEWER)
24+
25+
PNPM documentation: https://pnpm.io/settings\#trustpolicy
26+
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
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; [PnpmOptionsConfiguration](./rush-lib.pnpmoptionsconfiguration.md) &gt; [trustPolicyExclude](./rush-lib.pnpmoptionsconfiguration.trustpolicyexclude.md)
10+
11+
## PnpmOptionsConfiguration.trustPolicyExclude property
12+
13+
List of package names or patterns that are excluded from the trust policy check. These packages will be allowed to install even if their trust level has decreased.
14+
15+
**Signature:**
16+
17+
```typescript
18+
readonly trustPolicyExclude: string[] | undefined;
19+
```
20+
21+
## Remarks
22+
23+
(SUPPORTED ONLY IN PNPM 10.22.0 AND NEWER)
24+
25+
PNPM documentation: https://pnpm.io/settings\#trustpolicyexclude
26+
27+
Example: \["webpack", "react", "<></>@<></>myorg/\*"\]
28+
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
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; [PnpmOptionsConfiguration](./rush-lib.pnpmoptionsconfiguration.md) &gt; [trustPolicyIgnoreAfterMinutes](./rush-lib.pnpmoptionsconfiguration.trustpolicyignoreafterminutes.md)
10+
11+
## PnpmOptionsConfiguration.trustPolicyIgnoreAfterMinutes property
12+
13+
The number of minutes after which pnpm will ignore trust level downgrades. Packages published longer ago than this threshold will not be blocked even if their trust level has decreased.
14+
15+
**Signature:**
16+
17+
```typescript
18+
readonly trustPolicyIgnoreAfterMinutes: number | undefined;
19+
```
20+
21+
## Remarks
22+
23+
(SUPPORTED ONLY IN PNPM 10.27.0 AND NEWER)
24+
25+
PNPM documentation: https://pnpm.io/settings\#trustpolicyignoreafter
26+
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
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; [PnpmTrustPolicy](./rush-lib.pnpmtrustpolicy.md)
10+
11+
## PnpmTrustPolicy type
12+
13+
Possible values for the `trustPolicy` setting in Rush's pnpm-config.json file.
14+
15+
**Signature:**
16+
17+
```typescript
18+
export type PnpmTrustPolicy = 'no-downgrade' | 'off';
19+
```
20+
21+
## Remarks
22+
23+
These values correspond to PNPM's `trust-policy` setting, which is documented here: [https://pnpm.io/settings\#trustpolicy](https://pnpm.io/settings#trustpolicy)
24+

websites/rushjs.io/docs/pages/extensibility/api.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,17 @@ Below are some usage examples.
1212
1313
## rush-lib vs rush-sdk
1414

15-
You may notice that the NPM packages `@microsoft/rush-lib` and `rushstack/rush-sdk` export the same APIs. What is the difference?
15+
You may notice that the NPM packages `@microsoft/rush-lib` and `@rushstack/rush-sdk` export the same APIs. What is the difference?
1616

1717
- `@microsoft/rush-lib` is the **engine** of Rush that implements all the core features. It is a relatively large package that also includes some built-in Rush plugins, with many NPM dependencies.
1818

1919
- `@microsoft/rush` is the **CLI** (command-line interface) that provides the `rush` and `rushx` commands that you can invoke from your shell. `@microsoft/rush` depends on `@microsoft/rush-lib`, however if your repository's **rush.json** file requests a different `rushVersion`, the [Rush "version selector"](../contributing.md) will automatically install the requested version of the `@microsoft/rush-lib` engine and use that instead. This ensures that CLI commands always have deterministic behavior, regardless of what version of `@microsoft/rush` is installed globally.
2020

21-
- `@microsoft/rush-sdk` is the **API** interface, which has very few NPM dependencies itself, and mainly acts as a proxy for accessing the `@microsoft/rush-lib` engine. It provides two main benefits:
21+
- `@rushstack/rush-sdk` is the **API** interface, which has very few NPM dependencies itself, and mainly acts as a proxy for accessing the `@microsoft/rush-lib` engine. It provides two main benefits:
2222

23-
- **Version selector:** If your tool imports from `@microsoft/rush-sdk`, then it will load the appropriate version of the engine based on `rushVersion` from **rush.json**. This is important, for example if your script directly imports from `@microsoft/rush-lib` and it is a different version, then the engine may fail to parse a config file whose format has changed.
23+
- **Version selector:** If your tool imports from `@rushstack/rush-sdk`, then it will load the appropriate version of the engine based on `rushVersion` from **rush.json**. This is important, for example if your script directly imports from `@microsoft/rush-lib` and it is a different version, then the engine may fail to parse a config file whose format has changed.
2424

25-
- **Internal APIs**: `@microsoft/rush-sdk` includes stubs that enable you to import internal API's from `@microsoft/rush-lib`. Internal APIs are normally difficult to access because that package is distributed as a Webpack bundle.
25+
- **Internal APIs**: `@rushstack/rush-sdk` includes stubs that enable you to import internal API's from `@microsoft/rush-lib`. Internal APIs are normally difficult to access because that package is distributed as a Webpack bundle.
2626

2727
See the [@rushstack/rush-sdk](https://www.npmjs.com/package/@rushstack/rush-sdk) documentation for more details.
2828

0 commit comments

Comments
 (0)