Skip to content

[Refactor] Tasks tracker #692

Description

@SBoudrias

This tickets will list tasks that need to be completed to wrap-up Inquirer's core refactor.

I would love to have your help and make this refactor a success! Please comment below and let me know if you want to take ownership of a task. You can also jump into the gitter chat room and ping me over there if you get stuck.

Basic prompt core re-implementation PR is over at #688 and the initial refactoring scope was discussed on #685.

Goals

  1. Faster and smaller package
  2. All prompt will work standalone
  3. Public facing backward compatible API (inquirer.prompt)

Note: With standalone prompt, this mean we'll be able to release those as soon as they're ready.

Tasks

Rewriting prompts

  • input prompt
    • default option support
    • transformer option support
  • number prompt
  • password prompt
  • confirm prompt
  • list prompt
  • checkbox prompt
  • expand prompt
  • editor prompt
  • rawlist prompt

Infra

  • Core
    • Support prefix overwrite
    • List pagination module
      • Handle multiline options gracefully
      • Support for separators
      • Truncate non-highlighted options? (maybe as a configuration option?)
  • Performance
    • Setup automated performance regression check
    • Setup automated package size regression check
  • Support Node 6 (we want to use async/await)
    • Add typescript?
    • Add babel build step?
  • Rewrite documentation
  • Better behavior for edge cases

Top level API

  • Re-implement inquirer package to use the new prompts API
  • Create a demo package we can easily use with npx

Breaking change tracker

Listing the "by design" breaking change introduced in the different packages. Regression outside those are likely bug in the re-implementation and would be fixed.

  • list prompt is renamed to select to match HTML semantics.
  • No more reactive (rx.js) interfaces
  • No more inquirer.ui
  • No more this.async() syntax to define asynchronous actions

Do leave comments to if you think some tasks should be added to the refactor backlog!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions