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

Development Roadmap #22

Open
4 of 10 tasks
ByteBaker opened this issue Aug 29, 2024 · 2 comments
Open
4 of 10 tasks

Development Roadmap #22

ByteBaker opened this issue Aug 29, 2024 · 2 comments

Comments

@ByteBaker
Copy link
Contributor

ByteBaker commented Aug 29, 2024

As part of improving tree-rs in the course of the foreseeable future, following tasks are to be completed.

  • Refactor the project structure, debloat main.rs.
  • Add support for -d flag.
  • Add GitHub CI for crates.io
  • Add support for -I flag.
  • Add more test cases and refactor existing ones.
  • Check possibility of and maybe then migrate tests from Python to Rust.
  • Add documentation to track features ported from tree and the ones for future.
  • Add a template to create issues.
  • Benchmark the code and improve. Currently tree-rs seems to be slower than tree.
  • Work on issue Doesn't with symlinked directory on Windows #14

@sighol please add more items that you think should be here.

@ByteBaker
Copy link
Contributor Author

Hi @sighol,

I've started implementing -I, which made me realize that we may have to change the type of -P parameter as well.

According to man tree:

    -P pattern
    List only those files that match the wild-card pattern. You may have multiple -P options. <omitted the rest>

    -I pattern
    Do not list those files that match the wild-card pattern. You may have multiple -I options. See -P above for information on wildcard patterns.

Currently, include_pattern is defined as:

/// List only those files matching <`include_pattern`>
#[clap(short = 'P')]
include_pattern: Option<String>,

Which should be changed to

/// List only those files matching <`include_pattern`>
#[clap(short = 'P')]
include_pattern: Vec<String>,

What do you think? I'll define a parameter exclude_pattern for -I which will have the same signature, but will be used to exlude those that match. What do you think?

@sighol
Copy link
Owner

sighol commented Sep 2, 2024

Thanks! That sounds very reasonable!

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

No branches or pull requests

2 participants