unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Adding new packages to NonGNU ELPA
@ 2021-08-03  7:17 Bozhidar Batsov
  2021-08-03 13:06 ` Stefan Monnier
  0 siblings, 1 reply; 9+ messages in thread
From: Bozhidar Batsov @ 2021-08-03  7:17 UTC (permalink / raw)
  To: Emacs Devel

[-- Attachment #1: Type: text/plain, Size: 772 bytes --]

Hey everyone,

I'm interested in adding some of the packages I maintain to NonGNU ELPA (e.g. clojure-mode, inf-clojure, CIDER, Projectile, crux) and I'm curious what's the exact process there. I already read the README and it seems that all I have to do is change one file (elpa-packages) and see if the packages build correctly afterwards, but I'm not clear on the following:

- Does someone need to approve the packages that I suggest?
- Should I get commit access to the repo and do the necessary changes myself?
- Where's that admin/README file that elpa-packages refers to? Is it something in the GNU ELPA repo that wasn't copied?

Are there some tutorials for adding stuff to ELPA that you'd recommend, apart from the README itself?

Thanks in advance for your help!

[-- Attachment #2: Type: text/html, Size: 1051 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-03  7:17 Adding new packages to NonGNU ELPA Bozhidar Batsov
@ 2021-08-03 13:06 ` Stefan Monnier
  2021-08-09  8:07   ` Bozhidar Batsov
  0 siblings, 1 reply; 9+ messages in thread
From: Stefan Monnier @ 2021-08-03 13:06 UTC (permalink / raw)
  To: Bozhidar Batsov; +Cc: Emacs Devel

> I'm interested in adding some of the packages I maintain to NonGNU ELPA
> (e.g. clojure-mode, inf-clojure, CIDER, Projectile, crux) and I'm curious
> what's the exact process there. I already read the README and it seems that
> all I have to do is change one file (elpa-packages) and see if the packages
> build correctly afterwards,

That's about right.

> but I'm not clear on the following:
> - Does someone need to approve the packages that I suggest?
> - Should I get commit access to the repo and do the necessary changes myself?

You can send me the patch to `elpa-packages`.

> - Where's that admin/README file that elpa-packages refers to?

It's in the `elpa-admin` branch of the `elpa.git` repository (it gets
added under `admin` when you do `make` after cloning nongnu.git):
https://git.savannah.gnu.org/cgit/emacs/elpa.git/tree/?h=elpa-admin


        Stefan




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-03 13:06 ` Stefan Monnier
@ 2021-08-09  8:07   ` Bozhidar Batsov
  2021-08-09 17:06     ` Stefan Monnier
  0 siblings, 1 reply; 9+ messages in thread
From: Bozhidar Batsov @ 2021-08-09  8:07 UTC (permalink / raw)
  To: Emacs Devel


[-- Attachment #1.1: Type: text/plain, Size: 1133 bytes --]

Thanks!

Here's a patch for the first package, clojure-mode. Let me know if it looks good to you and I'll create more patches for the other packages. 

On Tue, Aug 3, 2021, at 4:06 PM, Stefan Monnier wrote:
> > I'm interested in adding some of the packages I maintain to NonGNU ELPA
> > (e.g. clojure-mode, inf-clojure, CIDER, Projectile, crux) and I'm curious
> > what's the exact process there. I already read the README and it seems that
> > all I have to do is change one file (elpa-packages) and see if the packages
> > build correctly afterwards,
> 
> That's about right.
> 
> > but I'm not clear on the following:
> > - Does someone need to approve the packages that I suggest?
> > - Should I get commit access to the repo and do the necessary changes myself?
> 
> You can send me the patch to `elpa-packages`.
> 
> > - Where's that admin/README file that elpa-packages refers to?
> 
> It's in the `elpa-admin` branch of the `elpa.git` repository (it gets
> added under `admin` when you do `make` after cloning nongnu.git):
> https://git.savannah.gnu.org/cgit/emacs/elpa.git/tree/?h=elpa-admin
> 
> 
>         Stefan
> 
> 
> 

[-- Attachment #1.2: Type: text/html, Size: 1853 bytes --]

[-- Attachment #2: 0001-elpa-packages-clojure-mode-Add-package.patch --]
[-- Type: application/octet-stream, Size: 838 bytes --]

From c714a0b6f6f9d108e65c1567d3bab6cf911b4eaf Mon Sep 17 00:00:00 2001
From: Bozhidar Batsov <bozhidar@batsov.com>
Date: Mon, 9 Aug 2021 11:02:08 +0300
Subject: [PATCH] * elpa packages (clojure-mode): Add package

---
 elpa-packages | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/elpa-packages b/elpa-packages
index fe68de054..345906f46 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -14,6 +14,10 @@
   ;; revision a9134009.
   :version-map ((nil "4.7.1" "a9134009bd037a39cbda21806867d0534d340bca")))
 
+ ("clojure-mode"	:url "https://github.com/clojure-emacs/clojure-mode"
+  :ignored-files ("clojure-mode-extra-font-locking.el" "doc" "test" "test.clj")
+  :news "CHANGELOG.md")
+
  ("editorconfig"	:url "https://github.com/editorconfig/editorconfig-emacs"
   :doc "doc/editorconfig.texi"
   :news "CHANGELOG.md"
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-09  8:07   ` Bozhidar Batsov
@ 2021-08-09 17:06     ` Stefan Monnier
  2021-08-09 17:54       ` Bozhidar Batsov
  0 siblings, 1 reply; 9+ messages in thread
From: Stefan Monnier @ 2021-08-09 17:06 UTC (permalink / raw)
  To: Bozhidar Batsov; +Cc: Emacs Devel

> Here's a patch for the first package, clojure-mode. Let me know if it looks
> good to you and I'll create more patches for the other packages. 

Looks good to me.  The only comment I would make is that we should want
to include the `doc` subdirectory since it can be useful.  I understand
that currently our infrastructure doesn't offer any easy way for the
user to access it, but it should be taken as a motivation to
address this.


        Stefan




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-09 17:06     ` Stefan Monnier
@ 2021-08-09 17:54       ` Bozhidar Batsov
  2021-08-09 18:15         ` Stefan Monnier
  0 siblings, 1 reply; 9+ messages in thread
From: Bozhidar Batsov @ 2021-08-09 17:54 UTC (permalink / raw)
  To: Emacs Devel

[-- Attachment #1: Type: text/plain, Size: 665 bytes --]

Thanks for the feedback! I guess you'll apply this patch yourself and I can send you some more packages tomorrow then, right?

On Mon, Aug 9, 2021, at 8:06 PM, Stefan Monnier wrote:
> > Here's a patch for the first package, clojure-mode. Let me know if it looks
> > good to you and I'll create more patches for the other packages. 
> 
> Looks good to me.  The only comment I would make is that we should want
> to include the `doc` subdirectory since it can be useful.  I understand
> that currently our infrastructure doesn't offer any easy way for the
> user to access it, but it should be taken as a motivation to
> address this.
> 
> 
>         Stefan
> 
> 
> 

[-- Attachment #2: Type: text/html, Size: 1136 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-09 17:54       ` Bozhidar Batsov
@ 2021-08-09 18:15         ` Stefan Monnier
  2021-08-11  7:03           ` Bozhidar Batsov
  0 siblings, 1 reply; 9+ messages in thread
From: Stefan Monnier @ 2021-08-09 18:15 UTC (permalink / raw)
  To: Bozhidar Batsov; +Cc: Emacs Devel

Bozhidar Batsov [2021-08-09 20:54:20] wrote:
> Thanks for the feedback! I guess you'll apply this patch yourself

Done,

> and I can send you some more packages tomorrow then, right?

Sure,


        Stefan




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-09 18:15         ` Stefan Monnier
@ 2021-08-11  7:03           ` Bozhidar Batsov
  2021-08-25 11:05             ` Philip Kaludercic
  0 siblings, 1 reply; 9+ messages in thread
From: Bozhidar Batsov @ 2021-08-11  7:03 UTC (permalink / raw)
  To: Emacs Devel


[-- Attachment #1.1: Type: text/plain, Size: 558 bytes --]

Here's the next batch of patches, I hope I got everything right. I've started with the simple packages and I'll continue with CIDER and its related packages, as they have a bunch of transitive deps I'll need to add to NonGNU ELPA as well (a, parseedn, parseclj). 

On Mon, Aug 9, 2021, at 9:15 PM, Stefan Monnier wrote:
> Bozhidar Batsov [2021-08-09 20:54:20] wrote:
> > Thanks for the feedback! I guess you'll apply this patch yourself
> 
> Done,
> 
> > and I can send you some more packages tomorrow then, right?
> 
> Sure,
> 
> 
>         Stefan
> 
> 
> 

[-- Attachment #1.2: Type: text/html, Size: 1015 bytes --]

[-- Attachment #2: 0001-elpa-packages-guru-mode-Add-package.patch --]
[-- Type: application/octet-stream, Size: 695 bytes --]

From df6b0d6d851c1f0b0829dc6f61df4dd9dcf24d82 Mon Sep 17 00:00:00 2001
From: Bozhidar Batsov <bozhidar@batsov.dev>
Date: Wed, 11 Aug 2021 09:43:19 +0300
Subject: [PATCH 1/5] * elpa-packages (guru-mode): Add package

---
 elpa-packages | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/elpa-packages b/elpa-packages
index 345906f46..c7b917cec 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -58,7 +58,8 @@
 
  ("goto-chg"		:url "https://github.com/emacs-evil/goto-chg")
 
+ ("guru-mode"		:url "https://github.com/bbatsov/guru-mode")
+
  ("haskell-mode"	:url "https://github.com/haskell/haskell-mode"
   :doc "doc/haskell-mode.texi"
   :ignored-files ("images" "test" "logo.svg")
--
2.25.1


[-- Attachment #3: 0002-elpa-packages-crux-Add-package.patch --]
[-- Type: application/octet-stream, Size: 710 bytes --]

From 32b1a04c79944f56521c766382725e49e4205d1d Mon Sep 17 00:00:00 2001
From: Bozhidar Batsov <bozhidar@batsov.dev>
Date: Wed, 11 Aug 2021 09:44:17 +0300
Subject: [PATCH 2/5] * elpa-packages (crux): Add package

---
 elpa-packages | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/elpa-packages b/elpa-packages
index c7b917cec..5ccd4c236 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -18,7 +18,8 @@
   :ignored-files ("clojure-mode-extra-font-locking.el" "doc" "test" "test.clj")
   :news "CHANGELOG.md")
 
+ ("crux"		:url "https://github.com/bbatsov/crux")
+
  ("editorconfig"	:url "https://github.com/editorconfig/editorconfig-emacs"
   :doc "doc/editorconfig.texi"
   :news "CHANGELOG.md"
--
2.25.1


[-- Attachment #4: 0003-elpa-packages-inf-clojure-Add-package.patch --]
[-- Type: application/octet-stream, Size: 769 bytes --]

From 193b8b575c0b8072ae9e2a9333b177367252cea8 Mon Sep 17 00:00:00 2001
From: Bozhidar Batsov <bozhidar@batsov.dev>
Date: Wed, 11 Aug 2021 09:49:45 +0300
Subject: [PATCH 3/5] * elpa-packages (inf-clojure): Add package

---
 elpa-packages | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/elpa-packages b/elpa-packages
index 5ccd4c236..895cab0f1 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -75,6 +75,10 @@
  ("htmlize"		:url "https://github.com/hniksic/emacs-htmlize"
   :ignored-files ("htmlize.el.html"))
 
+ ("inf-clojure"	:url "https://github.com/clojure-emacs/inf-clojure"
+  :ignored-files ("test")
+  :news "CHANGELOG.md")
+
  ("lua-mode"		:url "https://github.com/immerrr/lua-mode/"
   :ignored-files ("test" "travis" "init-tryout.el"))
 
-- 
2.25.1


[-- Attachment #5: 0004-elpa-packages-projectile-Add-package.patch --]
[-- Type: application/octet-stream, Size: 1111 bytes --]

From 34668d24ee93dc35189113176fbdf886fc7c2e35 Mon Sep 17 00:00:00 2001
From: Bozhidar Batsov <bozhidar@batsov.dev>
Date: Wed, 11 Aug 2021 09:55:28 +0300
Subject: [PATCH 4/5] * elpa-packages (projectile): Add package

---
 elpa-packages | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/elpa-packages b/elpa-packages
index 895cab0f1..2e8aa45e1 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -75,7 +75,7 @@
  ("htmlize"		:url "https://github.com/hniksic/emacs-htmlize"
   :ignored-files ("htmlize.el.html"))
 
- ("inf-clojure"	:url "https://github.com/clojure-emacs/inf-clojure"
+ ("inf-clojure" 	:url "https://github.com/clojure-emacs/inf-clojure"
   :ignored-files ("test")
   :news "CHANGELOG.md")
 
@@ -131,6 +131,10 @@
  ("paredit"		:url "https://mumble.net/~campbell/git/paredit.git"
   :ignored-files ("check.sh" "genhtml.sh" "test.el"))
 
+ ("projectile"  	:url "https://github.com/bbatsov/projectile"
+  :ignored-files ("doc" "test")
+  :news "CHANGELOG.md")
+
  ("request"		:url "https://github.com/tkf/emacs-request"
   :ignored-files ("tests" "doc" "COPYING"))
 
-- 
2.25.1


[-- Attachment #6: 0005-elpa-packages-rubocop-Add-package.patch --]
[-- Type: application/octet-stream, Size: 711 bytes --]

From 4eeda2535978c6af1c1adec9091083e02fb7e29f Mon Sep 17 00:00:00 2001
From: Bozhidar Batsov <bozhidar@batsov.dev>
Date: Wed, 11 Aug 2021 09:57:31 +0300
Subject: [PATCH 5/5] * elpa-packages (rubocop): Add package

---
 elpa-packages | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/elpa-packages b/elpa-packages
index 2e8aa45e1..05a593b15 100644
--- a/elpa-packages
+++ b/elpa-packages
@@ -138,6 +138,8 @@
  ("request"		:url "https://github.com/tkf/emacs-request"
   :ignored-files ("tests" "doc" "COPYING"))
 
+ ("rubocop"		:url "https://github.com/rubocop/rubocop-emacs")
+
  ("rust-mode"		:url "https://github.com/rust-lang/rust-mode"
   :ignored-files ("test-*" "triagebot.toml" "*.sh"))
 
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-11  7:03           ` Bozhidar Batsov
@ 2021-08-25 11:05             ` Philip Kaludercic
  2021-08-25 15:49               ` Bozhidar Batsov
  0 siblings, 1 reply; 9+ messages in thread
From: Philip Kaludercic @ 2021-08-25 11:05 UTC (permalink / raw)
  To: Bozhidar Batsov; +Cc: Emacs Devel

"Bozhidar Batsov" <bozhidar@batsov.dev> writes:

> Here's the next batch of patches, I hope I got everything right. I've
> started with the simple packages and I'll continue with CIDER and its
> related packages, as they have a bunch of transitive deps I'll need to
> add to NonGNU ELPA as well (a, parseedn, parseclj).

One of my hopes regarding NonGNU ELPA was that certain packages,
including dependencies could be effectively deprecated. Among these I
hoped to see packages such as a (but also s, f, ht, ...). My
understanding was that these were created to either compensate
deficiencies in the build-in functions provided by older versions of
Emacs. The other reason is that some people prefer a more functional
style of programming, that the usual stateful, imperative-ish Elisp
doesn't always provide.

Regarding the first motivation, I think it is legitimate, because that
is how backwards compatibility can be maintained. It might therefore
make sense to provide a compatibility library-package to provide useful
but perhaps simplified/dummy definitions of new functions, macros and
variables added in newer versions of Emacs. That of course would only
make sense if there is any consensus that the community libraries
shouldn't be used.

-- 
	Philip Kaludercic



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Adding new packages to NonGNU ELPA
  2021-08-25 11:05             ` Philip Kaludercic
@ 2021-08-25 15:49               ` Bozhidar Batsov
  0 siblings, 0 replies; 9+ messages in thread
From: Bozhidar Batsov @ 2021-08-25 15:49 UTC (permalink / raw)
  To: Emacs Devel

[-- Attachment #1: Type: text/plain, Size: 2621 bytes --]

> One of my hopes regarding NonGNU ELPA was that certain packages,
> including dependencies could be effectively deprecated. Among these I
> hoped to see packages such as a (but also s, f, ht, ...). My
> understanding was that these were created to either compensate
> deficiencies in the build-in functions provided by older versions of
> Emacs. The other reason is that some people prefer a more functional
> style of programming, that the usual stateful, imperative-ish Elisp
> doesn't always provide.

I guess in the end of the day that mostly depends on the package maintainers. Some are quite attached to those utility libraries, even if I myself don't like them and I've always avoided them. But I happen to be the type of person who avoids external dependencies as much as possible in general. :-) It was actually me who added the most common functions from s.el to Emacs itself a few years ago. Probably something like this should be done for f.el as well at some point.

For CIDER one can follow the progress of removing a.el from parseclj here https://github.com/clojure-emacs/parseclj/pull/29 Some limitations of map.el are preventing this change from being wrapped up fully, though. Still, there are no showstoppers.  

On Wed, Aug 25, 2021, at 2:05 PM, Philip Kaludercic wrote:
> "Bozhidar Batsov" <bozhidar@batsov.dev> writes:
> 
> > Here's the next batch of patches, I hope I got everything right. I've
> > started with the simple packages and I'll continue with CIDER and its
> > related packages, as they have a bunch of transitive deps I'll need to
> > add to NonGNU ELPA as well (a, parseedn, parseclj).
> 
> One of my hopes regarding NonGNU ELPA was that certain packages,
> including dependencies could be effectively deprecated. Among these I
> hoped to see packages such as a (but also s, f, ht, ...). My
> understanding was that these were created to either compensate
> deficiencies in the build-in functions provided by older versions of
> Emacs. The other reason is that some people prefer a more functional
> style of programming, that the usual stateful, imperative-ish Elisp
> doesn't always provide.
> 
> Regarding the first motivation, I think it is legitimate, because that
> is how backwards compatibility can be maintained. It might therefore
> make sense to provide a compatibility library-package to provide useful
> but perhaps simplified/dummy definitions of new functions, macros and
> variables added in newer versions of Emacs. That of course would only
> make sense if there is any consensus that the community libraries
> shouldn't be used.
> 
> -- 
> Philip Kaludercic
> 
> 

[-- Attachment #2: Type: text/html, Size: 3540 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-08-25 15:49 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-03  7:17 Adding new packages to NonGNU ELPA Bozhidar Batsov
2021-08-03 13:06 ` Stefan Monnier
2021-08-09  8:07   ` Bozhidar Batsov
2021-08-09 17:06     ` Stefan Monnier
2021-08-09 17:54       ` Bozhidar Batsov
2021-08-09 18:15         ` Stefan Monnier
2021-08-11  7:03           ` Bozhidar Batsov
2021-08-25 11:05             ` Philip Kaludercic
2021-08-25 15:49               ` Bozhidar Batsov

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