You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Does this tool just lint or does it also check style?
@@ -122,7 +127,7 @@ You can also contribute by reporting issues, asking for new features.
122
127
## Rules
123
128
124
129
The list of rules is a work in progress. We expect it to increase over time. As
125
-
product features change (new policies, etc), we will change rules as
130
+
product features change (new policies, deprecated policies, etc), we will change rules as
126
131
well.
127
132
128
133
This is the current list:
@@ -141,32 +146,32 @@ This is the current list:
141
146
| |:white_check_mark:| BN009 | Statistics Collector - duplicate policies | Warn on duplicate policies when no conditions are present or conditions are duplicates. |
142
147
| |:white_check_mark:| BN010 | Missing policies | Issue an error if a referenced policy is not present in the bundle. |
143
148
| Proxy Definition | | | | |
144
-
| |:white_check_mark:| PD001 | RouteRules to Targets | RouteRules should map to defined Targets |
145
-
| |:white_check_mark:| PD002 | Unreachable Route Rules - defaults | Only one RouteRule should be present without a condition |
149
+
| |:white_check_mark:| PD001 | RouteRules to Targets | RouteRules should map to defined Targets.|
150
+
| |:white_check_mark:| PD002 | Unreachable Route Rules - defaults | Only one RouteRule should be present without a condition.|
146
151
| |:white_check_mark:| PD003 | Unreachable Route Rules | RouteRule without a condition should be last. |
147
152
| |:white_check_mark:| PD004 | ProxyEndpoint name | ProxyEndpoint name should match basename of filename. |
148
153
| |:white_check_mark:| PD005 | VirtualHost | ProxyEndpoint should have one HTTPProxyConnection, and in the case of profile=apigeex, no VirtualHost. |
149
154
| Target Definition | | | | |
150
155
| |:white_check_mark:| TD001 | Mgmt Server as Target | Discourage calls to the Management Server from a Proxy via target. |
151
-
| |:white_check_mark:| TD002 | Use Target Servers | Encourage the use of target servers |
156
+
| |:white_check_mark:| TD002 | Use Target Servers | Encourage the use of target servers.|
152
157
| |:white_check_mark:| TD003 | TargetEndpoint name | TargetEndpoint name should match basename of filename. |
| |:white_check_mark:| ST002 | Step Structure | each Step should have at most one Name element, one Condition element, no others. |
165
+
| |:white_check_mark:| ST003 | Extract Variables Step with JSONPayload | A check for message content should be performed before policy execution. |
166
+
| |:white_check_mark:| ST004 | Extract Variables Step with XMLPayload | A check for message content should be performed before policy execution. |
167
+
| |:white_check_mark:| ST005 | Extract Variables Step with FormParam | A check for message content should be performed before policy execution. |
168
+
| |:white_check_mark:| ST006 | JSON Threat Protection Step | A check for message content should be performed before policy execution. |
169
+
| |:white_check_mark:| ST007 | XML Threat Protection Step | A check for message content should be performed before policy execution. |
160
170
| Policy | | | | |
161
-
| |:white_check_mark:| PO001 | JSON Threat Protection | A check for a body element must be performed before policy execution. |
162
-
| |:white_check_mark:| PO002 | XML Threat Protection | A check for a body element must be performed before policy execution. |
163
-
| |:white_check_mark:| PO003 | Extract Variables with JSONPayload | A check for a body element must be performed before policy execution. |
164
-
| |:white_check_mark:| PO004 | Extract Variables with XMLPayload | A check for a body element must be performed before policy execution. |
165
-
| |:white_check_mark:| PO005 | Extract Variables with FormParam | A check for a body element must be performed before policy execution. |
166
171
| |:white_check_mark:| PO006 | Policy Name & filename agreement | Policy name attribute should coincide with the policy filename. |
167
172
| |:white_check_mark:| PO007 | Policy Naming Conventions - type indication | It is recommended that the policy name use a prefix or follow a pattern that indicates the policy type. |
168
173
| |:white_check_mark:| PO008 | Policy DisplayName & DisplayName agreement | Check that the policy filename matches the display name of the policy. |
169
-
| |:white_medium_square:| PO009 | Service Callout Target - Mgmt Server | Targeting management server may result in higher than expected latency use with caution. |
174
+
| |:white_medium_square:| PO009 | Service Callout Target - Mgmt Server | Targeting management server may result in higher than expected latency; use with caution. |
170
175
| |:white_medium_square:| PO010 | Service Callout Target - Target Server | Encourage use of target servers. |
171
176
| |:white_medium_square:| PO011 | Service Callout Target - Dynamic URLs | Error on dynamic URLs in target server URL tag. |
172
177
| |:white_check_mark:| PO012 | AssignMessage/AssignTo | Warn on unnecessary AssignTo in AssignMessage when createNew is false and no destination variable. |
@@ -210,6 +215,28 @@ This is the current list:
210
215
211
216
From an implementation perspective, the focus is on plugin support and flexibility over performance. Compute is cheap.
212
217
218
+
## Release Notes
219
+
220
+
### Release v2.31.0
221
+
222
+
#### Condition checks around policies
223
+
224
+
In release v2.31.0, the plugins PO001, PO002, PO003, PO004, and PO005 have been
225
+
converted to ST006, ST007, ST003, ST004, and ST005, respectively. These plugins
226
+
move from the "Policy" category to the "Step" category because the plugin
227
+
analyzes the attachment of the policy in a Step element, rather than the policy
228
+
itself. Also these plugins will now generate warnings, rather than errors.
229
+
230
+
If previously you excluded PO003 via the `--excluded` option, you must now
231
+
exclude ST003, and so on.
232
+
233
+
#### Sharedflows
234
+
235
+
Starting with release v2.31.0, using apigeelint against Sharedflows will
236
+
generate a correct report. Previously the report on a sharedflow was truncated
0 commit comments