kernelci.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Guillaume Tucker <guillaume.tucker@collabora.com>
To: "kernelci@lists.linux.dev" <kernelci@lists.linux.dev>
Cc: "automated-testing@lists.yoctoproject.org"
	<automated-testing@lists.yoctoproject.org>
Subject: Re: kci command line poll: Click or Typer?
Date: Tue, 3 Oct 2023 10:17:49 +0200	[thread overview]
Message-ID: <a14b8281-005b-e9c2-bae9-cbc2e18ae0d2@collabora.com> (raw)
In-Reply-To: <9acfa649-4ae0-2e56-16b8-b7c24ab60a30@collabora.com>

On 21/09/2023 10:59, Guillaume Tucker wrote:
> Alongside the new KernelCI API we're also working on the new
> command-line tool "kci".  One of the key decisions to make is the
> framework to use for its implementation.  The legacy KernelCI
> tools use the standard argparse, now we may consider using Click
> or Typer as they are popular Python alternatives.
> 
> Here's a small poll with extra context to help people make up
> their mind and vote for their favourite choice:
> 
>   https://github.com/kernelci/kernelci-project/discussions/258
> 
> If you don't have a GitHub account, you can also reply to this
> email to vote instead.  Feel free to also bring up any discussion
> topics here or with GitHub comments of course.
> 
> We'll look at the results at the end of the month so there's a
> bit more than a week left to answer the poll.

The results are in, basically all 3 options received the same
number of votes!  However, there have been very constructive
discussions around it and a fair amount of engagement from the
community which is very encouraging.

Here's a summary with collected pros/cons for each option:

  https://github.com/kernelci/kernelci-project/discussions/258#discussioncomment-7172705

an a proposal going forward:

  https://github.com/kernelci/kernelci-project/discussions/258#discussioncomment-7172800

I'm including a copy of the proposal from the GitHub comment here
for the benefit of the mailing list:

> What I would propose is to start with Click using the version
> currently in Debian Stable (v8.1.3) as it has so many
> advantages over argparse.  Then if users find the Click
> dependencies too cumbersome, we may consider bundling it
> directly with the kernelci package, probably with a Git
> submodule or directly added to the repository under
> kernelci.click.
>
> As a fallback, if we later find that adopting Click in the
> community still requires a larger effort than maintaining an
> implementation based on argparse we might be able to convert
> the tool to argparse then.  This scenario seems very unlikely
> as there aren't any actual signs that Click is more difficult
> to adopt than the existing dependencies (see requirements.txt
> in kernelci-core repository).  So the risk seems very low, and
> if we did hit this kind of problem we would still have a way to
> mitigate it.

Like many important technical decision, it's a compromise between
diverging requirements.  Please raise any concerns you may have
now if anyone believes there are going to be blockers with using
Click as the kci command line framework.  We need to have a
stable implementation by the end of November to meet the next
KernelCI API milestone, as such the implementation of the new kci
tool will probably start next week.  Also, please let us know if
you want to contribute ;)

Thanks,
Guillaume


PS: We should bundle CloudEvents with the kernelci package...

      parent reply	other threads:[~2023-10-03  8:17 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-21  8:59 kci command line poll: Click or Typer? Guillaume Tucker
2023-09-21 19:41 ` [Automated-testing] " Bird, Tim
2023-09-21 20:17   ` Richard Purdie
2023-09-21 20:48     ` Mark Brown
2023-09-21 21:46       ` Bird, Tim
2023-09-22  7:24         ` Robert Schwebel
2023-09-22  7:59   ` Cyril Hrubis
2023-09-25  7:23     ` Guillaume Tucker
2023-09-25  7:12   ` Guillaume Tucker
2023-10-03  8:17 ` Guillaume Tucker [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a14b8281-005b-e9c2-bae9-cbc2e18ae0d2@collabora.com \
    --to=guillaume.tucker@collabora.com \
    --cc=automated-testing@lists.yoctoproject.org \
    --cc=kernelci@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).