1--- 2stage: none 3group: unassigned 4info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments 5--- 6 7# Developing against interacting components or features 8 9It's not uncommon that a single code change can reflect and interact with multiple parts of GitLab 10codebase. Furthermore, an existing feature might have an underlying integration or behavior that 11might go unnoticed even by reviewers and maintainers. 12 13The goal of this section is to briefly list interacting pieces to think about 14when making _backend_ changes that might involve multiple features or [components](architecture.md#components). 15 16## Uploads 17 18GitLab supports uploads to [object storage](https://docs.gitlab.com/charts/advanced/external-object-storage/). That means every feature and 19change that affects uploads should also be tested against [object storage](https://docs.gitlab.com/charts/advanced/external-object-storage/), 20which is _not_ enabled by default in [GDK](https://gitlab.com/gitlab-org/gitlab-development-kit). 21 22When working on a related feature, make sure to enable and test it 23against [MinIO](https://gitlab.com/gitlab-org/gitlab-development-kit/blob/main/doc/howto/object_storage.md). 24 25See also [File Storage in GitLab](file_storage.md). 26 27## Merge requests 28 29### Forks 30 31GitLab supports a great amount of features for [merge requests](../user/project/merge_requests/index.md). One 32of them is the ability to create merge requests from and to [forks](../user/project/repository/forking_workflow.md#creating-a-fork), 33which should also be highly considered and tested upon development phase. 34