Comments on Zones

I think this is a really useful package to have in emacs, so many thanks for writing it, however I keep getting this message in a Compile-log buffer when starting Emacs 26.1….

Warning (bytecomp): ‘interactive-p’ is an obsolete function (as of 23.2); use ‘called-interactively-p’ instead. [6 times]

Using Zones.el

Version: 2019.4.30 Package-Requires: () Last-Updated: Tue Apr 30 17:07:29 2019 (-0700)

Is there any way I can stop this happening? thanks

– neil 2019-05-04 11:11 UTC

Please ignore all such warnings, which are benign. They come from the library being compatible also with older Emacs versions.

But if you see a warning you are not sure about please feel free to let me know (as you’ve just done), and I’ll check. Thx - Drew

DrewAdams 2019-05-04 14:24 UTC

Thanks, but is there anyway to stop the Compile Log from popping up all the time when Emacs starts?

– neil 2019-05-04 15:16 UTC

I don’t know why it would pop up - perhaps it’s because you’re using it as a package (?) instead of just loading it as a library (‘require’ or ‘load-library’)? Have you tried just byte-compiling it (‘M-x byte-compile-file’) and then `(require ‘zones)’ (after making sure `zones.elc’ is in your ‘load-path’)?

You should only need to compile it once (e.g. when you get a new version), not each time you start Emacs. Dunno how the package system handles this. I see no such ‘*Compile Log*’ when I start Emacs - I just load the byte-compiled file.

I see that you show ‘Package-Requires’ in the message. You might want to ask or emacs.StackExchange about this. I’m no expert on the package system.

I’m probably not understanding just what you’re doing or what Emacs is doing, but there definitely is no reason to compile it more than once.

DrewAdams 2019-05-04 21:04 UTC

The unexpected compilation is due to ‘defadvice’, similar to this case:

– npostavs 2019-05-05 02:31 UTC


I see; thanks. I don’t really follow it all, but it sounds like something introduced by `package.el’. Is that right? Is it a bug or a design consequence/limitation? If either, is there a bug filed for it, or is there an emacs-devel thread that tries to “fix” it?

Or is there some change to be made in `zones.el’? (I need ‘defadvice’ instead of nadvice because of compatibility with older Emacs versions.)

DrewAdams 2019-05-05 17:05 UTC


Yep, I have byte-compiled Zones and have my init.el file setup with its folder as a ‘load-path’ and a (require ‘zones) straight after it and that’s all.

I also tried a:

(let ((after-init-time t)) (require ‘zones))

instead of the (require ‘zones)

But that just caused the Compile-Log to popup at Emacs start as well.

– neil 2019-05-05 20:21 UTC

@neil: Are you saying (in your last post) that you still have the problem, even if you don’t use `package.el’ and you just put the byte-compiled file (`zones.elc’) in a directory in your ‘load-path’ and do `(require ‘zones)’ in your init file? That’s what I do, and I don’t see the problem myself.

DrewAdams 2019-05-06 03:12 UTC




Warning (bytecomp): ‘interactive-p’ is an obsolete function (as of 23.2); use ‘called-interactively-p’ instead. [6 times]

I have this line in my init.el….


Is that what you mean by package.el?

And if I remove it, will it affect any other packages?

– neil 2019-05-06 11:43 UTC


Ive also got this block of code further on in my init.el file could this have anything to do with it?

;; This next section makes sure that when we enter M-x list-packages it includes all the packages at ;; and Marmalade-Repo as well ;; (require ‘package) ;; You might already have this line (let* ((no-ssl (and (memq system-type ‘(windows-nt ms-dos)) (not (gnutls-available-p)))) (url (concat (if no-ssl “http” “https”) “"))) (add-to-list 'package-archives (cons "melpa" url) t)) ;;(when (< emacs-major-version 24) ;; For important compatibility libraries like cl-lib ;;(add-to-list 'package-archives '("gnu" . "”));;) (add-to-list ‘package-archives ‘(“marmalade” . “”))

– neil 2019-05-06 11:48 UTC

@neil: No idea. Try just what I suggested - nothing “packagy”, as a test. I don’t get any such ‘*Compile Log*’. I just byte-compile the file and load (‘require’) the byte-compiled file.

Anyway, if it’s due to something like that then I think you’ll just have to live with it; sorry. If it really bothers you then you can remove comment out the `defadvice` code in zones.el, or you can replace it with nadvice code, assuming your Emacs version has nadvice.el.

DrewAdams 2019-05-07 03:28 UTC


Thanks for taking the time out to reply Drew, I will just live with the pop-up for now.

And keep up the fantastic stuff you do with Emacs.


– neil 2019-05-07 14:45 UTC

Please make sure you contribute only your own work. IP numbers are made available via the page history. If you want to keep it a secret, you need to use Tor. See TextFormattingRules for how to format text. See StyleGuide for the suggested writing style on this wiki.

To save this page you must answer this question:

What is the greatest editor out there?