From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Jake Newsgroups: gmane.emacs.devel Subject: Re: Changing a cl-defstruct definition in a published package Date: Thu, 19 Jul 2018 16:27:19 -0400 Message-ID: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="00000000000022b366057160022c" X-Trace: blaine.gmane.org 1532031966 8887 195.159.176.226 (19 Jul 2018 20:26:06 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 19 Jul 2018 20:26:06 +0000 (UTC) Cc: emacs-devel@gnu.org To: "monnier@iro.umontreal.ca" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jul 19 22:26:02 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fgFUv-00029K-4A for ged-emacs-devel@m.gmane.org; Thu, 19 Jul 2018 22:26:01 +0200 Original-Received: from localhost ([::1]:45206 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fgFX2-0001Iy-4X for ged-emacs-devel@m.gmane.org; Thu, 19 Jul 2018 16:28:12 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43885) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fgFWO-0001Ie-91 for emacs-devel@gnu.org; Thu, 19 Jul 2018 16:27:33 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fgFWN-0006vN-Ck for emacs-devel@gnu.org; Thu, 19 Jul 2018 16:27:32 -0400 Original-Received: from mail-qt0-x235.google.com ([2607:f8b0:400d:c0d::235]:32781) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fgFWN-0006uy-7A for emacs-devel@gnu.org; Thu, 19 Jul 2018 16:27:31 -0400 Original-Received: by mail-qt0-x235.google.com with SMTP id c15-v6so8425919qtp.0 for ; Thu, 19 Jul 2018 13:27:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=PztmrIGYDc5WZ2jP5MhwJNMO2fe2SNknkFz6D9vJNlM=; b=mefjiphiKPOw8kqzyZhv9TT5HwaXGIaiDFKAOiGW4uEBS7cQ2yFgYCVF1NmA1V6LQQ MtmC1GZ+gLG0cFWcLKuJ2XobE2jrARVEvQslFMVdPcr9dBWLgkKXug9ThUbzVcG0JZOZ UhQQTS+yTNEMGc9OlCA++vK2Ls9+pCbmJbJBhLctn5Opu3rvRdjEa6oKrYPmZdiBFwZO RCw/HVgWUOALdzSEgbEhx2+Loq23JvKD+tLCLLnsER8g+pkB0KsDw24NPV0NLRm0hnNy 20M7j85Pder8VnQ6y/7TD5AEA0RLAgpiGmh6LGELxYcIFBfopUHjT0/dbrbhudBo9QAm PVsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=PztmrIGYDc5WZ2jP5MhwJNMO2fe2SNknkFz6D9vJNlM=; b=Hq711UQwiXL/W4TtSmvO7WZKeEBCG8hl+ww8527Tbq4aEKr0GW1X1txkKVLNwitFCa 1DPFgLyfwo023560zcymb7GZqsDO06P4iIUknG414yrdPfuUmWSseesNZtuzw+RI4dMT DI/R7mfKF969BKc4taBz02BbD2h3CDUU4yFMXENplv9RfI3FeWDYPDqtqZS2L9Csk0aK IP5kwMKHulQebXkL/gE+9S6kPProJ0AAf4mkjlzLIwZlF3jvSj3e5oXPtd4jWLT21H2L v+zkAX8e3KCamR+SrVm0zPG0agxqc//tmk2OWIL6IXb82KabnTg+J64XYOocbIeIb8V7 rt7A== X-Gm-Message-State: AOUpUlH6EOETgjfXedd2wKlH9P65zgY2Jnnd3Z0hw9Kp8I+ttMADz3kA 2kUYnH5t7LUQNtKNNI/K3yLILONise2sRVTnqTg= X-Google-Smtp-Source: AAOMgpddQdP7IhPyB5l26yNYB2xXZPOf+l+xNtOYb29W3soBrYo4j+v1IJA9fY3e7l+PXXKtM9t/eRZR3z+sKIYRdgU= X-Received: by 2002:ac8:34f3:: with SMTP id x48-v6mr11326383qtb.53.1532032050179; Thu, 19 Jul 2018 13:27:30 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::235 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:227561 Archived-At: --00000000000022b366057160022c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I've seen another work around to detect whether or not a file is being byte-compiled in use-package : (bound-and-true-p byte-compile-current-file). It seems to work, as illustrated by this example: (message (eval-when-compile (if (bound-and-true-p byte-compile-current-file) "I'm being byte-compiled!" "I'm being evaluated :("))) When I byte compile that and then evaluate (progn (load-file "~/byte-compile-test.elc") (load-file "~/byte-compile-test.el")) It prints out Loading /Users/jake.waksbaum/byte-compile-test.elc... I=E2=80=99m being byte-compiled! Loading /Users/jake.waksbaum/byte-compile-test.elc...done Loading /Users/jake.waksbaum/byte-compile-test.el (source)... I=E2=80=99m being evaluated :( Loading /Users/jake.waksbaum/byte-compile-test.el (source)...done t --00000000000022b366057160022c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I've seen another work around to detect whether or not= a file is being byte-compiled in use-package: (bound-and-true-p byte-compile-current-file).= =C2=A0

It seems to work, as illustrated by this example:=

(message
=C2=A0(eval-when-compile
<= font face=3D"monospace">=C2=A0 =C2=A0(if (bound-and-true-p byte-compile-cur= rent-file)
=C2=A0 =C2=A0 =C2=A0 = =C2=A0"I'm being byte-compiled!"
=C2=A0 =C2=A0 =C2=A0"I'm being evaluated :("))= )

When I byte compile that and then e= valuate

(progn
=C2=A0 (load-file "~/byte-compile-test= .elc")
=C2=A0 (load-file &qu= ot;~/byte-compile-test.el"))

It prints out

Loading /Users/jake.waksbaum/byte-compile-test.elc...<= /font>
I=E2=80=99m being byte-compiled!<= /font>
Loading /Users/jake.waksbaum/byte= -compile-test.elc...done
Loading = /Users/jake.waksbaum/byte-compile-test.el (source)...
I=E2=80=99m being evaluated :(
Loading /Users/jake.waksbaum/byte-compile-test.el (sourc= e)...done
t


--00000000000022b366057160022c--