spelling: improve camel case handling, disallow run-together words (#8670)

Modifies the pedantic spell checker to better handle camel-case words.
Each part the word is now treated as a separate error in both the check
and fix modes.

Disables run-together mode for aspell, which allowed typos such as
"mananger" (man + anger). Fixes the resulting spelling errors.

Miscellaneous other fixes:
* Provides an option to replace a word without adding the word to the
  dictionary (in case aspell's suggestions do not contain the correct
  replacement).
* Fixes a bug in the script when no suggestions are returned by aspell.
* Checks the dictionary and added words for invalid characters that cause
  aspell errors at dictionary load time.
* Sets the mark flag when in CI runs so that misspelled words are indicated.
* Culls words from the dictionary that are no longer in the codebase, or are
  otherwise not needed.

Risk Level: low (comments only)
Testing: n/a
Doc Changes: n/a
Release Notes: n/a
Fixes: #8481

Signed-off-by: Stephan Zuercher <zuercher@gmail.com>

Mirrored from https://github.com/envoyproxy/envoy @ 596cd4894c8ecd536c1da1dddecaae3531f269ea
master-ci-test
data-plane-api(CircleCI) 5 years ago
parent 8625cf9529
commit 83b27daeb3
  1. 4
      envoy/admin/v2alpha/clusters.proto
  2. 4
      envoy/admin/v3alpha/clusters.proto
  3. 2
      envoy/api/v2/cds.proto
  4. 2
      envoy/api/v2/route/route.proto
  5. 2
      envoy/api/v3alpha/cds.proto
  6. 2
      envoy/api/v3alpha/route/route.proto
  7. 2
      envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto
  8. 2
      envoy/config/filter/network/http_connection_manager/v3alpha/http_connection_manager.proto
  9. 6
      envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto
  10. 6
      envoy/config/filter/network/redis_proxy/v3alpha/redis_proxy.proto
  11. 2
      envoy/service/auth/v2/attribute_context.proto
  12. 2
      envoy/service/auth/v3alpha/attribute_context.proto

@ -53,7 +53,7 @@ message ClusterStatus {
// The success rate threshold used in the last interval when only locally originated failures were // The success rate threshold used in the last interval when only locally originated failures were
// taken into account and externally originated errors were treated as success. // taken into account and externally originated errors were treated as success.
// This field should be interpretted only when // This field should be interpreted only when
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>` // :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>`
// is *true*. The threshold is used to eject hosts based on their success rate. // is *true*. The threshold is used to eject hosts based on their success rate.
// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for // See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
@ -108,7 +108,7 @@ message HostStatus {
// Request success rate for this host over the last calculated // Request success rate for this host over the last calculated
// interval when only locally originated errors are taken into account and externally originated // interval when only locally originated errors are taken into account and externally originated
// errors were treated as success. // errors were treated as success.
// This field should be interpretted only when // This field should be interpreted only when
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>` // :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>`
// is *true*. // is *true*.
// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for // See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for

@ -53,7 +53,7 @@ message ClusterStatus {
// The success rate threshold used in the last interval when only locally originated failures were // The success rate threshold used in the last interval when only locally originated failures were
// taken into account and externally originated errors were treated as success. // taken into account and externally originated errors were treated as success.
// This field should be interpretted only when // This field should be interpreted only when
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_api.v3alpha.cluster.OutlierDetection.split_external_local_origin_errors>` // :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_api.v3alpha.cluster.OutlierDetection.split_external_local_origin_errors>`
// is *true*. The threshold is used to eject hosts based on their success rate. // is *true*. The threshold is used to eject hosts based on their success rate.
// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for // See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
@ -108,7 +108,7 @@ message HostStatus {
// Request success rate for this host over the last calculated // Request success rate for this host over the last calculated
// interval when only locally originated errors are taken into account and externally originated // interval when only locally originated errors are taken into account and externally originated
// errors were treated as success. // errors were treated as success.
// This field should be interpretted only when // This field should be interpreted only when
// :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_api.v3alpha.cluster.OutlierDetection.split_external_local_origin_errors>` // :ref:`outlier_detection.split_external_local_origin_errors<envoy_api_field_api.v3alpha.cluster.OutlierDetection.split_external_local_origin_errors>`
// is *true*. // is *true*.
// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for // See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for

@ -279,7 +279,7 @@ message Cluster {
// When used with locality_weight_aware, scales the weight of each locality by the ratio // When used with locality_weight_aware, scales the weight of each locality by the ratio
// of hosts in the subset vs hosts in the original subset. This aims to even out the load // of hosts in the subset vs hosts in the original subset. This aims to even out the load
// going to an individual locality if said locality is disproportionally affected by the // going to an individual locality if said locality is disproportionately affected by the
// subset predicate. // subset predicate.
bool scale_locality_weight = 5; bool scale_locality_weight = 5;

@ -625,7 +625,7 @@ message RouteAction {
ConnectionProperties connection_properties = 3; ConnectionProperties connection_properties = 3;
} }
// The flag that shortcircuits the hash computing. This field provides a // The flag that short-circuits the hash computing. This field provides a
// 'fallback' style of configuration: "if a terminal policy doesn't work, // 'fallback' style of configuration: "if a terminal policy doesn't work,
// fallback to rest of the policy list", it saves time when the terminal // fallback to rest of the policy list", it saves time when the terminal
// policy works. // policy works.

@ -274,7 +274,7 @@ message Cluster {
// When used with locality_weight_aware, scales the weight of each locality by the ratio // When used with locality_weight_aware, scales the weight of each locality by the ratio
// of hosts in the subset vs hosts in the original subset. This aims to even out the load // of hosts in the subset vs hosts in the original subset. This aims to even out the load
// going to an individual locality if said locality is disproportionally affected by the // going to an individual locality if said locality is disproportionately affected by the
// subset predicate. // subset predicate.
bool scale_locality_weight = 5; bool scale_locality_weight = 5;

@ -578,7 +578,7 @@ message RouteAction {
ConnectionProperties connection_properties = 3; ConnectionProperties connection_properties = 3;
} }
// The flag that shortcircuits the hash computing. This field provides a // The flag that short-circuits the hash computing. This field provides a
// 'fallback' style of configuration: "if a terminal policy doesn't work, // 'fallback' style of configuration: "if a terminal policy doesn't work,
// fallback to rest of the policy list", it saves time when the terminal // fallback to rest of the policy list", it saves time when the terminal
// policy works. // policy works.

@ -353,7 +353,7 @@ message HttpConnectionManager {
// .. NOTE:: // .. NOTE::
// To be useful in avoiding the race condition described above, this timeout must be set // To be useful in avoiding the race condition described above, this timeout must be set
// to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for // to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
// a reasonsable "worst" case processing time for a full iteration of Envoy's event loop>. // a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
// //
// .. WARNING:: // .. WARNING::
// A value of 0 will completely disable delayed close processing. When disabled, the downstream // A value of 0 will completely disable delayed close processing. When disabled, the downstream

@ -340,7 +340,7 @@ message HttpConnectionManager {
// .. NOTE:: // .. NOTE::
// To be useful in avoiding the race condition described above, this timeout must be set // To be useful in avoiding the race condition described above, this timeout must be set
// to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for // to *at least* <max round trip time expected between clients and Envoy>+<100ms to account for
// a reasonsable "worst" case processing time for a full iteration of Envoy's event loop>. // a reasonable "worst" case processing time for a full iteration of Envoy's event loop>.
// //
// .. WARNING:: // .. WARNING::
// A value of 0 will completely disable delayed close processing. When disabled, the downstream // A value of 0 will completely disable delayed close processing. When disabled, the downstream

@ -211,8 +211,8 @@ message RedisProxy {
// //
// When using the above routes, the following prefixes would be sent to: // When using the above routes, the following prefixes would be sent to:
// //
// * 'get abc:users' would retrive the key 'abc:users' from cluster_b. // * 'get abc:users' would retrieve the key 'abc:users' from cluster_b.
// * 'get ab:users' would retrive the key 'ab:users' from cluster_a. // * 'get ab:users' would retrieve the key 'ab:users' from cluster_a.
// * 'get z:users' would return a NoUpstreamHost error. A :ref:`catch-all // * 'get z:users' would return a NoUpstreamHost error. A :ref:`catch-all
// route<envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.PrefixRoutes.catch_all_route>` // route<envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.PrefixRoutes.catch_all_route>`
// would have retrieved the key from that cluster instead. // would have retrieved the key from that cluster instead.
@ -237,7 +237,7 @@ message RedisProxy {
// :ref:`extension_protocol_options<envoy_api_field_Cluster.extension_protocol_options>`, keyed // :ref:`extension_protocol_options<envoy_api_field_Cluster.extension_protocol_options>`, keyed
// by the name `envoy.redis_proxy`. // by the name `envoy.redis_proxy`.
message RedisProtocolOptions { message RedisProtocolOptions {
// Upstream server password as defined by the `requirepass directive // Upstream server password as defined by the `requirepass` directive
// <https://redis.io/topics/config>`_ in the server's configuration file. // <https://redis.io/topics/config>`_ in the server's configuration file.
api.v2.core.DataSource auth_password = 1; api.v2.core.DataSource auth_password = 1;
} }

@ -199,8 +199,8 @@ message RedisProxy {
// //
// When using the above routes, the following prefixes would be sent to: // When using the above routes, the following prefixes would be sent to:
// //
// * 'get abc:users' would retrive the key 'abc:users' from cluster_b. // * 'get abc:users' would retrieve the key 'abc:users' from cluster_b.
// * 'get ab:users' would retrive the key 'ab:users' from cluster_a. // * 'get ab:users' would retrieve the key 'ab:users' from cluster_a.
// * 'get z:users' would return a NoUpstreamHost error. A :ref:`catch-all // * 'get z:users' would return a NoUpstreamHost error. A :ref:`catch-all
// route<envoy_api_field_config.filter.network.redis_proxy.v3alpha.RedisProxy.PrefixRoutes.catch_all_route>` // route<envoy_api_field_config.filter.network.redis_proxy.v3alpha.RedisProxy.PrefixRoutes.catch_all_route>`
// would have retrieved the key from that cluster instead. // would have retrieved the key from that cluster instead.
@ -225,7 +225,7 @@ message RedisProxy {
// :ref:`extension_protocol_options<envoy_api_field_api.v3alpha.Cluster.extension_protocol_options>`, // :ref:`extension_protocol_options<envoy_api_field_api.v3alpha.Cluster.extension_protocol_options>`,
// keyed by the name `envoy.redis_proxy`. // keyed by the name `envoy.redis_proxy`.
message RedisProtocolOptions { message RedisProtocolOptions {
// Upstream server password as defined by the `requirepass directive // Upstream server password as defined by the `requirepass` directive
// <https://redis.io/topics/config>`_ in the server's configuration file. // <https://redis.io/topics/config>`_ in the server's configuration file.
api.v3alpha.core.DataSource auth_password = 1; api.v3alpha.core.DataSource auth_password = 1;
} }

@ -92,7 +92,7 @@ message AttributeContext {
// The HTTP request headers. If multiple headers share the same key, they // The HTTP request headers. If multiple headers share the same key, they
// must be merged according to the HTTP spec. All header keys must be // must be merged according to the HTTP spec. All header keys must be
// lowercased, because HTTP header keys are case-insensitive. // lower-cased, because HTTP header keys are case-insensitive.
map<string, string> headers = 3; map<string, string> headers = 3;
// The request target, as it appears in the first line of the HTTP request. This includes // The request target, as it appears in the first line of the HTTP request. This includes

@ -92,7 +92,7 @@ message AttributeContext {
// The HTTP request headers. If multiple headers share the same key, they // The HTTP request headers. If multiple headers share the same key, they
// must be merged according to the HTTP spec. All header keys must be // must be merged according to the HTTP spec. All header keys must be
// lowercased, because HTTP header keys are case-insensitive. // lower-cased, because HTTP header keys are case-insensitive.
map<string, string> headers = 3; map<string, string> headers = 3;
// The request target, as it appears in the first line of the HTTP request. This includes // The request target, as it appears in the first line of the HTTP request. This includes

Loading…
Cancel
Save