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

chore: build yarn packages in parallel #2867

Merged
merged 1 commit into from
Sep 27, 2023
Merged

Conversation

TomAFrench
Copy link
Member

Description

Problem*

Resolves

Summary*

Currently running yarn build from the monorepo root just attempts to build the yarn workspaces in an order which doesn't take into account the workspace dependencies. This results in @noir-lang/noir_js failing to compile as it's looking for @noir-lang/noirc_abi despite it not being built yet.

This PR adds the --topological-dev flag to the build command so that we don't try to build a workspace package until all of its workspace dependencies have been built.

I've thrown in the --parallel (shaves about a minute off from the build time) and --verbose (prints the package name at the beginning of each line in the console output which makes it much easier to see what's going on in my experience.)

Documentation

  • This PR requires documentation updates when merged.

    • I will submit a noir-lang/docs PR.
    • I will request for and support Dev Rel's help in documenting this PR.

Additional Context

PR Checklist*

  • I have tested the changes locally.
  • I have formatted the changes with Prettier and/or cargo fmt on default settings.

@kevaundray kevaundray added this pull request to the merge queue Sep 27, 2023
Merged via the queue into master with commit a9fe154 Sep 27, 2023
23 checks passed
@kevaundray kevaundray deleted the tf/yarn-parallel-builds branch September 27, 2023 11:56
TomAFrench added a commit that referenced this pull request Sep 28, 2023
* master:
  chore: remove leftover files from `acvm-repo` (#2861)
  chore: miscellaneous ACVM fixups (#2864)
  chore(noir): Release (master) (#2875)
  fix: Remove cast for field comparisons in brillig (#2874)
  fix: remove duplication of code to load stdlib files (#2868)
  chore(noir_js): remove unnecessary input validation in JS (#2841)
  chore: build yarn packages in parallel (#2867)
  chore(ci): remove `toml2json` dependency (#2862)
  chore: fix infinite loop in yarn workspace cleaning (#2863)
TomAFrench added a commit that referenced this pull request Sep 28, 2023
* master: (107 commits)
  chore: remove leftover files from `acvm-repo` (#2861)
  chore: miscellaneous ACVM fixups (#2864)
  chore(noir): Release (master) (#2875)
  fix: Remove cast for field comparisons in brillig (#2874)
  fix: remove duplication of code to load stdlib files (#2868)
  chore(noir_js): remove unnecessary input validation in JS (#2841)
  chore: build yarn packages in parallel (#2867)
  chore(ci): remove `toml2json` dependency (#2862)
  chore: fix infinite loop in yarn workspace cleaning (#2863)
  chore(noir): Release (master) (#2859)
  chore: remove rebuild script since its failing
  chore(ci): rename CI workflows based on theme (#2853)
  chore(noir): Release (master) (#2827)
  chore: add solidity verifier workflow (#2749)
  chore: add `CRS` directory to gitignore (#2852)
  chore: add initial version of `Backend` interface for `noir_js` (#2851)
  chore(errors): Refactor errors representation in compiler (#2760)
  chore(ci): run `noir_js` tests in CI (#2843)
  chore(noir_js)!: Rename inner and outer proof methods (#2845)
  chore: remove unnecessary `AcirValue`s (#2823)
  ...
TomAFrench added a commit that referenced this pull request Sep 28, 2023
* master:
  chore: remove messagepack serialization logic (#2865)
  chore: improve workspace clean (#2870)
  fix: finer bit size in bound constrain (#2869)
  feat: Contract events in artifacts (#2873)
  chore: remove leftover files from `acvm-repo` (#2861)
  chore: miscellaneous ACVM fixups (#2864)
  chore(noir): Release (master) (#2875)
  fix: Remove cast for field comparisons in brillig (#2874)
  fix: remove duplication of code to load stdlib files (#2868)
  chore(noir_js): remove unnecessary input validation in JS (#2841)
  chore: build yarn packages in parallel (#2867)
  chore(ci): remove `toml2json` dependency (#2862)
  chore: fix infinite loop in yarn workspace cleaning (#2863)
TomAFrench added a commit that referenced this pull request Sep 28, 2023
* master:
  chore: remove messagepack serialization logic (#2865)
  chore: improve workspace clean (#2870)
  fix: finer bit size in bound constrain (#2869)
  feat: Contract events in artifacts (#2873)
  chore: remove leftover files from `acvm-repo` (#2861)
  chore: miscellaneous ACVM fixups (#2864)
  chore(noir): Release (master) (#2875)
  fix: Remove cast for field comparisons in brillig (#2874)
  fix: remove duplication of code to load stdlib files (#2868)
  chore(noir_js): remove unnecessary input validation in JS (#2841)
  chore: build yarn packages in parallel (#2867)
  chore(ci): remove `toml2json` dependency (#2862)
  chore: fix infinite loop in yarn workspace cleaning (#2863)
TomAFrench added a commit that referenced this pull request Sep 29, 2023
* master: (85 commits)
  feat: Add noir types package (#2893)
  chore: add scripts for testing (#2890)
  chore(noir-js): Add program API (#2856)
  feat(traits): multi module support for traits (#2844)
  chore(noir): Release (master) (#2879)
  chore: set up noir_js in integration tests (#2871)
  chore!: update to `bb` version 0.7.3 (#2729)
  chore: remove additional yarn install in `acvm_js` (#2885)
  chore: remove messagepack serialization logic (#2865)
  chore: improve workspace clean (#2870)
  fix: finer bit size in bound constrain (#2869)
  feat: Contract events in artifacts (#2873)
  chore: remove leftover files from `acvm-repo` (#2861)
  chore: miscellaneous ACVM fixups (#2864)
  chore(noir): Release (master) (#2875)
  fix: Remove cast for field comparisons in brillig (#2874)
  fix: remove duplication of code to load stdlib files (#2868)
  chore(noir_js): remove unnecessary input validation in JS (#2841)
  chore: build yarn packages in parallel (#2867)
  chore(ci): remove `toml2json` dependency (#2862)
  ...
Sakapoi pushed a commit to Sakapoi/noir_fork that referenced this pull request Oct 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants