datory 2.0.1 → 2.2.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0d75ec20e07857b664bcbf08594dc896470b5a9c71a8c0fb468b32bbda0c0463
4
- data.tar.gz: 47cadbd27a5465f1667c63f0cb0b3187e3ccf7182039a268d5df127df3463f86
3
+ metadata.gz: 0cff9ad23960d36e666479f9a71c8e01c330d7c942f6813a2e8b5bf97d484b34
4
+ data.tar.gz: 485ebb5e77fe1bbf51b33a5a8035e8794ba21ed32f8410f03a79b4db5e5e2aaf
5
5
  SHA512:
6
- metadata.gz: c938b6d290be1739f68e18f93f1d2e461198e3319fd43bee9147b415a38a3f0f1ec50a7dd2361f1f82256102b54d6831abc34dcac23002b0822ad46c0d263694
7
- data.tar.gz: d31f30bf166ed0db85058d344dc197f7f43d8913d20a1c71f4510f4690faff986ce3d9c438193d69905cb2ec4ee3ea5e6279b8bd73a4604da4c9a61b14fe7e81
6
+ metadata.gz: f26df084513984d48832b9794ebedabc37869bafdef3b003226de0747e4a0f5f0fd2408a9a41d4890b9b011604510327e30cb4379039f8d713f0cb32fe3c01e2
7
+ data.tar.gz: 31a93047b3dfc26812a7e918e346c7af5a039fd3e4ccd216a6a37b7e699fe6cf9bcb53188f84e6ed5e11db8c2eaf4545ce9279686dcb84d0a846347041492839
@@ -9,40 +9,40 @@ en:
9
9
  cannot_be_overwritten: "[%{service_class_name}] The following methods cannot be overwritten: %{list_of_methods}"
10
10
  inputs:
11
11
  undefined:
12
- getter: "[%{service_class_name}] Undefined serialization attribute `%{input_name}`"
13
- setter: "[%{service_class_name}] Undefined serialization attribute `%{input_name}`"
12
+ getter: "[%{service_class_name}] Undefined attribute `%{input_name}`"
13
+ setter: "[%{service_class_name}] Undefined attribute `%{input_name}`"
14
14
  validations:
15
15
  inclusion:
16
16
  default_error: "[%{service_class_name}] Wrong value in `%{input_name}`, must be one of `%{input_inclusion}`"
17
17
  must:
18
- default_error: "[%{service_class_name}] Serialization attribute `%{input_name}` must \"%{code}\""
19
- syntax_error: "[%{service_class_name}] Syntax error inside `%{code}` of `%{input_name}` serialization attribute: %{exception_message}"
18
+ default_error: "[%{service_class_name}] Attribute `%{input_name}` must \"%{code}\""
19
+ syntax_error: "[%{service_class_name}] Syntax error inside `%{code}` of `%{input_name}` attribute: %{exception_message}"
20
20
  dynamic_options:
21
21
  consists_of:
22
- required: "[%{service_class_name}] Required element in serialization attribute collection `%{input_name}` is missing"
23
- wrong_type: "[%{service_class_name}] Wrong serialization attribute collection type `%{input_name}`, expected `%{expected_type}`, got `%{given_type}`"
24
- wrong_element_type: "[%{service_class_name}] Wrong element type in serialization attribute collection `%{input_name}`, expected `%{expected_type}`, got `%{given_type}`"
22
+ required: "[%{service_class_name}] Required element in attribute collection `%{input_name}` is missing"
23
+ wrong_type: "[%{service_class_name}] Wrong attribute collection type `%{input_name}`, expected `%{expected_type}`, got `%{given_type}`"
24
+ wrong_element_type: "[%{service_class_name}] Wrong element type in attribute collection `%{input_name}`, expected `%{expected_type}`, got `%{given_type}`"
25
25
  format:
26
- default: "[%{service_class_name}] Serialization attribute `%{input_name}` does not match `%{format_name}` format"
27
- wrong_pattern: "[%{service_class_name}] Serialization attribute `%{input_name}` does not match `%{format_name}` format"
28
- unknown: "[%{service_class_name}] Unknown `%{format_name}` format specified for serialization attribute `%{input_name}`"
26
+ default: "[%{service_class_name}] Attribute `%{input_name}` does not match `%{format_name}` format"
27
+ wrong_pattern: "[%{service_class_name}] Attribute `%{input_name}` does not match `%{format_name}` format"
28
+ unknown: "[%{service_class_name}] Unknown `%{format_name}` format specified for attribute `%{input_name}`"
29
29
  min:
30
- default: "[%{service_class_name}] Serialization attribute `%{input_name}` received value `%{value}`, which is less than `%{option_value}`"
30
+ default: "[%{service_class_name}] Attribute `%{input_name}` received value `%{value}`, which is less than `%{option_value}`"
31
31
  max:
32
- default: "[%{service_class_name}] Serialization attribute `%{input_name}` received value `%{value}`, which is greater than `%{option_value}`"
32
+ default: "[%{service_class_name}] Attribute `%{input_name}` received value `%{value}`, which is greater than `%{option_value}`"
33
33
  required:
34
34
  default_error:
35
- default: "[%{service_class_name}] Required serialization attribute `%{input_name}` is missing"
35
+ default: "[%{service_class_name}] Required attribute `%{input_name}` is missing"
36
36
  type:
37
37
  default_error:
38
- default: "[%{service_class_name}] Wrong type of serialization attribute `%{input_name}`, expected `%{expected_type}`, got `%{given_type}`"
38
+ default: "[%{service_class_name}] Wrong type of attribute `%{input_name}`, expected `%{expected_type}`, got `%{given_type}`"
39
39
  for_hash:
40
- wrong_element_type: "[%{service_class_name}] Wrong type in serialization attribute hash `%{input_name}`, expected `%{expected_type}` for `%{key_name}`, got `%{given_type}`"
40
+ wrong_element_type: "[%{service_class_name}] Wrong type in attribute hash `%{input_name}`, expected `%{expected_type}` for `%{key_name}`, got `%{given_type}`"
41
41
  tools:
42
42
  find_unnecessary:
43
43
  error: "[%{service_class_name}] Unexpected attributes: `%{unnecessary_attributes}`"
44
44
  rules:
45
- error: "[%{service_class_name}] Conflict in `%{input_name}` serialization attribute options: `%{conflict_code}`"
45
+ error: "[%{service_class_name}] Conflict in `%{input_name}` attribute options: `%{conflict_code}`"
46
46
  internals:
47
47
  undefined:
48
48
  getter: "[%{service_class_name}] Undefined internal attribute `%{internal_name}`"
@@ -73,29 +73,29 @@ en:
73
73
  wrong_element_type: "[%{service_class_name}] Wrong type in internal attribute hash `%{internal_name}`, expected `%{expected_type}` for `%{key_name}`, got `%{given_type}`"
74
74
  outputs:
75
75
  undefined:
76
- getter: "[%{service_class_name}] Undefined deserialization attribute `%{output_name}`"
77
- setter: "[%{service_class_name}] Undefined deserialization attribute `%{output_name}`"
76
+ getter: "[%{service_class_name}] Undefined attribute `%{output_name}`"
77
+ setter: "[%{service_class_name}] Undefined attribute `%{output_name}`"
78
78
  validations:
79
79
  inclusion:
80
80
  default_error: "[%{service_class_name}] Wrong value in `%{output_name}`, must be one of `%{output_inclusion}`"
81
81
  must:
82
- default_error: "[%{service_class_name}] Deserialization attribute `%{output_name}` must \"%{code}\""
83
- syntax_error: "[%{service_class_name}] Syntax error inside `%{code}` of `%{output_name}` deserialization attribute: %{exception_message}"
82
+ default_error: "[%{service_class_name}] Attribute `%{output_name}` must \"%{code}\""
83
+ syntax_error: "[%{service_class_name}] Syntax error inside `%{code}` of `%{output_name}` attribute: %{exception_message}"
84
84
  dynamic_options:
85
85
  consists_of:
86
- required: "[%{service_class_name}] Required element in deserialization attribute collection `%{output_name}` is missing"
87
- wrong_type: "[%{service_class_name}] Wrong deserialization attribute collection type `%{output_name}`, expected `%{expected_type}`, got `%{given_type}`"
88
- wrong_element_type: "[%{service_class_name}] Wrong element type in deserialization attribute collection `%{output_name}`, expected `%{expected_type}`, got `%{given_type}`"
86
+ required: "[%{service_class_name}] Required element in attribute collection `%{output_name}` is missing"
87
+ wrong_type: "[%{service_class_name}] Wrong attribute collection type `%{output_name}`, expected `%{expected_type}`, got `%{given_type}`"
88
+ wrong_element_type: "[%{service_class_name}] Wrong element type in attribute collection `%{output_name}`, expected `%{expected_type}`, got `%{given_type}`"
89
89
  format:
90
- default: "[%{service_class_name}] Deserialization attribute `%{output_name}` does not match `%{format_name}` format"
91
- wrong_pattern: "[%{service_class_name}] Deserialization attribute `%{output_name}` does not match `%{format_name}` format"
92
- unknown: "[%{service_class_name}] Unknown `%{format_name}` format specified for deserialization attribute `%{output_name}`"
90
+ default: "[%{service_class_name}] Attribute `%{output_name}` does not match `%{format_name}` format"
91
+ wrong_pattern: "[%{service_class_name}] Attribute `%{output_name}` does not match `%{format_name}` format"
92
+ unknown: "[%{service_class_name}] Unknown `%{format_name}` format specified for attribute `%{output_name}`"
93
93
  min:
94
- default: "[%{service_class_name}] Deserialization attribute `%{output_name}` received value `%{value}`, which is less than `%{option_value}`"
94
+ default: "[%{service_class_name}] Attribute `%{output_name}` received value `%{value}`, which is less than `%{option_value}`"
95
95
  max:
96
- default: "[%{service_class_name}] Deserialization attribute `%{output_name}` received value `%{value}`, which is greater than `%{option_value}`"
96
+ default: "[%{service_class_name}] Attribute `%{output_name}` received value `%{value}`, which is greater than `%{option_value}`"
97
97
  type:
98
98
  default_error:
99
- default: "[%{service_class_name}] Wrong type of deserialization attribute `%{output_name}`, expected `%{expected_type}`, got `%{given_type}`"
99
+ default: "[%{service_class_name}] Wrong type of attribute `%{output_name}`, expected `%{expected_type}`, got `%{given_type}`"
100
100
  for_hash:
101
- wrong_element_type: "[%{service_class_name}] Wrong type in deserialization attribute hash `%{output_name}`, expected `%{expected_type}` for `%{key_name}`, got `%{given_type}`"
101
+ wrong_element_type: "[%{service_class_name}] Wrong type in attribute hash `%{output_name}`, expected `%{expected_type}` for `%{key_name}`, got `%{given_type}`"
@@ -9,40 +9,40 @@ ru:
9
9
  cannot_be_overwritten: "[%{service_class_name}] Нельзя перезаписать следующие методы: %{list_of_methods}"
10
10
  inputs:
11
11
  undefined:
12
- getter: "[%{service_class_name}] Неизвестный входящий атрибут сериализации `%{input_name}`"
13
- setter: "[%{service_class_name}] Неизвестный входящий атрибут сериализации `%{input_name}`"
12
+ getter: "[%{service_class_name}] Неизвестный атрибут `%{input_name}`"
13
+ setter: "[%{service_class_name}] Неизвестный атрибут `%{input_name}`"
14
14
  validations:
15
15
  inclusion:
16
16
  default_error: "[%{service_class_name}] Неправильное значение в `%{input_name}`, должно быть одним из `%{input_inclusion}`"
17
17
  must:
18
- default_error: "[%{service_class_name}] Атрибут сериализации `%{input_name}` должен \"%{code}\""
19
- syntax_error: "[%{service_class_name}] Синтаксическая ошибка внутри `%{code}` атрибута сериализации `%{input_name}`: %{exception_message}"
18
+ default_error: "[%{service_class_name}] Атрибут `%{input_name}` должен \"%{code}\""
19
+ syntax_error: "[%{service_class_name}] Синтаксическая ошибка внутри `%{code}` атрибута `%{input_name}`: %{exception_message}"
20
20
  dynamic_options:
21
21
  consists_of:
22
- required: "[%{service_class_name}] Отсутствует обязательный элемент в коллекции атрибута сериализации `%{input_name}`"
23
- wrong_type: "[%{service_class_name}] Неправильный тип коллекции атрибута сериализации `%{input_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
24
- wrong_element_type: "[%{service_class_name}] Неправильный тип элемента в коллекции атрибута сериализации `%{input_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
22
+ required: "[%{service_class_name}] Отсутствует обязательный элемент в коллекции атрибута `%{input_name}`"
23
+ wrong_type: "[%{service_class_name}] Неправильный тип коллекции атрибута `%{input_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
24
+ wrong_element_type: "[%{service_class_name}] Неправильный тип элемента в коллекции атрибута `%{input_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
25
25
  format:
26
- default: "[%{service_class_name}] Атрибут сериализации `%{input_name}` не соответствует формату `%{format_name}`"
27
- wrong_pattern: "[%{service_class_name}] Атрибут сериализации `%{input_name}` не соответствует формату `%{format_name}`"
28
- unknown: "[%{service_class_name}] Указан неизвестный формат `%{format_name}` у атрибута сериализации `%{input_name}`"
26
+ default: "[%{service_class_name}] Атрибут `%{input_name}` не соответствует формату `%{format_name}`"
27
+ wrong_pattern: "[%{service_class_name}] Атрибут `%{input_name}` не соответствует формату `%{format_name}`"
28
+ unknown: "[%{service_class_name}] Указан неизвестный формат `%{format_name}` у атрибута `%{input_name}`"
29
29
  min:
30
- default: "[%{service_class_name}] Атрибут сериализации `%{input_name}` получил значение `%{value}`, которое меньше `%{option_value}`"
30
+ default: "[%{service_class_name}] Атрибут `%{input_name}` получил значение `%{value}`, которое меньше `%{option_value}`"
31
31
  max:
32
- default: "[%{service_class_name}] Атрибут сериализации `%{input_name}` получил значение `%{value}`, которое больше `%{option_value}`"
32
+ default: "[%{service_class_name}] Атрибут `%{input_name}` получил значение `%{value}`, которое больше `%{option_value}`"
33
33
  required:
34
34
  default_error:
35
- default: "[%{service_class_name}] Обязательный атрибут сериализации `%{input_name}` отсутствует"
35
+ default: "[%{service_class_name}] Обязательный атрибут `%{input_name}` отсутствует"
36
36
  type:
37
37
  default_error:
38
- default: "[%{service_class_name}] Неправильный тип атрибута сериализации `%{input_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
38
+ default: "[%{service_class_name}] Неправильный тип атрибута `%{input_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
39
39
  for_hash:
40
- wrong_element_type: "[%{service_class_name}] Неправильный тип в хеше атрибута сериализации `%{input_name}`, для `%{key_name}` ожидалось `%{expected_type}`, получено `%{given_type}`"
40
+ wrong_element_type: "[%{service_class_name}] Неправильный тип в хеше атрибута `%{input_name}`, для `%{key_name}` ожидалось `%{expected_type}`, получено `%{given_type}`"
41
41
  tools:
42
42
  find_unnecessary:
43
43
  error: "[%{service_class_name}] Неожиданные атрибуты: `%{unnecessary_attributes}`"
44
44
  rules:
45
- error: "[%{service_class_name}] Конфликт в опциях атрибута сериализации `%{input_name}`: `%{conflict_code}`"
45
+ error: "[%{service_class_name}] Конфликт в опциях атрибута `%{input_name}`: `%{conflict_code}`"
46
46
  internals:
47
47
  undefined:
48
48
  getter: "[%{service_class_name}] Неизвестный внутренний атрибут `%{internal_name}`"
@@ -73,29 +73,29 @@ ru:
73
73
  wrong_element_type: "[%{service_class_name}] Неправильный тип в хеше внутреннего атрибута `%{internal_name}`, для `%{key_name}` ожидалось `%{expected_type}`, получено `%{given_type}`"
74
74
  outputs:
75
75
  undefined:
76
- getter: "[%{service_class_name}] Неизвестный атрибут десериализации `%{output_name}`"
77
- setter: "[%{service_class_name}] Неизвестный атрибут десериализации `%{output_name}`"
76
+ getter: "[%{service_class_name}] Неизвестный атрибут `%{output_name}`"
77
+ setter: "[%{service_class_name}] Неизвестный атрибут `%{output_name}`"
78
78
  validations:
79
79
  inclusion:
80
80
  default_error: "[%{service_class_name}] Неправильное значение в `%{output_name}`, должно быть одним из `%{output_inclusion}`"
81
81
  must:
82
- default_error: "[%{service_class_name}] Атрибут десериализации `%{output_name}` должен \"%{code}\""
83
- syntax_error: "[%{service_class_name}] Синтаксическая ошибка внутри `%{code}` атрибута десериализации `%{output_name}`: %{exception_message}"
82
+ default_error: "[%{service_class_name}] Атрибут `%{output_name}` должен \"%{code}\""
83
+ syntax_error: "[%{service_class_name}] Синтаксическая ошибка внутри `%{code}` атрибута `%{output_name}`: %{exception_message}"
84
84
  dynamic_options:
85
85
  consists_of:
86
- required: "[%{service_class_name}] Отсутствует обязательный элемент в коллекции атрибута десериализации `%{output_name}`"
87
- wrong_type: "[%{service_class_name}] Неправильный тип коллекции атрибута десериализации `%{output_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
88
- wrong_element_type: "[%{service_class_name}] Неправильный тип элемента в коллекции атрибута десериализации `%{output_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
86
+ required: "[%{service_class_name}] Отсутствует обязательный элемент в коллекции атрибута `%{output_name}`"
87
+ wrong_type: "[%{service_class_name}] Неправильный тип коллекции атрибута `%{output_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
88
+ wrong_element_type: "[%{service_class_name}] Неправильный тип элемента в коллекции атрибута `%{output_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
89
89
  format:
90
- default: "[%{service_class_name}] Атрибут десериализации `%{output_name}` не соответствует формату `%{format_name}`"
91
- wrong_pattern: "[%{service_class_name}] Атрибут десериализации `%{output_name}` не соответствует формату `%{format_name}`"
92
- unknown: "[%{service_class_name}] Указан неизвестный формат `%{format_name}` у атрибута десериализации `%{output_name}`"
90
+ default: "[%{service_class_name}] Атрибут `%{output_name}` не соответствует формату `%{format_name}`"
91
+ wrong_pattern: "[%{service_class_name}] Атрибут `%{output_name}` не соответствует формату `%{format_name}`"
92
+ unknown: "[%{service_class_name}] Указан неизвестный формат `%{format_name}` у атрибута `%{output_name}`"
93
93
  min:
94
- default: "[%{service_class_name}] Атрибут десериализации `%{output_name}` получил значение `%{value}`, которое меньше `%{option_value}`"
94
+ default: "[%{service_class_name}] Атрибут `%{output_name}` получил значение `%{value}`, которое меньше `%{option_value}`"
95
95
  max:
96
- default: "[%{service_class_name}] Атрибут десериализации `%{output_name}` получил значение `%{value}`, которое больше `%{option_value}`"
96
+ default: "[%{service_class_name}] Атрибут `%{output_name}` получил значение `%{value}`, которое больше `%{option_value}`"
97
97
  type:
98
98
  default_error:
99
- default: "[%{service_class_name}] Неправильный тип атрибута десериализации `%{output_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
99
+ default: "[%{service_class_name}] Неправильный тип атрибута `%{output_name}`, ожидалось `%{expected_type}`, получено `%{given_type}`"
100
100
  for_hash:
101
- wrong_element_type: "[%{service_class_name}] Неправильный тип в хеше атрибута десериализации `%{output_name}`, для `%{key_name}` ожидалось `%{expected_type}`, получено `%{given_type}`"
101
+ wrong_element_type: "[%{service_class_name}] Неправильный тип в хеше атрибута `%{output_name}`, для `%{key_name}` ожидалось `%{expected_type}`, получено `%{given_type}`"
@@ -8,22 +8,25 @@ module Datory
8
8
  end
9
9
 
10
10
  def serialize(model) # rubocop:disable Metrics/MethodLength
11
+ context = send(:new, _datory_to_model: false)
12
+
11
13
  if [Set, Array].include?(model.class)
12
14
  model.map do |model_item|
13
15
  serialize(model_item)
14
16
  end
15
17
  else
16
- context = send(:new, _datory_to_model: false)
17
18
  model = Datory::Attributes::Serialization::Model.prepare(model)
18
19
  _serialize(context, model)
19
20
  end
20
21
  rescue Datory::Service::Exceptions::Input,
21
22
  Datory::Service::Exceptions::Internal,
22
23
  Datory::Service::Exceptions::Output => e
23
- raise Datory::Exceptions::SerializationError.new(message: e.message)
24
+ raise Datory::Exceptions::SerializationError.new(context: e.send(:context), message: e.message)
24
25
  end
25
26
 
26
27
  def deserialize(data) # rubocop:disable Metrics/MethodLength, Metrics/AbcSize
28
+ context = send(:new, _datory_to_model: false)
29
+
27
30
  prepared_data =
28
31
  if data.is_a?(Datory::Base)
29
32
  Datory::Attributes::Serialization::Model.to_hash(data)
@@ -38,19 +41,21 @@ module Datory
38
41
  deserialize(item)
39
42
  end
40
43
  else
41
- context = send(:new, _datory_to_model: false)
42
-
43
44
  _deserialize(context, **prepared_data)
44
45
  end
45
46
  rescue Datory::Service::Exceptions::Input,
46
47
  Datory::Service::Exceptions::Internal,
47
48
  Datory::Service::Exceptions::Output => e
48
- raise Datory::Exceptions::DeserializationError.new(message: e.message)
49
+ raise Datory::Exceptions::DeserializationError.new(context: e.send(:context), message: e.message)
49
50
  rescue JSON::ParserError => e
50
51
  # TODO: Needs to be moved to I18n
51
52
  message = "Failed to parse data for deserialization: #{e.message}"
52
53
 
53
- raise Datory::Exceptions::DeserializationError.new(message: message, meta: { original_exception: e })
54
+ raise Datory::Exceptions::DeserializationError.new(
55
+ context: context,
56
+ message: message,
57
+ meta: { original_exception: e }
58
+ )
54
59
  end
55
60
 
56
61
  def new(_datory_to_model: true, **attributes) # rubocop:disable Lint/UnderscorePrefixedVariableName
@@ -3,6 +3,14 @@
3
3
  module Datory
4
4
  module Context
5
5
  module Workspace
6
+ class Actor
7
+ attr_reader :class_name
8
+
9
+ def initialize(context)
10
+ @class_name = context.class.name
11
+ end
12
+ end
13
+
6
14
  private
7
15
 
8
16
  def merge!(attributes)
@@ -46,6 +54,11 @@ module Datory
46
54
  def deserialize(**); end
47
55
 
48
56
  def to_model(**); end
57
+
58
+ # NOTE: To maintain context compatibility in Servactory exceptions.
59
+ def servactory_service_info
60
+ @servactory_service_info ||= self.class::Actor.new(self)
61
+ end
49
62
  end
50
63
  end
51
64
  end
@@ -3,9 +3,9 @@
3
3
  module Datory
4
4
  module VERSION
5
5
  MAJOR = 2
6
- MINOR = 0
7
- PATCH = 1
8
- PRE = nil
6
+ MINOR = 2
7
+ PATCH = 0
8
+ PRE = "rc1"
9
9
 
10
10
  STRING = [MAJOR, MINOR, PATCH, PRE].compact.join(".")
11
11
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: datory
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.2.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anton Sokolov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-13 00:00:00.000000000 Z
11
+ date: 2024-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -48,16 +48,16 @@ dependencies:
48
48
  name: servactory
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - ">="
51
+ - - '='
52
52
  - !ruby/object:Gem::Version
53
- version: 2.8.0
53
+ version: 2.9.0.rc3
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - ">="
58
+ - - '='
59
59
  - !ruby/object:Gem::Version
60
- version: 2.8.0
60
+ version: 2.9.0.rc3
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: terminal-table
63
63
  requirement: !ruby/object:Gem::Requirement