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

Tracking PR for v0.11.0 release #1472

Draft
wants to merge 104 commits into
base: main
Choose a base branch
from
Draft

Tracking PR for v0.11.0 release #1472

wants to merge 104 commits into from

Conversation

bobbinth
Copy link
Contributor

This is a tracking PR for v0.11.0 release.

plafer and others added 30 commits August 27, 2024 13:11
* chore: remove callset from `Procedure`

* chore: fix clippy
* chore: Add warning about `no_std` environment

* specify target triples

* Document all crates with the `no_std` feature
* refactor: wrap MastFores in Program and Library in Arc
* fix: enforce that program entrypoints are procedure roots
* refactor: add external nodes to MastForest for re-exports
plafer and others added 30 commits September 18, 2024 16:09
* fix(docs): Fix number of locals and typos

* fix(docs): Consistently use `advstack` for the advice stack
This commit introduces the concept of attributes/annotations to Miden
Assembly procedures. These can be used to represent interesting/useful
bits of metadata associated with specific procedures in three different
forms:

* Marker attributes, e.g. `@inline`, a name with no associated data
* List attributes, e.g. `@inline(always)`, i.e. a parameterized
  marker; multiple values can be provided as comma-delimited metadata
  expressions.
* Key-value attributes, e.g. `@props(<key> = <value>, ...)`, where
  `<key>` must be a valid identifier, and `<value>` must be a valid
  metadata expression. Multiple key-value attributes can be set at once,
  or you can specify the same key-value attribute multiple times, so
  long as each instance does not have any keys that conflict with
  previous instances.

Metadata expressions come in three possible types:

* bare identifier, e.g. `foo`
* quoted string, e.g. `"some text"`
* integer value, either decimal or hexadecimal format, e.g. `1` or
  `0x01`

Attributes will provide the foundation for upcoming changes that will
rely on being able to attach metadata to procedures. For now, attributes
may _only_ be attached to procedure definitions, not re-exports or any
other syntactic construct.

NOTE: This does not yet act on any attributes, nor store them anywhere
when assembling to MAST. For now, they are simply parsed, made available
in the AST, and ignored. Future PRs will introduce these as needed.

Closes #1434
…-vtable

Fix chiplets vtable construction
feat: implement procedure annotation syntax
…able-respan

Fix block stack table respan
docs: Document how `CALL` and `SYSCALL` work, and fix block stack table
* feat(core): Rename `EqHash` -> `MastNodeFingerprint`

* chore(core): Document panic in fingerprint computation

* chore(core): Add `MpVerify` to comments in fingerprint computation

* feat(core): Error instead of panic in fingerprint computation

* chore: Add changelog
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.

8 participants