From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.devel Subject: Re: Asynchronous DNS Date: Sat, 06 Feb 2016 18:49:43 +1100 Organization: Programmerer Ingebrigtsen Message-ID: <87r3gqmg6g.fsf@gnus.org> References: <87si1gx6wz.fsf@gnus.org> <86y4b5zvzt.fsf@gmail.com> <8760y9kwrk.fsf@gnus.org> <8760y7nag7.fsf@gnus.org> <83oabzzsjq.fsf@gnu.org> <87fuxazkfe.fsf@gnus.org> <83io25yeqk.fsf@gnu.org> <87h9hpnreg.fsf@gnus.org> <83y4b0wi7m.fsf@gnu.org> <87si17evk6.fsf@gnus.org> <83twlnvcz2.fsf@gnu.org> <87vb63obm3.fsf@gnus.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1454745029 21524 80.91.229.3 (6 Feb 2016 07:50:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 6 Feb 2016 07:50:29 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Feb 06 08:50:15 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1aRxdF-0003GA-LO for ged-emacs-devel@m.gmane.org; Sat, 06 Feb 2016 08:50:13 +0100 Original-Received: from localhost ([::1]:52282 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRxdE-0007my-Lo for ged-emacs-devel@m.gmane.org; Sat, 06 Feb 2016 02:50:12 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47789) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRxd1-0007me-JT for emacs-devel@gnu.org; Sat, 06 Feb 2016 02:50:00 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aRxcy-0004AZ-Cs for emacs-devel@gnu.org; Sat, 06 Feb 2016 02:49:59 -0500 Original-Received: from plane.gmane.org ([80.91.229.3]:52490) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aRxcy-0004AM-5T for emacs-devel@gnu.org; Sat, 06 Feb 2016 02:49:56 -0500 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1aRxcv-0002nz-5W for emacs-devel@gnu.org; Sat, 06 Feb 2016 08:49:53 +0100 Original-Received: from cpe-60-225-211-161.nsw.bigpond.net.au ([60.225.211.161]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 06 Feb 2016 08:49:53 +0100 Original-Received: from larsi by cpe-60-225-211-161.nsw.bigpond.net.au with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 06 Feb 2016 08:49:53 +0100 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: emacs-devel@gnu.org Original-Lines: 27 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: cpe-60-225-211-161.nsw.bigpond.net.au Mail-Copies-To: never User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.90 (gnu/linux) Cancel-Lock: sha1:/d5Fg4vv/xDIJZ0dgRA115AQ/yM= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:199400 Archived-At: I kinda think we've gotten as far as we're going to get in this discussion, and that it's time to merge. For people who haven't been following this: There's a new value to :nowait to make-network-process. If it's `dns', then the DNS is asynchronous, and there are other rules as how you have to interact with the process object. (In short, don't talk to it until it switches status to "connected".) There should be no impact on any existing use. It should be 100% backward compatible. (Unless I've created bugs somewhere while refactoring the code, but that's surely impossible.) After merging, we can continue to examine the details of the implementation, and change anything we think doesn't work. If there are no bugs to be found in the refactored code, I will then proceed to alter the TLS negotiation code to make it, too, fully asynchronous (i.e., absolutely no user-visible hangs when calling things like `(url-retrieve "https://very-slow-site.com/")'). -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no