From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web12.125.1586800478129014950 for ; Mon, 13 Apr 2020 10:54:38 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=mMZ7mDog; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: ashley.e.desimone@intel.com) IronPort-SDR: IFoMea3uVS7n61YEW3t6TEhQlFOSyb/5Jh/nFVBpZHndkjtFQJhl7N2lfMBuzpqTl0e7GWWrs8 AmV3svR/8xzQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Apr 2020 10:54:37 -0700 IronPort-SDR: ldsZByH5mxtyciOF0IB67l42HpSd8ij8uqhSmmEuXKQugN8/7JrT7Q6oGdjEyVQN2TFmRmUH8Z yRK+8eGmqC9w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,378,1580803200"; d="scan'208";a="245195429" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by fmsmga008.fm.intel.com with ESMTP; 13 Apr 2020 10:54:37 -0700 Received: from fmsmsx155.amr.corp.intel.com (10.18.116.71) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 13 Apr 2020 10:54:36 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by FMSMSX155.amr.corp.intel.com (10.18.116.71) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 13 Apr 2020 10:54:36 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.174) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 13 Apr 2020 10:54:36 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hMBLnA+pVApdBhnjyWrAFS5TVKmFVJB1AsBnIJOruzyJCyORvEfUPefN5rqCEIv+gitMKXUuz8WsF+HE7BsZbMfwtzn8Tw/ke/2AlmeUtAzkLmnggUW/fd2ePKf9+RvxKnVX6H+gqizqHmc18JUDmq66ynSf6pbuI9LF+1FO0eq8K8i10X8+t5714TKvniHUp44sVV8odr0P5eTKxM6GkfoMD3+zxSVHBELHdMmfaWQtAbasMrrClfDnz8n5JdyU7RtSDKC2NFXixyp9u2ClqtjeLVcjCDIxE9PjVGG4dd4stEszliaAjDSrtumjkFnlotC5zG/IMhl86bPplxihSA== 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=HQbyMsDMDhPAsBd5VFZWT98/i5bHKkMG7obKBkYrGL0=; b=QATYS24XauqPLhdsUlIdXMzRyQYafUC3YdqLdXPAuu/YLuz1dvpWYfJB1hmtS7PivBXvdO1uQoVbxDpVCMFw5bBNHISlpNhPmr5OFNbDXGz4wU+cbX1tFloN9bdwIU/o4onWVHaMyESlEcdzBP5Foyndv6DLgY+kuejEtKj1t+bfpu0xzFQdqu4nTLDlN2AKzdlAy6iNUEWeT0MgyNCoSUeHjdCttVrDXU1v6qL2gvjlS3YC62fBH18E9FdFhYInj3dc69ZyViRyo8fMAqJH3llnSGN4XRmXzE3v823/8I7dtmoTO+i0HUEmXI3KnU3MmjEGrslA28aHe3xKiE4S7A== 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=HQbyMsDMDhPAsBd5VFZWT98/i5bHKkMG7obKBkYrGL0=; b=mMZ7mDogcF26dlOhZL+lP/13Wq/16gIzBRIOyuPk/6oZIKl43WRl8zh78F/+s+OJNPzaBxILY+8I79OFXC/qvZbHWAqkSRz2rbVRZqu+Fd6mnV2qULqu24NOxKt8ZhyBUN9Y2unyouLUBMRVySGOBnZKsJJKNsj74G3tb6PHjU4= Received: from DM6PR11MB3628.namprd11.prod.outlook.com (2603:10b6:5:144::25) by DM6PR11MB4236.namprd11.prod.outlook.com (2603:10b6:5:1d9::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.28; Mon, 13 Apr 2020 17:54:33 +0000 Received: from DM6PR11MB3628.namprd11.prod.outlook.com ([fe80::2c41:705f:b0ee:e36c]) by DM6PR11MB3628.namprd11.prod.outlook.com ([fe80::2c41:705f:b0ee:e36c%5]) with mapi id 15.20.2900.028; Mon, 13 Apr 2020 17:54:33 +0000 From: "Ashley E Desimone" To: "Desimone, Nathaniel L" , "devel@edk2.groups.io" CC: "Pandya, Puja" , "Bjorge, Erik C" , "Agyeman, Prince" , "Bret Barkelew" , Philippe Mathieu-Daude Subject: Re: [edk2-staging/EdkRepo] [PATCH] EdkRepo: Update combo displayed in shell after checkout Thread-Topic: [edk2-staging/EdkRepo] [PATCH] EdkRepo: Update combo displayed in shell after checkout Thread-Index: AQHWEGESgwtGMcsQjkmyO49kv2erFKh3WFJQ Date: Mon, 13 Apr 2020 17:54:33 +0000 Message-ID: References: <20200412002630.4790-1-nathaniel.l.desimone@intel.com> In-Reply-To: <20200412002630.4790-1-nathaniel.l.desimone@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-reaction: no-action dlp-product: dlpe-windows authentication-results: spf=none (sender IP is ) smtp.mailfrom=ashley.e.desimone@intel.com; x-originating-ip: [134.134.136.213] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: e5b7fd6c-6fdf-4412-6b6e-08d7dfd3b97c x-ms-traffictypediagnostic: DM6PR11MB4236: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-forefront-prvs: 037291602B x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR11MB3628.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(10019020)(366004)(346002)(396003)(376002)(39860400002)(136003)(110136005)(33656002)(54906003)(53546011)(6506007)(66446008)(64756008)(66556008)(66476007)(66946007)(15650500001)(26005)(4326008)(86362001)(316002)(7696005)(71200400001)(8936002)(2906002)(186003)(9686003)(76116006)(478600001)(81156014)(55016002)(8676002)(5660300002)(52536014);DIR:OUT;SFP:1102; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qLaU2v3XPiMTfgfyZHEkryQxOHJ2UUYAKTXNtWFNnSnOftn515D/etCQsayrRoAWCBK3/WUkiq7zYsyZZ+tLjQ13iKwJXyAnhhXNh+ErnRXJ1QEwWQrOkXfH98ziX45JoRIy9k9M+X4egRFg327o/Lrukc9t8Hx3JR/ZUtFBXKjBsRd6HkV9nQT4E5XSvU+2coCKTM+0KYSSP3LvJfOYd5n3Zwkpgu5ut0J8knHUfaMqyfefbRnmBW62WFA15mSojftRz7nDvchkM10pzzycklgXz5Fx22MxeyxnvFwXZsqZA01AcGeLZDQfh4ZJ/Pv6uOuJ5WWUzngYkbRqj+st2Ul6+g2DkmDn3fZfy+GZaPtZbKmJjTo2AdraC9XKZ9ufyKsp8PIKaXQ1VveURUX6kWuQDlDil3pjGHOBPejGuxntmRj3DCxNzjtBG7W4AEEh x-ms-exchange-antispam-messagedata: prvzFJP8/vAfRv7oLyrBjeMa2zyNa038WNWjyDuyH6sfR+36X2nIbO+Vom0J78zKXNBpVwRT+Uc8iHsjxVbyPghOqM89I9kc5l/imNOByLWzc1FYqaeobiDbpzGTyKvNIVulGPVS8ePJlAmJ90C1yw== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: e5b7fd6c-6fdf-4412-6b6e-08d7dfd3b97c X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2020 17:54:33.8337 (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: 8mbDSk6jtRzKyfXCsT8mn5JZnPhGJsBGe1U7Q58lhZOBook2FWYx3L57JcW4V9QHKa2Wv3ECIDCqrIKJDKOEXTogpKgQiXYZb66Cw3OejYo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB4236 Return-Path: ashley.e.desimone@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Ashley DeSimone -----Original Message----- From: Desimone, Nathaniel L =20 Sent: Saturday, April 11, 2020 5:27 PM To: devel@edk2.groups.io Cc: Desimone, Ashley E ; Pandya, Puja ; Bjorge, Erik C ; Agyeman, Prince = ; Bret Barkelew ; Ph= ilippe Mathieu-Daude Subject: [edk2-staging/EdkRepo] [PATCH] EdkRepo: Update combo displayed in = shell after checkout With the current version of the command completion script, after running "e= dkrepo checkout" the branch combination listed in the shell prompt is not u= pdated to reflect the new branch combination. The reason for this is becaus= e the branch combination isn't checked for changes unless the present worki= ng directory was changed by the previous command. To fix this bug, the scripts have been updated to check for changes to the = branch combination when the last command run by the user was "edkrepo" OR t= he present working directory was changed by the previous command. Signed-off-by: Nate DeSimone Cc: Ashley DeSimone Cc: Puja Pandya Cc: Erik Bjorge Cc: Prince Agyeman Cc: Bret Barkelew Cc: Philippe Mathieu-Daude --- .../Vendor/win_edkrepo_prompt.sh | 17 ++++++++- edkrepo_installer/linux-scripts/install.py | 38 +++++++++++++++++-- 2 files changed, 50 insertions(+), 5 deletions(-) diff --git a/edkrepo_installer/Vendor/win_edkrepo_prompt.sh b/edkrepo_insta= ller/Vendor/win_edkrepo_prompt.sh index 5404175..91496a7 100644 --- a/edkrepo_installer/Vendor/win_edkrepo_prompt.sh +++ b/edkrepo_installer/Vendor/win_edkrepo_prompt.sh @@ -39,7 +39,16 @@ if [ -x "$(command -v edkrepo)" ] && [ -x "$(command -v = $command_completion_edkr # manifest XML, which is a relatively expensive operation to do every ti= me # the user presses . # As a performance optimization, only do this if the present working dir= ectory - # changed + # changed or if the last command executed was edkrepo =20 + do_combo_check=3D"0" + edkrepo_check_last_command() { + if [[ "$BASH_COMMAND" =3D=3D *"edkrepo"* ]] && [[ "$BASH_COMMAND" !=3D= *"_edkrepo"* ]]; then + if [[ "$BASH_COMMAND" !=3D *"edkrepo_"* ]]; then + do_combo_check=3D"1" + fi + fi + } + trap 'edkrepo_check_last_command' DEBUG if [[ ! -z ${PROMPT_COMMAND+x} ]] && [[ "$PROMPT_COMMAND" !=3D "edkrepo_= combo_chpwd" ]]; then old_prompt_command=3D$PROMPT_COMMAND fi @@ -48,6 +57,10 @@ if [ -x "$(command -v edkrepo)" ] && [ -x "$(command -v = $command_completion_edkr if [[ "$(pwd)" !=3D "$old_pwd" ]]; then old_pwd=3D$(pwd) current_edkrepo_combo=3D$(command_completion_edkrepo current-combo= ) + do_combo_check=3D"0" + elif [ "$do_combo_check" =3D=3D "1" ]; then + current_edkrepo_combo=3D$(command_completion_edkrepo current-combo= ) + do_combo_check=3D"0" fi if [[ ! -z ${PROMPT_COMMAND+x} ]]; then eval $old_prompt_command @@ -57,4 +70,4 @@ if [ -x "$(command -v edkrepo)" ] && [ -x "$(command -v $= command_completion_edkr fi =20 PS1=3D"$newps1$prompt_suffix" -MSYS2_PS1=3D"$PS1" # for detection by MSYS2 SDK's bash.basrc +MSYS2_PS1=3D"$PS1" # for detection by MSYS2 SDK's bash.bashrc diff --git a/edkrepo_installer/linux-scripts/install.py b/edkrepo_installer= /linux-scripts/install.py index 099954d..f9f324a 100755 --- a/edkrepo_installer/linux-scripts/install.py +++ b/edkrepo_installer/linux-scripts/install.py @@ -296,7 +296,16 @@ if [ -x "$(command -v edkrepo)" ] && [ -x "$(command -= v command_completion_edkre # manifest XML, which is a relatively expensive operation to do every ti= me # the user presses . # As a performance optimization, only do this if the present working dir= ectory - # changed + # changed or if the last command executed was edkrepo =20 + do_combo_check=3D"0" + edkrepo_check_last_command() { + if [[ "$BASH_COMMAND" =3D=3D *"edkrepo"* ]] && [[ "$BASH_COMMAND" !=3D= *"_edkrepo"* ]]; then + if [[ "$BASH_COMMAND" !=3D *"edkrepo_"* ]]; then + do_combo_check=3D"1" + fi + fi + } + trap 'edkrepo_check_last_command' DEBUG if [[ ! -z ${PROMPT_COMMAND+x} ]] && [[ "$PROMPT_COMMAND" !=3D "edkrepo_= combo_chpwd" ]]; then old_prompt_command=3D$PROMPT_COMMAND fi @@ -305,6 +314,10 @@ if [ -x "$(command -v edkrepo)" ] && [ -x "$(command -= v command_completion_edkre if [[ "$(pwd)" !=3D "$old_pwd" ]]; then old_pwd=3D$(pwd) current_edkrepo_combo=3D$(command_completion_edkrepo current-combo= ) + do_combo_check=3D"0" + elif [ "$do_combo_check" =3D=3D "1" ]; then + current_edkrepo_combo=3D$(command_completion_edkrepo current-combo= ) + do_combo_check=3D"0" fi if [[ ! -z ${PROMPT_COMMAND+x} ]]; then eval $old_prompt_command @@ -346,16 +359,34 @@ if [ -x "$(command -v edkrepo)" ] && [ -x "$(command = -v command_completion_edkre # manifest XML, which is a relatively expensive operation to do every ti= me # the user presses . # As a performance optimization, only do this if the present working dir= ectory - # changed + # changed or if the last command executed was edkrepo =20 + do_combo_check=3D"0" function edkrepo_combo_chpwd() { current_edkrepo_combo=3D$(command_completion_edkrepo current-combo) + do_combo_check=3D"0" } chpwd_functions=3D(${chpwd_functions[@]} "edkrepo_combo_chpwd") + function edkrepo_combo_preexec() { + if [[ "$1" =3D *"edkrepo"* ]] && [[ "$1" !=3D *"_edkrepo"* ]]; then + if [[ "$1" !=3D *"edkrepo_"* ]]; then + do_combo_check=3D"1" + fi + fi + } + preexec_functions=3D(${preexec_functions[@]} "edkrepo_combo_preexec") =20 + function edkrepo_combo_precmd() { + if [ "$do_combo_check" =3D "1" ]; then + current_edkrepo_combo=3D$(command_completion_edkrepo current-combo) + do_combo_check=3D"0" + fi + } + precmd_functions=3D(${precmd_functions[@]} "edkrepo_combo_precmd") fi =20 # Load version control information autoload -Uz vcs_info -precmd() { vcs_info } +git_precmd() { vcs_info } +precmd_functions=3D(${precmd_functions[@]} "git_precmd") =20 # Format the vcs_info_msg_0_ variable zstyle ':vcs_info:git:*' formats " %{$fg[cyan]%}(%b)%{$reset_color%}" @@ -363,6 +394,7 @@ zstyle ':vcs_info:git:*' formats " %{$fg[cyan]%}(%b)%{$= reset_color%}" # Set up the prompt (with git branch name) setopt PROMPT_SUBST eval "PRO= MPT=3D'$new_prompt\${vcs_info_msg_0_}\$prompt_suffix'" + ''' =20 def add_command_to_startup_script(script_file, regex, command, username): -- 2.26.0.windows.1