From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#37774: 27.0.50; new :extend attribute broke visuals of all themes and other packages Date: Fri, 15 Nov 2019 10:08:40 +0200 Message-ID: <838soh4l4n.fsf@gnu.org> References: <87o8xwrjba.fsf@bernoul.li> <834kzooo8e.fsf@gnu.org> <877e4d7yzf.fsf@bernoul.li> <83imnvg53q.fsf@gnu.org> <87zhh2ofc9.fsf@bernoul.li> <87k186nsku.fsf@bernoul.li> <83blte7kvc.fsf@gnu.org> <838soi5xm1.fsf@gnu.org> Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="98140"; mail-complaints-to="usenet@blaine.gmane.org" Cc: jonas@bernoul.li, 37774@debbugs.gnu.org To: Dmitry Gutov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Nov 15 09:10:51 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iVWgt-000PM9-0v for geb-bug-gnu-emacs@m.gmane.org; Fri, 15 Nov 2019 09:10:51 +0100 Original-Received: from localhost ([::1]:36520 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iVWgr-0005tN-Tp for geb-bug-gnu-emacs@m.gmane.org; Fri, 15 Nov 2019 03:10:49 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40962) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iVWg8-00053r-0p for bug-gnu-emacs@gnu.org; Fri, 15 Nov 2019 03:10:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iVWg6-0004Ka-Rs for bug-gnu-emacs@gnu.org; Fri, 15 Nov 2019 03:10:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:54969) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iVWg6-0004KS-Op for bug-gnu-emacs@gnu.org; Fri, 15 Nov 2019 03:10:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iVWg6-00045L-Hx for bug-gnu-emacs@gnu.org; Fri, 15 Nov 2019 03:10:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 15 Nov 2019 08:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37774 X-GNU-PR-Package: emacs Original-Received: via spool by 37774-submit@debbugs.gnu.org id=B37774.157380534415626 (code B ref 37774); Fri, 15 Nov 2019 08:10:02 +0000 Original-Received: (at 37774) by debbugs.gnu.org; 15 Nov 2019 08:09:04 +0000 Original-Received: from localhost ([127.0.0.1]:35557 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iVWfA-00043y-AC for submit@debbugs.gnu.org; Fri, 15 Nov 2019 03:09:04 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:59985) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iVWf8-00043V-Go for 37774@debbugs.gnu.org; Fri, 15 Nov 2019 03:09:02 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:40749) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iVWf2-0003z2-PB; Fri, 15 Nov 2019 03:08:56 -0500 Original-Received: from [176.228.60.248] (port=3470 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iVWf1-0004Vr-41; Fri, 15 Nov 2019 03:08:55 -0500 In-reply-to: (message from Dmitry Gutov on Fri, 15 Nov 2019 00:42:40 +0200) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:171638 Archived-At: > Cc: jonas@bernoul.li, 37774@debbugs.gnu.org > From: Dmitry Gutov > Date: Fri, 15 Nov 2019 00:42:40 +0200 > > > custom-theme-set-faces is different: it's code written by theme > > authors, so we could expect them to cater to :extend. > > Lots of themes out there, though. Lots of said authors. Who will have to > do a version check and the splat-unquote thing, every one of them. I > think that's pretty bad. It's not bad, because IMO most faces don't need to be changed at all. That Jonas and others went ahead and decided to change almost all of them is IMO a mistake. > > If the backward compatibility (or, rather, transparent DWIM-ish > > operation) is the overriding consideration, then you are actually > > saying that any face attribute we will introduce in the future will > > have to be treated the same? > > I don't know what attributes we will introduce, and whether the default > values will be a departure from the previous behavior like this one is. It doesn't matter if the default face definition uses that attribute, does it? > But please note that having it a face attribute was your choice (or > maybe Ergus's). I suggested using a symbol property instead. Though I > was admittedly late to the party. Doing it in this way would side-step a > number of questions like the ones you just asked. Using a symbol property is extremely unclean, IMO, and would unnecessarily complicate the face-merging code. > > IOW, we will have to "inherit" it from > > the default face definition even if :inherit was not specified? If > > so, how does a theme refuse to "inherit" in this way? > > By setting it to an explicit nil value? That does nothing if the :inherit is not explicit. Unless, again, we complicate the heck out of the face-merging code. > BTW, does this scheme have a chance of working at all? IIUC, > custom-theme-set-faces also handles faces which are not defined at all > (yet), so inheriting an attribute from its default value might not be > too easy. Probably not, and I said up front I didn't see how doing this will fly. I guess the best solution at this point is to require all themes to make the appropriate changes.