[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ELPA] New package: buildbot.el
From: |
Yuchen Pei |
Subject: |
Re: [ELPA] New package: buildbot.el |
Date: |
Wed, 12 Jul 2023 00:58:47 +1000 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Hi Prot,
Thanks for your comments. Please find my replies below.
On Tue 2023-07-11 00:06:12 +0300, Protesilaos Stavrou wrote:
>
> I will try to help though note that I have no means of testing
> buildbot.
Below I expand the example from README.org, using the mariadb buildbot.
First, some setup
#+begin_src elisp
(require 'buildbot)
(setq buildbot-host "https://buildbot.mariadb.org")
(setq buildbot-builders (buildbot-get-all-builders))
#+end_src
Then, run one of the three entry point commands
`buildbot-revision-open', `buildbot-branch-open', or
`buildbot-builder-open' to get build results.
For example, to see build results of the 11.1 branch, do
M-x buildbot-branch-open <RET> 11.1 <RET>
which will display the commits and their build results.
HOWEVER, I made a mistake in assuming the package would work with any
buildbot instance with version >= 0.9.0: trying a few instances on [1]
I found out that is not the case. So I will need to fix that.
[1] https://github.com/buildbot/buildbot/wiki/SuccessStories
>
> Before checking the code of the package:
>
> * You have assigned copyright to the Free Software Foundation and are
> the author/maintainer of the 'hcel' and 'luwak' GNU ELPA packages.
>
> * The 'buildbot' dependency uses the GPL version 2 and is a member of
> the Software Freedom Conservancy.
Yeah, though this kind of dependency is different from the dependency on
another library e.g. the dependency on the `json' feature. From a
license point of view, the license of a client program gnerally should
not affect or be affected by that of a server program on another
computer.
>From a user freedom point of view, it is not an issue if 1. the server
program does not do the user's own computing OR 2. the server is
controlled by a project the user belongs to and the server program is
free. So because of 1. it is ok to download / stream video from youtube
if it does not involve nonfree js because the video is hosted on another
computer. In the case of buildbot or CI in general it is a bit more
complicated because CI is doing the user's own computing, i.e. compiling
and testing code, but I think it is safe to assume the typical user of a
CI is a developer of a project they are part of i.e. 2. is satisfied.
https://www.gnu.org/philosophy/who-does-that-server-really-serve.en.html
>
> Notes about the code in your buildbot.el:
>
> 1. The 'buildbot.el' file lacks a terminating comment (the "... ends
> here" part). Your other files have it.
Done.
>
> 2. I notice that 'M-x checkdoc' returns a few issues in your files.
> Though, for example, in 'buildbot-client.el' they seem to be false
> positives. Addressing those is not a priority. I personally do it
> so that notes do not crowd out errors/warnings.
They are all "Probably "foos" should be imperative "foo"", which do
not make sense to me. An example is the docstring "Get the
revision-info and builds from a set of CHANGES." where it complains
about the "CHANGES".
>
> 3. In 'buildbot-utils.el' the functions 'buildbot-url-fetch-json' and
> 'buildbot-url-fetch-raw' can be consolidated.
Done.
>
> 4. In 'buildbot-view.el', you are defining key bindings in many
> places. It may be easier to have them all in one place where the
> keymap is defined as a variable.
>
Done.
Best,
Yuchen
--
PGP Key: 47F9 D050 1E11 8879 9040 4941 2126 7E93 EF86 DFD0
<https://ypei.org/assets/ypei-pubkey.txt>