From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mx.groups.io with SMTP id smtpd.web12.815.1588272324664821893 for ; Thu, 30 Apr 2020 11:45:24 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=BfSHwhi/; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: nathaniel.l.desimone@intel.com) IronPort-SDR: AAJIhb6JhxCCiE5WrGUO6WrgQ2hJDPaIamtiK+NxyclNRy5jPwgFBdkJcd0iG4HWciGk55zcow RPCR+MshZY3g== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Apr 2020 11:45:24 -0700 IronPort-SDR: k3Z7Vn+URtSWWfFc6HHKyDIgDn+wLF3Le4qPFdS2uAp3Mnlbo182i2/4Nbqsn4WHSXnmvB5D/1 yp48V9LuKYGg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,336,1583222400"; d="scan'208";a="276609508" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by orsmga002.jf.intel.com with ESMTP; 30 Apr 2020 11:45:24 -0700 Received: from fmsmsx163.amr.corp.intel.com (10.18.125.72) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 30 Apr 2020 11:45:23 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by fmsmsx163.amr.corp.intel.com (10.18.125.72) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 30 Apr 2020 11:45:23 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.106) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 30 Apr 2020 11:45:23 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hmHUqyCQJfmLA7wefHjbPRG/vHIRpzxV9kARvhXDE25iI+OzpS7KUV09gcZJwql7ud/V/nvRaYQJQnRbqytGMGU3Oj8/6/eAvC3htj0iGKv6DaSEc+wr73h4qGm2duh+CudUbGn4+wQeUUlnUPJzYeYV7m1HnyJ/XuXRAgwWeWaCkylU6tAgNhQ1fYgku6V+JCm+xih0Kozl5vkttUio0yipuq+IjHPFHEqMSGuJTr8eQ42q2JmboqgB1jtP7R+rQ1YHH4QL2PtmWWJJ2qMzROZWTFhpRlXkYeEXuW2QF0Ky2yhOvhwgOihaxCVSFiAJvlloQVs6cLOPCab3mN9tmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KDRwZdxDVKbKqxhTUVqUVut/AFr4+cvSN2xH7RKN/Ek=; b=YhLX0cNJY29Pxkbu644vddAwLUXQbUPiNRVTWbupiPRF1lsq8w76TTKJP+EdV1apOWsjdXrqKAwmqlVW9X1mitqnvOEMglcG0q3I6Xk1l7hAr+J0QWCApzmGw9yZKsLlUWk8+HPmU5DSyJQ0sxvj889AId/vDqiYKDo//siQ3ya8jl0QWVXSDghCpgfUBXGPsvjJYenOejYExq48bkYCjKxvYypNJFpBdCG9HQiBPF095A6DRSxH3EgGmUl8IrcUMe+Qe28bQk1+FNHtwPnh1YIzEHrvebHt1r79ZwmvqQrAeCD44Zstslvdh04lRyCmOV5PlGfMFgJgrx64A/2cog== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KDRwZdxDVKbKqxhTUVqUVut/AFr4+cvSN2xH7RKN/Ek=; b=BfSHwhi/JqXSRcSnFCUM122voKQEAVjJm8IHQkih+wqaT/3k5o+z0LLUzv5knIRq+gni+XGPXicJUuA1RVcpN3Lfy6XbAZz4AoiJ8WmHZqHjvwrdHGm26L8Qv06wkNtvwHZcCUD8OwPATfShgatAPVL6tUV1mlQ4qKqcRhOoBCE= Received: from BL0PR11MB3489.namprd11.prod.outlook.com (2603:10b6:208:75::29) by BL0PR11MB3474.namprd11.prod.outlook.com (2603:10b6:208:67::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2937.22; Thu, 30 Apr 2020 18:45:22 +0000 Received: from BL0PR11MB3489.namprd11.prod.outlook.com ([fe80::d0f8:bfd7:bae2:3e42]) by BL0PR11MB3489.namprd11.prod.outlook.com ([fe80::d0f8:bfd7:bae2:3e42%7]) with mapi id 15.20.2937.026; Thu, 30 Apr 2020 18:45:22 +0000 From: "Nate DeSimone" To: "devel@edk2.groups.io" , "Bjorge, Erik C" CC: "Desimone, Ashley E" , "Pandya, Puja" , Bret Barkelew , "Agyeman, Prince" Subject: Re: [edk2-devel] [edk2-staging/EdkRepo] [PATCH v1] EdkRepo: Improve removal of content with AlwaysExclude Thread-Topic: [edk2-devel] [edk2-staging/EdkRepo] [PATCH v1] EdkRepo: Improve removal of content with AlwaysExclude Thread-Index: AQHWGDR224XP1yGdI0KVWtK6yxOWeqiSDlmg Date: Thu, 30 Apr 2020 18:45:22 +0000 Message-ID: References: <5612a4e98256fbb2230393845632116b5a10729e.1587511536.git.erik.c.bjorge@intel.com> In-Reply-To: <5612a4e98256fbb2230393845632116b5a10729e.1587511536.git.erik.c.bjorge@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiOWYxZmJiMTYtZTJjMS00OGJiLTgzNDAtZDVjMzkwNWE4MTk5IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiNzlRK1wveUZYRStEZ3BPR3MyQmg2aklkZGRwWnV3b1lJMHc3cTdtZzJJT3J4TlZ1cWdWMFdpVXliRUM1R1NEYTYifQ== dlp-reaction: no-action dlp-version: 11.2.0.6 dlp-product: dlpe-windows x-ctpclassification: CTP_NT authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-originating-ip: [134.134.136.198] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 514c495e-5553-4f03-566f-08d7ed36a360 x-ms-traffictypediagnostic: BL0PR11MB3474: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2512; x-forefront-prvs: 0389EDA07F x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL0PR11MB3489.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(39860400002)(396003)(346002)(136003)(376002)(366004)(6506007)(52536014)(8936002)(53546011)(4326008)(26005)(966005)(71200400001)(478600001)(107886003)(186003)(86362001)(2906002)(5660300002)(55016002)(66476007)(33656002)(76116006)(9686003)(7696005)(66556008)(64756008)(66446008)(8676002)(66946007)(316002)(6636002)(110136005)(54906003);DIR:OUT;SFP:1102; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: HLm2kaVx3rDSH8F+Se0DyJfe+1heFHfNF1m47qIXhVEK4/ZHugT9n5bckg2nwIK3HAGjJgqoaYZRcxsLRLA7lZzTO0cOQMOvduAOzzrIP7CyDXaKb4nNmuR1S4A0Prd4wFKwPF//nI6uIQkPzsY0SaMbdYkEkkNeONnf/FsDL7TC+RskpYpto22Nwj20k4zx7Vkrw6tq6VEmLopyhyc1x/5HlRKcfdiQUMvSGkOhxdvES3iG0lS8Qn494G97D/Wu+WJ3zL5nCdzteAcsfUuOOWlFyQZax4uqxsZyPha+4W8cjAwaFSOnK/5w/0pQaT8Bra/ea0cbrDFMb2Cbtp23XgPeDbUtPPLRko0icB3+N1c+387YzDRc5ao+k3C6B/ruE/K7gfXhyACLrzWn7x1C4i/4RLtm+HVxlpXikH07FYIJ2U/yo+iipmZ/rELB5/J0PMIUIP9WbNS4Ycpk9tdwgAydym8bf67sIddc1BWKQXqMRDBMp56VVt/9WtpSaxwK6qJIdFok4czJno2fshXRqg== x-ms-exchange-antispam-messagedata: by9KBhsbbHxOCEcmUGhDMdwvFdI92ws8saarlZsBLtWyqPUKndnrFYrA32wvwRrPfkd//Gi0NpBoRt0uubzIYzheIuE0UrFjMt+FiFCp5yximXb74RZn9jn4BsiLp4r/tojpjCcAHfJxK8YR5p22fN8DRs2pUX4j8o+PNMzv43Jqo2zsUQnIkA5cYAUAp4uyh8ZIN5uWoe1PcXCSDTbzZzE8/vugccQAQq+v1gsynmxC/NF6QTXYKreloq605qzHBmsV94MDDSslmD1JxwVNFLRmgJ6lkSz0aZTp+9wDV5ze+B5Io/x6qk0pMvk1C1aEcmCd3gHJmGWp6w/Qcdf+3r3Urv+4Sg4e9xXiwV0Iu3yhQKv+b6li/6wYit4+3I1nplKfFUyUheg5FeKMWoMslucrESX7XZcL+GIdzYC8QphPbZPJlu4eJVk2JqEACUO6L4YFFdaNn7CwwhreC9/AFJqYKOhoQUp1mHdTtoKv4ZiZG9rpYnKAZI1Th+2KubLfs+qCyRmgASYIiqhS3QSc3P9x7mZ3o9G31qIPW+DlWScspu333o4NS05Fwky2zL/Jr6mpVwQJxzHpRJK3JZcmr5UzVkXO/cpOaN18i3PdVw2rsTgThvUD5rnuXW/7gXWkp1X3L64yWzJ/uWXwyF45T8qsTGS8g6riXLV9U1tJKiNEmyWo7/RQ77Kof54YwRcQuLHvQK+VTi44U5sEbTL+fo4VEwGr6ecAeG+97u95JDGwzJZVjMKzmAD6py1YrvwZKPqWFBT/vv9n9R+BsnBdRctlc2IO/2C39hK9za6sWSv4DpvDwGXhwI6zyvLIpZbC MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 514c495e-5553-4f03-566f-08d7ed36a360 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Apr 2020 18:45:22.0471 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: IJccSK1yd3JDn7rF/n1Okz57vk0rzxBFxb+NrWM2A7EcpDqZU6SPcsyUTMALFLIvwkRHFFX59NgkmQJFP0vPE7pyUJsEo/BtIBSypq+pHUY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR11MB3474 Return-Path: nathaniel.l.desimone@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Pushed: https://github.com/tianocore/edk2-staging/commit/8caf3640 -----Original Message----- From: devel@edk2.groups.io On Behalf Of Bjorge, Eri= k C Sent: Tuesday, April 21, 2020 4:27 PM To: devel@edk2.groups.io Cc: Desimone, Nathaniel L ; Desimone, Ashl= ey E ; Pandya, Puja ; B= ret Barkelew ; Agyeman, Prince Subject: [edk2-devel] [edk2-staging/EdkRepo] [PATCH v1] EdkRepo: Improve r= emoval of content with AlwaysExclude The AlwaysExclude XML tag has existed but only removed entries from the li= st of sparse objects. Now items in the AlwaysExclude tag will be actively = removed by prefixing '!' to the entry. Signed-off-by: Erik Bjorge Cc: Nate DeSimone Cc: Ashley DeSimone Cc: Puja Pandya Cc: Erik Bjorge Cc: Bret Barkelew Cc: Prince Agyeman --- project_utils/sparse.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/project_utils/sparse.py b/project_utils/sparse.py index b17d6= 88..dbe2d80 100644 --- a/project_utils/sparse.py +++ b/project_utils/sparse.py @@ -3,7 +3,7 @@ ## @file # sparse.py # -# Copyright (c) 2017- 2019, Intel Corporation. All rights reserved.
+# Copyright (c) 2017- 2020, Intel Corporation. All rights reserved.
# SPDX-License-Identifier: BSD-2-Clause-Patent # import os @@ -552,11 += 552,11 @@ class BuildInfo: =20 def sparse_checkout(self, root=3DNone, always_include=3D[], always_ex= clude=3D[]): """Performs a sparse checkout operation on a single repository""" - local_prune_data =3D set() + local_prune_data =3D [] for item in always_include: - local_prune_data.add('/{}'.format(item)) + local_prune_data.append('/{}'.format(item)) for item in always_exclude: - local_prune_data.discard('/{}'.format(item)) + local_prune_data.append('!/{}'.format(item)) try: repo =3D git.Repo(root) except: @@ -578,7 +578,11 @@ def process_sparse_checkout(workspace_root, repo_list= , current_combo, manifest): workspace_list.extend([os.path.join(workspace_root, os.path.normpath(= x.root)) for x in repo_list]) =20 # Filter sparse data entries that apply to the current combo or all c= ombos - sparse_data =3D [x for x in manifest.sparse_data if x.combination is = None or x.combination =3D=3D current_combo] + # Build list in three steps (all, repo, combo) to make sure the prior= ity is correct + sparse_data =3D [] + sparse_data.extend([x for x in manifest.sparse_data if x.remote_name = is None and x.combination is None]) + sparse_data.extend([x for x in manifest.sparse_data if x.remote_name = is not None and x.combination is None]) + sparse_data.extend([x for x in manifest.sparse_data if=20 + x.remote_name is not None and x.combination =3D=3D current_combo]) =20 # Create object that processes build information. build_info =3D BuildInfo(workspace_list) @@ -602,8 +606,8 @@ if __nam= e__ =3D=3D "__main__": # Program Information # __title__ =3D 'Sparse Checkout' - __version__ =3D '0.02.00' - __copyright__ =3D 'Copyright (c) 2017, Intel Corporation. All rights = reserved.' + __version__ =3D '0.03.00' + __copyright__ =3D 'Copyright (c) 2017 - 2020, Intel Corporation. All = rights reserved.' =20 # # Processes command line arguments -- 2.21.0.windows.1