Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tur84-00CsEe-Ht for pgadmin-hackers@arkaria.postgresql.org; Wed, 19 Mar 2025 10:58:32 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tur82-00201Z-Rr for pgadmin-hackers@arkaria.postgresql.org; Wed, 19 Mar 2025 10:58:30 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tur82-00200e-AS for pgadmin-hackers@lists.postgresql.org; Wed, 19 Mar 2025 10:58:30 +0000 Received: from mail-oa1-x2c.google.com ([2001:4860:4864:20::2c]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tur7z-003gMJ-1j for pgadmin-hackers@postgresql.org; Wed, 19 Mar 2025 10:58:29 +0000 Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-2c1caacc1f7so3619870fac.3 for ; Wed, 19 Mar 2025 03:58:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb.com; s=google; t=1742381906; x=1742986706; darn=postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=hQEJFac5XwnSp3g0VqdsNlBuW0OT3Htfwqd0G/qAPds=; b=eGR9g638PooOw/2SlVeIxN63OhxH1kmaBGIbCigm+/QCYE5L4ON9wViEWBrHZjHIBP qzgno1qlxup5i3acLqY4cIVc8Gl/CKM4r2zbEu+EHTs46yy429ot9/9r8wx2KFy5igRH rS70OK+vXfUYm8qMp4/m1EeBkgQIaZ/hRKj4ADUf4vYVz5+c3dvASzEp1wwHPtVXT6A9 saAVrGMq5VYqcAwW1uuqnnXMwfCgX5GTK8x/N10+79RPEcSlkk1TFIEPa+CjQjUCKo1k aUibfinTyGQ0lNpJseZYlG0cap+ePlw0ICd6Tm8p9/MNyC2l//j7hsJ6dA3Jy7XAntjA 0bpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742381906; x=1742986706; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=hQEJFac5XwnSp3g0VqdsNlBuW0OT3Htfwqd0G/qAPds=; b=H/D5ZnGX3WUgpT59HjswryJf3OeHeeb4ZCacquakbjj+UH4yyZreavxlqHSLfLUb+W KQE6zvOHAVhTHabv4cfLpoHkGX9/Jho0y/RoKmW01d+ldTgcPAcbz/7qYc3uYeVqWte7 sM4T1yydUMGqMJUvUBrRkideadFDAp+w0FzUiZD0vfCHcmUmygIYR+Y8xN4uXNmjfZ7N 2e5x3uOmaxxN40UQs1dJSC704VOt6gHoYfvEz7wx4Ese2I1TpfHxuskSjGgAV2Gighft 0iUyoFRoW80094ToguK2EKSpze3MVe6b/9exxtNoRylUHWK4lH2ALaIs1Fs+ypQuUcEV fbBw== X-Gm-Message-State: AOJu0YxphRehfNcZBQbx1rKmxzwXt7G1kQsnLXl3Lj1CyTnpda3sOKen SORL7anM1dbmxFEeGALWc0hOLPkIOBQnBSQd+nHBHvV5NMAj5BmM+11667pL85Ts8i07YjS4x8k YOhcctTXaU1ECR4PmbJmN7dT992+oaKj42iGFap6FUEaASYg4PySx X-Gm-Gg: ASbGncvGyHffluoZo6Y17HEGnqymSmLUfFLPKLQKnPF3nvfeYIEYR9/wrCrIUdG3Cf+ XyJZkAvT47Y606VZFO8Lkp7rG4N4Ge5oAJWwUXzRlBOzZnxiGdKXSVBH/2aCYK+DsqyHrUFe6O/ BgJdyFnLEDn7/Wmg1zZr0qULUw6esMocVuOEZ6XHL3cEyeADaSTHfwKsbXlj4= X-Google-Smtp-Source: AGHT+IFDfbI4YpB4cHyzEOUWa36HcAm1L1PXK80fpB+h52gjL3QgF9jPWHNz5VrcPQuKpr8W2AsXMgVJndVh3N45MWk= X-Received: by 2002:a05:6870:280f:b0:2c1:aed2:abd2 with SMTP id 586e51a60fabf-2c745589a2fmr1551345fac.16.1742381906453; Wed, 19 Mar 2025 03:58:26 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Anil Sahoo Date: Wed, 19 Mar 2025 16:27:50 +0530 X-Gm-Features: AQ5f1Jp32kWhV88H60r6ci69OF1pxUqnKNGlmLOcYhRcAMBHy8t7ADVVAgMjK_s Message-ID: Subject: Re: Require suggestions on feature #5766 To: Dave Page Cc: pgadmin-hackers Content-Type: multipart/alternative; boundary="0000000000009906950630afe610" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000009906950630afe610 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Dave, As discussed I moved with auto-update of pgAdmin 4 application in macOs system locally. It is successful. So now I have to do some additional user experience improvements. Listing down some ways we can show the user that a new version is available and he can download and install it. *Option 1:* Show a dialog with the released features and fixes(mentioned in the release note) with *"Download & Restart"* and *"Cancel"* buttons. This dialog will be shown only when the application starts for the first time of the day. Benefits of showing this dialog will help users to know about the new features and bugs fixed available in the latest version. "Download & Restart" button will download the latest version and quit the app and install and open the latest app. "Cancel" will cancel the notification. *Option 2:* We are currently showing a warning notification of the latest version available, if the older version is being used by the user, we can add *"Download & Restart"* and *"Cancel" * buttons. And those buttons will work the way they are working in Option 1. Additionally we will add *"Check for updates"* option in pgAdmin 4 native menu, if any time a user wants to check for updates manually then can prefer this and if update is available then the *"Restart to update"* option will show and if clicked will quit the app and install the latest version. Let me know in which way we can proceed. Thanks Anil On Thu, Dec 5, 2024 at 5:11=E2=80=AFPM Dave Page wrote: > Hi > > On Wed, 4 Dec 2024 at 05:19, Anil Sahoo > wrote: > >> Hi Dave, >> >> For Windows, I checked how pgAdmin works for machine-wide installations >> as admin1 (Administrator), and there is another admin user like admin2 >> (Administrator), and normal users are user1 and user2. When logged in as >> other mentioned users, I was able to use pgAdmin, but when I tried to >> upgrade pgAdmin as admin2 from v8.12 to v8.13, I faced the below error: >> >> "An error occurred while trying to replace the existing file: >> >> DeleteFile failed; code 5. >> >> Access is denied." >> >> And if I cancel installation, then run pgAdmin, v8.12 is getting >> corrupted and giving >> >> "The pgAdmin 4 server could not be contacted: >> C:\Program Files (x86)\pgAdmin 4\python\python.exe: can't open file =E2= =80=98 >> C:\\ Program Files (x86)\\pgAdmin >> >> 4\\web\\pgAdmin4.py: [Errno 2] No such file or directory." >> >> For user-level installation, everything is working fine for different >> users. >> >> I have checked some of the desktop applications that are being built wit= h >> Electron, like VS Code and Postman. >> >> *How VS Code works is,* >> >> They have 2 different installers, one for user level and another for >> system level. >> >> When I installed the VS Code system installer on admin1, it was working >> fine, and I was able to check for updates, and for admin2 and user1, it = is >> available, working fine and able to check for updates, not able to updat= e >> as I am in the latest version. (Note: not found system installers for ol= der >> versions, but user installers are available) >> >> When I installed the VS Code user installer on admin1, it was working >> fine, and VS Code says when running it as an administrator in a user set= up >> installation, updates will be disabled. >> >> When I tried to install the user installer on user1, it was working fine >> and able to check for updates. >> >> *How Postman works is,* >> >> When I installed Postman on admin1, it was available for admin2 also. It >> was working fine, and checking for auto updates was also working fine fo= r >> both admins. It is not available for normal users when installed for adm= ins. >> >> When I installed Postman for user1, it was available only for the curren= t >> user, and checking for updates was working fine. >> >> So please give your suggestions on which approach to follow. >> > Postman seems to be a nice model to follow, though it will require us to > check if the current user has permissions to update the installation. Tha= t > might be tricky to get right. > > I would suggest that for the initial version we simply disable auto-updat= e > for machine wide installations, and think about supporting them for admin > users in the future when we can properly check that we have the desired > permissions. We should also consider changes to the installer - e.g. > perhaps make the per-user installation the default, and (if possible) add= a > note under the machine-wide option to warn the user that auto updates wou= ld > be disabled. > > Thanks, Dave. > > -- > Dave Page > pgAdmin: https://www.pgadmin.org > PostgreSQL: https://www.postgresql.org > pgEdge: https://www.pgedge.com > > --=20 *Anil Sahoo* Software Development Engineer II LinkedIn || Blog || *GitHub * enterprisedb.com --0000000000009906950630afe610 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Dave,

As discussed I moved with auto= -update of pgAdmin 4 application in macOs system locally. It is successful.= =C2=A0
So now I have to do some additional user experience improv= ements.

Listing down some ways we can show the use= r that a new version is available and he can download and install it.
=

Option 1:=C2=A0
Show a dialog with the released featur= es and fixes(mentioned in the release note) with "Download & Re= start" and "Cancel"=C2=A0 buttons. This dialog wi= ll be shown only when the application starts for the first time of the day.=

Benefits of showing this dialog will help u= sers to know about the new features and bugs fixed available in the latest = version.=C2=A0

"Download & Restart&qu= ot; button will download the latest version and quit the app and install an= d open the latest app.=C2=A0"Cancel" will cancel the notificati= on.
Option 2:=
We are currently showing a warning notificat= ion of the latest version available, if the older version is being used by = the user, we can add=C2=A0"Download & Restart" and <= b>"Cancel"=C2=A0 buttons. And those buttons will work the way= they are working in Option 1.

Additionally we will add "Check for updates" option in pgAdm= in 4 native menu, if any time a user wants to check for updates manually th= en can prefer this and if update is available then the=C2=A0"Rest= art to update" option will show and if clicked will quit the app a= nd install the latest version.

Let me know in whi= ch way we can proceed.

<= /font>
Thanks
Anil


On Thu, Dec 5, 2024 at 5:11=E2=80=AFPM Dave Page <dpage@pgadmin.org> wrote:
Hi

=
On Wed, 4 = Dec 2024 at 05:19, Anil Sahoo <anil.sahoo@enterprisedb.com> wrote:

Hi D= ave,

For Windows, I checked how pgAdmin works for machine-wide installations = as admin1 (Administrator), and there is another admin user like admin2 (Adm= inistrator), and normal users are user1 and user2. When logged in as other = mentioned users, I was able to use pgAdmin, but when I tried to upgrade pgA= dmin as admin2 from v8.12 to v8.13, I faced the below error:

"An error occurred while trying to replace the existing file:

DeleteFile failed; code 5.

Access is denied."

=C2=A0And if I cancel installation, then run pgAdmin, v8.12 is getting c= orrupted and giving

"The pgAdmin 4 server could not be contacted:
C:\Program Files (= x86)\pgAdmin 4\python\python.exe: can't open file =E2=80=98 C:\\ Progra= m Files (x86)\\pgAdmin

4\\web\\pgAdmin4.py: [Errno 2] No such file or directory."

Fo= r user-level installation, everything is working fine for different users.<= /p>

I have checked some of the desktop applications that are being built wit= h Electron, like VS Code and Postman.

How VS Code works is,

They have 2 different installers, one for user level and another for sys= tem level.

When I installed the VS Code system installer on admin1, it was working = fine, and I was able to check for updates, and for admin2 and user1, it is = available, working fine and able to check for updates, not able to update a= s I am in the latest version. (Note: not found system installers for older = versions, but user installers are available)

When I installed the VS Code user installer on admin1, it was working fi= ne, and VS Code says when running it as an administrator in a user setup in= stallation, updates will be disabled.

When I tried to install the user installer on user1, it was working fine= and able to check for updates.

How Postman works is,

When I installed Postman on admin1, it was available for admin2 also. It= was working fine, and checking for auto updates was also working fine for = both admins. It is not available for normal users when installed for admins= .

When I installed Postman for user1, it was available only for the curren= t user, and checking for updates was working fine.

So please give your suggestions on which approach to follow.

Postman seems to be a nice model to follow, though it will = require us to check if the current user has permissions to update the insta= llation. That might be tricky to get right.

I woul= d suggest that for the initial version we simply disable auto-update for ma= chine wide installations, and think about supporting them for admin users i= n the future when we can properly check that we have the desired permission= s. We should also consider changes to the installer - e.g. perhaps make the= per-user installation the default, and (if possible) add a note under the = machine-wide option to warn the user that auto updates would be disabled.

Thanks, Dave.=C2=A0

<= span class=3D"gmail_signature_prefix">--


--


=

Anil Sahoo

= Software Developmen= t Engineer II

LinkedIn=C2=A0|| Blog=C2= =A0|| GitHub


enterprisedb.com

--0000000000009906950630afe610--