From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas Enge Subject: Re: Package API compatibility and guix package variable names Date: Wed, 27 Jul 2016 18:19:18 +0200 Message-ID: <20160727161918.GA5300@solar> References: <20160719205719.20769-1-rekado@elephly.net> <87y44wdr1f.fsf@elephly.net> <20160727175431.35fc6326@scratchpost.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51148) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bSRYP-0003io-0D for guix-devel@gnu.org; Wed, 27 Jul 2016 12:19:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bSRYJ-00024W-Jk for guix-devel@gnu.org; Wed, 27 Jul 2016 12:19:27 -0400 Received: from mailrelay7.public.one.com ([91.198.169.215]:26113) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bSRYJ-00024C-6o for guix-devel@gnu.org; Wed, 27 Jul 2016 12:19:23 -0400 Content-Disposition: inline In-Reply-To: <20160727175431.35fc6326@scratchpost.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Danny Milosavljevic Cc: guix-devel On Wed, Jul 27, 2016 at 05:54:31PM +0200, Danny Milosavljevic wrote: > In my humble opinion it would best if there was an "allego-5.0" and an "allegro" variable, with the "allegro" variable not being referenced by any other package (they would reference "allegro-5.0" instead - or whatever major API version they need, for example "allegro-5.2"). > If something becomes incompatible, its name should change. It is our common practice to not re-encode the version into the name: Usually the unnumbered name simply stands for the latest version, Only when we need to keep several versions around do we add a versioned name for the earlier one. In this way, updating dependencies becomes easier: Most of the time, a later version of a dependency will work. To follow your suggestion, we would ultimately add the soname of libraries to package names, and then whenever some package is updated, all packages depending on it would need to have their inputs rewritten. This would not be very practical. Andreas