From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Obtaining the version of an installed package Date: Mon, 09 Aug 2021 11:39:16 -0400 Message-ID: References: <0b71ad0a-8e9e-41ff-99a2-616b9e3bacef@www.fastmail.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="20316"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: "Emacs Devel" To: "Bozhidar Batsov" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Aug 09 17:40:27 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mD7O6-0004xw-Il for ged-emacs-devel@m.gmane-mx.org; Mon, 09 Aug 2021 17:40:26 +0200 Original-Received: from localhost ([::1]:59536 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mD7O4-0002hH-AI for ged-emacs-devel@m.gmane-mx.org; Mon, 09 Aug 2021 11:40:24 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:42046) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mD7NC-00020k-Ov for emacs-devel@gnu.org; Mon, 09 Aug 2021 11:39:31 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:59638) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mD7N9-0006xu-Lk for emacs-devel@gnu.org; Mon, 09 Aug 2021 11:39:29 -0400 Original-Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 8C9034411D0; Mon, 9 Aug 2021 11:39:24 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 51F4F4411AA; Mon, 9 Aug 2021 11:39:23 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1628523563; bh=Y9kcko6bnaGcVeXCKp1Wdxojo5BjiqH8a/u3L/vDdbI=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=pW4Q+HUOcZOeZnndov1a8hOfp0pOE4LRYOFLTB/YmdguHEU6mTNHaQEJzOOCcNkxO S7GoyAshhesUIkDl5l4lARurMRmfnMCAMyKE7eAJ0Tat3OEE0W9f9fMsYoZTkScUL3 VqT7Zi0D5RUCzoJ9UlZ2dxTyGYHVJME6A7Thrt41KPg4WmuRyvO5VcSQszsjYmO0kp pB/64Uc4RNPOFHrHuNmOS+EwRMLBrL+Mzq04rYhJFj53JhwK3JKK2Y20V5nEtA9JWL d8HMBHrkllaLJGK0WiaUWd3o4fWruvWty6RXDQ4U5cvh40DK1bDKZ80MGCgNAmjY3v F8I9OTQPfF4ew== Original-Received: from alfajor (104-222-120-40.cpe.teksavvy.com [104.222.120.40]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 205FD120228; Mon, 9 Aug 2021 11:39:23 -0400 (EDT) In-Reply-To: <0b71ad0a-8e9e-41ff-99a2-616b9e3bacef@www.fastmail.com> (Bozhidar Batsov's message of "Mon, 09 Aug 2021 17:03:21 +0300") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:272237 Archived-At: Bozhidar Batsov [2021-08-09 17:03:21] wrote: > I guess that could work, although from what I gathered it operates only on > the current package. I was hoping to find something like an API like > `(package-get-version 'package-name)`. Ah, no, we don't have such an abstraction. Currently, you'd have to use the `package--alist` function (whose first call will take a bit of time to real all the -pkg.el files) and then look inside its return value with `package-desc-`. [ That's assuming you're interested in the packages currently installed. If you're interested in the packages currently activated, then you have that list in `package-activated-list` but that fails to record which version has been activated :-( ] Patches welcome to add more friendly accessors. I'm also curious to know the specific context in which you need that info. Is it to test at runtime whether some dependency includes a particular bugfix/feature ? Stefan