From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <t.lamprecht@proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by lists.proxmox.com (Postfix) with ESMTPS id 3C3A89584A
 for <pve-devel@lists.proxmox.com>; Wed, 18 Jan 2023 15:03:57 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
 by firstgate.proxmox.com (Proxmox) with ESMTP id 1999321192
 for <pve-devel@lists.proxmox.com>; Wed, 18 Jan 2023 15:03:57 +0100 (CET)
Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com
 [94.136.29.106])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by firstgate.proxmox.com (Proxmox) with ESMTPS
 for <pve-devel@lists.proxmox.com>; Wed, 18 Jan 2023 15:03:56 +0100 (CET)
Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1])
 by proxmox-new.maurer-it.com (Proxmox) with ESMTP id DDD73446DA
 for <pve-devel@lists.proxmox.com>; Wed, 18 Jan 2023 15:03:55 +0100 (CET)
Message-ID: <6b624905-ef72-1ddd-b940-f34d16523f3f@proxmox.com>
Date: Wed, 18 Jan 2023 15:03:54 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101
 Thunderbird/109.0
Content-Language: en-GB
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
 Matthias Heiserer <m.heiserer@proxmox.com>
References: <20230117121723.65246-1-m.heiserer@proxmox.com>
 <20230117121723.65246-2-m.heiserer@proxmox.com>
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
In-Reply-To: <20230117121723.65246-2-m.heiserer@proxmox.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.011 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment
 NICE_REPLY_A           -0.097 Looks like a legit reply (A)
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
Subject: Re: [pve-devel] [PATCH manager 2/2] GUI: efi disk: cleanup - var to
 const
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
X-List-Received-Date: Wed, 18 Jan 2023 14:03:57 -0000

Am 17/01/2023 um 13:17 schrieb Matthias Heiserer:
> Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
> ---
>  www/manager6/qemu/HDEfi.js | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/www/manager6/qemu/HDEfi.js b/www/manager6/qemu/HDEfi.js
> index ef3092a6..f6b7fc26 100644
> --- a/www/manager6/qemu/HDEfi.js
> +++ b/www/manager6/qemu/HDEfi.js
> @@ -9,13 +9,13 @@ Ext.define('PVE.qemu.EFIDiskInputPanel', {
>      vmconfig: {}, // used to select usused disks
>  
>      onGetValues: function(values) {
> -	var me = this;
> +	const me = this;
>  
>  	if (me.disabled) {
>  	    return {};
>  	}
>  
> -	var confid = 'efidisk0';
> +	const confid = 'efidisk0';
>  
>  	if (values.hdimage) {
>  	    me.drive.file = values.hdimage;
> @@ -37,7 +37,7 @@ Ext.define('PVE.qemu.EFIDiskInputPanel', {
>      },
>  
>      setNodename: function(nodename) {
> -	var me = this;
> +	const me = this;
>  	me.down('#hdstorage').setNodename(nodename);
>  	me.down('#hdimage').setStorage(undefined, nodename);
>      },
> @@ -50,7 +50,7 @@ Ext.define('PVE.qemu.EFIDiskInputPanel', {
>      },
>  
>      initComponent: function() {
> -	var me = this;
> +	const me = this;
>  
>  	me.drive = {};
>  
> @@ -96,9 +96,9 @@ Ext.define('PVE.qemu.EFIDiskEdit', {
>  
>      width: 450,
>      initComponent: function() {
> -	var me = this;
> +	const me = this;
>  
> -	var nodename = me.pveSelNode.data.node;
> +	const nodename = me.pveSelNode.data.node;
>  	if (!nodename) {
>  	    throw "no node name specified";
>  	}

I'm not that huge fan of applying JavaScript's const broadly to non-scalar values,
as it's only a shallow constant and immutable; so no effect on array/object member.

I mean we can start to use it more for scalar variables, as eslint catches overriding
the const variable itself directly - but it probably makes sense to add some basic
rules w.r.t. when/how it should be used over `let` in our JS style guide, something
along the line of:

"Using `let` is fine in most context, and while `const` can have some advantages and
possibly even avoid some specific bugs, it should only be applied to scalar values but
not objects or arrays."

What do you think (apart from grammar/typos ;-))?