unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Niklas Eklund <niklas.eklund@posteo.net>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: Add zuul.el package to ELPA
Date: Tue, 30 Aug 2022 16:59:13 +0000	[thread overview]
Message-ID: <87czchzmzi.fsf@posteo.net> (raw)
In-Reply-To: <jwv8rn5ddds.fsf-monnier+emacs@gnu.org>

Stefan Monnier <monnier@iro.umontreal.ca> writes:

> Niklas Eklund [2022-08-29 18:37:26] wrote:
>
>> Hello,
>>
>> I would like to add a package that I have developed named zuul.el,
>> https://git.sr.ht/~niklaseklund/zuul.el, to ELPA.
>
> I can do that, but it requires you change the copyright line to state it
> is owned by the FSF, as usual.  The patch below does that (and a few
> more things which you probably want to double-check).

Absolutely, I will apply that :)

> I notice that the doc says that it doesn't provide any commands other
> than those used from `zuul-log-mode`, then I wonder why these are
> autoloaded, since presumably by the time you can use them
> `zuul-log-mode` is active and hence the package has been loaded.

Thanks for the patch and feedback, the autoloaded commands could indeed
be removed.
>
>         Stefan

/Niklas

> diff --git a/.gitignore b/.gitignore
> index 1d8f1fc7f6..2e852834d1 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -1,2 +1,3 @@
>  /zuul-autoloads.el
> +/zuul-pkg.el
>  *.elc
> diff --git a/README.md b/README.md
> index a84d091e17..f3e83404a5 100644
> --- a/README.md
> +++ b/README.md
> @@ -105,4 +105,4 @@ The `zuul.el` package supports [Connection Local Variables](https://www.gnu.org/
>  
>  # Contributions
>  
> -The author might try to include the package into ELPA in the future, which means that if you want to contribute you must have a copyright assignment.
> +The author might try to include the package into GNU ELPA in the future, which means that if you want to contribute you must have a copyright assignment.
> diff --git a/zuul.el b/zuul.el
> index 178022180f..b7340dc61c 100644
> --- a/zuul.el
> +++ b/zuul.el
> @@ -1,6 +1,6 @@
>  ;;; zuul.el --- Interface to Zuul -*- lexical-binding: t; -*-
>  
> -;; Copyright (C) 2022 Niklas Eklund
> +;; Copyright (C) 2022  Free Software Foundation, Inc.
>  
>  ;; Author: Niklas Eklund <niklas.eklund@posteo.net>
>  ;; URL: https://git.sr.ht/~niklaseklund/zuul.el
> @@ -371,7 +371,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>  
>  ;;;; Commands
>  
> -;;;###autoload
>  (defun zuul-switch-build ()
>    "Switch to another build."
>    (interactive)
> @@ -379,7 +378,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>      (zuul--open-build-log
>       (zuul--builds zuul--current-build))))
>  
> -;;;###autoload
>  (defun zuul-switch-buildset ()
>    "Switch to a build from a specific buildset."
>    (interactive)
> @@ -387,7 +385,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>      (zuul--open-build-log
>       (zuul--buildsets zuul--current-build))))
>  
> -;;;###autoload
>  (defun zuul-open-build-in-browser ()
>    "Open build in browser."
>    (interactive)
> @@ -397,7 +394,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>               "/t/" zuul-tenant
>               "/build/" .uuid "/console"))))
>  
> -;;;###autoload
>  (defun zuul-run-build-command ()
>    "Run build command from build log."
>    (interactive)
> @@ -406,7 +402,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>          (detached-compile command)
>        (compile command))))
>  
> -;;;###autoload
>  (defun zuul-next-build ()
>    "Switch to next build."
>    (interactive)
> @@ -422,7 +417,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>            (cdr (assoc next-index builds-with-index))))
>      (zuul--open-build-log next-build)))
>  
> -;;;###autoload
>  (defun zuul-previous-build ()
>    "Switch to previous build."
>    (interactive)
> @@ -438,7 +432,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>            (cdr (assoc previous-index builds-with-index))))
>      (zuul--open-build-log previous-build)))
>  
> -;;;###autoload
>  (defun zuul-quit-build ()
>    "Kill buffers associated with build."
>    (interactive)
> @@ -459,7 +452,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>                                      .change)))))
>                   (seq-do #'kill-buffer))))
>  
> -;;;###autoload
>  (defun zuul-previous-command ()
>    "Navigate to previous command."
>    (interactive)
> @@ -468,7 +460,6 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>      (when (re-search-backward re-prompt nil t)
>        (goto-char (match-end 0)))))
>  
> -;;;###autoload
>  (defun zuul-next-command ()
>    "Navigate to next command."
>    (interactive)
> @@ -484,7 +475,7 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>    (with-connection-local-variables
>     (seq-find
>      (lambda (it)
> -      (string= (plist-get it ':name) zuul-tenant))
> +      (string= (plist-get it :name) zuul-tenant))
>      zuul-tenant-configs)))
>  
>  (defun zuul--project-root (project)
> @@ -492,7 +483,7 @@ Optionally provide parameters CHANGE, PROJECT, PATCHSET and LIMIT."
>    (if-let ((tenant-config (zuul--tenant-config))
>             (project-root (cdr
>                            (assoc project
> -                                 (plist-get tenant-config ':project-roots)))))
> +                                 (plist-get tenant-config :project-roots)))))
>        (concat (file-remote-p default-directory) project-root)
>      (message "Project root for %s wasn't found, falling back to `default-directory'" project)
>      default-directory))
> @@ -854,13 +845,13 @@ Optionally provide extra parameters PARAMS, PARSER, METHOD, BUFFER or HEADERS."
>    (let* ((annotations
>            (seq-map (lambda (candidate)
>                       (cl-loop for config in annotation-config
> -                              collect `(,(plist-get config ':name) .
> -                                        ,(funcall (plist-get config ':function) candidate))))
> +                              collect `(,(plist-get config :name) .
> +                                        ,(funcall (plist-get config :function) candidate))))
>                     candidates))
>           (annotation-widths
>            (cl-loop for config in annotation-config
>                     collect
> -                   `(,(plist-get config ':name) .
> +                   `(,(plist-get config :name) .
>                       ,(thread-last annotations
>                                     (seq-map (lambda (it) (length (alist-get (plist-get config :name) it))))
>                                     (funcall (lambda (it)
> @@ -871,17 +862,17 @@ Optionally provide extra parameters PARAMS, PARSER, METHOD, BUFFER or HEADERS."
>                   `(,(cl-loop for config in annotation-config
>                               concat
>                               (let* ((padding 3)
> -                                    (str (alist-get (plist-get config ':name) annotation))
> -                                    (width (alist-get (plist-get config ':name) annotation-widths))
> +                                    (str (alist-get (plist-get config :name) annotation))
> +                                    (width (alist-get (plist-get config :name) annotation-widths))
>                                      (new-str
> -                                     (if-let* ((align (plist-get config ':align))
> +                                     (if-let* ((align (plist-get config :align))
>                                                 (align-right (eq 'right align)))
>                                           (concat (make-string (- width (length str)) ?\s)
>                                                   str (make-string padding ?\s))
>                                         (concat
>                                          (truncate-string-to-width str width 0 ?\s)
>                                          (make-string padding ?\s)))))
> -                               (if-let ((face (plist-get config ':face)))
> +                               (if-let ((face (plist-get config :face)))
>                                     (zuul--propertize-face new-str face)
>                                   new-str)))
>                     . ,candidate))
> @@ -1019,33 +1010,33 @@ Optionally provide extra parameters PARAMS, PARSER, METHOD, BUFFER or HEADERS."
>  
>  (defun zuul--data-playbook-name-str (data)
>    "Return name of playbook in DATA."
> -  (let-alist (plist-get data ':playbook)
> +  (let-alist (plist-get data :playbook)
>      .playbook))
>  
>  (defun zuul--data-playbook-phase-str (data)
>    "Return the phase of playbook in DATA."
> -  (let-alist (plist-get data ':playbook)
> +  (let-alist (plist-get data :playbook)
>      (concat (upcase (substring .phase 0 1))
>              (substring .phase 1))))
>  
>  (defun zuul--data-play-name-str (data)
>    "Return the name of play in DATA."
> -  (let-alist (plist-get data ':play)
> +  (let-alist (plist-get data :play)
>      .play.name))
>  
>  (defun zuul--data-task-name-str (data)
>    "Return the name of task in DATA."
> -  (let-alist (plist-get data ':task)
> +  (let-alist (plist-get data :task)
>      .task.name))
>  
>  (defun zuul--data-task-role-str (data)
>    "Return the role of task in DATA."
> -  (let-alist (plist-get data ':task)
> +  (let-alist (plist-get data :task)
>      (or .role.name "")))
>  
>  (defun zuul--data-task-duration-str (data)
>    "Return the duration of task in DATA."
> -  (let-alist (plist-get data ':task)
> +  (let-alist (plist-get data :task)
>      (let ((duration
>             (float-time
>              (time-subtract
> @@ -1055,12 +1046,12 @@ Optionally provide extra parameters PARAMS, PARSER, METHOD, BUFFER or HEADERS."
>  
>  (defun zuul--data-host-name-str (data)
>    "Return the name of the host in DATA."
> -  (pcase-let* ((`(,hostname . ,_data) (plist-get data ':host)))
> +  (pcase-let* ((`(,hostname . ,_data) (plist-get data :host)))
>      (symbol-name hostname)))
>  
>  (defun zuul--data-host-cmd-str (data)
>    "Return the command of the host in DATA."
> -  (pcase-let* ((`(,_hostname . ,data) (plist-get data ':host))
> +  (pcase-let* ((`(,_hostname . ,data) (plist-get data :host))
>                 (cmd-str (let-alist data .cmd)))
>      (if (stringp cmd-str)
>          cmd-str
> @@ -1068,7 +1059,7 @@ Optionally provide extra parameters PARAMS, PARSER, METHOD, BUFFER or HEADERS."
>  
>  (defun zuul--data-host-result-str (data)
>    "Return the result of the host in DATA."
> -  (pcase-let* ((`(,_hostname . ,data) (plist-get data ':host))
> +  (pcase-let* ((`(,_hostname . ,data) (plist-get data :host))
>                 (result
>                  (let-alist data
>                    (if .failed



      reply	other threads:[~2022-08-30 16:59 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-29 18:37 Add zuul.el package to ELPA Niklas Eklund
2022-08-30  9:02 ` Philip Kaludercic
2022-08-30 19:52   ` Niklas Eklund
2022-08-30 22:11     ` Philip Kaludercic
2022-08-31  9:25       ` Niklas Eklund
2022-08-31  9:54         ` Niklas Eklund
2022-08-31 11:09           ` Philip Kaludercic
2022-08-31 11:44             ` Niklas Eklund
2022-08-31 11:57               ` Philip Kaludercic
2022-08-31 12:08                 ` Philip Kaludercic
2022-08-31 12:47                   ` Niklas Eklund
2022-08-31 12:44                 ` Niklas Eklund
2022-08-31 14:43                   ` Philip Kaludercic
2022-08-30 14:22 ` Stefan Monnier
2022-08-30 16:59   ` Niklas Eklund [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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=87czchzmzi.fsf@posteo.net \
    --to=niklas.eklund@posteo.net \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).