Skip to content

chore: Rename StructDefinition to TypeDefinition#7614

Merged
jfecher merged 7 commits intomasterfrom
jf/rename-struct-def
Mar 7, 2025
Merged

chore: Rename StructDefinition to TypeDefinition#7614
jfecher merged 7 commits intomasterfrom
jf/rename-struct-def

Conversation

@jfecher
Copy link
Contributor

@jfecher jfecher commented Mar 6, 2025

Description

Problem*

Resolves #7416

Summary*

Renames StructDefinition to TypeDefinition and renames Type::as_struct to Type::as_data_type for lack of a better name.

  • StructDefinition still works but will produce a deprecated warning
  • Type::as_struct similarly still works and calls Type::as_data_type, also producing a deprecated warning.

Due to the above, this PR is non-breaking. Eventually we'll still probably want breaking type changes though. Namely any function to retrieve the struct fields from a TypeDefinition should be changed to return a Option of the previous return type since it may be called with an enum now.

Additional Context

Compared to separating StructDefinition from EnumDefinition I think this way is more convenient since it allows users to define one attribute function to work on all data types, instead of requiring a separate function to handle structs & enums. The later would also necessitate we needed a separate struct_derive and enum_derive, etc.

Documentation*

Check one:

  • No documentation needed.
  • Documentation included in this PR.
  • [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

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

@jfecher jfecher requested a review from a team March 6, 2025 20:53
@github-actions github-actions bot added the documentation Improvements or additions to documentation label Mar 6, 2025
Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Test Suite Duration'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: 763df5a Previous: ba5beb6 Ratio
noir-lang_noir_bigcurve_ 266 s 220 s 1.21

This comment was automatically generated by workflow using github-action-benchmark.

CC: @TomAFrench

@jfecher jfecher enabled auto-merge March 7, 2025 17:09
@github-actions
Copy link
Contributor

github-actions bot commented Mar 7, 2025

@github-actions
Copy link
Contributor

github-actions bot commented Mar 7, 2025

FYI @noir-lang/developerrelations on Noir doc changes.

@jfecher jfecher added this pull request to the merge queue Mar 7, 2025
Merged via the queue into master with commit e3f8398 Mar 7, 2025
103 of 105 checks passed
@jfecher jfecher deleted the jf/rename-struct-def branch March 7, 2025 17:33
AztecBot pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 8, 2025
feat: add optional oracle resolver url in `acvm_cli` (noir-lang/noir#7630)
chore: Rename `StructDefinition` to `TypeDefinition` (noir-lang/noir#7614)
fix: Error on infinitely recursive types (noir-lang/noir#7579)
fix: update error message to display 128 bits as valid bit size (noir-lang/noir#7626)
chore: update docs to reflect u128 type (noir-lang/noir#7623)
feat: array concat method (noir-lang/noir#7199)
AztecBot pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 9, 2025
feat: add optional oracle resolver url in `acvm_cli` (noir-lang/noir#7630)
chore: Rename `StructDefinition` to `TypeDefinition` (noir-lang/noir#7614)
fix: Error on infinitely recursive types (noir-lang/noir#7579)
fix: update error message to display 128 bits as valid bit size (noir-lang/noir#7626)
chore: update docs to reflect u128 type (noir-lang/noir#7623)
feat: array concat method (noir-lang/noir#7199)
AztecBot pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 9, 2025
feat: add optional oracle resolver url in `acvm_cli` (noir-lang/noir#7630)
chore: Rename `StructDefinition` to `TypeDefinition` (noir-lang/noir#7614)
fix: Error on infinitely recursive types (noir-lang/noir#7579)
fix: update error message to display 128 bits as valid bit size (noir-lang/noir#7626)
chore: update docs to reflect u128 type (noir-lang/noir#7623)
feat: array concat method (noir-lang/noir#7199)
AztecBot pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 10, 2025
feat: add optional oracle resolver url in `acvm_cli` (noir-lang/noir#7630)
chore: Rename `StructDefinition` to `TypeDefinition` (noir-lang/noir#7614)
fix: Error on infinitely recursive types (noir-lang/noir#7579)
fix: update error message to display 128 bits as valid bit size (noir-lang/noir#7626)
chore: update docs to reflect u128 type (noir-lang/noir#7623)
feat: array concat method (noir-lang/noir#7199)
AztecBot pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 10, 2025
feat: add optional oracle resolver url in `acvm_cli` (noir-lang/noir#7630)
chore: Rename `StructDefinition` to `TypeDefinition` (noir-lang/noir#7614)
fix: Error on infinitely recursive types (noir-lang/noir#7579)
fix: update error message to display 128 bits as valid bit size (noir-lang/noir#7626)
chore: update docs to reflect u128 type (noir-lang/noir#7623)
feat: array concat method (noir-lang/noir#7199)
AztecBot pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 11, 2025
chore: remove unnecessary trait bounds (noir-lang/noir#7635)
feat: add optional oracle resolver url in `acvm_cli` (noir-lang/noir#7630)
chore: Rename `StructDefinition` to `TypeDefinition` (noir-lang/noir#7614)
fix: Error on infinitely recursive types (noir-lang/noir#7579)
fix: update error message to display 128 bits as valid bit size (noir-lang/noir#7626)
chore: update docs to reflect u128 type (noir-lang/noir#7623)
feat: array concat method (noir-lang/noir#7199)
TomAFrench added a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 11, 2025
Automated pull of development from the
[noir](https://github.com/noir-lang/noir) programming language, a
dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
chore: bump external pinned commits
(noir-lang/noir#7640)
chore: remove unnecessary trait bounds
(noir-lang/noir#7635)
feat: add optional oracle resolver url in `acvm_cli`
(noir-lang/noir#7630)
chore: Rename `StructDefinition` to `TypeDefinition`
(noir-lang/noir#7614)
fix: Error on infinitely recursive types
(noir-lang/noir#7579)
fix: update error message to display 128 bits as valid bit size
(noir-lang/noir#7626)
chore: update docs to reflect u128 type
(noir-lang/noir#7623)
feat: array concat method (noir-lang/noir#7199)
END_COMMIT_OVERRIDE

---------

Co-authored-by: TomAFrench <tom@tomfren.ch>
sklppy88 pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 11, 2025
🤖 I have created a new Aztec Packages release
---


##
[0.79.0](v0.78.1...v0.79.0)
(2025-03-11)


### ⚠ BREAKING CHANGES

* aggregate data for batch calls
([#12562](#12562))

### Features

* add extra attributes to target_info
([#12583](#12583))
([c296422](c296422))
* add optional oracle resolver url in `acvm_cli`
(noir-lang/noir#7630)
([cc6cdbb](cc6cdbb))
* allow to pay via sponsored fpc from cli
([#12598](#12598))
([877de5c](877de5c))
* array concat method (noir-lang/noir#7199)
([cc6cdbb](cc6cdbb))
* **avm:** ToRadix gadget
([#12528](#12528))
([02a7171](02a7171))
* aztec-up -v flag
([#12590](#12590))
([6a41565](6a41565))
* **bb:** consider polynomial end_index when constructing partially
evaluated multivariates
([#12530](#12530))
([abd22cd](abd22cd))
* **config:** add fallbacks
([#12593](#12593))
([f2f9ef3](f2f9ef3))
* **p2p:** add trusted peers mechanics
([#12447](#12447))
([d67f7e8](d67f7e8))
* **p2p:** peer manager peer count metrics
([#12575](#12575))
([b4891c1](b4891c1))
* provision alerts
([#12561](#12561))
([2ea1767](2ea1767))
* Resolve callstacks in protocol circuit errors on wasm
([#12573](#12573))
([657299b](657299b))


### Bug Fixes

* aggregate data for batch calls
([#12562](#12562))
([bd0b3b6](bd0b3b6))
* broken kind transfer test
([#12611](#12611))
([6e91934](6e91934))
* Cl/release fixes 2
([#12595](#12595))
([fc597f4](fc597f4))
* Cl/release noir refs
([#12597](#12597))
([fdcfcaf](fdcfcaf))
* demote log
([#12626](#12626))
([bec8953](bec8953))
* deploy method test
([#12609](#12609))
([f2c06c2](f2c06c2))
* Do not report epoch as complete until blocks have synced
([#12638](#12638))
([2ddfa76](2ddfa76)),
closes
[#12625](#12625)
* Error on infinitely recursive types
(noir-lang/noir#7579)
([cc6cdbb](cc6cdbb))
* get L1 tx utils config from env
([#12620](#12620))
([d930c01](d930c01))
* Log overflow handling in reset
([#12579](#12579))
([283b624](283b624))
* metrics update
([#12571](#12571))
([80a5df2](80a5df2))
* **sandbox:** query release please manifest for version if in a docker
container
([#12591](#12591))
([db8ebc6](db8ebc6))
* **spartan:** setup needs kubectl
([#12580](#12580))
([753cb33](753cb33))
* update dead partial notes link
([#12629](#12629))
([5a1dc4c](5a1dc4c))
* update error message to display 128 bits as valid bit size
(noir-lang/noir#7626)
([cc6cdbb](cc6cdbb))
* update fallback transport
([#12470](#12470))
([88f0711](88f0711))


### Miscellaneous

* bump external pinned commits
(noir-lang/noir#7640)
([cc6cdbb](cc6cdbb))
* **ci3:** add helper for uncached test introspection
([#12618](#12618))
([9ac518b](9ac518b))
* **ci3:** better memsuspend_limit comment
([#12622](#12622))
([de84187](de84187))
* clean up upgrade test and other small things
([#12558](#12558))
([c28abe1](c28abe1))
* cleanup eth artifacts + misc aztec.js reorg
([#12563](#12563))
([6623244](6623244))
* **docs:** Updated accounts page
([#12019](#12019))
([d45dac9](d45dac9))
* Fix mac build
([#12610](#12610))
([adceed6](adceed6))
* gemini soundness regression test
([#12570](#12570))
([c654106](c654106))
* more sane e2e_prover/full timeout
([#12619](#12619))
([add9d35](add9d35))
* reactivate acir_test for `regression_5045`
([#12548](#12548))
([c89f89c](c89f89c))
* remove unnecessary trait bounds
(noir-lang/noir#7635)
([cc6cdbb](cc6cdbb))
* Rename `StructDefinition` to `TypeDefinition`
(noir-lang/noir#7614)
([cc6cdbb](cc6cdbb))
* replace relative paths to noir-protocol-circuits
([4f7f5c3](4f7f5c3))
* replace relative paths to noir-protocol-circuits
([0f68d11](0f68d11))
* replace relative paths to noir-protocol-circuits
([8f593ce](8f593ce))
* replace relative paths to noir-protocol-circuits
([251ae38](251ae38))
* rollup library cleanup
([#12621](#12621))
([361fc59](361fc59))
* **sandbox:** drop cheat-codes log level
([#12586](#12586))
([24f04c7](24f04c7))
* **sandbox:** expose anvil port
([#12599](#12599))
([955f1b0](955f1b0))
* **testnet:** updating script for ignition, change naming
([#12566](#12566))
([2d7b69d](2d7b69d))
* turn on masking in eccvm
([#12467](#12467))
([aacb91a](aacb91a))
* Update Bb line counting script
([#12350](#12350))
([7a41843](7a41843))
* update docs to reflect u128 type
(noir-lang/noir#7623)
([cc6cdbb](cc6cdbb))
* Validate blobs posted to sink belong to our L2
([#12587](#12587))
([9578f1e](9578f1e)),
closes
[#12497](#12497)


### Documentation

* update cli-wallet commands in profiler doc
([#12568](#12568))
([239a4fb](239a4fb))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Rename StructDefinition to TypeDefinition

2 participants