Skip to content

Draft: New PoC for components

Fabio Pitino requested to merge poc-packwerk-components into master

What does this MR do and why?

Related to #365293 (closed)

This MR provides a more iterative approach than !88899 (closed)

  • Set circular dependency between the root component ("." which is the rest of the app for now) and the components/ci.
    • While this is not ideal in the long term. It allows us to make smaller steps without too many recorded violations.
    • Once the component is well decoupled (e.g. a components/platform is created) and dependencies are more explicit, remove the dependency to the root component.
  • Disable privacy by default and instead enable privacy for specific constants and namespaces
    • This recorded too many violations. Rather than enabling privacy by default (which would be our long term goal) we can start with explicitly declare what's private.
  • Move only a few files to test public constants, private constants on both CI component and the root component (rest of the app).

Screenshots or screen recordings

These are strongly recommended to assist reviewers and reduce the time to merge your change.

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Fabio Pitino

Merge request reports