Coder Social home page Coder Social logo

werainkhatri / issue Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 0.0 47 KB

A tool to help cli package authors make raising issues like bug reports more interactive for their users.

Home Page: https://pub.dev/packages/issue

License: MIT License

Dart 100.00%
cli dart issue

issue's Introduction

issue

pub package pub points

A tool to help cli package authors make raising issues like bug reports more interactive for their users.

Features

  • Interactive file based prompts for great UX.
  • Ability to break the issue body into separate customizable user-prompts.
  • Supports executing cli commands to collect system / project data, like flutter doctor.
  • Customizable Issue Tracker. Supports GitHub out-of-the-box (obviously).

Demo

demo.mp4

Usage

Run dart example/issue.dart to experience issue, or checkout the following sample.

import 'package:issue/issue.dart';

void main(List<String> args) async {
  IssueConfig config = IssueConfig(
    template: FlutterBugReportIssueTemplate(
      assignees: ['werainkhatri'],
      labels: ['bug'],
      giveCredits: true,
    ),
    tracker: GitHubIssueTracker(
      organization: 'werainkhatri',
      repository: 'issue',
    ),
  );

  try {
    await buildIssueAndOpen(config);
  } on UserInterruptException catch (e) {
    print(e);
  }
}

issue's People

Contributors

werainkhatri avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

issue's Issues

v1.0.0

  • make this a gh project?
  • add BlankIssueTemplate.
  • test entire flow in linux and windows.
    • find out if the file prompt handler function (that uses Process) can be mocked so that it can be tested e2e.
    • add ci/cd steps.
  • handle usecase where IssueTemplate contains only command driven issue sections.
  • support for custom editor as per package user / end user's choice. use this to get the commands for all.
    • feature for end user to select an editor from available editors from the terminal at runtime.
  • add customizability for package author to choose if a section should have an interact.Choose prompt before the file prompt.
  • add custom prompt text support for command driven issue sections.
  • pretify using ansi_styles.
  • find out and handle the max url length, if any.
  • see if downloading and parsing a github issue template would work.
  • find how to handle exceptions with nice stdout w/o stacktrace.
  • make publishable
    • document public APIs.
  • add customizability for which template to be used based on user choice. User can choose which type of issue is to be raised (bug, feature request, etc) and the the template is decided.
  • "Steps to reproduce" should mention if there's a Code Sample step coming up.
  • enable Dependabot.
  • automate package version management.

Distribute as a CLI.

Describe the bug

For using this package i had to:

  • Clone the repository
  • run dart pub get on root folder.
  • run dart ./example/issue.dart on root

Expected usage

  • Installing global locally as a tool.
  • Run from any location (preferably using a cwd file as the configuration file, example default-issue.json)
This issue was created using issue.

`Flutter doctor` not generated in Ubuntu

Describe the bug

Ubuntu didn't generate flutter doctor -v

Steps to reproduce

  1. run issue creation on Ubuntu.

Expected behavior

  1. See flutter information on the issue.

Actual results

  1. No flutter information.

Additional context

Screencast.from.18-10-22.16.11.18.webm
This issue was created using issue.
Flutter doctor -v
[✓] Flutter (Channel stable, 3.3.4, on Ubuntu 22.04.1
    LTS 5.15.0-50-generic, locale en_US.UTF-8)
    • Flutter version 3.3.4 on channel stable at
      /home/bri/sdk/flutter-stable
    • Upstream repository
      https://github.com/flutter/flutter.git
    • Framework revision eb6d86ee27 (2 weeks ago),
      2022-10-04 22:31:45 -0700
    • Engine revision c08d7d5efc
    • Dart version 2.18.2
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
    • Android SDK at /home/bri/Android/Sdk
    • Platform android-32, build-tools 32.1.0-rc1
    • Java binary at: /home/bri/app/android-studio/jre/bin/java
    • Java version Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at google-chrome

[✓] Linux toolchain - develop for Linux desktop
    • Ubuntu clang version 14.0.0-1ubuntu1
    • cmake version 3.22.1
    • ninja version 1.10.1
    • pkg-config version 0.29.2

[✓] Android Studio (version 2021.2)
    • Android Studio at /home/bri/app/android-studio
    • Flutter plugin version 70.2.2
    • Dart plugin version 212.5744
    • Java version Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)

[✓] VS Code (version 1.71.2)
    • VS Code at /usr/share/code
    • Flutter extension version 3.50.0

[✓] Connected device (2 available)
    • Linux (desktop) • linux  • linux-x64      • Ubuntu 22.04.1 LTS 5.15.0-50-generic
    • Chrome (web)    • chrome • web-javascript • Google Chrome 105.0.5195.125

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.