namespace contracts and services to be under Backlogs#23467
Conversation
| @@ -28,7 +28,7 @@ | |||
| # See COPYRIGHT and LICENSE files for more details. | |||
| #++ | |||
|
|
|||
| module Sprints | |||
| module Backlogs::Buckets | |||
There was a problem hiding this comment.
It should have matched with modules/backlogs/app/contracts/backlogs/sprints/update_contract.rb instead
There was a problem hiding this comment.
yes - rename heuristics are a bit wonky!
|
|
||
| module BacklogBuckets | ||
| module Backlogs::Sprints |
There was a problem hiding this comment.
It should have matched with modules/backlogs/app/contracts/backlogs/buckets/update_contract.rb instead
9bdf3b9 to
daaabcd
Compare
daaabcd to
2c090cd
Compare
There was a problem hiding this comment.
Pull request overview
This PR consolidates Backlogs-related contracts and services under the Backlogs::... namespace (instead of generic/top-level namespaces) and renames the “backlog buckets” controller/routes to a simpler buckets naming, updating all call sites and specs accordingly.
Changes:
- Namespace Backlogs services/contracts under
Backlogs::WorkPackages,Backlogs::Sprints,Backlogs::Buckets, andBacklogs::Projects. - Rename bucket routes/controller from
backlog_buckets/Backlogs::BacklogBucketsControllertobuckets/Backlogs::BucketsController, updating permission mappings and route helpers. - Update specs and introduce shared contract spec contexts to reduce duplication.
Reviewed changes
Copilot reviewed 62 out of 64 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| modules/backlogs/spec/services/backlogs/work_packages/update_service_spec.rb | Updates spec to new Backlogs::WorkPackages::UpdateService constant. |
| modules/backlogs/spec/services/backlogs/work_packages/rebuild_positions_service_integration_spec.rb | Updates integration spec to new Backlogs::WorkPackages::RebuildPositionsService constant. |
| modules/backlogs/spec/services/backlogs/sprints/start_service_spec.rb | Updates spec to Backlogs::Sprints::StartService. |
| modules/backlogs/spec/services/backlogs/sprints/set_attributes_service_spec.rb | Updates spec and contract double to Backlogs::Sprints namespace. |
| modules/backlogs/spec/services/backlogs/sprints/finish_service_spec.rb | Updates spec to Backlogs::Sprints::FinishService. |
| modules/backlogs/spec/services/backlogs/sprints/create_service_spec.rb | Updates spec to Backlogs::Sprints::CreateService. |
| modules/backlogs/spec/services/backlogs/buckets/update_service_spec.rb | Updates spec to Backlogs::Buckets::UpdateService. |
| modules/backlogs/spec/services/backlogs/buckets/set_attributes_service_spec.rb | Updates spec and contract double to Backlogs::Buckets namespace. |
| modules/backlogs/spec/services/backlogs/buckets/delete_service_spec.rb | Updates spec to Backlogs::Buckets::DeleteService. |
| modules/backlogs/spec/services/backlogs/buckets/create_service_spec.rb | Updates spec to Backlogs::Buckets::CreateService. |
| modules/backlogs/spec/routing/backlogs/buckets_routing_spec.rb | Updates routing expectations to /backlogs/buckets and new route helpers. |
| modules/backlogs/spec/controllers/projects/settings/backlogs_controller_spec.rb | Updates expected contract class to Backlogs::Projects::BacklogsTypesAndStatusesContract. |
| modules/backlogs/spec/controllers/projects/settings/backlog_sharings_controller_spec.rb | Updates expected contract class to Backlogs::Projects::BacklogSettingsContract. |
| modules/backlogs/spec/controllers/backlogs/work_packages_controller_spec.rb | Updates mocked update service to Backlogs::WorkPackages::UpdateService. |
| modules/backlogs/spec/controllers/backlogs/sprints_controller_spec.rb | Updates mocked sprint services to Backlogs::Sprints::*Service. |
| modules/backlogs/spec/controllers/backlogs/buckets_controller_spec.rb | Updates described controller to Backlogs::BucketsController. |
| modules/backlogs/spec/contracts/backlogs/sprints/update_contract_spec.rb | Updates contract spec to Backlogs::Sprints::UpdateContract. |
| modules/backlogs/spec/contracts/backlogs/sprints/start_contract_spec.rb | Updates contract spec to Backlogs::Sprints::StartContract. |
| modules/backlogs/spec/contracts/backlogs/sprints/shared_contract_examples.rb | Adds shared sprint contract examples for spec reuse. |
| modules/backlogs/spec/contracts/backlogs/sprints/finish_contract_spec.rb | Updates contract spec to Backlogs::Sprints::FinishContract. |
| modules/backlogs/spec/contracts/backlogs/sprints/create_contract_spec.rb | Updates contract spec to Backlogs::Sprints::CreateContract. |
| modules/backlogs/spec/contracts/backlogs/projects/backlogs_types_and_statuses_contract_spec.rb | Updates contract spec to Backlogs::Projects::BacklogsTypesAndStatusesContract. |
| modules/backlogs/spec/contracts/backlogs/projects/backlog_settings_contract_spec.rb | Updates contract spec to Backlogs::Projects::BacklogSettingsContract. |
| modules/backlogs/spec/contracts/backlogs/buckets/update_contract_spec.rb | Updates contract spec to Backlogs::Buckets::UpdateContract. |
| modules/backlogs/spec/contracts/backlogs/buckets/shared_contract_examples.rb | Adds shared backlog bucket contract examples for spec reuse. |
| modules/backlogs/spec/contracts/backlogs/buckets/delete_contract_spec.rb | Updates contract spec to Backlogs::Buckets::DeleteContract. |
| modules/backlogs/spec/contracts/backlogs/buckets/create_contract_spec.rb | Updates contract spec to Backlogs::Buckets::CreateContract. |
| modules/backlogs/lib/open_project/backlogs/engine.rb | Updates permission mapping to new backlogs/buckets controller path. |
| modules/backlogs/config/routes.rb | Renames resource routes from backlog_buckets to buckets. |
| modules/backlogs/app/services/backlogs/work_packages/update_service.rb | Renames service constant to Backlogs::WorkPackages::UpdateService and qualifies ::WorkPackages::UpdateService. |
| modules/backlogs/app/services/backlogs/work_packages/rebuild_positions_service.rb | Renames service constant to Backlogs::WorkPackages::RebuildPositionsService. |
| modules/backlogs/app/services/backlogs/sprints/update_service.rb | Renames service constant to Backlogs::Sprints::UpdateService. |
| modules/backlogs/app/services/backlogs/sprints/start_service.rb | Renames service constant to Backlogs::Sprints::StartService and updates default contract reference. |
| modules/backlogs/app/services/backlogs/sprints/set_attributes_service.rb | Moves set-attributes service under Backlogs::Sprints. |
| modules/backlogs/app/services/backlogs/sprints/finish_service.rb | Renames service constant to Backlogs::Sprints::FinishService and qualifies referenced contracts/services. |
| modules/backlogs/app/services/backlogs/sprints/create_service.rb | Renames service constant to Backlogs::Sprints::CreateService. |
| modules/backlogs/app/services/backlogs/buckets/update_service.rb | Renames service constant to Backlogs::Buckets::UpdateService. |
| modules/backlogs/app/services/backlogs/buckets/set_attributes_service.rb | Renames service constant to Backlogs::Buckets::SetAttributesService. |
| modules/backlogs/app/services/backlogs/buckets/delete_service.rb | Renames service constant to Backlogs::Buckets::DeleteService and qualifies referenced contracts/services. |
| modules/backlogs/app/services/backlogs/buckets/create_service.rb | Renames service constant to Backlogs::Buckets::CreateService. |
| modules/backlogs/app/controllers/projects/settings/backlogs_controller.rb | Updates referenced contracts/services to Backlogs::... namespace. |
| modules/backlogs/app/controllers/projects/settings/backlog_sharings_controller.rb | Updates referenced contract to Backlogs::Projects::BacklogSettingsContract. |
| modules/backlogs/app/controllers/backlogs/work_packages_controller.rb | Updates update service call to Backlogs::WorkPackages::UpdateService. |
| modules/backlogs/app/controllers/backlogs/sprints_controller.rb | Updates sprint services and contracts to Backlogs::Sprints::*. |
| modules/backlogs/app/controllers/backlogs/buckets_controller.rb | Renames controller class to Backlogs::BucketsController and updates referenced services. |
| modules/backlogs/app/controllers/backlogs/backlog_controller.rb | Qualifies WorkPackages::WithSplitView with :: to avoid namespace ambiguity. |
| modules/backlogs/app/contracts/backlogs/work_packages/move_to_backlog_contract.rb | Moves contract under Backlogs::WorkPackages. |
| modules/backlogs/app/contracts/backlogs/work_packages/move_between_sprints_contract.rb | Moves contract under Backlogs::WorkPackages. |
| modules/backlogs/app/contracts/backlogs/sprints/update_contract.rb | Moves contract under Backlogs::Sprints. |
| modules/backlogs/app/contracts/backlogs/sprints/start_contract.rb | Moves contract under Backlogs::Sprints. |
| modules/backlogs/app/contracts/backlogs/sprints/finish_contract.rb | Moves contract under Backlogs::Sprints. |
| modules/backlogs/app/contracts/backlogs/sprints/create_contract.rb | Moves contract under Backlogs::Sprints. |
| modules/backlogs/app/contracts/backlogs/sprints/base_contract.rb | Moves base contract under Backlogs::Sprints. |
| modules/backlogs/app/contracts/backlogs/projects/backlogs_types_and_statuses_contract.rb | Moves contract under Backlogs::Projects. |
| modules/backlogs/app/contracts/backlogs/projects/backlog_settings_contract.rb | Moves contract under Backlogs::Projects. |
| modules/backlogs/app/contracts/backlogs/buckets/update_contract.rb | Moves contract under Backlogs::Buckets. |
| modules/backlogs/app/contracts/backlogs/buckets/delete_contract.rb | Moves contract under Backlogs::Buckets. |
| modules/backlogs/app/contracts/backlogs/buckets/create_contract.rb | Moves contract under Backlogs::Buckets. |
| modules/backlogs/app/contracts/backlogs/buckets/base_contract.rb | Renames base contract constant to Backlogs::Buckets::BaseContract. |
| modules/backlogs/app/components/backlogs/sprint_component.rb | Updates contract references to Backlogs::Sprints::StartContract. |
| modules/backlogs/app/components/backlogs/bucket_form_component.rb | Updates route helper calls to new buckets helpers. |
| modules/backlogs/app/components/backlogs/bucket_destroy_modal_component.rb | Updates destroy form action to new project_backlogs_bucket_path. |
| modules/backlogs/app/components/backlogs/bucket_component.html.erb | Updates dialog route helpers to new buckets helpers. |
| modules/backlogs/app/components/backlogs/backlog_component.html.erb | Updates “new bucket” link to new_dialog_project_backlogs_buckets_path. |
2c090cd to
4df5f01
Compare
4df5f01 to
a5466fd
Compare
a5466fd to
e46f409
Compare
myabc
left a comment
There was a problem hiding this comment.
💯 👍🏻 for the Backlogs::BucketController →Backlogs::BucketsController rename and the simpler route names, etc.
Since we're not calling isolate_namespace in the Backlogs engine we don't need to namespace code. I'm personally fine with it, but I'd want to ensure we're consistent across OpenProject. As such, a second or third opinion from someone in the stream would be excellent!
| @@ -54,7 +54,7 @@ See COPYRIGHT and LICENSE files for more details. | |||
| render Primer::Beta::Button.new( | |||
| tag: :a, | |||
| label: BacklogBucket.human_model_name, | |||
| href: new_dialog_project_backlogs_backlog_buckets_path(project, all_backlogs_params), | |||
| href: new_dialog_project_backlogs_buckets_path(project, all_backlogs_params), | |||
| @@ -28,7 +28,7 @@ | |||
| # See COPYRIGHT and LICENSE files for more details. | |||
| #++ | |||
|
|
|||
| module Sprints | |||
| module Backlogs::Buckets | |||
There was a problem hiding this comment.
yes - rename heuristics are a bit wonky!
|
My goal with namespace was about clarity what is only part of the module and what is not, though this PR doesn't namespace everything, as at least models are not namespaced |
👍🏻 I would definitely hold off on that. |
While working on https://community.openproject.org/wp/74386:
moved all contracts and services under
Backlogsnamespacecompacted
Backlogs::BacklogBuckets…toBacklogs::Buckets…(also for controller)renamed
Stories::UpdateServicetoBacklogs::WorkPackages::UpdateService