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
prev parent 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).