teobiton / issue-tracking Goto Github PK
View Code? Open in Web Editor NEWCommand-line tool to track GitHub repositories issues and export them to csv.
License: Apache License 2.0
Command-line tool to track GitHub repositories issues and export them to csv.
License: Apache License 2.0
Rather than using crate StructOpt for arguments manaement, which forces us to use a lot of decorators, we could use the built-in Command/App crates for the application
Example: bat(1) on GitHub
To enhance the application, data coming from the json file could be filtered based on the following criterias:
This could be done using structs and traits, based on the design pattern found here https://doc.rust-lang.org/stable/book/ch17-03-oo-design-patterns.html
The issue-tracking
project could take advantage of some linting checks, cargo clippy
could help with this.
So far, the request from GitHub API only gives us back 30 issues. All pages should be fetched until we have all issues from a repository.
By parsing the serialized data, all labels used in a repository could be displayed to the user so that they could either check the spelling or see what is available for a certain repository.
CI should check if cargo fmt
was run on the project prior to a push to the main branch.
While using the crate, two bugs where found:
Coverage of these two bugs by test should be added as well.
There are two cases for usage of this project:
Either way, in case of an offline use, the dependencies should be installed in a folder dependencies/
so that people are able to use the tool in both cases.
The default values displayed in the help message do not represent the actual values that are assigned in the end, for the output and for the label. This should be fixed.
Based on #8, it could be relevant to have a build.rs
file that can install the application either for online use or offline use based on different features.
For such features, we could have optional dependencies that only build in online use (see https://doc.rust-lang.org/cargo/reference/features.html).
Check the available crates for profiling and see how the code could be optimized.
The Clippy check (style lint) is failing in build fail. This must be fixed.
So far, we're leaving process on error "manually", by printing in stderr and calling process exit with code error 1.
There might be a better way to do it using either Err() or ExitFailure crates, or something else.
Currently, we are expecting JSON files as required arguments for issue-parser
.
To make it more user-friendly, a new flag could be introduced so that users could pass a link to a GitHub repository instead of a JSON file. With this flag, the JSON file could be fetched directly from GitHub API, but this requires an internet access for usage.
If this is implemented, we should have a separate testlist for tests of this feature since some of them will require an internet access.
An example could be: -u
or --url
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.