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

Replace KotlinInquirer #3483

Open
6 of 9 tasks
Nereboss opened this issue Jan 23, 2024 · 3 comments
Open
6 of 9 tasks

Replace KotlinInquirer #3483

Nereboss opened this issue Jan 23, 2024 · 3 comments
Assignees
Labels
pr-analysis Issues that touch the analysis pr(oject). priority:high Set by PO tech For technical stories without user impact (=refactoring stories).

Comments

@Nereboss
Copy link
Contributor

Nereboss commented Jan 23, 2024

Feature request

As already discussed, KotlinInquirer is an unmaintained repository, which is the source of some bugs and workarounds which cannot be adressed without replacing the tool. We therefore plan to use kotter to 'rebuild' the parts of KotlinInquirer that we used.

Description

As a developer, I want KotlinInquirer to be replaced so that we have more control over issues in the cli that occur because KotlinInquirer is an old, unmaintained repo.

Acceptance criteria

  • All questions from KotlinInquirer that we use is rebuilt
  • All parsers are refactored to use the new functions
  • KotlinInquirer is removed from all dependencies

Necessary refactoring

As all kotter questions need to be inside a 'session' block and only one session block can be used per executed command, the codes structure needs to be refactored, so that a session is only started in one single place.

Development notes (optional Task Breakdown)

  • Implement used functions of KotlinInquirer
    • confirm dialog
    • Input dialog
    • number-input dialog
    • select entry from list dialog
    • select multiple entries from list (checkbox) dialog
  • Test if all implemented functions behave like their counterparts
  • Write tests for new functions
  • Insert new functions into parsers

Open questions

  • Do we use this opportunity to improve the cli?
    • Autocomplete of filepaths
    • Handling of invalid inputs directly in the question -> Has to be done as normal logging does not work inside of a kotter session
    • Loading icons once a parser is started so user knows the program is still running
  • What workarounds did we have to do because of KotlinInquirers limitations and can we build them into our new functions?
  • Which bugs were caused by KotlinInquirer that can now be fixed?
@Nereboss Nereboss added pr-analysis Issues that touch the analysis pr(oject). tech For technical stories without user impact (=refactoring stories). labels Jan 23, 2024
Nereboss added a commit that referenced this issue Jan 23, 2024
Nereboss added a commit that referenced this issue Jan 23, 2024
Nereboss added a commit that referenced this issue Jan 23, 2024
Nereboss added a commit that referenced this issue Jan 23, 2024
Nereboss added a commit that referenced this issue Jan 24, 2024
Class is no longer needed as all functions extend the Session class from Kotter and are applicable in the correct scope
@ce-bo
Copy link
Collaborator

ce-bo commented Jan 25, 2024

Are there still open questions @Nereboss?

Nereboss added a commit that referenced this issue Feb 2, 2024
Still a lot of todos that need to be closed and comments that need to be implemented, as well as finding a solution for the session problem
@Nereboss Nereboss added the blocked The issue or feature is blocked on another issue or PR that has to be resolved first label Feb 9, 2024
@Nereboss
Copy link
Contributor Author

Nereboss commented Feb 9, 2024

During integration we noticed a bug when calling kotter methods from different files. This bug has been reported to the developer who is working on a fix but until then this is blocked

Nereboss added a commit that referenced this issue Feb 20, 2024
@Nereboss Nereboss removed the blocked The issue or feature is blocked on another issue or PR that has to be resolved first label Feb 20, 2024
@Nereboss
Copy link
Contributor Author

The bug that blocked this issue has been fixed by the developer, we can continue working on this issue

Nereboss added a commit that referenced this issue Mar 11, 2024
Nereboss added a commit that referenced this issue Apr 11, 2024
phanlezz pushed a commit that referenced this issue May 6, 2024
phanlezz pushed a commit that referenced this issue May 6, 2024
phanlezz pushed a commit that referenced this issue May 6, 2024
phanlezz pushed a commit that referenced this issue May 6, 2024
phanlezz pushed a commit that referenced this issue May 6, 2024
Class is no longer needed as all functions extend the Session class from Kotter and are applicable in the correct scope
phanlezz pushed a commit that referenced this issue May 6, 2024
Still a lot of todos that need to be closed and comments that need to be implemented, as well as finding a solution for the session problem
phanlezz pushed a commit that referenced this issue May 6, 2024
phanlezz pushed a commit that referenced this issue May 6, 2024
phanlezz pushed a commit that referenced this issue May 6, 2024
@ChristianHuehn ChristianHuehn added the priority:high Set by PO label Jun 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr-analysis Issues that touch the analysis pr(oject). priority:high Set by PO tech For technical stories without user impact (=refactoring stories).
Projects
None yet
Development

No branches or pull requests

3 participants