Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Barretenberg in monorepo #1126

Closed
6 of 9 tasks
ludamad opened this issue Jul 20, 2023 · 2 comments
Closed
6 of 9 tasks

Barretenberg in monorepo #1126

ludamad opened this issue Jul 20, 2023 · 2 comments
Labels
A-internal-devex Area: Relates to the devex of internal teams building Aztec.

Comments

@ludamad
Copy link
Collaborator

ludamad commented Jul 20, 2023

For smoother developer experience we have decided to roll https://github.com/AztecProtocol/barretenberg into the aztec monorepo (i.e. this repo).

Upsides:

  • easier system discovery
  • easier cross-domain releases (e.g. new system primitives like builtins, cross-system renaming, cross-system C++ style changes, API cleanup causing slight differences downstream etc)
  • efficiency in cross-system (especially per-repo) tasks

Downsides:

  • losing productive friction around API barrier
  • not obvious where to find barretenberg
  • disruptive to current workflow
  • easier to move fast in a smaller repo

Planned actions:

  • We can introduce a mechanism such as CODEOWNERS and a corresponding review policy as hopefully a more productive form of the disruptive friction that existed in barretenberg.
    Critical: We want barretenberg to remain something we think very consciously about modifying as it must be audited effectively. The most important part of the audit process is the dev cycle. It is important to ensure that confidence in the code by barretenberg's core devs is maintained.
  • For now to keep it obvious where to find barretenberg and less disruptive short term, we're opting for repo mirroring and a https://github.com/ingydotnet/git-subrepo approach
  • Feature branches if needed could disable parts of CI etc to get to a light workflow again, while still being ready to merge into master in a tactical way

Also see task list.

Original message in the experiment PR
"This has a good deal of buy-in at this point. If we want outward facing
repos, we can do it programmatically without breaking atomicity.
Our ideal mindset until closer to launch is to have everyone thinking
what brings the most value incrementing the system,
which implicitly means moves that cross the most dimensions
inherently go farther. A real and frequent example is changing a concept
on our whole stack at once, e.g a new builtin, different proving system
iteration having a different ideal interface etc."

Tasks

Preview Give feedback
@ludamad ludamad added the A-internal-devex Area: Relates to the devex of internal teams building Aztec. label Jul 20, 2023
@github-project-automation github-project-automation bot moved this to Todo in A3 Jul 20, 2023
ludamad added a commit that referenced this issue Jul 22, 2023
ludamad added a commit that referenced this issue Jul 23, 2023
ludamad added a commit that referenced this issue Jul 23, 2023
ludamad added a commit that referenced this issue Jul 24, 2023
ludamad added a commit that referenced this issue Jul 24, 2023
ludamad added a commit that referenced this issue Jul 24, 2023
See #1126 for motivation.
Merge remote-tracking branch 'barretenberg/master' into combined_history
ludamad added a commit that referenced this issue Jul 24, 2023
This implements "Integrate barretenberg code and CI situated at circuits/cpp/barretenberg" in #1126. The motion to include barretenberg in the monorepo has not had major opposition, though for sure there was hesitation around the disruption and effort. Minor opposition was noted around the repo barrier and CI times, but overall we believe we can solve these issues.
@ludamad
Copy link
Collaborator Author

ludamad commented Aug 1, 2023

Good progress on this but I'll hold off until full CI port

@ludamad
Copy link
Collaborator Author

ludamad commented Aug 11, 2023

CI has been fully ported, marking done

@ludamad ludamad closed this as completed Aug 11, 2023
@github-project-automation github-project-automation bot moved this from Todo to Done in A3 Aug 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-internal-devex Area: Relates to the devex of internal teams building Aztec.
Projects
Archived in project
Development

No branches or pull requests

1 participant