diffend-monitor 0.2.43 → 0.2.44

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b92a5a3ba1c1aa3f396e37658117ba00decaf51a8cb6651028a4b9ac9a37e383
4
- data.tar.gz: 6119e3bc97ee2a9959834e0fa87d435963ffce9c74ff11ed28e68a68f68c5754
3
+ metadata.gz: b22644ddb90bcd7266edd4d1a589589f17a7e00f606dadd087c4cb6304f4723f
4
+ data.tar.gz: a7970c36951afaf1092d62b4e0ab78e6bbe9ae9afe2f532d178eafa065340db0
5
5
  SHA512:
6
- metadata.gz: 5d7fc5c5d3671c875a9778d4eaa866a0226cd62cb3383222b423612f8a57668bde44434cea67cf5b78a841c4a9bccda149defc12f69ec5aad8dabde3000d28bb
7
- data.tar.gz: 8733298b3c841710e296e7aeb16bb2e6808d8469ecab639b81578f8510d744ff9a891e06421e37b01cf139799553d160222b26d1afe9718dc718e908b515ad0b
6
+ metadata.gz: c0193976196e80416df432b754eee04e04634164bb351b4c3d45ee23515e90bbf3d9ef86365c9c336e4a561a2d63c20356528e99ea3677e5c62c7bb351b18756
7
+ data.tar.gz: fe993390b1acd2175ebe8ad888e4c79a2411f123fd828b1ab43bd8fc962170c17c4f1884c9c654eb48dd1172f01478c5205a580b3b7c952593da3117f3e529d8
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -2,6 +2,9 @@
2
2
 
3
3
  ## [Unreleased][master]
4
4
 
5
+ ## [0.2.44] (2021-03-31)
6
+ - `project_id`, `shareable_id` and `shareable_key` need to be a valid UUID
7
+
5
8
  ## [0.2.43] (2021-03-16)
6
9
  - introduce `DIFFEND_TAGS` ([#119](https://github.com/diffend-io/diffend-ruby/pull/119))
7
10
  - add support for `bundle add` command ([#118](https://github.com/diffend-io/diffend-ruby/pull/118))
@@ -138,7 +141,8 @@
138
141
 
139
142
  - initial release
140
143
 
141
- [master]: https://github.com/diffend-io/diffend-ruby/compare/v0.2.43...HEAD
144
+ [master]: https://github.com/diffend-io/diffend-ruby/compare/v0.2.44...HEAD
145
+ [0.2.44]: https://github.com/diffend-io/diffend-ruby/compare/v0.2.43...v0.2.44
142
146
  [0.2.43]: https://github.com/diffend-io/diffend-ruby/compare/v0.2.42...v0.2.43
143
147
  [0.2.42]: https://github.com/diffend-io/diffend-ruby/compare/v0.2.41...v0.2.42
144
148
  [0.2.41]: https://github.com/diffend-io/diffend-ruby/compare/v0.2.40...v0.2.41
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- diffend (0.2.43)
4
+ diffend (0.2.44)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -32,6 +32,17 @@ module Diffend
32
32
  Expected #{Validator::KNOWN_KEYS[key].join(' or ')}, was #{config.public_send(key).class}.
33
33
  MSG
34
34
  end
35
+
36
+ # Invalid uuid value message
37
+ #
38
+ # @param key [String] invalid key
39
+ #
40
+ # @return [String]
41
+ def invalid_uuid(key)
42
+ <<~MSG
43
+ Diffend configuration value for #{key} is invalid.
44
+ MSG
45
+ end
35
46
  end
36
47
  end
37
48
  end
@@ -17,6 +17,14 @@ module Diffend
17
17
  development?: [TrueClass, FalseClass]
18
18
  }.freeze
19
19
 
20
+ # List of known uuid keys
21
+ UUID_KEYS = %i[project_id shareable_id shareable_key].freeze
22
+
23
+ # Imported from https://github.com/assaf/uuid/blob/master/lib/uuid.rb#L199
24
+ UUID_FORMAT = /\A[\da-f]{8}-([\da-f]{4}-){3}[\da-f]{12}\z/i
25
+
26
+ private_constant :UUID_KEYS, :UUID_FORMAT
27
+
20
28
  class << self
21
29
  # @param config [Diffend::Config]
22
30
  def call(config)
@@ -28,6 +36,12 @@ module Diffend
28
36
 
29
37
  config.errors << ErrorMessages.invalid_key(config, key) if invalid?(config, key)
30
38
  end
39
+
40
+ UUID_KEYS.each do |key|
41
+ next if valid_uuid?(config, key)
42
+
43
+ config.errors << ErrorMessages.invalid_uuid(key)
44
+ end
31
45
  end
32
46
 
33
47
  private
@@ -49,6 +63,14 @@ module Diffend
49
63
  def invalid?(config, key)
50
64
  !KNOWN_KEYS[key].include?(config.public_send(key).class)
51
65
  end
66
+
67
+ # @param config [Diffend::Config]
68
+ # @param key [String]
69
+ #
70
+ # @return [Boolean] true if key has a valid uuid, false otherwise
71
+ def valid_uuid?(config, key)
72
+ UUID_FORMAT.match?(config.public_send(key))
73
+ end
52
74
  end
53
75
  end
54
76
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Diffend
4
4
  # Current version
5
- VERSION = '0.2.43'
5
+ VERSION = '0.2.44'
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: diffend-monitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.43
4
+ version: 0.2.44
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tomasz Pajor
@@ -34,7 +34,7 @@ cert_chain:
34
34
  9MmF6uCQa1EjK2p8tYT0MnbHrFkoehxdX4VO9y99GAkhZyJNKPYPtyAUFV27sT2V
35
35
  LfCJRk4ifKIN/FUCwDSn8Cz0m6oH265q0p6wdzI6qrWOjP8tGOMBTA==
36
36
  -----END CERTIFICATE-----
37
- date: 2021-03-16 00:00:00.000000000 Z
37
+ date: 2021-03-31 00:00:00.000000000 Z
38
38
  dependencies:
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: bundler
metadata.gz.sig CHANGED
Binary file