Skip to content

Commit 558acbe

Browse files
NEW @W-17015980@ Integrated --target functionality (#1775)
Co-authored-by: Juliet Shackell <[email protected]>
1 parent 6459c0f commit 558acbe

File tree

28 files changed

+606
-649
lines changed

28 files changed

+606
-649
lines changed

.github/workflows/daily-smoke-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ jobs:
1313
uses: ./.github/workflows/run-tests.yml
1414
with:
1515
node-matrix: "[{version: 'lts/*', artifact: 'lts'}, {version: 'latest', artifact: 'latest'}]"
16-
branch: dev
16+
target-branch: dev

messages/config-command.md

Lines changed: 30 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ Display the current state of configuration for Code Analyzer.
44

55
# command.description
66

7-
Code Analyzer gives you the ability to configure settings that modify Code Analyzer's behavior, to override the tags and severity levels of rules, and to configure the engine specific settings. Use this command to see the current state of this configuration. You can also save this state to a YAML-formatted file that you can modify for your needs.
7+
Code Analyzer gives you the ability to configure settings that modify Code Analyzer's behavior, to override the tags and severity levels of rules, and to configure the engine specific settings. Use this command to see the current state of this configuration. You can also save this state to a YAML-formatted file that you can modify for your needs.
88

99
To apply a custom configuration with Code Analyzer, either keep your custom configuration settings in a `code-analyzer.yml` file located in the current folder from which you are executing commands, or specify the location of your custom configuration file to the Code Analyzer commands with the --config-file flag.
1010

11-
We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at http://sfdc.co/CodeAnalyzerFeedback.
11+
We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://sfdc.co/CodeAnalyzerFeedback.
1212

1313
# command.examples
1414

@@ -28,9 +28,9 @@ We're continually improving Salesforce Code Analyzer. Tell us what you think! Gi
2828

2929
<%= config.bin %> <%= command.id %> --rule-selector Recommended
3030

31-
- Display the configuration state associated with all the rules that are applicable to your workspace folder, `./src`:
31+
- Display the configuration state associated with all the rules that are applicable to the files targeted within the folder `./src`:
3232

33-
<%= config.bin %> <%= command.id %> --workspace ./src
33+
<%= config.bin %> <%= command.id %> --target ./src
3434

3535
- Display any relevant configuration settings associated with the rule name 'no-undef' from the 'eslint' engine:
3636

@@ -42,29 +42,45 @@ We're continually improving Salesforce Code Analyzer. Tell us what you think! Gi
4242

4343
# flags.workspace.summary
4444

45-
Set of files you want to include in the code analysis.
45+
Set of files that make up your workspace.
4646

4747
# flags.workspace.description
4848

49-
Use the --workspace flag to display only the configuration associated with the rules that apply to the files that make up your workspace. Typically, a workspace is a single project folder that contains all your files. But it can also consist of one or more folders, one or more files, and use glob patterns (wildcards). If you specify this flag multiple times, then your workspace is the sum of the files and folders.
49+
Use the `--workspace` flag to display only the configuration associated with the rules that apply to the files that make up your workspace. Typically, a workspace is a single project folder that contains all your files. But it can also consist of one or more folders, one or more files, and use glob patterns (wildcards). If you specify this flag multiple times, then your workspace is the sum of the files and folders.
5050

51-
This command uses the type of file in the workspace, such as JavaScript or Typescript, to determine the rules to include in the configuration state. For example, if your workspace contains only JavaScript files, the command doesn't include TypeScript rules. The command uses a file's extension to determine what kind of file it is, such as ".ts" for TypeScript.
51+
This command uses the types of files in the workspace, such as JavaScript or Typescript, to determine the applicable configuration state. For example, if your workspace contains only JavaScript files, then the command doesn't display configuration state associated with TypeScript rules. The command uses a file's extension to determine what kind of file it is, such as ".ts" for TypeScript.
5252

53-
Some engines may be configured to add additional rules based on what it finds in your workspace. For example, if you set the "engines.eslint.auto_discover_eslint_config" value of your `code-analyzer.yml` file to true, then supplying your workspace allows the "eslint" engine to examine your files in order to find ESLint configuration files that could potentially add in additional rules.
53+
Some engines can be configured to add additional rules based on what it finds in your workspace. For example, if you set the engines.eslint.auto_discover_eslint_config value of your `code-analyzer.yml` file to true, then supplying your workspace allows the "eslint" engine to examine your files in order to find ESLint configuration files that could potentially add in additional rules.
54+
55+
If you specify `--target` but not `--workspace`, then the current folder '.' is used as your workspace.
56+
57+
# flags.target.summary
58+
59+
Subset of files within your workspace that you want to target for analysis.
60+
61+
# flags.target.description
62+
63+
Use the `--target` flag to display the configuration state associated with the rules that apply to only a subset of targeted files within your workspace. You can specify a target as a file, a folder, or a glob pattern. If you specify this flag multiple times, then the full list of targeted files is the sum of the files and folders.
64+
65+
The command uses the type of the targeted files, such as JavaScript or Typescript, to determine which configuration state is applicable. For example, if you target only JavaScript files, then the command doesn't display the configuration state associated with TypeScript rules. The command uses a file's extension to determine what kind of file it is, such as ".ts" for TypeScript.
66+
67+
Each targeted file must live within the workspace specified by the `–-workspace` flag.
68+
69+
If you specify `--workspace` but not `--target`, then all the files within your workspace are targeted.
5470

5571
# flags.rule-selector.summary
5672

5773
Selection of rules, based on engine name, severity level, rule name, tag, or a combination of criteria separated by colons.
5874

5975
# flags.rule-selector.description
6076

61-
Use the --rule-selector flag to display only the configuration associated with the rules based on specific criteria. You can select by engine, such as the rules associated with the "retire-js" or "eslint" engine. Or select by the severity of the rules, such as high or moderate. You can also select rules using tag values or rule names.
77+
Use the `--rule-selector` flag to display only the configuration associated with the rules based on specific criteria. You can select by engine, such as the rules associated with the "retire-js" or "eslint" engine. Or select by the severity of the rules, such as high or moderate. You can also select rules using tag values or rule names.
6278

63-
You can combine different criteria using colons to further filter the list; the colon works as an intersection. For example, "--rule-selector eslint:Security" reduces the output to only contain the configuration state associated with the rules from the "eslint" engine that have the "Security" tag. To add multiple rule selectors together (a union), specify the --rule-selector flag multiple times, such as "--rule-selector eslint:Recommended --rule-selector retire-js:3".
79+
You can combine different criteria using colons to further filter the list; the colon works as an intersection. For example, `--rule-selector eslint:Security` reduces the output to only contain the configuration state associated with the rules from the "eslint" engine that have the "Security" tag. To add multiple rule selectors together (a union), specify the `--rule-selector` flag multiple times, such as `--rule-selector eslint:Recommended --rule-selector retire-js:3`.
6480

6581
If you don't specify this flag, then the command uses the "all" rule selector.
6682

67-
Run `<%= config.bin %> <%= command.id %> --rule-selector Recommended` to display the configuration state associated with just the 'Recommended' rules, instead of all the rules.
83+
Run `<%= config.bin %> <%= command.id %> --rule-selector Recommended` to display the configuration state associated with just the 'Recommended' rules, instead of all the rules.
6884

6985
# flags.config-file.summary
7086

@@ -82,4 +98,6 @@ Output file to write the configuration state to. The file is written in YAML for
8298

8399
# flags.output-file.description
84100

85-
Use this flag to write the final config to a file, in addition to the terminal.
101+
If you specify a file within folder, such as `--output-file ./config/code-analyzer.yml`, the folder must already exist, or you get an error. If the file already exists, a prompt asks if you want to overwrite it.
102+
103+
If you don't specify this flag, the command outputs the configuration state to the terminal.

messages/path-start-util.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)