unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#19864: 25.0.50; package-initialize is no more starting
@ 2015-02-14  7:17 Thierry Volpiatto
  2015-02-14  7:21 ` Bastien
  0 siblings, 1 reply; 8+ messages in thread
From: Thierry Volpiatto @ 2015-02-14  7:17 UTC (permalink / raw)
  To: 19864


Hi,
`package-initialize' is returning an error because it calls
`package-read-all-archive-contents' which use package--mapc, which in turn
use `package-installed-p' which return an error if `package--initialized' is
nil.  And this variable is set at end of `package-initialize'.

Actually to start emacs-25 I have to advice `package-initialize' to set
`package--initialized' before.




In GNU Emacs 25.0.50.1 (x86_64-unknown-linux-gnu, X toolkit)
 of 2015-02-14 on dell-14z
Repository revision: 61b4c22c6eba96718327a0d208a8492d8bad76e0
Windowing system distributor `The X.Org Foundation', version 11.0.11501000
System Description:	Ubuntu 14.04.1 LTS

Configured using:
 `configure --with-x-toolkit=lucid --without-toolkit-scroll-bars
 --without-gconf --without-gsettings'

Configured features:
XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS NOTIFY
LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB

Important settings:
  value of $LANG: fr_FR.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Emacs-Lisp

Minor modes in effect:
  magit-auto-revert-mode: t
  diff-auto-refine-mode: t
  git-gutter-mode: t
  psession-mode: t
  golden-ratio-mode: t
  winner-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  auto-image-file-mode: t
  eldoc-in-minibuffer-mode: t
  show-paren-mode: t
  display-time-mode: t
  recentf-mode: t
  savehist-mode: t
  minibuffer-depth-indicate-mode: t
  helm-descbinds-mode: t
  helm-mode: t
  shell-dirtrack-mode: t
  helm-adaptive-mode: t
  helm-match-plugin-mode: t
  helm-occur-match-plugin-mode: t
  helm-autoresize-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t

Recent messages:
Are you sure you want to quit reading news? (y or n) y
Saving /home/thierry/.newsrc.eld...
Saving file /home/thierry/.newsrc.eld...
Wrote /home/thierry/.newsrc.eld
Saving /home/thierry/.newsrc.eld...done
ad-handle-definition: `vc-revert' got redefined
(No files need saving)
Type a prefix key to toggle it. Run 'actions' with their prefixes. '?' for more help.
Running git pull
Git finished

Load-path shadows:
~/elisp/auctex/lpath hides ~/elisp/emacs-wget/lpath
/usr/local/share/emacs/25.0.50/lisp/emacs-lisp/tq hides ~/elisp/emms/lisp/tq

Features:
(magit-key-mode magit view help-mode autorevert filenotify
git-rebase-mode git-commit-mode log-edit helm-ls-git vc vc-dispatcher
flow-fill gnus-cite gnus-async gnus-bcklg gnus-ml nndraft nnmh nnml
nnfolder gnutls gnus-agent gnus-srvr gnus-score score-mode nnvirtual
gnus-msg nntp gnus-cache shadow emacsbug mail-extr epa-mail smiley
gnus-art mm-uu mml2015 mm-view mml-smime smime dig w3m-form cl-indent
mule-util mm-archive network-stream nsm starttls url-http url-gw
url-cache url-auth url-handlers finder-inf helm-elisp-package
helm-command helm-elisp helm-eval make-mode bug-reference add-log
vc-filewise vc-rcs conf-mode markdown-mode sh-script smie executable
vc-git diff-mode naquadah-theme em-unix em-script em-prompt em-ls
em-hist em-pred em-glob em-dirs em-cmpl em-basic em-banner em-alias
align-let git-gutter server psession golden-ratio winner undo-tree diff
slime-xref-browser slime-banner slime-tramp slime-asdf slime-fancy
slime-trace-dialog slime-fontifying-fu slime-package-fu slime-references
slime-compiler-notes-tree slime-scratch slime-presentations bridge
slime-fuzzy slime-fancy-trace slime-fancy-inspector slime-c-p-c
slime-editing-commands slime-autodoc slime-repl slime-parse slime etags
xref arc-mode archive-mode image-file xdvi-search preview-latex tex-site
auto-loads pcomplete-extension pcmpl-unix pcmpl-gnu em-term term
disp-table ehelp python eldoc-eval warnings whitespace paren time
recentf tree-widget savehist mu4e-config org-mu4e helm-mu mu4e-contrib
mu4e mu4e-speedbar speedbar sb-image ezimage dframe mu4e-main mu4e-view
mu4e-headers mu4e-compose mu4e-draft mu4e-actions ido rfc2368 mu4e-mark
mu4e-message html2text mu4e-proc mu4e-utils mu4e-lists mu4e-about
mu4e-vars mu4e-meta gnus-dired nnir gnus-sum gnus-group gnus-undo
gnus-start gnus-cloud nnimap nnmail mail-source tls utf7 netrc
parse-time gnus-spec gnus-int gnus-range gnus-win nnoo config-w3m
w3m-search w3m doc-view jka-compr image-mode timezone w3m-hist w3m-fb
bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util
w3m-load smtpmail-async smtpmail sendmail dired-async iterator lacarte
iedit-rect iedit iedit-lib smallurl mm-url gnus gnus-ems nnheader
wid-edit rectangle-utils rect ledger-config ledger esh-var esh-io
esh-cmd esh-opt esh-ext esh-proc esh-groups eshell esh-module esh-mode
esh-arg esh-util tv-utils pcvs vc-cvs pcvs-parse pcvs-info pcvs-defs
pcvs-util ewoc mb-depth cl-info hyperspec esh-toggle flymake no-word
htmlize cl dired-extension emms-vlc-config emms-playlist-limit
emms-volume emms-volume-amixer emms-i18n emms-history emms-score
emms-stream-info emms-metaplaylist-mode emms-bookmarks emms-cue
emms-mode-line-icon emms-browser sort emms-playlist-sort
emms-last-played emms-player-xine emms-player-mpd tq emms-playing-time
emms-lyrics emms-url hl-line emms-tag-editor emms-mark emms-mode-line
emms-cache emms-info-ogginfo emms-info-mp3info emms-playlist-mode
emms-player-vlc emms-player-mplayer emms-info emms-streams later-do
emms-source-playlist emms-source-file emms-player-simple emms-setup emms
emms-compat org-config-thierry ob-sh org-crypt appt diary-lib
diary-loaddefs org-annotation-helper addressbook-bookmark message rfc822
mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader
firefox-protocol bookmark-firefox-handler bookmark-extensions
init-helm-thierry helm-descbinds helm-extensions-autoloads helm-mode
helm-files image-dired tramp tramp-compat tramp-loaddefs trampver shell
dired-x dired-aux ffap thingatpt helm-buffers helm-elscreen helm-tags
helm-bookmark helm-adaptive helm-info helm-net browse-url xml url
url-proxy url-privacy url-expand url-methods url-history url-cookie
url-domsuf mailcap bookmark pp helm-locate helm-help helm-org
org-location-google-maps org-agenda google-maps google-maps-static
url-util url-parse url-vars google-maps-geocode google-maps-base json
org org-macro org-footnote org-pcomplete pcomplete org-list org-faces
org-entities noutline outline org-version ob-emacs-lisp ob ob-tangle
ob-ref ob-lob ob-table ob-exp org-src ob-keys ob-comint ob-core ob-eval
org-compat org-macs org-loaddefs format-spec find-func cal-menu calendar
cal-loaddefs helm-match-plugin helm-grep wgrep-helm wgrep helm-regexp
helm-plugin grep helm-external helm-utils dired compile comint
ansi-color ring helm easy-mmode helm-source eieio-compat helm-config
helm-autoloads async-bytecomp async helm-aliases epa-file epa derived
epg auth-source eieio byte-opt bytecomp byte-compile cl-extra seq cconv
eieio-core cl-generic pcase gnus-util mm-util mail-prsvr password-cache
cl-macs gv slime-autoloads package epg-config time-date avoid cus-start
cus-load w3m-wget info easymenu edmacro kmacro advice help-fns net-utils
cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote make-network-process
dbusbind gfilenotify dynamic-setting font-render-setting x-toolkit x
multi-tty emacs)

Memory information:
((conses 16 894383 118136)
 (symbols 48 64127 4)
 (miscs 40 1498 1692)
 (strings 32 183594 22246)
 (string-bytes 1 5395023)
 (vectors 16 70786)
 (vector-slots 8 1848082 111964)
 (floats 8 2001 472)
 (intervals 56 53546 22863)
 (buffers 976 157)
 (heap 1024 94179 9926))
-- 
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997 





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#19864: 25.0.50; package-initialize is no more starting
  2015-02-14  7:17 bug#19864: 25.0.50; package-initialize is no more starting Thierry Volpiatto
@ 2015-02-14  7:21 ` Bastien
  2015-02-14  7:37   ` Thierry Volpiatto
  0 siblings, 1 reply; 8+ messages in thread
From: Bastien @ 2015-02-14  7:21 UTC (permalink / raw)
  To: Thierry Volpiatto; +Cc: Artur Malabarba, 19864

[-- Attachment #1: Type: text/plain, Size: 383 bytes --]

Hi Thierry,

Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:

> Actually to start emacs-25 I have to advice `package-initialize' to set
> `package--initialized' before.

Yes, I reported this here:
http://article.gmane.org/gmane.emacs.diffs/129142

See the attached patch.

Can you double check it's correct for you?
CC'ing Artur as he may want to double check too.

Thanks,


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: package.el.patch --]
[-- Type: text/x-diff, Size: 696 bytes --]

diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index d8b4595..22676ae 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -1147,7 +1147,9 @@ If successful, set `package-archive-contents'."
     (package-read-archive-contents (car archive)))
   ;; Build compat table.
   (setq package--compatibility-table (make-hash-table :test 'eq))
-  (package--mapc #'package--add-to-compatibility-table))
+  ;; Pretend package is initialized when reading for the first time.
+  (let ((package--initialized t))
+    (package--mapc #'package--add-to-compatibility-table)))
 
 (defun package-read-archive-contents (archive)
   "Re-read archive contents for ARCHIVE.

[-- Attachment #3: Type: text/plain, Size: 14 bytes --]


-- 
 Bastien

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* bug#19864: 25.0.50; package-initialize is no more starting
  2015-02-14  7:21 ` Bastien
@ 2015-02-14  7:37   ` Thierry Volpiatto
  2015-02-14  8:12     ` Thierry Volpiatto
  0 siblings, 1 reply; 8+ messages in thread
From: Thierry Volpiatto @ 2015-02-14  7:37 UTC (permalink / raw)
  To: 19864

Bastien <bzg@altern.org> writes:

> Hi Thierry,
>
> Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:
>
>> Actually to start emacs-25 I have to advice `package-initialize' to set
>> `package--initialized' before.
>
> Yes, I reported this here:
> http://article.gmane.org/gmane.emacs.diffs/129142
>
> See the attached patch.
>
> Can you double check it's correct for you?
> CC'ing Artur as he may want to double check too.

Looks more like a work around, (i.e what's package--initialized utility
if we have to let-bound it to be able to run code) Arthur will decide
what to do.

-- 
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997 






^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#19864: 25.0.50; package-initialize is no more starting
  2015-02-14  7:37   ` Thierry Volpiatto
@ 2015-02-14  8:12     ` Thierry Volpiatto
  2015-02-15  9:48       ` Thierry Volpiatto
  0 siblings, 1 reply; 8+ messages in thread
From: Thierry Volpiatto @ 2015-02-14  8:12 UTC (permalink / raw)
  To: 19864

Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:

> Bastien <bzg@altern.org> writes:
>
>> Hi Thierry,
>>
>> Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:
>>
>>> Actually to start emacs-25 I have to advice `package-initialize' to set
>>> `package--initialized' before.
>>
>> Yes, I reported this here:
>> http://article.gmane.org/gmane.emacs.diffs/129142
>>
>> See the attached patch.
>>
>> Can you double check it's correct for you?
>> CC'ing Artur as he may want to double check too.
>
> Looks more like a work around, (i.e what's package--initialized utility
> if we have to let-bound it to be able to run code) Arthur will decide
> what to do.

Here a patch that set package--initialized when package-archive-contents
is feeded and then setup package--compatibility-table.

diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index d8b4595..f7b9ef9 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -1139,13 +1139,17 @@ Will throw an error if the archive version is too new."
                      (car contents) package-archive-version))
           (cdr contents))))))
 
-(defun package-read-all-archive-contents ()
+(defun package-read-all-archive-contents (&optional no-compat-table)
   "Re-read `archive-contents', if it exists.
 If successful, set `package-archive-contents'."
   (setq package-archive-contents nil)
   (dolist (archive package-archives)
     (package-read-archive-contents (car archive)))
   ;; Build compat table.
+  (unless no-compat-table
+    (package--build-compat-table)))
+
+(defun package--build-compat-table ()
   (setq package--compatibility-table (make-hash-table :test 'eq))
   (package--mapc #'package--add-to-compatibility-table))
 
@@ -1738,11 +1742,14 @@ If optional arg NO-ACTIVATE is non-nil, don't activate packages."
   (interactive)
   (setq package-alist nil)
   (package-load-all-descriptors)
-  (package-read-all-archive-contents)
+  (package-read-all-archive-contents t)
+  ;; Decide package is initialized when
+  ;; `package-archive-contents' is feeded.
+  (setq package--initialized t)
+  (package--build-compat-table)
   (unless no-activate
     (dolist (elt package-alist)
-      (package-activate (car elt))))
-  (setq package--initialized t))
+      (package-activate (car elt)))))
 
 (defun package--add-to-compatibility-table (pkg)
   "If PKG is compatible (without dependencies), add to the compatibility table.

-- 
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997 






^ permalink raw reply related	[flat|nested] 8+ messages in thread

* bug#19864: 25.0.50; package-initialize is no more starting
  2015-02-14  8:12     ` Thierry Volpiatto
@ 2015-02-15  9:48       ` Thierry Volpiatto
  2015-02-15 14:45         ` Artur Malabarba
  0 siblings, 1 reply; 8+ messages in thread
From: Thierry Volpiatto @ 2015-02-15  9:48 UTC (permalink / raw)
  To: 19864

Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:

> Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:
>
>> Bastien <bzg@altern.org> writes:
>>
>>> Hi Thierry,
>>>
>>> Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:
>>>
>>>> Actually to start emacs-25 I have to advice `package-initialize' to set
>>>> `package--initialized' before.
>>>
>>> Yes, I reported this here:
>>> http://article.gmane.org/gmane.emacs.diffs/129142
>>>
>>> See the attached patch.
>>>
>>> Can you double check it's correct for you?
>>> CC'ing Artur as he may want to double check too.
>>
>> Looks more like a work around, (i.e what's package--initialized utility
>> if we have to let-bound it to be able to run code) Arthur will decide
>> what to do.
>
> Here a patch that set package--initialized when package-archive-contents
> is feeded and then setup package--compatibility-table.

Looks that this patch have been applied (or more or less the same
thing), probably you can notify people involved in this bugreport when
you do so...

Thanks.

-- 
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997 






^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#19864: 25.0.50; package-initialize is no more starting
  2015-02-15  9:48       ` Thierry Volpiatto
@ 2015-02-15 14:45         ` Artur Malabarba
  2015-02-16  7:04           ` Thierry Volpiatto
  0 siblings, 1 reply; 8+ messages in thread
From: Artur Malabarba @ 2015-02-15 14:45 UTC (permalink / raw)
  To: Thierry Volpiatto; +Cc: 19864

Hi, I only just ran into this thread (despite being mentioned above I
don't think I was cc'ed).
I confirm this was fixed yesterday, so this report can be closed.

Sorry I didn't see your patch Thierry (as I said, I only just found
this thread).

Artur





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#19864: 25.0.50; package-initialize is no more starting
  2015-02-15 14:45         ` Artur Malabarba
@ 2015-02-16  7:04           ` Thierry Volpiatto
  2015-02-16  8:20             ` Bastien
  0 siblings, 1 reply; 8+ messages in thread
From: Thierry Volpiatto @ 2015-02-16  7:04 UTC (permalink / raw)
  To: bruce.connor.am; +Cc: 19864


Artur Malabarba <bruce.connor.am@gmail.com> writes:

> I confirm this was fixed yesterday, so this report can be closed.

Ok thanks.

-- 
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997 





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#19864: 25.0.50; package-initialize is no more starting
  2015-02-16  7:04           ` Thierry Volpiatto
@ 2015-02-16  8:20             ` Bastien
  0 siblings, 0 replies; 8+ messages in thread
From: Bastien @ 2015-02-16  8:20 UTC (permalink / raw)
  To: Thierry Volpiatto; +Cc: 19864-done, bruce.connor.am

Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:

> Artur Malabarba <bruce.connor.am@gmail.com> writes:
>
>> I confirm this was fixed yesterday, so this report can be closed.
>
> Ok thanks.

Thanks and closed.

-- 
 Bastien





^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-02-16  8:20 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-14  7:17 bug#19864: 25.0.50; package-initialize is no more starting Thierry Volpiatto
2015-02-14  7:21 ` Bastien
2015-02-14  7:37   ` Thierry Volpiatto
2015-02-14  8:12     ` Thierry Volpiatto
2015-02-15  9:48       ` Thierry Volpiatto
2015-02-15 14:45         ` Artur Malabarba
2015-02-16  7:04           ` Thierry Volpiatto
2015-02-16  8:20             ` Bastien

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).