From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1 with cipher CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 0A9111A1E28 for ; Fri, 21 Oct 2016 13:39:31 -0700 (PDT) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP; 21 Oct 2016 13:39:30 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,526,1473145200"; d="scan'208";a="1057310339" Received: from jessica1-mobl.amr.corp.intel.com (HELO localhost) ([10.252.136.91]) by fmsmga001.fm.intel.com with ESMTP; 21 Oct 2016 13:39:30 -0700 MIME-Version: 1.0 To: Andrew Fish , Message-ID: <147708236992.14194.656313834108120082@jljusten-ivb> From: Jordan Justen In-Reply-To: Cc: "Ard Biesheuvel" , "edk2-devel-01" , "Mike Kinney" , "Leif Lindholm" , "Laszlo Ersek" , "Gao, Liming" References: <147707992484.13791.10042868456965197315@jljusten-ivb> User-Agent: alot/0.3.7 Date: Fri, 21 Oct 2016 13:39:29 -0700 Subject: Re: [Bug 164] Add the build option "/D DISABLE_NEW_DEPRECATED_INTERFACES" in package DSC files X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2016 20:39:31 -0000 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable On 2016-10-21 13:20:49, Andrew Fish wrote: > On Oct 21, 2016, at 12:58 PM, Jordan Justen > wrote: > On 2016-10-21 12:37:21, Ard Biesheuvel wrote: > = > I don't remember seeing any discussion regarding > DISABLE_NEW_DEPRECATED_INTERFACES on the list, so I am a bit surpr= ised > seeing these bugs being filed and assigned. > = > I agree. > = > Also, the terminology seems confusing. 'new deprecated' seems like a > contradiction. I guess it means 'newly deprecated', but that seems > like a term that is quickly going to become obsolete. Soon there will > be old deprecated items that are disabled with this switch. > DISABLE_DEPRECATED_INTERFACES sounds better. > = > But, shouldn't we have platforms opt-in to using the deprecated > interfaces rather than adding DISABLE_NEW_DEPRECATED_INTERFACES to t= he > build command line for every EDK II platform? > = > Not using deprecated items should be the default for EDK II platform= s. > If a platform has to opt-in to the deprecated content in their .dsc, > then it is obvious that they are relying on deprecated functionality. > = > So, I guess I'd propose adding ENABLE_DEPRECATED_INTERFACES instead. > = > Jordan, > I think it depends on your point of view. If you have a platform that > works and you update the edk2 revision you would expect it to still wo= rk. I think this is what UDK is for. If you want to depend directly on EDK II, then you'll see less stability. > Thus the option is to DISABLE_DEPRECATED_INTERFACES as that maintains > backward compatibility. In order to support UDK releases, maybe ENABLE_UDK2014_INTERFACES would be something to consider. Or ENABLE_UDK_INTERFACE=3D2014 so we can use <=3D. But, I still think that EDK II platforms (as a goal) should represent the best, cleanest examples of using EDK II. And, I think having every platform accumulate cruft like CFLAGS to disable deprecated interfaces works against that goal. Another point. What about when we want to deprecate more interfaces? Oh know, we better not break platforms that only specified DISABLE_NEW_DEPRECATED_INTERFACES! Let's add DISABLE_NEW_DEPRECATED_INTERFACES2! :) -Jordan > I think it makes total sense to turn on DISABLE_DEPRECATED_INTERFACES = on > all the open source edk2 platform as soon as possible so all the open > source code is following current best practices. > Not to mention it would probably be a really good idea to give all the > downstream folks a long lead time about the plan of making a non backw= ard > compatible change. = > Thanks, > Andrew Fish > = > -Jordan > = > Before making any such changes, I would like a strong commitment f= rom > other package owners that deprecating an interface brings along wi= th > it the responsibility to update all existing callers, otherwise > setting this define will only result in more breakage, and ARM has > seen its share of inadvertent breakage in the past when changes to > core code were made without taking other architectures into accoun= t. > = > On 21 October 2016 at 02:21, > wrote: > = > https://bugzilla.tianocore.org/show_bug.cgi?id=3D164 > = > yonghong.zhu@intel.com changed: > = > What |Removed |Added > ----------------------------------------------------------------= ------------ > Priority|Lowest |Normal > Status|UNCONFIRMED |CONFIRMED > Assignee|michael.d.kinney@intel.com > |ard.biesheuvel@linaro.org > Ever confirmed|0 |1 > Release(s) the| |EDK II Trunk > issues must be| | > fixed| | > = > --- Comment #1 from yonghong.zhu@intel.com --- > Assign to Package owner. > = > -- > You are receiving this mail because: > You are the assignee for the bug. > = > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel