Gnus development mailing list
 help / color / mirror / Atom feed
* Gnus work
@ 2017-10-04 18:32 Eric Abrahamsen
  2017-10-04 18:43 ` Emanuel Berg
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Eric Abrahamsen @ 2017-10-04 18:32 UTC (permalink / raw)
  To: ding; +Cc: emacs-devel

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

Hi all,

I've been very slowly reading the Gnus code base, and looking at how to
go about doing some refactoring, cleanups, and a few new features. I
wrote a roadmap which I'm attaching here -- it's not so much an actual
roadmap as a collection of possible changes, as a starting point for
argument. It's also not meant to be a mini bug tracker in Org -- my idea
was that if any of the ideas looked like they were going to be
acceptable, the todo items would turn into real bug reports on debbugs.

In general, I've been working from a few principles:

1. Replace Gnus' homemade mechanisms with equivalent mechanisms that
   have since appeared in core (in many cases Gnus had them first).
2. Add docstrings and comments to minimize bug-hunter bewilderment.
3. Look at unpicking functions so that there's a clearer demarcation
   between code that does server logic (marks and whatnot) and code that
   does UX/presentation stuff.
4. #3 would ideally allow more of the code to be testable.
5. Reduce number of dynamic variables, to cut back on "spooky action at
   a distance". To be honest I don't even know where to start here.

The roadmap is also not meant to address all of Gnus -- for the most
part I'm sticking to groups, servers, and marks. I don't feel
comfortable or competent to mess with other areas like
MIME/threading/washing/network/definitely not security. Some of those
areas already have "shepherds", anyway.

I'd like to make this document publicly accessible and editable (a
branch? Emacswiki?), and see if anyone has anything to contribute, or
otherwise wants to jump in. I think there's a lot of love for Gnus out
there, and my hope is that the roadmap might spur people to pop
up and share their ideas, and maybe offer to pitch in.

Where could I put it?

Eric

PS: No, I don't have any code yet. The one patch I do have touches
nothing but docstrings, code comments, and "Commentary" sections --
stuff I've added over the course of reading the code.



[-- Attachment #2: roadmap.org --]
[-- Type: application/vnd.lotus-organizer, Size: 10633 bytes --]

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

end of thread, other threads:[~2017-10-05 20:10 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-04 18:32 Gnus work Eric Abrahamsen
2017-10-04 18:43 ` Emanuel Berg
2017-10-04 18:53   ` Eric Abrahamsen
2017-10-04 21:07     ` Emanuel Berg
2017-10-04 21:09 ` Tim Landscheidt
2017-10-04 21:56   ` Eric Abrahamsen
2017-10-05  5:19     ` Adam Sjøgren
2017-10-05 17:35       ` Eric Abrahamsen
2017-10-05 17:51         ` Adam Sjøgren
2017-10-05 20:10           ` Eric Abrahamsen
2017-10-05 16:37     ` Sivaram Neelakantan
2017-10-05  6:53 ` Julien Danjou
2017-10-05 13:31 ` Lars Ingebrigtsen
2017-10-05 18:12   ` Eric Abrahamsen

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 NNTP newsgroup(s).