* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. [not found] ` <20221213074340.1C45BC000CE@vcs2.savannah.gnu.org> @ 2022-12-13 14:50 ` Stefan Monnier 2022-12-13 18:52 ` Stefan Kangas 0 siblings, 1 reply; 8+ messages in thread From: Stefan Monnier @ 2022-12-13 14:50 UTC (permalink / raw) To: Stefan Kangas; +Cc: Jonas Bernoulli, emacs-devel > * elpa-packages (emacsql): New package. > > * elpa-packages (emacsql-mysql): New package. > > * elpa-packages (emacsql-psql): New package. > > * elpa-packages (emacsql-sqlite): New package. > > * elpa-packages (emacsql-sqlite-builtin): New package. To me this looks completely ridiculous: why split this into N packages, when each one is tiny anyway. Let's stop the madness and make it a single package. Nobody (neither we, nor the users) benefits from having such tiny packages. Stefan ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. 2022-12-13 14:50 ` [nongnu] main f4166f428a: * elpa-packages (emacsql): New package Stefan Monnier @ 2022-12-13 18:52 ` Stefan Kangas 2022-12-15 16:10 ` Stefan Monnier 0 siblings, 1 reply; 8+ messages in thread From: Stefan Kangas @ 2022-12-13 18:52 UTC (permalink / raw) To: Stefan Monnier; +Cc: Jonas Bernoulli, emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: > To me this looks completely ridiculous: why split this into N packages, > when each one is tiny anyway. The reason I did it like that is only that it was the path of least resistance: it replicates what is currently there on MELPA. This matters because other packages depend on the existence of e.g. the `emacsql-sqlite' package.[1] If we want to add those packages as is, and have them installable, their dependencies must also be in NonGNU ELPA. > Let's stop the madness and make it a single package. > Nobody (neither we, nor the users) benefits from having such tiny packages. I see three options here: 1. We could make transitional packages on NonGNU ELPA that just depend on `emacsql'. 2. We can change the packages to be transitional on MELPA, too. 3. We can make _only_ the existing packages on MELPA transitional. With option 2 or 3, I think we could convince maintainers to simply depend on `emacsql' instead. This should be done before adding the packages to NonGNU ELPA (so we don't need any transitional packages there). Footnotes: [1] https://melpa.org/#/emacsql-sqlite ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. 2022-12-13 18:52 ` Stefan Kangas @ 2022-12-15 16:10 ` Stefan Monnier 2022-12-15 20:37 ` Stefan Kangas 0 siblings, 1 reply; 8+ messages in thread From: Stefan Monnier @ 2022-12-15 16:10 UTC (permalink / raw) To: Stefan Kangas; +Cc: Jonas Bernoulli, emacs-devel Stefan Kangas [2022-12-13 10:52:38] wrote: > Stefan Monnier <monnier@iro.umontreal.ca> writes: >> To me this looks completely ridiculous: why split this into N packages, >> when each one is tiny anyway. > The reason I did it like that is only that it was the path of least > resistance: it replicates what is currently there on MELPA. This > matters because other packages depend on the existence of e.g. the > `emacsql-sqlite' package.[1] But none of the packages in (Non)GNU ELPA depend on emacsql-<backend>, so we don't really need to abide by the Melpa packaging. I know I'm biased against such subpackages, but I'm really failing to see the benefit of this particular split, so I think we should rectify this in NonGNU ELPA rather than reproduce the Melpa structure for its own sake. > If we want to add those packages as is, and have them installable, > their dependencies must also be in NonGNU ELPA. I expect that can be changed when needed. >> Let's stop the madness and make it a single package. >> Nobody (neither we, nor the users) benefits from having such tiny packages. > I see three options here: > 1. We could make transitional packages on NonGNU ELPA that just depend > on `emacsql'. > 2. We can change the packages to be transitional on MELPA, too. > 3. We can make _only_ the existing packages on MELPA transitional. I don't have any control over Melpa, so I can't choose 2 or 3, but I don't see any need for those transitional packages in NonGNU ELPA. Stefan ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. 2022-12-15 16:10 ` Stefan Monnier @ 2022-12-15 20:37 ` Stefan Kangas 2022-12-15 21:05 ` Philip Kaludercic 2022-12-17 1:31 ` Jonas Bernoulli 0 siblings, 2 replies; 8+ messages in thread From: Stefan Kangas @ 2022-12-15 20:37 UTC (permalink / raw) To: Stefan Monnier; +Cc: Jonas Bernoulli, emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: > But none of the packages in (Non)GNU ELPA depend on emacsql-<backend>, > so we don't really need to abide by the Melpa packaging. The main reason I've added emacsql to NonGNU ELPA is to be able to add packages that depend on it (such as org-roam). Those packages currently depend on emacsql-<backend> packages. >> If we want to add those packages as is, and have them installable, >> their dependencies must also be in NonGNU ELPA. > > I expect that can be changed when needed. Agreed. Let's see what Jonas thinks about the plan I proposed. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. 2022-12-15 20:37 ` Stefan Kangas @ 2022-12-15 21:05 ` Philip Kaludercic 2022-12-16 0:19 ` Stefan Kangas 2022-12-17 1:31 ` Jonas Bernoulli 1 sibling, 1 reply; 8+ messages in thread From: Philip Kaludercic @ 2022-12-15 21:05 UTC (permalink / raw) To: Stefan Kangas; +Cc: Stefan Monnier, Jonas Bernoulli, emacs-devel Stefan Kangas <stefankangas@gmail.com> writes: > Stefan Monnier <monnier@iro.umontreal.ca> writes: > >> But none of the packages in (Non)GNU ELPA depend on emacsql-<backend>, >> so we don't really need to abide by the Melpa packaging. > > The main reason I've added emacsql to NonGNU ELPA is to be able to add > packages that depend on it (such as org-roam). Those packages currently > depend on emacsql-<backend> packages. Do you think it is plausible to get org-roam to switch to emacsql without any specific subpackage? >>> If we want to add those packages as is, and have them installable, >>> their dependencies must also be in NonGNU ELPA. >> >> I expect that can be changed when needed. > > Agreed. Let's see what Jonas thinks about the plan I proposed. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. 2022-12-15 21:05 ` Philip Kaludercic @ 2022-12-16 0:19 ` Stefan Kangas 0 siblings, 0 replies; 8+ messages in thread From: Stefan Kangas @ 2022-12-16 0:19 UTC (permalink / raw) To: Philip Kaludercic; +Cc: Stefan Monnier, Jonas Bernoulli, emacs-devel Philip Kaludercic <philipk@posteo.net> writes: > Do you think it is plausible to get org-roam to switch to emacsql > without any specific subpackage? I don't see why they shouldn't, but I'm waiting too see what Jonas thinks about it. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. 2022-12-15 20:37 ` Stefan Kangas 2022-12-15 21:05 ` Philip Kaludercic @ 2022-12-17 1:31 ` Jonas Bernoulli 2022-12-17 2:01 ` Jonas Bernoulli 1 sibling, 1 reply; 8+ messages in thread From: Jonas Bernoulli @ 2022-12-17 1:31 UTC (permalink / raw) To: Stefan Kangas, Stefan Monnier; +Cc: emacs-devel Stefan Kangas <stefankangas@gmail.com> writes: > Stefan Monnier <monnier@iro.umontreal.ca> writes: > >> But none of the packages in (Non)GNU ELPA depend on emacsql-<backend>, >> so we don't really need to abide by the Melpa packaging. > > The main reason I've added emacsql to NonGNU ELPA is to be able to add > packages that depend on it (such as org-roam). Those packages currently > depend on emacsql-<backend> packages. > >>> If we want to add those packages as is, and have them installable, >>> their dependencies must also be in NonGNU ELPA. >> >> I expect that can be changed when needed. > > Agreed. Let's see what Jonas thinks about the plan I proposed. I am super busy and would like to delay thinking about this and working on it until next year. I might actually come to the conclusion that not splitting up the package is the right way to go in this case. Or the backends that--to the best of my knowledge--nobody uses (all the non-sqlite backends), could be moved to separate repositories. Eventually -sqlite-builtin will be the default backend, but we still need -sqlite-module, for older Emacs releases. I intend to deprecate the original -sqlite backend (which uses a custom executable) in a few months, and I intend to then remove it from the repository (to get rid of the tracked sqlite.c), but keep it alive in a separate repository for a while. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [nongnu] main f4166f428a: * elpa-packages (emacsql): New package. 2022-12-17 1:31 ` Jonas Bernoulli @ 2022-12-17 2:01 ` Jonas Bernoulli 0 siblings, 0 replies; 8+ messages in thread From: Jonas Bernoulli @ 2022-12-17 2:01 UTC (permalink / raw) To: Stefan Kangas, Stefan Monnier; +Cc: emacs-devel >> Agreed. Let's see what Jonas thinks about the plan I proposed. > > I am super busy and would like to delay thinking about this and working > on it until next year. > > I might actually come to the conclusion that not splitting up the > package is the right way to go in this case. Or the backends that--to > the best of my knowledge--nobody uses (all the non-sqlite backends), > could be moved to separate repositories. Eventually -sqlite-builtin > will be the default backend, but we still need -sqlite-module, for older > Emacs releases. I intend to deprecate the original -sqlite backend > (which uses a custom executable) in a few months, and I intend to then > remove it from the repository (to get rid of the tracked sqlite.c), but > keep it alive in a separate repository for a while. My current medium term plan is to distribute emacsql.el, emacsql-sqlite-builtin.el and emacsql-sqlite-module.el as a single package and stop maintaining and distributing all the other backends. Packages that use "Emacsql" all want to use sqlite, but it does not matter to them which sqlite backend is used, which very soon will depend on what Emacs version is used. (But unfortunately, dependants need some boilerplate to support the various backends and so that they can leave the choice up to the user. Maybe something can be done about that boilerplate. Distributing these three libraries together would probably help with that.) The reason I don't want to include emacsql-sqlite.el is that I want to move it out of the repository fairly soon (along with all the c code), once the two replacements have proven themselves in production. Since this library is currently being distributed separately, we might just as well keep doing that. If we make it part of emacsql now, then it would only remain there for a while, and then in about a month or two it would be split into a separate package again. The non-sqlite backends are not really used by anyone. I think not distributing them at all, at least for a while, would be a good way to find out if there is anybody who uses them. I don't really want to maintain these backends and would prefer if someone else, who actually uses them, maintained them, in a separate repository. So again, if we include them in emacsql now, that is something that might be reverted fairly soon. But I have to think about all of this some more. The plan was to leave things as is, and deal with it once I actually have the time to do so. The above is just the very rough plan that I mostly formed before you asked me to stop splitting up the package/repository. My suggestion for the immediate future is that you distribute emacsql and emacsql-sqlite as two separate packages and forgo distributing the other backends (neither distribute them individually, nor as part of emacsql). ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2022-12-17 2:01 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <167091741978.18640.16217484079810212983@vcs2.savannah.gnu.org> [not found] ` <20221213074340.1C45BC000CE@vcs2.savannah.gnu.org> 2022-12-13 14:50 ` [nongnu] main f4166f428a: * elpa-packages (emacsql): New package Stefan Monnier 2022-12-13 18:52 ` Stefan Kangas 2022-12-15 16:10 ` Stefan Monnier 2022-12-15 20:37 ` Stefan Kangas 2022-12-15 21:05 ` Philip Kaludercic 2022-12-16 0:19 ` Stefan Kangas 2022-12-17 1:31 ` Jonas Bernoulli 2022-12-17 2:01 ` Jonas Bernoulli
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).