0

I've encountered a problem after upgrading Emacs Speaks Statistics (ESS) from MELPA today to ess-20180926.54.

When I try to start an R session under Emacs with M-x R I'm informed...

autoload-do-load: Wrong type argument: consp, nil

...and the session doesn't start.

The settings I have for ESS are...

;;; ESS
(require 'ess)
;;; Some generally useful key-bindings (mostly ESS specific) 
(define-key global-map [f1] 'Control-X-prefix)
(define-key global-map [f2] 'save-buffer)
(define-key global-map [f3] 'find-file)
(define-key global-map [f5] 'switch-to-buffer)
(define-key global-map [f6] 'other-window)
(define-key global-map [f8] 'kill-buffer)
(define-key global-map [f9] 'ess-load-file)
;;; Other specific ESS settings you can use are the following:
(setq comint-input-ring-size 1000)
(setq ess-indent-level 4)
(setq ess-arg-function-offset 4)
(setq ess-else-offset 4)
(setq ess-eval-visibly-p nil)
;;; Set the width of the buffer automatically
(defun my-ess-post-run-hook ()
  (ess-execute-screen-options)
  (local-set-key "\C-cw" 'ess-execute-screen-options))
(add-hook 'ess-post-run-hook 'my-ess-post-run-hook)
;;; Auto-complete and ESS 
(require 'auto-complete)
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/site-lisp/auto-complete/dict")
(ac-config-default)
(auto-complete-mode)
(setq ess-use-auto-complete t)
;;; Smart underscore  https://www.emacswiki.org/emacs/ess-smart-underscore.el
(require 'ess-smart-underscore)

Emacs is 25.3.1

A bunch of other MELPA packages were updated and old versions removed but I didn't note down which.

Any ideas or pointers welcome, if more information is required please let me know.

EDIT :

I've obtained the following debug traceback...

Debugger entered--Lisp error: (wrong-type-argument consp nil)
  byte-code("\301\30\"\303\241\210\301\30\"\305\241\210\306\307\300\"\207" [ess-r-customize-alist assoc ess-font-lock-keywords (quote ess-R-font-lock-keywords) inferior-ess-font-lock-keywords (quote inferior-ess-r-font-lock-keywords) defalias R-customize-alist] 3)
  autoload-do-load((autoload "ess-r-mode" "Call 'R', the 'GNU S' system from the R Foundation.\nOptional prefix (\\[universal-argument]) allows to set command line arguments, such as\n--vsize.  This should be OS agnostic.\nIf you have certain command line arguments that should always be passed\nto R, put them in the variable `inferior-R-args'.\n\nSTART-ARGS can be a string representing an argument, a list of\nsuch strings, or any other non-nil value.  In the latter case, you\nwill be prompted to enter arguments interactively.\n\n(fn &optional START-ARGS)" t nil) R)
  command-execute(R record)
  execute-extended-command(nil "R" "R")
  funcall-interactively(execute-extended-command nil "R" "R")
  call-interactively(execute-extended-command nil nil)
  command-execute(execute-extended-command)
slackline
  • 335
  • 3
  • 14
  • Bisect your init file to narrow it and find the cause. Some autoloaded code is trying to treat nil as if it were a cons - something beyond car and cdr (which tolerate a nil argument). Maybe it's a destructive list operation... – Drew Sep 27 '18 at 20:23
  • Thanks for the pointer, I've several other settings loaded first (master ~/.emacs.d/init.el that calls them from ~/.emacs.d/settings/ in turn) so will try that out, cheers. – slackline Sep 27 '18 at 21:04

1 Answers1

0

This appears to now have been resolved with ess-20181007.1527.

Sought some assistance on the ESS-help mailing list and discovered it still worked with ess-17.11 with assistance. If anyone else is having trouble with ess would recommend checking there too.

slackline
  • 335
  • 3
  • 14