solidusio / solidusio/solidus

Prevent creation of customer returns when the order has no shipped inventory units

Open
#3,800 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

changelog:solidus_backend changelog:solidus_core
Dominant language
Ruby
Stars
5.3k
Forks
1.4k
Avg merge
1d 22h
Merged PRs (30d)
62

Description

Edit

Read to the bottom of the comments to see what the actual issue is. Rather than fixing the error described originally, we want to just prevent customer returns when there are no shipped inventory units.

I was creating a customer return for a received order.
After I click on Create button I get the exception in the title (Server Error 500).

Solidus Version:
v2.10.2

To Reproduce
Go to the admin url: admin/orders/[order_id]/customer_returns/new
Select the product, select the "Reception status" (Received), the Reason (Damaged/Defective) and the Stock Location (default).
Click on Create button.

Current behavior
I get the following exception:

"StateMachines::InvalidTransition in Spree::Admin::CustomerReturnsController#create"
Cannot transition state via :return from :on_hand (Reason(s): State cannot transition via "return")

Expected behavior
The customer return should be created.

Desktop:

  • OS: Ubuntu 18.04
  • Browser Firefox
  • Version 81.0

Full stacktrace:

Cannot transition state via :return from :on_hand (Reason(s): State cannot transition via "return")
Extracted source (around line #224):
     # Fires the event, raising an exception if it fails
      machine.define_helper(:instance, "#{qualified_name}!") do |machine, object, *args|
        object.send(qualified_name, *args) || raise(StateMachines::InvalidTransition.new(object, machine, name))
      end
    end
  end

state_machines (0.5.0) lib/state_machines/event.rb:224:in `block in add_actions'
state_machines (0.5.0) lib/state_machines/machine.rb:729:in `block (2 levels) in define_helper'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/solidus-d9e67caf13b6/core/app/models/spree/return_item.rb:198:in `process_inventory_unit!'
state_machines (0.5.0) lib/state_machines/eval_helpers.rb:58:in `evaluate_method'
state_machines (0.5.0) lib/state_machines/callback.rb:192:in `block in run_methods'
state_machines (0.5.0) lib/state_machines/callback.rb:191:in `each'
state_machines (0.5.0) lib/state_machines/callback.rb:191:in `run_methods'
state_machines (0.5.0) lib/state_machines/callback.rb:159:in `call'
state_machines (0.5.0) lib/state_machines/transition.rb:394:in `block (2 levels) in after'
state_machines (0.5.0) lib/state_machines/transition.rb:394:in `each'
state_machines (0.5.0) lib/state_machines/transition.rb:394:in `block in after'
state_machines (0.5.0) lib/state_machines/transition.rb:392:in `catch'
state_machines (0.5.0) lib/state_machines/transition.rb:392:in `after'
state_machines (0.5.0) lib/state_machines/transition.rb:195:in `run_callbacks'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:127:in `run_callbacks'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:212:in `run_callbacks'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:63:in `block (2 levels) in perform'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:63:in `catch'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:63:in `block in perform'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:182:in `block in within_transaction'
state_machines (0.5.0) lib/state_machines/transition.rb:171:in `block in within_transaction'
state_machines (0.5.0) lib/state_machines/machine.rb:1868:in `block in within_transaction'
state_machines-activerecord (0.6.0) lib/state_machines/integrations/active_record.rb:557:in `block in transaction'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:257:in `transaction'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:212:in `transaction'
state_machines-activerecord (0.6.0) lib/state_machines/integrations/active_record.rb:556:in `transaction'
state_machines (0.5.0) lib/state_machines/machine.rb:1868:in `within_transaction'
state_machines (0.5.0) lib/state_machines/transition.rb:170:in `within_transaction'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:181:in `within_transaction'
state_machines (0.5.0) lib/state_machines/transition_collection.rb:62:in `perform'
state_machines-activerecord (0.6.0) lib/state_machines/integrations/active_record.rb:530:in `around_save'
state_machines-activerecord (0.6.0) lib/state_machines/integrations/active_record.rb:511:in `save'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/associations/collection_association.rb:379:in `insert_record'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/associations/has_many_association.rb:36:in `insert_record'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/autosave_association.rb:402:in `block in save_collection_association'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/autosave_association.rb:395:in `each'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/autosave_association.rb:395:in `save_collection_association'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/autosave_association.rb:187:in `block in add_autosave_association_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/autosave_association.rb:159:in `instance_eval'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/autosave_association.rb:159:in `block in define_non_cyclic_method'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:426:in `block in make_lambda'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:236:in `block in halting_and_conditional'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:517:in `block in invoke_after'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:517:in `each'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:517:in `invoke_after'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:133:in `run_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:816:in `_run_create_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/callbacks.rb:346:in `_create_record'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/timestamp.rb:102:in `_create_record'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/persistence.rb:703:in `create_or_update'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/callbacks.rb:342:in `block in create_or_update'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:132:in `run_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:816:in `_run_save_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/callbacks.rb:342:in `create_or_update'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/persistence.rb:273:in `save'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/validations.rb:46:in `save'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:310:in `block (2 levels) in save'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:387:in `block in with_transaction_returning_status'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:259:in `block in transaction'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb:239:in `block in within_new_transaction'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb:236:in `synchronize'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/connection_adapters/abstract/transaction.rb:236:in `within_new_transaction'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:259:in `transaction'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:212:in `transaction'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:385:in `with_transaction_returning_status'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:310:in `block in save'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:325:in `rollback_active_record_state!'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/transactions.rb:309:in `save'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/suppressor.rb:44:in `save'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/solidus-d9e67caf13b6/backend/app/controllers/spree/admin/resource_controller.rb:57:in `create'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/abstract_controller/base.rb:194:in `process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal/rendering.rb:30:in `process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/abstract_controller/callbacks.rb:42:in `block in process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:109:in `block in run_callbacks'
react-rails (2.6.1) lib/react/rails/controller_lifecycle.rb:31:in `use_react_component_helper'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:118:in `block in run_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:136:in `run_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/abstract_controller/callbacks.rb:41:in `process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal/rescue.rb:22:in `process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal/instrumentation.rb:34:in `block in process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/notifications.rb:168:in `block in instrument'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/notifications.rb:168:in `instrument'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal/instrumentation.rb:32:in `process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal/params_wrapper.rb:256:in `process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/railties/controller_runtime.rb:24:in `process_action'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/abstract_controller/base.rb:134:in `process'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionview/lib/action_view/rendering.rb:32:in `process'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal.rb:191:in `dispatch'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_controller/metal.rb:252:in `dispatch'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/routing/route_set.rb:52:in `dispatch'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/routing/route_set.rb:34:in `serve'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/journey/router.rb:52:in `block in serve'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/journey/router.rb:35:in `each'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/journey/router.rb:35:in `serve'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/routing/route_set.rb:840:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/railties/lib/rails/engine.rb:524:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/railties/lib/rails/railtie.rb:190:in `public_send'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/railties/lib/rails/railtie.rb:190:in `method_missing'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/routing/mapper.rb:19:in `block in <class:Constraints>'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/routing/mapper.rb:48:in `serve'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/journey/router.rb:52:in `block in serve'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/journey/router.rb:35:in `each'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/journey/router.rb:35:in `serve'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/routing/route_set.rb:840:in `call'
omniauth (1.9.1) lib/omniauth/strategy.rb:192:in `call!'
omniauth (1.9.1) lib/omniauth/strategy.rb:169:in `call'
bullet (6.1.0) lib/bullet/rack.rb:12:in `call'
http_accept_language (2.1.1) lib/http_accept_language/middleware.rb:14:in `call'
omniauth (1.9.1) lib/omniauth/strategy.rb:192:in `call!'
omniauth (1.9.1) lib/omniauth/strategy.rb:169:in `call'
omniauth (1.9.1) lib/omniauth/strategy.rb:192:in `call!'
omniauth (1.9.1) lib/omniauth/strategy.rb:169:in `call'
omniauth (1.9.1) lib/omniauth/strategy.rb:192:in `call!'
omniauth (1.9.1) lib/omniauth/strategy.rb:169:in `call'
omniauth (1.9.1) lib/omniauth/strategy.rb:192:in `call!'
omniauth (1.9.1) lib/omniauth/strategy.rb:169:in `call'
omniauth (1.9.1) lib/omniauth/strategy.rb:192:in `call!'
omniauth (1.9.1) lib/omniauth/strategy.rb:169:in `call'
omniauth (1.9.1) lib/omniauth/builder.rb:45:in `call'
dragonfly (1.2.0) lib/dragonfly/middleware.rb:14:in `call'
dragonfly (1.2.0) lib/dragonfly/middleware.rb:14:in `call'
rack-attack (5.4.2) lib/rack/attack.rb:175:in `call'
warden (1.2.8) lib/warden/manager.rb:36:in `block in call'
warden (1.2.8) lib/warden/manager.rb:34:in `catch'
warden (1.2.8) lib/warden/manager.rb:34:in `call'
rack (2.2.3) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.3) lib/rack/etag.rb:27:in `call'
rack (2.2.3) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.3) lib/rack/head.rb:12:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/http/content_security_policy.rb:18:in `call'
rack (2.2.3) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.3) lib/rack/session/abstract/id.rb:260:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/cookies.rb:670:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activerecord/lib/active_record/migration.rb:559:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/callbacks.rb:98:in `run_callbacks'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/callbacks.rb:26:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/executor.rb:14:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/debug_exceptions.rb:61:in `call'
web-console (3.7.0) lib/web_console/middleware.rb:135:in `call_app'
web-console (3.7.0) lib/web_console/middleware.rb:30:in `block in call'
web-console (3.7.0) lib/web_console/middleware.rb:20:in `catch'
web-console (3.7.0) lib/web_console/middleware.rb:20:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/railties/lib/rails/rack/logger.rb:38:in `call_app'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/railties/lib/rails/rack/logger.rb:26:in `block in call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/tagged_logging.rb:71:in `block in tagged'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/tagged_logging.rb:28:in `tagged'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/tagged_logging.rb:71:in `tagged'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/railties/lib/rails/rack/logger.rb:26:in `call'
sprockets-rails (3.2.2) lib/sprockets/rails/quiet_assets.rb:13:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
request_store (1.5.0) lib/request_store/middleware.rb:19:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/request_id.rb:27:in `call'
rack (2.2.3) lib/rack/method_override.rb:24:in `call'
rack (2.2.3) lib/rack/runtime.rb:22:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/activesupport/lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call'
dragonfly (1.2.0) lib/dragonfly/cookie_monster.rb:9:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/executor.rb:14:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/actionpack/lib/action_dispatch/middleware/static.rb:127:in `call'
rack (2.2.3) lib/rack/sendfile.rb:110:in `call'
rack-cors (1.1.1) lib/rack/cors.rb:100:in `call'
webpacker (5.0.1) lib/webpacker/dev_server_proxy.rb:23:in `perform_request'
rack-proxy (0.6.5) lib/rack/proxy.rb:57:in `call'
/home/antonio/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/bundler/gems/rails-112a603050ff/railties/lib/rails/engine.rb:524:in `call'
passenger (6.0.4) src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb:97:in `process_request'
passenger (6.0.4) src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb:157:in `accept_and_process_next_request'
passenger (6.0.4) src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb:110:in `main_loop'
passenger (6.0.4) src/ruby_supportlib/phusion_passenger/request_handler.rb:415:in `block (3 levels) in start_threads'
passenger (6.0.4) src/ruby_supportlib/phusion_passenger/utils.rb:113:in `block in create_thread_and_abort_on_exception'

Gemfile.lock

GIT
  remote: https://github.com/7even/zodiac.git
  revision: a3200f06a787dca75811bccafbde3424d5e3654e
  specs:
    zodiac (0.2.10)
      funtimes
      i18n

GIT
  remote: https://github.com/adnotam/rails.git
  revision: 112a603050fff97fdc1a439df0d22e09245a0b61
  branch: fix_wicegrid_issue60
  specs:
    actioncable (5.2.2)
      actionpack (= 5.2.2)
      nio4r (~> 2.0)
      websocket-driver (>= 0.6.1)
    actionmailer (5.2.2)
      actionpack (= 5.2.2)
      actionview (= 5.2.2)
      activejob (= 5.2.2)
      mail (~> 2.5, >= 2.5.4)
      rails-dom-testing (~> 2.0)
    actionpack (5.2.2)
      actionview (= 5.2.2)
      activesupport (= 5.2.2)
      rack (~> 2.0)
      rack-test (>= 0.6.3)
      rails-dom-testing (~> 2.0)
      rails-html-sanitizer (~> 1.0, >= 1.0.2)
    actionview (5.2.2)
      activesupport (= 5.2.2)
      builder (~> 3.1)
      erubi (~> 1.4)
      rails-dom-testing (~> 2.0)
      rails-html-sanitizer (~> 1.0, >= 1.0.3)
    activejob (5.2.2)
      activesupport (= 5.2.2)
      globalid (>= 0.3.6)
    activemodel (5.2.2)
      activesupport (= 5.2.2)
    activerecord (5.2.2)
      activemodel (= 5.2.2)
      activesupport (= 5.2.2)
      arel (>= 9.0)
    activestorage (5.2.2)
      actionpack (= 5.2.2)
      activerecord (= 5.2.2)
      marcel (~> 0.3.1)
    activesupport (5.2.2)
      concurrent-ruby (~> 1.0, >= 1.0.2)
      i18n (>= 0.7, < 2)
      minitest (~> 5.1)
      tzinfo (~> 1.1)
    rails (5.2.2)
      actioncable (= 5.2.2)
      actionmailer (= 5.2.2)
      actionpack (= 5.2.2)
      actionview (= 5.2.2)
      activejob (= 5.2.2)
      activemodel (= 5.2.2)
      activerecord (= 5.2.2)
      activestorage (= 5.2.2)
      activesupport (= 5.2.2)
      bundler (>= 1.3.0)
      railties (= 5.2.2)
      sprockets-rails (>= 2.0.0)
    railties (5.2.2)
      actionpack (= 5.2.2)
      activesupport (= 5.2.2)
      method_source
      rake (>= 0.8.7)
      thor (>= 0.19.0, < 2.0)

GIT
  remote: https://github.com/adnotam/solidus.git
  revision: d9e67caf13b63592bd1e0759a6dd170ddb4c7709
  branch: custom
  specs:
    solidus (2.10.2)
      solidus_api (= 2.10.2)
      solidus_backend (= 2.10.2)
      solidus_core (= 2.10.2)
      solidus_frontend (= 2.10.2)
      solidus_sample (= 2.10.2)
    solidus_api (2.10.2)
      jbuilder (~> 2.8)
      kaminari-activerecord (~> 1.1)
      responders
      solidus_core (= 2.10.2)
    solidus_backend (2.10.2)
      autoprefixer-rails
      coffee-rails
      font-awesome-rails (~> 4.0)
      handlebars_assets (~> 0.23)
      jbuilder (~> 2.8)
      jquery-rails
      kaminari (~> 1.1)
      responders
      sassc-rails
      solidus_api (= 2.10.2)
      solidus_core (= 2.10.2)
    solidus_core (2.10.2)
      actionmailer (>= 5.1, < 7.0.x)
      actionpack (>= 5.1, < 7.0.x)
      actionview (>= 5.1, < 7.0.x)
      activejob (>= 5.1, < 7.0.x)
      activemerchant (~> 1.66)
      activemodel (>= 5.1, < 7.0.x)
      activerecord (>= 5.1, < 7.0.x)
      activesupport (>= 5.1, < 7.0.x)
      acts_as_list (~> 0.3)
      awesome_nested_set (~> 3.2)
      cancancan (>= 2.2, < 4.0)
      carmen (~> 1.1.0)
      discard (~> 1.0)
      friendly_id (~> 5.0)
      kaminari-activerecord (~> 1.1)
      monetize (~> 1.8)
      paperclip (>= 4.2)
      paranoia (~> 2.4)
      railties (>= 5.1, < 7.0.x)
      ransack (~> 2.0)
      state_machines-activerecord (~> 0.6)
    solidus_frontend (2.10.2)
      canonical-rails (~> 0.2.0)
      font-awesome-rails (~> 4.0)
      jquery-rails
      kaminari (~> 1.1)
      responders
      sassc-rails
      solidus_api (= 2.10.2)
      solidus_core (= 2.10.2)
      truncate_html (~> 0.9, >= 0.9.2)
    solidus_sample (2.10.2)
      solidus_core (= 2.10.2)

GIT
  remote: https://github.com/adnotam/solidus_multi_domain.git
  revision: 3bdc0826862771c7d67b524311c2c90f7a7e6316
  branch: custom
  specs:
    solidus_multi_domain (2.0.0.alpha)
      deface (~> 1.0)
      solidus (>= 1.1, < 3)
      solidus_support

GIT
  remote: https://github.com/adnotam/solidus_paypal_braintree.git
  revision: fb87bec97942496280c5cc4a1c237464ecddf0bc
  branch: custom
  specs:
    solidus_paypal_braintree (0.2.0)
      activemerchant (~> 1.48)
      braintree (~> 2.65)
      solidus (>= 1.0, < 3)
      solidus_support (>= 0.1.3)

GIT
  remote: https://github.com/adnotam/solidus_paypal_express.git
  revision: ebf93dd07765f07f905cd97e584e8acb9d55726a
  specs:
    solidus_paypal_express (2.0.0)
      paypal-sdk-merchant (= 1.117.2)
      solidus_core (>= 1.0, < 3)

GIT
  remote: https://github.com/adnotam/solidus_print_invoice.git
  revision: 161c1eef9820c81380968168fbfa9ff5e1a5d8ea
  branch: custom
  specs:
    solidus_print_invoice (1.0.2)
      deface
      prawn (= 1.0.0)
      solidus (>= 1.0, < 3)
      solidus_support

GIT
  remote: https://github.com/boomerdigital/solidus_user_roles.git
  revision: a31f01f87cd92dc3671e990a97c8fb4a6f039465
  ref: a31f01f87cd92dc3671e990a97c8fb4a6f039465
  specs:
    solidus_user_roles (1.2.1)
      solidus_core (>= 1.0.0, < 3)
      solidus_support

GIT
  remote: https://github.com/solidusio-contrib/solidus_editor.git
  revision: 7c92a1d43c4d839fe830aa32f7ad96e034175cdf
  ref: 7c92a1d43c4d839fe830aa32f7ad96e034175cdf
  specs:
    solidus_editor (1.0.0)
      ckeditor (~> 4.1)
      deface (>= 1.0.2, < 2)
      solidus_backend (>= 1.0, < 3)
      tinymce-rails (~> 4.2)

GEM
  remote: https://rubygems.org/
  specs:
    active_model_serializers (0.10.10)
      actionpack (>= 4.1, < 6.1)
      activemodel (>= 4.1, < 6.1)
      case_transform (>= 0.2)
      jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
    active_record_enumerated_type (0.0.5)
      activesupport
      enumerated_type
      i18n
    activemerchant (1.114.0)
      activesupport (>= 4.2)
      builder (>= 2.1.2, < 4.0.0)
      i18n (>= 0.6.9)
      nokogiri (~> 1.4)
    activemodel-serializers-xml (1.0.2)
      activemodel (> 5.x)
      activesupport (> 5.x)
      builder (~> 3.1)
    activerecord-nulldb-adapter (0.4.0)
      activerecord (>= 2.0.0)
    activeresource (5.1.1)
      activemodel (>= 5.0, < 7)
      activemodel-serializers-xml (~> 1.0)
      activesupport (>= 5.0, < 7)
    acts_as_list (0.9.19)
      activerecord (>= 3.0)
    addressable (2.7.0)
      public_suffix (>= 2.0.2, < 5.0)
    alchemy-richmedia-essences (2.2.0)
      alchemy_cms (>= 4.0.0.rc1)
    alchemy-solidus (3.0.2)
      alchemy_cms (>= 4.1.0, < 5.0)
      deface (~> 1.0)
      solidus_backend (>= 2.6.0, < 3.0)
      solidus_core (>= 2.6.0, < 3.0)
      solidus_support (>= 0.1.1)
    alchemy_cms (4.5.0)
      active_model_serializers (~> 0.10.0)
      acts_as_list (>= 0.3, < 2)
      awesome_nested_set (~> 3.1)
      cancancan (>= 2.1, < 4.0)
      coffee-rails (~> 4.0, < 5.0)
      dragonfly (~> 1.0, >= 1.0.7)
      dragonfly_svg (~> 0.0.4)
      gutentag (~> 2.2, >= 2.2.1)
      handlebars_assets (~> 0.23)
      jquery-rails (~> 4.0, >= 4.0.4)
      jquery-ui-rails (~> 6.0)
      kaminari (~> 1.1)
      non-stupid-digest-assets (~> 1.0.8)
      originator (~> 3.1)
      rails (>= 5.0.0, < 6.1)
      ransack (>= 1.8, < 3.0)
      request_store (~> 1.2)
      responders (>= 2.0, < 4.0)
      sassc-rails (~> 2.1)
      select2-rails (>= 3.5.9.1, < 4.0)
      simple_form (>= 4.0, < 6)
      sprockets (>= 3.0, < 5)
      turbolinks (>= 2.5)
    alchemy_i18n (2.0.0)
      alchemy_cms (>= 4.4.0.a, < 5.0)
      rails-i18n
    amazon-ecs (2.6.0)
      nokogiri (~> 1.10)
    api_cache (0.3.0)
    arel (9.0.0)
    ast (2.4.1)
    autoprefixer-rails (10.0.1.0)
      execjs
    awesome_nested_set (3.2.1)
      activerecord (>= 4.0.0, < 7.0)
    babel-source (5.8.35)
    babel-transpiler (0.7.0)
      babel-source (>= 4.0, < 6)
      execjs (~> 2.0)
    bcrypt (3.1.13)
    better_html (1.0.15)
      actionview (>= 4.0)
      activesupport (>= 4.0)
      ast (~> 2.0)
      erubi (~> 1.4)
      html_tokenizer (~> 0.0.6)
      parser (>= 2.4)
      smart_properties
    bindex (0.8.1)
    binding_of_caller (0.8.0)
      debug_inspector (>= 0.0.1)
    braintree (2.102.0)
      builder (>= 2.0.0)
    brakeman (4.9.0)
    builder (3.2.4)
    bullet (6.1.0)
      activesupport (>= 3.0.0)
      uniform_notifier (~> 1.11)
    byebug (11.1.3)
    cancancan (3.0.0)
    canonical-rails (0.2.9)
      rails (>= 4.1, < 6.1)
    capybara (3.32.2)
      addressable
      mini_mime (>= 0.1.3)
      nokogiri (~> 1.8)
      rack (>= 1.6.0)
      rack-test (>= 0.6.3)
      regexp_parser (~> 1.5)
      xpath (~> 3.2)
    capybara-screenshot (1.0.24)
      capybara (>= 1.0, < 4)
      launchy
    carmen (1.1.3)
      activesupport (>= 3.0.0)
    carrierwave (2.1.0)
      activemodel (>= 5.0.0)
      activesupport (>= 5.0.0)
      addressable (~> 2.6)
      image_processing (~> 1.1)
      mimemagic (>= 0.3.0)
      mini_mime (>= 0.1.3)
    case_transform (0.2)
      activesupport
    chartkick (3.3.1)
    childprocess (3.0.0)
    ckeditor (4.2.4)
      cocaine
      orm_adapter (~> 0.5.0)
    climate_control (0.2.0)
    cocaine (0.6.0)
      terrapin (= 0.6.0)
    coderay (1.1.3)
    coffee-rails (4.2.2)
      coffee-script (>= 2.2.0)
      railties (>= 4.0.0)
    coffee-script (2.4.1)
      coffee-script-source
      execjs
    coffee-script-source (1.12.2)
    commonmarker (0.21.0)
      ruby-enum (~> 0.5)
    concurrent-ruby (1.1.7)
    connection_pool (2.2.3)
    countries (3.0.1)
      i18n_data (~> 0.10.0)
      sixarm_ruby_unaccent (~> 1.1)
      unicode_utils (~> 1.4)
    country_select (4.0.0)
      countries (~> 3.0)
      sort_alphabetical (~> 1.0)
    crack (0.4.3)
      safe_yaml (~> 1.0.0)
    crass (1.0.6)
    css_parser (1.7.1)
      addressable
    dalli (2.7.10)
    debug_inspector (0.0.3)
    declarative (0.0.20)
    declarative-option (0.1.0)
    deface (1.5.3)
      nokogiri (>= 1.6)
      polyglot
      rails (>= 4.1)
      rainbow (>= 2.1.0)
    devise (4.7.2)
      bcrypt (~> 3.0)
      orm_adapter (~> 0.1)
      railties (>= 4.1.0)
      responders
      warden (~> 1.2.3)
    devise-i18n (1.9.1)
      devise (>= 4.7.1)
    diff-lcs (1.4.2)
    discard (1.2.0)
      activerecord (>= 4.2, < 7)
    docile (1.3.2)
    doorkeeper (5.3.3)
      railties (>= 5)
    doorkeeper-i18n (5.2.2)
      doorkeeper (>= 5.2)
    doorkeeper-jwt (0.4.0)
      jwt (~> 2.1)
    dragonfly (1.2.0)
      addressable (~> 2.3)
      multi_json (~> 1.0)
      rack (>= 1.3)
    dragonfly_svg (0.0.4)
      dragonfly (~> 1.0)
      nokogiri
    enum_help (0.0.17)
      activesupport (>= 3.0.0)
    enumerated_type (0.5.0)
    erb_lint (0.0.34)
      activesupport
      better_html (~> 1.0.7)
      html_tokenizer
      rainbow
      rubocop (~> 0.79)
      smart_properties
    erubi (1.9.0)
    et-orbi (1.2.4)
      tzinfo
    execjs (2.7.0)
    factory_bot (5.2.0)
      activesupport (>= 4.2.0)
    factory_bot_rails (5.2.0)
      factory_bot (~> 5.2.0)
      railties (>= 4.2.0)
    faker (2.11.0)
      i18n (>= 1.6, < 2)
    faraday (1.0.1)
      multipart-post (>= 1.2, < 3)
    feedjira (3.1.1)
      loofah (>= 2.3.1)
      sax-machine (>= 1.0)
    ffi (1.13.1)
    font-awesome-rails (4.7.0.5)
      railties (>= 3.2, < 6.1)
    foundation_emails (2.2.1.0)
    friendly_id (5.4.0)
      activerecord (>= 4.0.0)
    fugit (1.3.6)
      et-orbi (~> 1.1, >= 1.1.8)
      raabro (~> 1.3)
    funtimes (0.4.0)
    geocoder (1.6.3)
    globalid (0.4.2)
      activesupport (>= 4.2.0)
    google-api-client (0.13.6)
      addressable (~> 2.5, >= 2.5.1)
      googleauth (~> 0.5)
      httpclient (>= 2.8.1, < 3.0)
      mime-types (~> 3.0)
      representable (~> 3.0)
      retriable (>= 2.0, < 4.0)
    googleauth (0.13.1)
      faraday (>= 0.17.3, < 2.0)
      jwt (>= 1.4, < 3.0)
      memoist (~> 0.16)
      multi_json (~> 1.11)
      os (>= 0.9, < 2.0)
      signet (~> 0.14)
    groupdate (5.0.0)
      activesupport (>= 5)
    gutentag (2.5.2)
      activerecord (>= 3.2.0)
    handlebars_assets (0.23.8)
      execjs (~> 2.0)
      sprockets (>= 2.0.0)
      tilt (>= 1.2)
    hashdiff (1.0.1)
    hashie (4.1.0)
    highline (2.0.3)
    html_tokenizer (0.0.7)
    htmlentities (4.3.4)
    http_accept_language (2.1.1)
    httparty (0.18.1)
      mime-types (~> 3.0)
      multi_xml (>= 0.5.2)
    httpclient (2.8.3)
    i18n (1.8.5)
      concurrent-ruby (~> 1.0)
    i18n-globals (0.0.4)
      i18n
    i18n-js (3.7.0)
      i18n (>= 0.6.6)
    i18n-tasks (0.9.31)
      activesupport (>= 4.0.2)
      ast (>= 2.1.0)
      erubi
      highline (>= 2.0.0)
      i18n
      parser (>= 2.2.3.0)
      rails-i18n
      rainbow (>= 2.2.2, < 4.0)
      terminal-table (>= 1.5.1)
    i18n_data (0.10.0)
    image_processing (1.12.0)
      mini_magick (>= 4.9.5, < 5)
      ruby-vips (>= 2.0.17, < 3)
    iniparse (1.5.0)
    inky-rb (1.3.8.0)
      foundation_emails (~> 2)
      nokogiri
    inline_svg (1.7.1)
      activesupport (>= 3.0)
      nokogiri (>= 1.6)
    interception (0.5)
    invisible_captcha (1.0.1)
      rails (>= 4.2)
    jbuilder (2.10.1)
      activesupport (>= 5.0.0)
    jquery-rails (4.4.0)
      rails-dom-testing (>= 1, < 3)
      railties (>= 4.2.0)
      thor (>= 0.14, < 2.0)
    jquery-ui-rails (6.0.1)
      railties (>= 3.2.16)
    json (2.3.0)
    jsonapi-renderer (0.2.2)
    jwt (2.2.2)
    kaminari (1.1.1)
      activesupport (>= 4.1.0)
      kaminari-actionview (= 1.1.1)
      kaminari-activerecord (= 1.1.1)
      kaminari-core (= 1.1.1)
    kaminari-actionview (1.1.1)
      actionview
      kaminari-core (= 1.1.1)
    kaminari-activerecord (1.1.1)
      activerecord
      kaminari-core (= 1.1.1)
    kaminari-core (1.1.1)
    kaminari-i18n (0.5.0)
      kaminari
      rails
    kdtree (0.4)
    launchy (2.5.0)
      addressable (~> 2.7)
    letter_opener (1.7.0)
      launchy (~> 2.2)
    libv8 (7.3.492.27.1)
    listen (3.2.1)
      rb-fsevent (~> 0.10, >= 0.10.3)
      rb-inotify (~> 0.9, >= 0.9.10)
    loofah (2.7.0)
      crass (~> 1.0.2)
      nokogiri (>= 1.5.9)
    mail (2.7.1)
      mini_mime (>= 0.1.1)
    mailkick (0.4.2)
      activesupport (>= 5)
    marcel (0.3.3)
      mimemagic (~> 0.3.2)
    material_design_lite-sass (1.3.0.1)
      autoprefixer-rails (>= 6.5)
      sass (>= 3.3)
    maxminddb (0.1.22)
    memoist (0.16.2)
    method_source (1.0.0)
    mime-types (3.3.1)
      mime-types-data (~> 3.2015)
    mime-types-data (3.2020.0512)
    mimemagic (0.3.5)
    mini_magick (4.10.1)
    mini_mime (1.0.2)
    mini_portile2 (2.4.0)
    mini_racer (0.2.14)
      libv8 (> 7.3)
    minitest (5.14.2)
    monetize (1.9.4)
      money (~> 6.12)
    money (6.13.8)
      i18n (>= 0.6.4, <= 2)
    multi_json (1.15.0)
    multi_xml (0.6.0)
    multipart-post (2.1.1)
    nio4r (2.5.4)
    nokogiri (1.10.10)
      mini_portile2 (~> 2.4.0)
    non-stupid-digest-assets (1.0.9)
      sprockets (>= 2.0)
    oauth2 (1.4.4)
      faraday (>= 0.8, < 2.0)
      jwt (>= 1.0, < 3.0)
      multi_json (~> 1.3)
      multi_xml (~> 0.5)
      rack (>= 1.2, < 3)
    omniauth (1.9.1)
      hashie (>= 3.4.6)
      rack (>= 1.6.2, < 3)
    omniauth-amazon (1.0.1)
      omniauth (~> 1.0)
      omniauth-oauth2 (~> 1.1)
    omniauth-deezer (0.4.0)
      faraday
      omniauth (>= 1.1.0)
    omniauth-google-oauth2 (0.8.0)
      jwt (>= 2.0)
      omniauth (>= 1.1.1)
      omniauth-oauth2 (>= 1.6)
    omniauth-microsoft_graph (0.2.1)
      omniauth-oauth2
    omniauth-oauth2 (1.6.0)
      oauth2 (~> 1.1)
      omniauth (~> 1.9)
    omniauth-spotify (0.0.13)
      omniauth-oauth2 (~> 1.1)
    originator (3.1)
      actionpack (>= 4.0)
      activerecord (>= 4.0)
    orm_adapter (0.5.0)
    os (1.1.1)
    overcommit (0.53.0)
      childprocess (>= 0.6.3, < 4)
      iniparse (~> 1.4)
    paperclip (6.1.0)
      activemodel (>= 4.2.0)
      activesupport (>= 4.2.0)
      mime-types
      mimemagic (~> 0.3.0)
      terrapin (~> 0.6.0)
    parallel (1.19.2)
    paranoia (2.4.2)
      activerecord (>= 4.0, < 6.1)
    parser (2.7.1.4)
      ast (~> 2.4.1)
    paypal-sdk-core (0.3.4)
      multi_json (~> 1.0)
      xml-simple
    paypal-sdk-merchant (1.117.2)
      paypal-sdk-core (~> 0.3.0)
    pdf-core (0.2.5)
    pg (1.2.3)
    polyamorous (2.3.2)
      activerecord (>= 5.2.1)
    polyglot (0.3.5)
    prawn (1.0.0)
      pdf-core (~> 0.2.2)
      ttfunk (~> 1.1.1)
    premailer (1.11.1)
      addressable
      css_parser (>= 1.6.0)
      htmlentities (>= 4.0.0)
    premailer-rails (1.11.1)
      actionmailer (>= 3)
      premailer (~> 1.7, >= 1.7.9)
    pry (0.13.1)
      coderay (~> 1.1)
      method_source (~> 1.0)
    pry-rescue (1.5.1)
      interception (>= 0.5)
      pry (>= 0.12.0)
    pry-stack_explorer (0.5.1)
      binding_of_caller (~> 0.7)
      pry (~> 0.13)
    public_suffix (4.0.5)
    puma (4.3.5)
      nio4r (~> 2.0)
    raabro (1.3.1)
    rack (2.2.3)
    rack-attack (5.4.2)
      rack (>= 1.0, < 3)
    rack-cache (1.12.0)
      rack (>= 0.4)
    rack-cors (1.1.1)
      rack (>= 2.0.0)
    rack-protection (2.0.8.1)
      rack
    rack-proxy (0.6.5)
      rack
    rack-test (1.1.0)
      rack (>= 1.0, < 3)
    rails-controller-testing (1.0.5)
      actionpack (>= 5.0.1.rc1)
      actionview (>= 5.0.1.rc1)
      activesupport (>= 5.0.1.rc1)
    rails-dom-testing (2.0.3)
      activesupport (>= 4.2.0)
      nokogiri (>= 1.6)
    rails-html-sanitizer (1.3.0)
      loofah (~> 2.3)
    rails-i18n (5.1.3)
      i18n (>= 0.7, < 2)
      railties (>= 5.0, < 6)
    rails_real_favicon (0.1.0)
      json (>= 1.7, < 3)
      rails
      rubyzip (~> 2)
    rainbow (3.0.0)
    rake (13.0.1)
    ransack (2.3.2)
      activerecord (>= 5.2.1)
      activesupport (>= 5.2.1)
      i18n
      polyamorous (= 2.3.2)
    rb-fsevent (0.10.4)
    rb-inotify (0.10.1)
      ffi (~> 1.0)
    react-rails (2.6.1)
      babel-transpiler (>= 0.7.0)
      connection_pool
      execjs
      railties (>= 3.2)
      tilt
    redis (4.2.1)
    redis-namespace (1.7.0)
      redis (>= 3.0.4)
    regexp_parser (1.7.1)
    representable (3.0.4)
      declarative (< 0.1.0)
      declarative-option (< 0.2.0)
      uber (< 0.2.0)
    request_store (1.5.0)
      rack (>= 1.4)
    responders (3.0.1)
      actionpack (>= 5.0)
      railties (>= 5.0)
    retriable (3.1.2)
    rexml (3.2.4)
    rgeo (2.1.1)
    rgeo-geojson (2.1.1)
      rgeo (>= 1.0.0)
    rolify (5.3.0)
    roo (2.8.3)
      nokogiri (~> 1)
      rubyzip (>= 1.3.0, < 3.0.0)
    rspec-core (3.9.2)
      rspec-support (~> 3.9.3)
    rspec-expectations (3.9.2)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.9.0)
    rspec-mocks (3.9.1)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.9.0)
    rspec-rails (4.0.1)
      actionpack (>= 4.2)
      activesupport (>= 4.2)
      railties (>= 4.2)
      rspec-core (~> 3.9)
      rspec-expectations (~> 3.9)
      rspec-mocks (~> 3.9)
      rspec-support (~> 3.9)
    rspec-support (3.9.3)
    rubocop (0.84.0)
      parallel (~> 1.10)
      parser (>= 2.7.0.1)
      rainbow (>= 2.2.2, < 4.0)
      rexml
      rubocop-ast (>= 0.0.3)
      ruby-progressbar (~> 1.7)
      unicode-display_width (>= 1.4.0, < 2.0)
    rubocop-ast (0.0.3)
      parser (>= 2.7.0.1)
    rubocop-performance (1.5.2)
      rubocop (>= 0.71.0)
    rubocop-rails (2.5.2)
      activesupport
      rack (>= 1.1)
      rubocop (>= 0.72.0)
    rubocop-rspec (1.39.0)
      rubocop (>= 0.68.1)
    ruby-enum (0.8.0)
      i18n
    ruby-progressbar (1.10.1)
    ruby-vips (2.0.17)
      ffi (~> 1.9)
    rubyzip (2.3.0)
    safe_yaml (1.0.5)
    sass (3.7.4)
      sass-listen (~> 4.0.0)
    sass-listen (4.0.0)
      rb-fsevent (~> 0.9, >= 0.9.4)
      rb-inotify (~> 0.9, >= 0.9.7)
    sass-rails (5.0.8)
      railties (>= 5.2.0)
      sass (~> 3.1)
      sprockets (>= 2.8, < 4.0)
      sprockets-rails (>= 2.0, < 4.0)
      tilt (>= 1.1, < 3)
    sassc (2.4.0)
      ffi (~> 1.9)
    sassc-rails (2.1.2)
      railties (>= 4.0.0)
      sassc (>= 2.0)
      sprockets (> 3.0)
      sprockets-rails
      tilt
    sax-machine (1.3.2)
    select2-rails (3.5.10)
      thor (~> 0.14)
    semantic_range (2.3.0)
    shoulda-matchers (4.3.0)
      activesupport (>= 4.2.0)
    sidekiq (6.0.7)
      connection_pool (>= 2.2.2)
      rack (~> 2.0)
      rack-protection (>= 2.0.0)
      redis (>= 4.1.0)
    sidekiq-cron (1.1.0)
      fugit (~> 1.1)
      sidekiq (>= 4.2.1)
    signet (0.14.0)
      addressable (~> 2.3)
      faraday (>= 0.17.3, < 2.0)
      jwt (>= 1.5, < 3.0)
      multi_json (~> 1.10)
    simple_form (5.0.2)
      actionpack (>= 5.0)
      activemodel (>= 5.0)
    simple_token_authentication (1.17.0)
      actionmailer (>= 3.2.6, < 7)
      actionpack (>= 3.2.6, < 7)
      devise (>= 3.2, < 6)
    simplecov (0.18.5)
      docile (~> 1.1)
      simplecov-html (~> 0.11)
    simplecov-html (0.12.2)
    sixarm_ruby_unaccent (1.2.0)
    smart_properties (1.15.0)
    solidus_catalog_mode (0.3.0)
      solidus_core (~> 2.3)
    solidus_i18n (2.0.0)
      solidus_core (>= 1.1, < 3)
    solidus_support (0.5.1)
      activesupport (>= 5.2, < 7.0.x)
    sort_alphabetical (1.1.0)
      unicode_utils (>= 1.2.2)
    spring (2.1.0)
    spring-commands-rspec (1.0.4)
      spring (>= 0.9.1)
    spring-watcher-listen (2.0.1)
      listen (>= 2.7, < 4.0)
      spring (>= 1.2, < 3.0)
    sprockets (3.7.2)
      concurrent-ruby (~> 1.0)
      rack (> 1, < 3)
    sprockets-rails (3.2.2)
      actionpack (>= 4.0)
      activesupport (>= 4.0)
      sprockets (>= 3.0.0)
    state_machines (0.5.0)
    state_machines-activemodel (0.7.1)
      activemodel (>= 4.1)
      state_machines (>= 0.5.0)
    state_machines-activerecord (0.6.0)
      activerecord (>= 4.1)
      state_machines-activemodel (>= 0.5.0)
    streamio-ffmpeg (3.0.2)
      multi_json (~> 1.8)
    terminal-table (1.8.0)
      unicode-display_width (~> 1.1, >= 1.1.1)
    terrapin (0.6.0)
      climate_control (>= 0.0.3, < 1.0)
    thor (0.20.3)
    thread_safe (0.3.6)
    tilt (2.0.10)
    tinymce-rails (4.9.10)
      railties (>= 3.1.1)
    truncate_html (0.9.3)
    ttfunk (1.1.1)
    turbolinks (5.2.1)
      turbolinks-source (~> 5.2)
    turbolinks-source (5.2.0)
    tzinfo (1.2.7)
      thread_safe (~> 0.1)
    tzwhere (0.2.0)
      kdtree
    uber (0.1.0)
    uglifier (4.2.0)
      execjs (>= 0.3.0, < 3)
    unicode-display_width (1.7.0)
    unicode_utils (1.4.0)
    uniform_notifier (1.13.0)
    uuidtools (2.1.5)
    warden (1.2.8)
      rack (>= 2.0.6)
    web-console (3.7.0)
      actionview (>= 5.0)
      activemodel (>= 5.0)
      bindex (>= 0.4.0)
      railties (>= 5.0)
    webmock (3.8.3)
      addressable (>= 2.3.6)
      crack (>= 0.3.2)
      hashdiff (>= 0.4.0, < 2.0.0)
    webpacker (5.0.1)
      activesupport (>= 5.2)
      rack-proxy (>= 0.6.1)
      railties (>= 5.2)
      semantic_range (>= 2.3.0)
    websocket-driver (0.7.3)
      websocket-extensions (>= 0.1.0)
    websocket-extensions (0.1.5)
    wice_grid (4.1.0)
      coffee-rails (> 3.2)
      kaminari (~> 1.1.0)
      rails (~> 5.0, < 5.3)
    xml-simple (1.1.5)
    xpath (3.2.0)
      nokogiri (~> 1.8)

PLATFORMS
  ruby

DEPENDENCIES
  active_record_enumerated_type
  activerecord-nulldb-adapter (~> 0.4.0)
  activeresource
  alchemy-richmedia-essences (~> 2.2.0)
  alchemy-solidus (~> 3.0.2)
  alchemy_cms (~> 4.5.0)
  alchemy_i18n (~> 2.0.0)
  amazon-ecs
  api_cache
  autoprefixer-rails
  brakeman (~> 4.9.0)
  bullet
  byebug
  cancancan (= 3.0.0)
  capybara (~> 3.32.0)
  capybara-screenshot (~> 1.0.24)
  carrierwave (~> 2.1.0)
  chartkick
  ckeditor (~> 4.2.0)
  commonmarker
  countries
  country_select
  dalli
  devise (~> 4.7.0)
  devise-i18n (~> 1.9.0)
  doorkeeper (~> 5.3.0)
  doorkeeper-i18n (~> 5.2.2)
  doorkeeper-jwt (~> 0.4.0)
  dragonfly
  enum_help
  erb_lint (~> 0.0.0)
  factory_bot_rails (~> 5.2.0)
  faker (~> 2.11.0)
  feedjira (~> 3.1.0)
  foundation_emails
  geocoder
  google-api-client (~> 0.13.0)
  groupdate (~> 5.0.0)
  http_accept_language
  httparty
  i18n-globals
  i18n-js (>= 3.0.0.rc8)
  i18n-tasks (~> 0.9.0)
  i18n_data
  inky-rb
  inline_svg
  invisible_captcha
  jbuilder (~> 2.5)
  jwt
  kaminari
  kaminari-i18n
  letter_opener
  listen (>= 3.0.5, < 3.3)
  loofah
  mailkick
  material_design_lite-sass
  maxminddb
  mini_racer
  monetize
  money
  nokogiri
  omniauth-amazon (~> 1.0.1)
  omniauth-deezer (~> 0.4.0)
  omniauth-google-oauth2 (~> 0.8.0)
  omniauth-microsoft_graph (~> 0.2.1)
  omniauth-oauth2 (~> 1.6.0)
  omniauth-spotify (~> 0.0.13)
  originator
  overcommit
  pg (>= 0.18, < 2.0)
  premailer-rails
  pry-rescue
  pry-stack_explorer
  puma (~> 4.0)
  rack-attack (~> 5.4.2)
  rack-cache
  rack-cors
  rails!
  rails-controller-testing (~> 1.0.4)
  rails-i18n (~> 5.1)
  rails_real_favicon
  react-rails
  redis-namespace
  rgeo
  rgeo-geojson
  rolify
  roo (~> 2.8.0)
  rspec-rails (~> 4.0.0)
  rubocop (~> 0.84.0)
  rubocop-performance (~> 1.5.2)
  rubocop-rails (~> 2.5.0)
  rubocop-rspec (~> 1.39.0)
  sass-rails (~> 5.0.8)
  sassc-rails
  shoulda-matchers (~> 4.3.0)
  sidekiq (~> 6.0.5)
  sidekiq-cron (~> 1.1.0)
  simple_form
  simple_token_authentication (~> 1.17.0)
  simplecov (~> 0.18.5)
  solidus!
  solidus_catalog_mode (~> 0.3.0)
  solidus_editor!
  solidus_i18n (~> 2.0.0)
  solidus_multi_domain!
  solidus_paypal_braintree!
  solidus_paypal_express!
  solidus_print_invoice!
  solidus_user_roles!
  spring (~> 2.1.0)
  spring-commands-rspec (~> 1.0.4)
  spring-watcher-listen (~> 2.0.1)
  sprockets (< 4)
  streamio-ffmpeg
  tzwhere
  uglifier (>= 1.3.0)
  uuidtools
  web-console (>= 3.3.0)
  webmock
  webpacker (~> 5.0.0)
  wice_grid
  zodiac!

RUBY VERSION
   ruby 2.7.1p83

BUNDLED WITH
   2.1.4

Thank you for your help!

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with core/app/models/spree/return_item.rb around process_inventory_unit!, then trace the admin/orders/[order_id]/customer_returns/new create flow. Reproduce the received-order case and verify that a customer return cannot be created when the order has no shipped inventory units, with coverage added wherever the existing return behavior is tested.

Written by the indexing model from the issue text.

Assessment

Tech stack
rails, ruby
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.