Changelog 
v2.16.0 (2025-08-23) 
Implemented enhancements:
- Add information about stages and actions #296 (afuno)
 - Add 
servactory?method to service class #295 (afuno) - Optimize attribute validation processing #294 (afuno)
 - Use 
fail_*!methods to raise exceptions #290 (afuno) 
Dependencies:
v2.16.0.rc3 (2025-07-05) 
v2.16.0.rc2 (2025-07-05) 
Implemented enhancements:
v2.16.0.rc1 (2025-07-05) 
Implemented enhancements:
- Add 
servactory?method to service class #295 (afuno) - Optimize attribute validation processing #294 (afuno)
 - Use 
fail_*!methods to raise exceptions #290 (afuno) 
Fixed:
v2.15.1 (2025-06-28) 
v2.15.0 (2025-06-10) 
Implemented enhancements:
- Refactoring library code #282 (afuno)
 - Refactoring library code #280 (afuno)
 - Refactor DSL extensions handling to use dedicated module #279 (afuno)
 - Add dynamic method handling for failure types #278 (afuno)
 
Fixed:
- Fix validation of 
internalswhen used, and improveschemaoption #286 (afuno) - Fix default matcher handling for nil default values #284 (afuno)
 
Dependencies:
v2.15.0.rc1 (2025-06-10) 
Fixed:
v2.14.1 (2025-04-29) 
v2.14.0 (2025-04-21) 
Breaking changes:
Implemented enhancements:
Dependencies:
Merged pull requests:
v2.13.3 (2025-04-02) 
Implemented enhancements:
Fixed:
Dependencies:
v2.13.2 (2025-03-19) 
Fixed:
v2.13.1 (2025-03-19) 
Fixed:
v2.13.0 (2025-03-06) 
Implemented enhancements:
v2.12.0 (2025-03-02) 
Implemented enhancements:
- Rewrite 
inclusionoption as dynamic #262 (afuno) - Rewrite 
schemaoption as dynamic #260 (afuno) - Rework storage to use it for all attribute types #259 (afuno)
 
Fixed:
Dependencies:
- [02.03.2025] Update dependencies #266 (afuno)
 - [19.02.2025] Update libraries #263 (afuno)
 - [08.02.2025] Update libraries #261 (afuno)
 
v2.12.0.rc4 (2025-03-01) 
v2.12.0.rc3 (2025-03-01) 
v2.12.0.rc2 (2025-02-18) 
v2.12.0.rc1 (2025-02-08) 
v2.11.0 (2025-01-01) 
Implemented enhancements:
- Refactor input handling to centralize argument management #258 (afuno)
 - Add support for Ruby 3.4 #257 (afuno)
 
v2.10.0 (2024-12-20) 
Implemented enhancements:
Fixed:
- Fix handling of 
on_failurehook inallow_servicehelpers for RSpec #255 (nflm) - Improve message handling for RSpec chain 
with_outputs#252 (afuno) 
Dependencies:
v2.9.2 (2024-12-09) 
v2.9.1 (2024-11-19) 
v2.9.0 (2024-11-08) 
Breaking changes:
Implemented enhancements:
- Apply Servactory RuboCop #249 (afuno)
 - Add 
withsupport for RSpec Mocks #248 (afuno) - Improve 
be_failure_servicematcher in RSpec #245 (afuno) - Add access to context in exceptions for use inside Datory #243 (afuno)
 - Add service information to attribute exceptions #242 (afuno)
 - Improve uniqueness of types #240 (afuno)
 - Native support for Datory #238 (afuno)
 
Fixed:
- Update spec matchers from 
withtocontains#247 (afuno) - Fix class checking inside 
be_failure_service#244 (afuno) 
Dependencies:
- [08.11.2024] Remove deprecated files and update dependencies #251 (afuno)
 - [14.10.2024] Update libraries #246 (afuno)
 - Add support for Ruby version 3.4.0-preview2 #227 (afuno)
 
Merged pull requests:
v2.9.0.rc9 (2024-11-03) 
v2.9.0.rc8 (2024-10-27) 
v2.9.0.rc7 (2024-10-22) 
v2.9.0.rc6 (2024-10-13) 
v2.9.0.rc5 (2024-10-10) 
v2.9.0.rc4 (2024-09-30) 
v2.9.0.rc3 (2024-09-23) 
v2.9.0.rc2 (2024-09-22) 
v2.9.0.rc1 (2024-09-17) 
v2.8.0 (2024-08-28) 
Breaking changes:
Implemented enhancements:
Dependencies:
v2.7.0 (2024-08-13) 
Breaking changes:
Implemented enhancements:
- Add dynamic option 
multiple_of#231 (afuno) - Improve text translation mechanism in dynamic option 
consists_of#230 (afuno) 
Dependencies:
Merged pull requests:
v2.6.3 (2024-07-26) 
v2.6.2 (2024-05-19) 
Fixed:
v2.6.1 (2024-05-15) 
Implemented enhancements:
- Add 
collection_mode_class_namesconfiguration to template for generator #225 (afuno) - Improve naming of some variables #224 (afuno)
 
Fixed:
v2.6.0 (2024-05-13) 
Breaking changes:
- Replace 
service_class_nameattribute withservice#212 (afuno) - Rewrite 
consists_ofoption as dynamic and refuse collection mode #180 (afuno) 
Implemented enhancements:
- Add example for 
predicate_methods_enabledconfiguration #221 (afuno) - Refactor configuration #220 (afuno)
 - Revert 
collection_mode_class_namesconfiguration and improve translations #216 (afuno) - Add config 
i18n_root_key#213 (afuno) 
Fixed:
- Update attribute to 
serviceinvalid_with#219 (afuno) - Improve work and examples for 
consists_ofoption #217 (afuno) - Fix check in 
consists_ofoption of input when it is optional #215 (afuno) - Fix 
consists_ofoption for optional attribute with default value #214 (afuno) 
v2.6.0.rc5 (2024-05-11) 
v2.6.0.rc4 (2024-05-11) 
v2.6.0.rc3 (2024-05-11) 
v2.6.0.rc2 (2024-05-10) 
v2.6.0.rc1 (2024-05-10) 
v2.5.2 (2024-05-02) 
Fixed:
v2.5.1 (2024-05-01) 
Fixed:
v2.5.0 (2024-04-30) 
Breaking changes:
Implemented enhancements:
- Add 
durationformat for dynamic optionformat#207 (afuno) - Delete 
prepare_vs_mustconflict handling #206 (afuno) - Add 
uuidformat for dynamic optionformat#205 (afuno) - Add configuration option for predicate methods #204 (afuno)
 - Delete 
prepare_vs_collectionconflict handling #203 (afuno) - Add 
result_classconfiguration #202 (afuno) - Add generators #201 (afuno)
 - Add helpers and matchers for RSpec #197 (afuno)
 - Add 
fail_on!method to catch unexpected service exceptions #196 (afuno) 
Fixed:
Dependencies:
v2.5.0.rc7 (2024-04-28) 
v2.5.0.rc6 (2024-04-24) 
v2.5.0.rc5 (2024-04-24) 
v2.5.0.rc4 (2024-04-24) 
v2.5.0.rc3 (2024-04-23) 
2.5.0.rc2 (2024-04-21) 
v2.5.0.rc1 (2024-04-21) 
v2.4.3 (2024-03-29) 
Implemented enhancements:
v2.4.2 (2024-03-29) 
Implemented enhancements:
v2.4.1 (2024-03-26) 
Fixed:
v2.4.0 (2024-03-26) 
Implemented enhancements:
- Improve name of Result class by adding name of service class #192 (afuno)
 - Add 
booleanformat for dynamic optionformat#189 (afuno) - Add ability to customize formats in dynamic option 
format#188 (afuno) - Rename 
setupmethod tousefor dynamic options #187 (afuno) - Add 
datetimeformat for dynamic optionformat#186 (afuno) - Simplify 
dateformat for dynamic optionformat#185 (afuno) - Add 
timeformat for dynamic optionformat#184 (afuno) - Add 
passwordformat for dynamic optionformat#183 (afuno) - Add 
emailformat for dynamic optionformat#182 (afuno) - Add dynamic option 
formatwith first format fordate#181 (afuno) - Add translations for dynamic options #179 (afuno)
 - Improve collections and 
consists_ofoption #178 (afuno) - Improve handling of 
input,internalandoutputin their options #176 (afuno) - Implement dynamic options #175 (afuno)
 - Implement new approach to storing service data #174 (afuno)
 - Add support for 
metaoption forfail_input!,fail_internal!andfail_output!methods #173 (afuno) 
Fixed:
Dependencies:
v2.3.1 (2024-03-22) 
v2.3.0 (2024-03-06) 
Breaking changes:
v2.2.3 (2024-03-05) 
Fixed:
v2.2.2 (2024-03-01) 
Fixed:
- Delete previously added exceptions for 
NoMethodErrorandNameError#172 (afuno) - Simplify error texts for 
NoMethodErrorandNameErrorexceptions #171 (afuno) 
v2.2.1 (2024-02-28) 
Fixed:
v2.2.0 (2024-02-28) 
Implemented enhancements:
- Add example of service behavior when calling 
fail!before assigningoutput#167 (afuno) - Prevent overwriting reserved methods #166 (afuno)
 - Added tests to check async work #165 (afuno)
 - Add 
success!method for early success #162 (afuno) - Add 
outputsattribute foron_success#161 (afuno) - Move error translations to separate place #159 (afuno)
 - Add helper support for 
internalandoutput#158 (afuno) - Add support for 
on_successandon_failuremethods forResult#155 (afuno) - Add support for 
typeoption forfail!method #154 (afuno) - Add support for 
inclusionoption forinternalandoutput#153 (afuno) - Improve examples in tests #152 (afuno)
 - Improve exception handling and exception texts #150 (afuno)
 - Add support for 
mustoption foroutput#149 (afuno) - Add support for 
mustoption forinternal#148 (afuno) - Add support for nested types for 
consists_ofoption #142 (afuno) 
Fixed:
- Added passing 
typeinsidefail_result!#169 (afuno) - Add configs and examples for helper options #168 (afuno)
 
Merged pull requests:
v2.2.0.rc4 (2024-02-27) 
v2.2.0.rc3 (2024-02-24) 
v2.2.0.rc2 (2024-02-19) 
Fixed:
v2.2.0.rc1 (2024-02-19) 
Dependencies:
v2.1.1 (2024-01-10) 
Implemented enhancements:
Dependencies:
v2.1.0 (2023-12-18) 
Implemented enhancements:
- Delete 
valuefrominputin favor of local definition #145 (afuno) - Single validation for all attributes #143 (afuno)
 - Cataloging of examples and tests #140 (afuno)
 - Add 
fail_result!method #139 (afuno) 
Fixed:
Dependencies:
v2.0.4 (2023-12-18) 
v2.0.3 (2023-11-16) 
Implemented enhancements:
v2.0.2 (2023-11-13) 
Implemented enhancements:
Dependencies:
v2.0.1 (2023-11-05) 
Breaking changes:
Implemented enhancements:
Dependencies:
v1.9.7 (2023-11-03) 
v2.0.0.rc6 (2023-10-29) 
v2.0.0.rc5 (2023-10-28) 
v2.0.0.rc4 (2023-10-28) 
Breaking changes:
Implemented enhancements:
- Fix config usage #128 (afuno)
 - Improve structure and naming of Actions #126 (afuno)
 - Implement advanced mode support for hash mode #125 (afuno)
 
Dependencies:
v2.0.0.rc3 (2023-10-19) 
Implemented enhancements:
v2.0.0.rc2 (2023-10-17) 
Implemented enhancements:
v2.0.0.rc1 (2023-10-10) 
Breaking changes:
- Implement new way of working with collections #120 (afuno)
 - Refuse 
requiredoption frominternal#116 (afuno) 
Implemented enhancements:
Dependencies:
v1.9.6 (2023-10-10) 
v1.9.5 (2023-08-19) 
Implemented enhancements:
- Optimize Input when working with 
option_helpers#113 (afuno) - Add 
onlyandexceptsupport forinputs,internalsandoutputs#111 (afuno) - Improve storage method naming #110 (afuno)
 
Dependencies:
v1.9.4 (2023-07-28) 
Implemented enhancements:
v1.9.3 (2023-07-27) 
Implemented enhancements:
Dependencies:
v1.9.2 (2023-07-24) 
Fixed:
v1.9.1 (2023-07-24) 
Fixed:
v1.9.0 (2023-07-20) 
Breaking changes:
v1.8.8 (2023-07-19) 
Implemented enhancements:
Dependencies:
v1.8.7 (2023-07-13) 
Implemented enhancements:
v1.8.6 (2023-07-04) 
Implemented enhancements:
Dependencies:
v1.8.5 (2023-06-29) 
Implemented enhancements:
v1.8.4 (2023-06-29) 
Fixed:
v1.8.3 (2023-06-28) 
Fixed:
v1.8.2 (2023-06-28) 
Implemented enhancements:
Fixed:
Documentation:
v1.8.1 (2023-06-24) 
Implemented enhancements:
- Improve input options #88 (afuno)
 - Improve result #87 (afuno)
 - Improve display of attributes in IDE #86 (afuno)
 
v1.8.0 (2023-06-20) 
Breaking changes:
Implemented enhancements:
Fixed:
Documentation:
v1.7.1 (2023-06-18) 
Implemented enhancements:
v1.7.0 (2023-06-17) 
Breaking changes:
Documentation:
v1.6.14 (2023-06-16) 
Implemented enhancements:
Documentation:
v1.6.13 (2023-06-14) 
Fixed:
v1.6.12 (2023-06-13) 
Fixed:
v1.6.11 (2023-06-13) 
Fixed:
v1.6.10 (2023-06-12) 
Implemented enhancements:
Dependencies:
v1.6.9 (2023-06-11) 
Implemented enhancements:
v1.6.8 (2023-06-10) 
Implemented enhancements:
Documentation:
v1.6.7 (2023-06-10) 
Fixed:
v1.6.6 (2023-06-10) 
Implemented enhancements:
Documentation:
v1.6.5 (2023-06-06) 
Implemented enhancements:
Dependencies:
Documentation:
v1.6.4 (2023-06-03) 
Implemented enhancements:
Documentation:
- Improve examples and texts in documentation #55 (afuno)
 - Add an example with custom message for 
must#53 (afuno) - Add search #52 (afuno)
 - Fix typos in Russian documentation #47 (nikogdanikomu)
 - Improve English documentation #41 (nikogdanikomu)
 
v1.6.3 (2023-05-30) 
Implemented enhancements:
- Improve 
internalbehavior forinput#51 (afuno) - Add use of 
callmethod ifmakewas not used #50 (afuno) - Add 
unlessformake#49 (afuno) - Rename "check" to "validation" #45 (afuno)
 - Rename "check" to "validation" #43 (afuno)
 
Dependencies:
Documentation:
- Add "Advanced mode" examples #48 (afuno)
 - Add Russian version of documentation #46 (afuno)
 - Add Russian version of documentation #44 (afuno)
 - Improve the appearance of documentation #42 (afuno)
 
v1.6.2 (2023-05-27) 
Implemented enhancements:
Documentation:
v1.6.0 (2023-05-24) 
Breaking changes:
- Improve and simplify naming #35 (afuno)
 - Simplify the use of the 
arrayoption #34 (afuno) - Rework error handling #33 (afuno)
 - Add support for the 
metaattribute for thefail!method #31 (afuno) 
Dependencies:
Documentation:
v1.5.2 (2023-05-21) 
Implemented enhancements:
v1.5.1 (2023-05-20) 
Fixed:
v1.5.0 (2023-05-20) 
Breaking changes:
Implemented enhancements:
Dependencies:
v1.4.7 (2023-05-19) 
Implemented enhancements:
v1.4.6 (2023-05-16) 
Implemented enhancements:
v1.4.5 (2023-05-15) 
Implemented enhancements:
- Improve syntax for 
define_input_conflicts#23 (afuno) - Improve syntax for 
define_input_methods#22 (afuno) - Uniform style for adding an element to 
Set#21 (afuno) - Add 
callmethod and statuses to the result #18 (afuno) 
Dependencies:
v1.4.4 (2023-05-15) 
Implemented enhancements:
- Add 
asoption to override internal input name #19 (afuno) - Use 
Setinstead ofArray#17 (afuno) - Make the 
newmethod private #16 (afuno) 
v1.4.3 (2023-05-12) 
Implemented enhancements:
v1.4.2 (2023-05-08) 
Implemented enhancements:
v1.4.1 (2023-05-07) 
Implemented enhancements:
Dependencies:
v1.4.0 (2023-05-07) 
Implemented enhancements:
- Add support for collections of input argument options and add the basis for an "advanced mode" #9 (afuno)
 
Documentation:
v1.3.0 (2023-05-06) 
Implemented enhancements:
Documentation:
Merged pull requests:
v1.2.0 (2023-05-05) 
Implemented enhancements:
- Add support for Ruby 2.7 #5 (afuno)
 - Add support for Ruby 3.0 #4 (afuno)
 - Add support for Ruby 3.1 and update error text in 
must#3 (afuno) 
v1.1.0 (2023-05-05) 
Implemented enhancements:
v1.0.2 (2023-05-05) 
v1.0.1 (2023-05-05) 
v1.0.0 (2023-05-05) 
Implemented enhancements:
* This Changelog was automatically generated by github_changelog_generator