Releases: noir-lang/noir
Releases · noir-lang/noir
nightly-2024-10-22: fix: Allow array map on empty arrays (#6305)
# Description ## Problem\* Resolves a private issue sent to me on slack ## Summary\* Array map is a fairly old method written before we had `std::mem::zeroed`. Now that we have zeroed, we can allow mapping empty arrays since we can use `zeroed` to get the filler `U` value for the starting elements. ## Additional Context While I was at it I included a small clarification to `reduce`'s docs that it requires a non-empty array ## Documentation\* Check one: - [ ] No documentation needed. - [x] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
nightly-2024-10-21
feat: Warn about private types leaking in public functions and struct…
nightly-2024-10-20
feat: Warn about private types leaking in public functions and struct…
nightly-2024-10-19: fix: Do not warn on unused self in traits (#6298)
# Description ## Problem\* Resolves #6297 ## Summary\* Sets `warn_if_unused` to `false` for the `self` parameter of a function if it's for a trait implementation. ## Additional Context ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [ ] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
nightly-2024-10-18: fix: Reject invalid expression with in CLI parser (#6287)
Pre-release
# Description ## Problem\* Resolves #5560 ## Summary\* Rejects an invalid `--expression-value` in the CLI, which would later cause a panic in `acvm::compiler::transformers::csat`. An example error message looks like: ```text error: invalid value '1' for '--expression-width <EXPRESSION_WIDTH>': minimum value is 3 ``` ## Additional Context The issue suggests that [CSatTransformer::new](https://github.com/noir-lang/noir/blob/ae87d287ab1fae0f999dfd0d1166fbddb927ba97/acvm-repo/acvm/src/compiler/transformers/csat.rs#L24-L27) should return a `Result` explaining the problem it has with `width`, rather than doing an `assert!` (without any message) and crashing the program. I agree, however looking at the chain of calls, none of the half-dozen functions we go through to reach this use `Result`, and the `CSatTransformer` is the only option we have. This suggests to me that this limitation is perhaps supposed to be well-known to the user, ie. it's not the case that one transformer has X limit and another has Y limit. For this reason I added a `pub const MIN_EXPRESSION_WIDTH: usize = 3;` to the `acvm::compiler` module and using that as a common value for the assertion as well as the validation in the CLI. Should the assumption of a single global value change, removing that will force us to update the validation logic as well. That said if you prefer going the `Result` route I'm not against it, it just seemed like an overkill for this single use case. ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [ ] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
nightly-2024-10-17: chore: regression test for #5462 (#6286)
# Description ## Problem\* Regression test for github.com/noir-lang/noir/issues/5462 ## Summary\* - Added the test from [5462](github.com/noir-lang/noir/issues/5462) - Updated the issue needed to re-enable the `array_regex` execution test ## Additional Context ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
nightly-2024-10-16: chore: regression test for #5462 (#6286)
# Description ## Problem\* Regression test for github.com/noir-lang/noir/issues/5462 ## Summary\* - Added the test from [5462](github.com/noir-lang/noir/issues/5462) - Updated the issue needed to re-enable the `array_regex` execution test ## Additional Context ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
nightly-2024-10-15: chore: regression test for #5462 (#6286)
# Description ## Problem\* Regression test for github.com/noir-lang/noir/issues/5462 ## Summary\* - Added the test from [5462](github.com/noir-lang/noir/issues/5462) - Updated the issue needed to re-enable the `array_regex` execution test ## Additional Context ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
nightly-2024-10-14: chore: regression test for #5462 (#6286)
# Description ## Problem\* Regression test for github.com/noir-lang/noir/issues/5462 ## Summary\* - Added the test from [5462](github.com/noir-lang/noir/issues/5462) - Updated the issue needed to re-enable the `array_regex` execution test ## Additional Context ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
nightly-2024-10-13: chore: regression test for #5462 (#6286)
# Description ## Problem\* Regression test for github.com/noir-lang/noir/issues/5462 ## Summary\* - Added the test from [5462](github.com/noir-lang/noir/issues/5462) - Updated the issue needed to re-enable the `array_regex` execution test ## Additional Context ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.