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

feat: nargo command to generate shell completions #6413

Merged
merged 5 commits into from
Nov 1, 2024

Conversation

asterite
Copy link
Collaborator

@asterite asterite commented Oct 30, 2024

Description

Problem

Resolves #6284

Summary

nargo-shell-completion

Additional Context

I copied the command name, and learned how to install shell completions, by reading this: https://apple.github.io/swift-argument-parser/documentation/argumentparser/installingcompletionscripts/

I don't know how we can teach users to install completions... maybe some know... for those who don't, maybe they stumble upon the above page. Or should we document this in our documentation? Or in the command itself? (maybe too long)

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.

@asterite asterite requested a review from a team October 30, 2024 19:17
@aakoshh
Copy link
Contributor

aakoshh commented Oct 30, 2024

Nice! It could be hinted at in the output of noirup; similar installers mention zsh and fish env vars and path settings.

https://noir-lang.org/docs/reference/nargo_commands could be another good place to mention it. (This might be generated automatically by codegen_nargo_reference.sh 💪 )

@asterite
Copy link
Collaborator Author

Oh, it seems that nargo_commands page is automatically generated from the doc comments... so to change it we'd have to also add those comments to the command and to its output, which is maybe not good.

Maybe this can go without docs... people wanting to install shell completions probably know how to install them.

@aakoshh
Copy link
Contributor

aakoshh commented Oct 31, 2024

Yes, I realised that to include any hint in the reference would go against you trying to keep it from the command docs. Perhaps it's worth mentioning under https://github.com/noir-lang/noir/blob/master/docs/docs/getting_started/quick_start.md#nargo instead?

@TomAFrench
Copy link
Member

I think that having a small page in the docs which explains where to place the generated completion script would be nice but not a hard requirement for this.

@asterite
Copy link
Collaborator Author

Around the "Quick start" section sounds good to me. I don't know if on that page, though, because it's more about using some nargo commands.

Maybe it could be a new "Nargo shell completions" subsection here?

image

@aakoshh
Copy link
Contributor

aakoshh commented Oct 31, 2024

There is also https://github.com/noir-lang/noir/blob/master/docs/docs/getting_started/noir_installation.md but it doesn’t mention nargo, so I thought the other one is a nicer place to make people aware of this goodie

@github-actions github-actions bot added the documentation Improvements or additions to documentation label Nov 1, 2024
@asterite
Copy link
Collaborator Author

asterite commented Nov 1, 2024

I added some docs. I created a new page under "Getting started" for it, then linked it from the "Quick start" and "Standalone Noir Installation" pages. I guess it makes sense that it's a bit more prominent than what I initially thought as it could be very helpful to have those completions.

Copy link
Contributor

github-actions bot commented Nov 1, 2024

@TomAFrench TomAFrench added this pull request to the merge queue Nov 1, 2024
Copy link
Contributor

github-actions bot commented Nov 1, 2024

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

Merged via the queue into master with commit 13856a1 Nov 1, 2024
56 checks passed
@TomAFrench TomAFrench deleted the ab/shell-completions branch November 1, 2024 14:17
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 2, 2024
…ang/noir#6413)

feat: ensure that generated ACIR is solvable (noir-lang/noir#6415)
fix: fix Alias and Error kinds (noir-lang/noir#6426)
fix: type-check turbofish in trait before function call (noir-lang/noir#6416)
chore: create a regression test for #6420 (noir-lang/noir#6421)
chore: Release Noir(0.37.0) (noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct (noir-lang/noir#6419)
feat!: remove mimc from stdlib (noir-lang/noir#6402)
chore: Replace dead link with updated route in README (noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed (noir-lang/noir#6396)
feat: improve malformed test attribute error (noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens (noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd (noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish (noir-lang/noir#6404)
fix: numeric generic doesn't have a default type (noir-lang/noir#6405)
feat: Sync from aztec-packages (noir-lang/noir#6403)
chore: add regression tests for #4372 (noir-lang/noir#6401)
chore: add regression tests for #6314 (noir-lang/noir#6381)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 2, 2024
feat: ensure that generated ACIR is solvable (noir-lang/noir#6415)
fix: fix Alias and Error kinds (noir-lang/noir#6426)
fix: type-check turbofish in trait before function call (noir-lang/noir#6416)
chore: create a regression test for #6420 (noir-lang/noir#6421)
chore: Release Noir(0.37.0) (noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct (noir-lang/noir#6419)
feat!: remove mimc from stdlib (noir-lang/noir#6402)
chore: Replace dead link with updated route in README (noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed (noir-lang/noir#6396)
feat: improve malformed test attribute error (noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens (noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd (noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish (noir-lang/noir#6404)
fix: numeric generic doesn't have a default type (noir-lang/noir#6405)
feat: Sync from aztec-packages (noir-lang/noir#6403)
chore: add regression tests for #4372 (noir-lang/noir#6401)
chore: add regression tests for #6314 (noir-lang/noir#6381)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 3, 2024
…ang/noir#6413)

feat: ensure that generated ACIR is solvable (noir-lang/noir#6415)
fix: fix Alias and Error kinds (noir-lang/noir#6426)
fix: type-check turbofish in trait before function call (noir-lang/noir#6416)
chore: create a regression test for #6420 (noir-lang/noir#6421)
chore: Release Noir(0.37.0) (noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct (noir-lang/noir#6419)
feat!: remove mimc from stdlib (noir-lang/noir#6402)
chore: Replace dead link with updated route in README (noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed (noir-lang/noir#6396)
feat: improve malformed test attribute error (noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens (noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd (noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish (noir-lang/noir#6404)
fix: numeric generic doesn't have a default type (noir-lang/noir#6405)
feat: Sync from aztec-packages (noir-lang/noir#6403)
chore: add regression tests for #4372 (noir-lang/noir#6401)
chore: add regression tests for #6314 (noir-lang/noir#6381)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 3, 2024
feat: ensure that generated ACIR is solvable (noir-lang/noir#6415)
fix: fix Alias and Error kinds (noir-lang/noir#6426)
fix: type-check turbofish in trait before function call (noir-lang/noir#6416)
chore: create a regression test for #6420 (noir-lang/noir#6421)
chore: Release Noir(0.37.0) (noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct (noir-lang/noir#6419)
feat!: remove mimc from stdlib (noir-lang/noir#6402)
chore: Replace dead link with updated route in README (noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed (noir-lang/noir#6396)
feat: improve malformed test attribute error (noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens (noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd (noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish (noir-lang/noir#6404)
fix: numeric generic doesn't have a default type (noir-lang/noir#6405)
feat: Sync from aztec-packages (noir-lang/noir#6403)
chore: add regression tests for #4372 (noir-lang/noir#6401)
chore: add regression tests for #6314 (noir-lang/noir#6381)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 4, 2024
…ang/noir#6413)

feat: ensure that generated ACIR is solvable (noir-lang/noir#6415)
fix: fix Alias and Error kinds (noir-lang/noir#6426)
fix: type-check turbofish in trait before function call (noir-lang/noir#6416)
chore: create a regression test for #6420 (noir-lang/noir#6421)
chore: Release Noir(0.37.0) (noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct (noir-lang/noir#6419)
feat!: remove mimc from stdlib (noir-lang/noir#6402)
chore: Replace dead link with updated route in README (noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed (noir-lang/noir#6396)
feat: improve malformed test attribute error (noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens (noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd (noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish (noir-lang/noir#6404)
fix: numeric generic doesn't have a default type (noir-lang/noir#6405)
feat: Sync from aztec-packages (noir-lang/noir#6403)
chore: add regression tests for #4372 (noir-lang/noir#6401)
chore: add regression tests for #6314 (noir-lang/noir#6381)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 4, 2024
feat: ensure that generated ACIR is solvable (noir-lang/noir#6415)
fix: fix Alias and Error kinds (noir-lang/noir#6426)
fix: type-check turbofish in trait before function call (noir-lang/noir#6416)
chore: create a regression test for #6420 (noir-lang/noir#6421)
chore: Release Noir(0.37.0) (noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct (noir-lang/noir#6419)
feat!: remove mimc from stdlib (noir-lang/noir#6402)
chore: Replace dead link with updated route in README (noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed (noir-lang/noir#6396)
feat: improve malformed test attribute error (noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens (noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd (noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish (noir-lang/noir#6404)
fix: numeric generic doesn't have a default type (noir-lang/noir#6405)
feat: Sync from aztec-packages (noir-lang/noir#6403)
chore: add regression tests for #4372 (noir-lang/noir#6401)
chore: add regression tests for #6314 (noir-lang/noir#6381)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 4, 2024
…ang/noir#6413)

feat: ensure that generated ACIR is solvable (noir-lang/noir#6415)
fix: fix Alias and Error kinds (noir-lang/noir#6426)
fix: type-check turbofish in trait before function call (noir-lang/noir#6416)
chore: create a regression test for #6420 (noir-lang/noir#6421)
chore: Release Noir(0.37.0) (noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct (noir-lang/noir#6419)
feat!: remove mimc from stdlib (noir-lang/noir#6402)
chore: Replace dead link with updated route in README (noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed (noir-lang/noir#6396)
feat: improve malformed test attribute error (noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens (noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd (noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish (noir-lang/noir#6404)
fix: numeric generic doesn't have a default type (noir-lang/noir#6405)
feat: Sync from aztec-packages (noir-lang/noir#6403)
chore: add regression tests for #4372 (noir-lang/noir#6401)
chore: add regression tests for #6314 (noir-lang/noir#6381)
TomAFrench added a commit to AztecProtocol/aztec-packages that referenced this pull request Nov 4, 2024
Automated pull of development from the
[noir](https://github.com/noir-lang/noir) programming language, a
dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
feat: nargo command to generate shell completions
(noir-lang/noir#6413)
feat: ensure that generated ACIR is solvable
(noir-lang/noir#6415)
fix: fix Alias and Error kinds
(noir-lang/noir#6426)
fix: type-check turbofish in trait before function call
(noir-lang/noir#6416)
chore: create a regression test for #6420
(noir-lang/noir#6421)
chore: Release Noir(0.37.0)
(noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct
(noir-lang/noir#6419)
feat!: remove mimc from stdlib
(noir-lang/noir#6402)
chore: Replace dead link with updated route in README
(noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed
(noir-lang/noir#6396)
feat: improve malformed test attribute error
(noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more
informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens
(noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd
(noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish
(noir-lang/noir#6404)
fix: numeric generic doesn't have a default type
(noir-lang/noir#6405)
feat: Sync from aztec-packages
(noir-lang/noir#6403)
chore: add regression tests for #4372
(noir-lang/noir#6401)
chore: add regression tests for #6314
(noir-lang/noir#6381)
END_COMMIT_OVERRIDE

---------

Co-authored-by: Tom French <tom@tomfren.ch>
Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
AztecBot added a commit to AztecProtocol/aztec-nr that referenced this pull request Nov 5, 2024
Automated pull of development from the
[noir](https://github.com/noir-lang/noir) programming language, a
dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
feat: nargo command to generate shell completions
(noir-lang/noir#6413)
feat: ensure that generated ACIR is solvable
(noir-lang/noir#6415)
fix: fix Alias and Error kinds
(noir-lang/noir#6426)
fix: type-check turbofish in trait before function call
(noir-lang/noir#6416)
chore: create a regression test for #6420
(noir-lang/noir#6421)
chore: Release Noir(0.37.0)
(noir-lang/noir#6321)
chore: update variable names in stdlib tests to be more correct
(noir-lang/noir#6419)
feat!: remove mimc from stdlib
(noir-lang/noir#6402)
chore: Replace dead link with updated route in README
(noir-lang/noir#6392)
feat(ci): Add report of Brillig opcodes executed
(noir-lang/noir#6396)
feat: improve malformed test attribute error
(noir-lang/noir#6414)
fix: aliases in path (noir-lang/noir#6399)
feat(profiler): Add Brillig procedure info to debug artifact for more
informative profiling (noir-lang/noir#6385)
chore(lsp): Remove profile code lens
(noir-lang/noir#6411)
chore(nargo): Remove old profile as part of info cmd
(noir-lang/noir#6406)
fix: distinguish TypePath with and without turbofish
(noir-lang/noir#6404)
fix: numeric generic doesn't have a default type
(noir-lang/noir#6405)
feat: Sync from aztec-packages
(noir-lang/noir#6403)
chore: add regression tests for #4372
(noir-lang/noir#6401)
chore: add regression tests for #6314
(noir-lang/noir#6381)
END_COMMIT_OVERRIDE

---------

Co-authored-by: Tom French <tom@tomfren.ch>
Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
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.

Setup bash/zsh command-line completion for nargo
3 participants