nushell / nushell/nufmt

`nufmt` roadmap

Open
#11 5 comments 9 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

meta-issue
Dominant language
Rust
Stars
230
Forks
40
Avg merge
15h 30m
Merged PRs (30d)
1

Description

We have the repo in the nushell org 🍾 . Now we need more structure to keep moving forward.
As we work in issues and features, we can edit the list.

⚠️ restructure the project

Because of the new-nu-parser coming, and the issue with DeclIds we need to restructure a lot of the parser as it is today.
I don't know how long this is going to be, but we have to have some patience. Let me investigate until I can plan what to do and when 📆

❗ TODO

  • ⚠ resolve all the FlatShapes in #13 (see above)
    • #35
    • there are still some missing shapes
  • with the file formatted as (--minified), we need to add the indentation
  • make configurable with Config struct
  • limit the max characters to Config
  • and endings of ;, if they are relevant to nushell logic (delete them if they are unnecessary, like python)
  • option to write the files in place or output another file
  • Format reports are nice. Add them!
  • public the cargo package
  • add the nixpkg auto-publish workflow
  • Make it available as a GitHub Action
  • add some ignore comment (# nufmt ignore)

✅ Done:

  • make clippy happy
    • #12
  • accept to format a string, not just files.
    • #15
  • clean /examples/ folder and move them into tests. Add benchmarks
    • #16
  • adjust README.md
    • add the supported nu version
    • add badges
    • #16
  • #17
    • #18
  • check if the last line is a new line and, if false, add one.
    • #28
  • examine the input path: Is it a file? format it. Is it a directory? format the .nu files and skip the other files
    • #47

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the parser restructuring context in #13 and #35, especially the transition to new-nu-parser and the DeclId issue. Use the listed TODOs, including --minified formatting, Config, README.md, tests, cargo packaging, and GitHub Actions, to narrow this roadmap into one scoped task with explicit completion criteria.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli, tooling
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.