From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Adrian Robert Newsgroups: gmane.emacs.devel Subject: Re: Changes 2009-07-15/16 in branch? Date: Fri, 24 Jul 2009 10:34:55 -0400 Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Apple Message framework v935.3) Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1248446133 30297 80.91.229.12 (24 Jul 2009 14:35:33 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 24 Jul 2009 14:35:33 +0000 (UTC) Cc: Emacs-Devel devel To: YAMAMOTO Mitsuharu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jul 24 16:35:26 2009 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1MULro-0002it-9w for ged-emacs-devel@m.gmane.org; Fri, 24 Jul 2009 16:35:24 +0200 Original-Received: from localhost ([127.0.0.1]:50062 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MULrn-0006SF-Jg for ged-emacs-devel@m.gmane.org; Fri, 24 Jul 2009 10:35:23 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MULri-0006SA-WC for emacs-devel@gnu.org; Fri, 24 Jul 2009 10:35:19 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MULrd-0006Lo-UH for emacs-devel@gnu.org; Fri, 24 Jul 2009 10:35:17 -0400 Original-Received: from [199.232.76.173] (port=35631 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MULrd-0006Lh-My for emacs-devel@gnu.org; Fri, 24 Jul 2009 10:35:13 -0400 Original-Received: from mail-qy0-f183.google.com ([209.85.221.183]:55583) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MULrd-0007h3-33 for emacs-devel@gnu.org; Fri, 24 Jul 2009 10:35:13 -0400 Original-Received: by qyk13 with SMTP id 13so2137363qyk.14 for ; Fri, 24 Jul 2009 07:35:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:cc:message-id:from:to :in-reply-to:content-type:content-transfer-encoding:mime-version :subject:date:references:x-mailer; bh=NwZ8hiVN4sBC+Pe+QXSnzbsJBPubvsN2Kwcaotyjnyg=; b=tUILFJww4cGXCUjMAbiAzEs5fIzBY8yspF9kuKzHl1rtOzQ5l0iPKfQ5HkqgLM7j/W Ru8dc7pJ48kC0zfMnqErxtbJenyXbBuE9l/pAPl6W4HuqluFIuvjYCHv82VTUYST14Z6 GA6QFkImzO9wK1RSdvORoIP8l9f08ZO/Lt5nA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=cc:message-id:from:to:in-reply-to:content-type :content-transfer-encoding:mime-version:subject:date:references :x-mailer; b=ZRHtfrPx0mbuH5aTLHcjozv4LZ1lSRTzCYkLmEyydaJ5XCZ5pvxdAEDMMI36zcdtT8 QllrxZgX6IJaXbxuLqSS2Z1uk4jDNYdHmE8VovfUmPCKZcZVwBqLd32DVnJ77HzqP0SI pZ9Rf5lACjreQ5brvxxccz4phz0ykC331K0Wo= Original-Received: by 10.224.28.149 with SMTP id m21mr3453641qac.53.1248446112311; Fri, 24 Jul 2009 07:35:12 -0700 (PDT) Original-Received: from ?10.0.1.3? (dpc6745214221.direcpc.com [67.45.214.221]) by mx.google.com with ESMTPS id 2sm4811419qwi.23.2009.07.24.07.35.06 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 24 Jul 2009 07:35:11 -0700 (PDT) In-Reply-To: X-Mailer: Apple Mail (2.935.3) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 2) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:113098 Archived-At: On Jul 23, 2009, at 8:46 AM, YAMAMOTO Mitsuharu wrote: > It's essential to make these changes in the release branch so users > may not use the incompatible formats by accident and introduce > compatibility problems when they are removed in some future version. > Upcoming version is the first one for the NS port. Effectiveness is > much lowered if such changes are deferred to the later versions. > > I've warned about such incompatibility issues that I think > indispensable for the first official release version, but the author > has not tried to address them (not just for this one!). There are others working on the port, but speaking for myself, my time has been limited and I've prioritized fixing bugs (as I've mentioned before). I've advocated for and assisted others with standardization / cleanup efforts. > Even if by any chance there's overlooked code as you say, it's only > in the NS-specific part and relatively minor compared with total > unstableness of the port itself. Removing incompatible features at > this timing is much more important unless the port is marked > experimental/hackers-only. Then let's mark it such, as there are many more features of this sort that should be removed by your criteria (some of which were unfortunately adopted by the Carbon port following Emacs.app in the Sourceforge days, but were never subjected to the same scrutiny): - modifier key customization (standard methods exist) - services integration (no counterpart on other platforms) - applescript integration (use DBUS instead) - font panel (unneeded, incompatible) - nonstandard antialiasing controls (standard methods exist) - nonstandard way of hiding/showing toolbar (unneeded, incompatible) - open/save panels (unneeded, incompatible) - about panel (unneeded) All of these things belong in distributions, or in add-on packages such as: http://www.emacswiki.org/emacs/NSPlatformSupport >> ns_color_to_lisp(): The function could be simplified now that you >> have eliminated a special case. > > I know the changes are not optimal. But I wanted to keep them quite > straightforward so as to avoid regression. OK, then at least a cleaned-up version could have gone into the trunk. >> nsfont_draw(): Would setting the foreground instead of the >> background color to the bitmap constitute a corrected >> implementation? > > I don't know if I understand your intention correctly from the above > sentence. But if you believe you understand stippling correctly this > time, maybe you can make the change into the trunk. I gathered that you understood it better than I so I was wondering if there was some reason to just remove code when fixing it would have been as easy. >> ns-set-background-alpha: The implementation you just removed was >> superior to that for (set-frame-parameter nil 'alpha ##): it does >> not alter the alpha of the titlebar, scrollbars, modeline, or text. >> This makes it usable, instead of a curiosity. It also provides >> access via an interactive function. The correct fix would be to >> improve the (set- frame-parameter) version, not remove this while no >> alternative exists for users. > > I knew their difference. I removed it because it belongs to "NS-only > implementation for features that are not inherently specific to NS." > (http://lists.gnu.org/archive/html/emacs-devel/2009-07/msg00594.html) "Inherently specific" is an ambiguous call, and I don't think it's a reasonable litmus test. But if the Cocoa APIs provide alpha capabilities beyond what is available on X11 and W32, it is inherent in some sense. The right thing would be to fix the frame-parameter implementation (at least on NS), but failing that the other option should be left in for users. > I think it's really bad for the "first-class" port to have such > features because they may be superseded in a platform-independent way > by some future versions and that introduces unnecessary > incompatibilities. It seems there are several problems listed in the email you cite that either do not impact or actually hurt users; why not work on these (on the trunk), or on fixing bugs? As far as the superseded / platform independent argument, as I've said before, many features first appeared on X11 or GTK without counterparts on other platforms. This continues to happen now. It's a double-standard to police the NS port so stringently without considering implementing the counterparts.