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

[Noir Contracts] Address cyclic dependency preventing generation of contract interface for an internal public function. #1550

Closed
iAmMichaelConnor opened this issue Aug 14, 2023 · 3 comments
Labels
C-aztec.nr Component: Aztec smart contract framework S-needs-discussion Status: Still needs more discussion before work can start. T-feature-request Type: Adding a brand new feature (not to be confused with improving an existing feature).

Comments

@iAmMichaelConnor
Copy link
Contributor

See here

"
As I started coding [a contract interface generator for public internal functions], I ended up rolling it back, since it generates a very annoying cyclic dependency: you need contract A to compile in order to generate its interface which you need to use from within contract A to call itself, but contract A doesn't compile unless you have its interface since you're using it as part of its code.

We need Noir macros.
"

@github-project-automation github-project-automation bot moved this to Todo in A3 Aug 14, 2023
@iAmMichaelConnor iAmMichaelConnor added T-feature-request Type: Adding a brand new feature (not to be confused with improving an existing feature). S-needs-discussion Status: Still needs more discussion before work can start. labels Aug 14, 2023
@iAmMichaelConnor iAmMichaelConnor added the C-aztec.nr Component: Aztec smart contract framework label Aug 25, 2023
@iAmMichaelConnor iAmMichaelConnor added this to the 📢 Initial Public Sandbox Release milestone Aug 31, 2023
@iAmMichaelConnor
Copy link
Contributor Author

This might be fixable now that we've got Sean's nice macros in Noir?
@Maddiaa0 @spalladino

@LHerskind
Copy link
Contributor

As discussed with @Maddiaa0, we believe that it is all self calls not only internal ones. To address it, it should be possible to extend the aztec related macros with an aztec::selector() for functions in the same contract.

This will also allow it to replace the oracle that was added in #2001 with values at compile-time instead.

@iAmMichaelConnor iAmMichaelConnor removed this from the 📢 Initial Public Sandbox Release milestone Oct 27, 2023
codygunton pushed a commit that referenced this issue Jan 23, 2024
* Initial attempt to have Kebab perform deployments (#1558)

* Initial attempt to have Kebab perform deployments

* Fix e2e tests, don't redeploy if given rollup contract

* Use correct verification key

* Bug fix

* VK fix

* Added curl to Falafel docker image

* WIP

* WIP

* Updated Faucet

* WIP

* Deploy mainnet fork alongside kebab (#1556)

* Deploy mainnet fork alongside kebab

* Added backend block

* Updated kebab TF

Co-authored-by: PhilWindle <philip.windle@gmail.com>

* WIP

* Fixed env var name

* WIP

* Yarn lock files

* Revert explorer and zk-money changes

* Use devnet specific private key

* Additional logging

* Attempt to fix block explorer

* Reverted unnecessary change

* Fix bigint literals and remove hosted sdk e2e test

* Fixes

Co-authored-by: spypsy <spypsy@users.noreply.github.com>

* Fixed command ordering (#1566)

* Fixed scripting (#1567)

* More TF fixes (#1571)

* Force contract redeploy (dev) (#1568)

* force contract redeploy + add port to kebab health check

* undo port specification for healthcheck

* Log the number of drips provided by the faucet (#1518)

* Pw/devnet deployment fixes (#1574)

* Terraform changes to restart Falafel and Faucet on redeployment

* New Devnet chain id

* Fix pkey srs size to (n + 1) while loading a pkey. (#1550)

* Pw/devnet deployment fixes (#1577)

* Terraform changes to restart Falafel and Faucet on redeployment

* New Devnet chain id

* Fixed Falafel Dev Terraform

* Fixed Faucet Dev Terraform (#1578)

* Updated Wasabi Terraform for Dev and Test nets (#1579)

* Fix for Wasabi Uniswap Terraform (#1580)

* update JSON provider request method (#1588)

* update JSON provider request method

* comment clarification

* allow additional methods to go through kebab auth (#1589)

* Allow for setting of Rollup Provider in deployments (#1590)

* Allow for setting of Rollup Provider in deployments

* Force contract redeployment

* Terraform fix

* Pw/testnet deployment (#1591)

* WIP

* WIP

* WIP

* TF updates

* Dev TF fix

Co-authored-by: spypsy <spypsy@users.noreply.github.com>
Co-authored-by: Suyash Bagad <suyash@aztecprotocol.com>
@LHerskind
Copy link
Contributor

Refer to #5081

@github-project-automation github-project-automation bot moved this from Todo to Done in A3 Mar 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-aztec.nr Component: Aztec smart contract framework S-needs-discussion Status: Still needs more discussion before work can start. T-feature-request Type: Adding a brand new feature (not to be confused with improving an existing feature).
Projects
Archived in project
Development

No branches or pull requests

3 participants