├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug-report.md │ └── config.yml ├── SUPPORT.md └── workflows │ ├── ci.yml │ └── rubocop.yml ├── .gitignore ├── .rspec ├── .rubocop.yml ├── .yardopts ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Gemfile ├── Gemfile.devtools ├── LICENSE ├── README.md ├── Rakefile ├── bin ├── .gitkeep └── console ├── docsite └── source │ ├── around-steps.html.md │ ├── basic-usage.html.md │ ├── custom-step-adapters.html.md │ ├── index.html.md │ ├── injecting-operations.html.md │ ├── step-adapters.html.md │ ├── step-notifications.html.md │ └── wrapping-operations.html.md ├── dry-transaction.gemspec ├── lib ├── dry-transaction.rb └── dry │ ├── transaction.rb │ └── transaction │ ├── builder.rb │ ├── callable.rb │ ├── dsl.rb │ ├── errors.rb │ ├── instance_methods.rb │ ├── operation.rb │ ├── operation_resolver.rb │ ├── result_matcher.rb │ ├── stack.rb │ ├── step.rb │ ├── step_adapter.rb │ ├── step_adapters.rb │ ├── step_adapters │ ├── around.rb │ ├── check.rb │ ├── map.rb │ ├── raw.rb │ ├── tee.rb │ └── try.rb │ ├── step_failure.rb │ └── version.rb ├── repo-sync.yml └── spec ├── integration ├── around_spec.rb ├── custom_step_adapters_spec.rb ├── operation_spec.rb ├── passing_step_arguments_spec.rb ├── publishing_step_events_spec.rb ├── transaction_spec.rb └── transaction_without_steps_spec.rb ├── spec_helper.rb ├── support ├── container.rb ├── coverage.rb ├── database.rb ├── db_transactions.rb ├── result_mixin.rb ├── rspec.rb ├── test_module_constants.rb └── warnings.rb └── unit ├── step_adapters ├── around_spec.rb ├── check_spec.rb ├── map_spec.rb ├── raw_spec.rb ├── tee_spec.rb └── try_spec.rb └── step_spec.rb /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: hanami 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug-report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.github/ISSUE_TEMPLATE/bug-report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.github/ISSUE_TEMPLATE/config.yml -------------------------------------------------------------------------------- /.github/SUPPORT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.github/SUPPORT.md -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/rubocop.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.github/workflows/rubocop.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.gitignore -------------------------------------------------------------------------------- /.rspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.rspec -------------------------------------------------------------------------------- /.rubocop.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.rubocop.yml -------------------------------------------------------------------------------- /.yardopts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/.yardopts -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/Gemfile -------------------------------------------------------------------------------- /Gemfile.devtools: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/Gemfile.devtools -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/README.md -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/Rakefile -------------------------------------------------------------------------------- /bin/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bin/console: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/bin/console -------------------------------------------------------------------------------- /docsite/source/around-steps.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/around-steps.html.md -------------------------------------------------------------------------------- /docsite/source/basic-usage.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/basic-usage.html.md -------------------------------------------------------------------------------- /docsite/source/custom-step-adapters.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/custom-step-adapters.html.md -------------------------------------------------------------------------------- /docsite/source/index.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/index.html.md -------------------------------------------------------------------------------- /docsite/source/injecting-operations.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/injecting-operations.html.md -------------------------------------------------------------------------------- /docsite/source/step-adapters.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/step-adapters.html.md -------------------------------------------------------------------------------- /docsite/source/step-notifications.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/step-notifications.html.md -------------------------------------------------------------------------------- /docsite/source/wrapping-operations.html.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/docsite/source/wrapping-operations.html.md -------------------------------------------------------------------------------- /dry-transaction.gemspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/dry-transaction.gemspec -------------------------------------------------------------------------------- /lib/dry-transaction.rb: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | 3 | require "dry/transaction" 4 | -------------------------------------------------------------------------------- /lib/dry/transaction.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction.rb -------------------------------------------------------------------------------- /lib/dry/transaction/builder.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/builder.rb -------------------------------------------------------------------------------- /lib/dry/transaction/callable.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/callable.rb -------------------------------------------------------------------------------- /lib/dry/transaction/dsl.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/dsl.rb -------------------------------------------------------------------------------- /lib/dry/transaction/errors.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/errors.rb -------------------------------------------------------------------------------- /lib/dry/transaction/instance_methods.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/instance_methods.rb -------------------------------------------------------------------------------- /lib/dry/transaction/operation.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/operation.rb -------------------------------------------------------------------------------- /lib/dry/transaction/operation_resolver.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/operation_resolver.rb -------------------------------------------------------------------------------- /lib/dry/transaction/result_matcher.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/result_matcher.rb -------------------------------------------------------------------------------- /lib/dry/transaction/stack.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/stack.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapter.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapter.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapters.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapters.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapters/around.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapters/around.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapters/check.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapters/check.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapters/map.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapters/map.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapters/raw.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapters/raw.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapters/tee.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapters/tee.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_adapters/try.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_adapters/try.rb -------------------------------------------------------------------------------- /lib/dry/transaction/step_failure.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/step_failure.rb -------------------------------------------------------------------------------- /lib/dry/transaction/version.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/lib/dry/transaction/version.rb -------------------------------------------------------------------------------- /repo-sync.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/repo-sync.yml -------------------------------------------------------------------------------- /spec/integration/around_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/integration/around_spec.rb -------------------------------------------------------------------------------- /spec/integration/custom_step_adapters_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/integration/custom_step_adapters_spec.rb -------------------------------------------------------------------------------- /spec/integration/operation_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/integration/operation_spec.rb -------------------------------------------------------------------------------- /spec/integration/passing_step_arguments_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/integration/passing_step_arguments_spec.rb -------------------------------------------------------------------------------- /spec/integration/publishing_step_events_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/integration/publishing_step_events_spec.rb -------------------------------------------------------------------------------- /spec/integration/transaction_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/integration/transaction_spec.rb -------------------------------------------------------------------------------- /spec/integration/transaction_without_steps_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/integration/transaction_without_steps_spec.rb -------------------------------------------------------------------------------- /spec/spec_helper.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/spec_helper.rb -------------------------------------------------------------------------------- /spec/support/container.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/container.rb -------------------------------------------------------------------------------- /spec/support/coverage.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/coverage.rb -------------------------------------------------------------------------------- /spec/support/database.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/database.rb -------------------------------------------------------------------------------- /spec/support/db_transactions.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/db_transactions.rb -------------------------------------------------------------------------------- /spec/support/result_mixin.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/result_mixin.rb -------------------------------------------------------------------------------- /spec/support/rspec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/rspec.rb -------------------------------------------------------------------------------- /spec/support/test_module_constants.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/test_module_constants.rb -------------------------------------------------------------------------------- /spec/support/warnings.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/support/warnings.rb -------------------------------------------------------------------------------- /spec/unit/step_adapters/around_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/unit/step_adapters/around_spec.rb -------------------------------------------------------------------------------- /spec/unit/step_adapters/check_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/unit/step_adapters/check_spec.rb -------------------------------------------------------------------------------- /spec/unit/step_adapters/map_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/unit/step_adapters/map_spec.rb -------------------------------------------------------------------------------- /spec/unit/step_adapters/raw_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/unit/step_adapters/raw_spec.rb -------------------------------------------------------------------------------- /spec/unit/step_adapters/tee_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/unit/step_adapters/tee_spec.rb -------------------------------------------------------------------------------- /spec/unit/step_adapters/try_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/unit/step_adapters/try_spec.rb -------------------------------------------------------------------------------- /spec/unit/step_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dry-rb/dry-transaction/HEAD/spec/unit/step_spec.rb --------------------------------------------------------------------------------