From owner-freebsd-arch@freebsd.org Tue Jan 12 18:50:47 2021 Return-Path: Delivered-To: freebsd-arch@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A1C5B4E2B71 for ; Tue, 12 Jan 2021 18:50:47 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4DFfm74JLsz4WQj; Tue, 12 Jan 2021 18:50:47 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.codepro.be", Issuer "R3" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 6CD02FA1C; Tue, 12 Jan 2021 18:50:47 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id 2B248C7B3; Tue, 12 Jan 2021 19:50:46 +0100 (CET) From: "Kristof Provost" To: "Mark Johnston" Cc: freebsd-arch@freebsd.org Subject: Re: libifconfig non-private in 13? Date: Tue, 12 Jan 2021 19:50:45 +0100 X-Mailer: MailMate (1.13.2r5673) Message-ID: <51DB9AE6-66F8-43A8-8B47-07E3441CBC29@FreeBSD.org> In-Reply-To: References: <1EB6D7ED-F370-42EA-AC66-93D8BC96F29C@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format=flowed; markup=markdown Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Jan 2021 18:50:47 -0000 On 12 Jan 2021, at 18:36, Mark Johnston wrote: > On Mon, Dec 21, 2020 at 09:02:00PM +0100, Kristof Provost wrote: >> Hi, >> >> Libifconfig was marked as private (and experimental) back in 2016. >> It’s since made some strides and has grown a few users. Ifconfig >> now >> depends on it as well. >> >> While it’s far from finished it’d be more useful for some users >> if >> it were public. That would at least imply some level of API/ABI >> stability, which is why I’m bringing it up here before pulling the >> trigger. >> >> Does anyone see any reasons to not do this? > > I note that libifconfig doesn't version its symbols. In other words, > compatibility-breaking changes generally require a shlib version bump, > which will be painful for out-of-tree consumers (and if we don't > expect > to have such consumers there's no reason to make it a public library). > Symbol versioning isn't perfect but makes some kinds of breaking > changes > easier to handle, and might be worthwhile here since I'd expect > libifconfig to keep evolving for a while. Should we add a symbol map > ahead of making libifconfig public? Yes, we should to that, as well as write up a man page for the current API. I did make a start on the man page a while back, but spare time has been hard to come by. Best regards, Kristof