ezcater_rubocop 6.0.0 → 6.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/lib/ezcater_rubocop/version.rb +1 -1
- data/lib/rubocop/cop/ezcater/feature_flag_name_valid.rb +8 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c5f12d0a1d9d61fff795e000706b9ef2d02b0d78c65e58a5563c3f11d8870148
|
4
|
+
data.tar.gz: 33e6a6d1dc61072834735eb38b1e894007c87d478c8f52175158943117c76136
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bf0a35365a2fa3d1b59683b589a6fbe9718920a0c971cf49ada9b2b75b99d1289d8c667424d29cd4153e81e6990e24f7f552de8d6d1351eae77b480a0166bc1a
|
7
|
+
data.tar.gz: 5cf74d0d428af4489ff699de87603f139c96df12ef07ee4c913554b31218f464d732724667e933bf16eebc6ab71b7ac85052ef36adef5f331ee2d18903daf184
|
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,9 @@ This gem is moving onto its own [Semantic Versioning](https://semver.org/) schem
|
|
6
6
|
|
7
7
|
Prior to v1.0.0 this gem was versioned based on the `MAJOR`.`MINOR` version of RuboCop. The first release of the ezcater_rubocop gem was `v0.49.0`.
|
8
8
|
|
9
|
+
## 6.0.1
|
10
|
+
- Fix a bug in the `FeatureFlagNameValid` cop where the titlecase regex matcher was incorrectly finding offenses.
|
11
|
+
|
9
12
|
## 6.0.0
|
10
13
|
- Add `FeatureFlagNameValid` cop to validate correct feature flag name format, [adopted from the cop](https://github.com/ezcater/ez-rails/blob/2d9272eb3d2c71dc5ebc2aa01a849cf9cfae3df2/cops/rubocop/cops/feature_flags_flag_name.rb_) in `ez-rails`.
|
11
14
|
|
@@ -22,11 +22,11 @@ module RuboCop
|
|
22
22
|
# EzFF.active?("foo::bar", identifiers: ["user:1"])
|
23
23
|
# MY_FLAG="Foo:bar"
|
24
24
|
class FeatureFlagNameValid < Cop
|
25
|
-
WHITESPACE = /\s
|
26
|
-
ISOLATED_COLON = /(?<!:):(?!:)
|
27
|
-
TRIPLE_COLON =
|
28
|
-
INVALID_CHARACTERS = /[^a-zA-Z0-9:]
|
29
|
-
TITLECASE_SEGMENT =
|
25
|
+
WHITESPACE = /\s/
|
26
|
+
ISOLATED_COLON = /(?<!:):(?!:)/
|
27
|
+
TRIPLE_COLON = /:::/
|
28
|
+
INVALID_CHARACTERS = /[^a-zA-Z0-9:]/
|
29
|
+
TITLECASE_SEGMENT = /^([A-Z][a-z0-9]*)+$/
|
30
30
|
|
31
31
|
WHITESPACE_MSG = "Feature flag names must not contain whitespace."
|
32
32
|
DOUBLE_COLON_MSG = "Feature flag names must use double colons (::) as namespace separators."
|
@@ -39,7 +39,7 @@ module RuboCop
|
|
39
39
|
|
40
40
|
def_node_matcher :feature_flag_method_call, <<~PATTERN
|
41
41
|
(send
|
42
|
-
(_ _ {:EzFF :EzcaterFeatureFlag}) {:active? | :at_100? | :random_sample_active?} (str $_
|
42
|
+
(_ _ {:EzFF :EzcaterFeatureFlag}) {:active? | :at_100? | :random_sample_active?} <(str $_) ...>)
|
43
43
|
PATTERN
|
44
44
|
|
45
45
|
def on_casgn(node)
|
@@ -53,7 +53,7 @@ module RuboCop
|
|
53
53
|
|
54
54
|
def on_send(node)
|
55
55
|
return unless feature_flag_method_call(node)
|
56
|
-
|
56
|
+
|
57
57
|
feature_flag_method_call(node) do |flag_name|
|
58
58
|
errors = find_name_violations(flag_name)
|
59
59
|
add_offense(node, location: :expression, message: errors.join(", ")) if errors.any?
|
@@ -88,5 +88,5 @@ module RuboCop
|
|
88
88
|
end
|
89
89
|
end
|
90
90
|
end
|
91
|
-
end
|
91
|
+
end
|
92
92
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ezcater_rubocop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.0.
|
4
|
+
version: 6.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ezCater, Inc
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-06-
|
11
|
+
date: 2023-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|